44 |
|
* scattering. A value approaching 1 indicates strong forward scattering. |
45 |
|
*/ |
46 |
|
|
47 |
+ |
#ifndef MAXSLIST |
48 |
+ |
#define MAXSLIST 32 /* maximum sources to check */ |
49 |
+ |
#endif |
50 |
+ |
|
51 |
|
#define RELAYDELIM '>' /* relay delimiter character */ |
52 |
|
|
53 |
|
extern COLOR cextinction; /* global coefficient of extinction */ |
106 |
|
for (i = sl[0]; i > 0; i--) |
107 |
|
if (!inslist(r->slights, sl[i])) { |
108 |
|
if (r->slights[0] >= MAXSLIST) |
109 |
< |
error(USER, "scattering source list overflow"); |
109 |
> |
error(INTERNAL, |
110 |
> |
"scattering source list overflow"); |
111 |
|
r->slights[++r->slights[0]] = sl[i]; |
112 |
|
} |
113 |
|
} |
124 |
|
double re, ge, be; |
125 |
|
register int i, j; |
126 |
|
/* check arguments */ |
127 |
< |
if (m->oargs.nfargs > 5) |
127 |
> |
if (m->oargs.nfargs > 7) |
128 |
|
objerror(m, USER, "bad arguments"); |
129 |
|
/* get source indices */ |
130 |
|
if (m->oargs.nsargs > 0 && (myslist = (int *)m->os) == NULL) { |
131 |
|
if (m->oargs.nsargs > MAXSLIST) |
132 |
< |
objerror(m, USER, "too many sources in list"); |
132 |
> |
objerror(m, INTERNAL, "too many sources in list"); |
133 |
|
myslist = (int *)malloc((m->oargs.nsargs+1)*sizeof(int)); |
134 |
|
if (myslist == NULL) |
135 |
|
goto memerr; |