1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
|
include "../lib/apphotdef.h"
include "../lib/apphot.h"
include "../lib/centerdef.h"
include "../lib/center.h"
include "../lib/fitskydef.h"
include "../lib/fitsky.h"
include "../lib/photdef.h"
include "../lib/phot.h"
include "../lib/fitpsfdef.h"
include "../lib/fitpsf.h"
# AP1SETS -- Procedure to set an apphot string parameter.
procedure ap1sets (ap, param, str)
pointer ap # pointer to apphot structure
int param # parameter
char str[ARB] # string parameter
int naperts
pointer ctr, sky, phot, psf
real aperts[MAX_NAPERTS]
int ap_getaperts()
begin
ctr = AP_PCENTER(ap)
sky = AP_PSKY(ap)
phot = AP_PPHOT(ap)
psf = AP_PPSF(ap)
switch (param) {
case IMNAME:
call strcpy (str, AP_IMNAME(ap), SZ_FNAME)
case IMROOT:
call strcpy (str, AP_IMROOT(ap), SZ_FNAME)
case CLNAME:
call strcpy (str, AP_CLNAME(ap), SZ_FNAME)
case CLROOT:
call strcpy (str, AP_CLROOT(ap), SZ_FNAME)
case PLOTFILE:
call strcpy (str, AP_PLOTFILE(ap), SZ_FNAME)
case OUTNAME:
call strcpy (str, AP_OUTNAME(ap), SZ_FNAME)
case EXPOSURE:
call strcpy (str, AP_EXPOSURE(ap), SZ_FNAME)
case AIRMASS:
call strcpy (str, AP_AIRMASS(ap), SZ_FNAME)
case FILTER:
call strcpy (str, AP_FILTER(ap), SZ_FNAME)
case FILTERID:
call strcpy (str, AP_FILTERID(ap), SZ_FNAME)
case OBSTIME:
call strcpy (str, AP_OBSTIME(ap), SZ_FNAME)
case OTIME:
call strcpy (str, AP_OTIME(ap), SZ_FNAME)
case CSTRING:
call strcpy (str, AP_CSTRING(ctr), SZ_FNAME)
case SSTRING:
call strcpy (str, AP_SSTRING(sky), SZ_FNAME)
case APSTRING:
call strcpy (str, AP_APSTRING(phot), SZ_FNAME)
case APERTS:
naperts = ap_getaperts (str, aperts, MAX_NAPERTS)
if (naperts > 0) {
call strcpy (str, AP_APSTRING(phot), SZ_LINE)
AP_NAPERTS(phot) = naperts
call realloc (AP_APERTS(phot), AP_NAPERTS(phot), TY_REAL)
call realloc (AP_AREA(phot), AP_NAPERTS(phot), TY_DOUBLE)
call realloc (AP_SUMS(phot), AP_NAPERTS(phot), TY_DOUBLE)
call realloc (AP_MAGS(phot), AP_NAPERTS(phot), TY_REAL)
call realloc (AP_MAGERRS(phot), AP_NAPERTS(phot), TY_REAL)
call amovr (aperts, Memr[AP_APERTS(phot)], AP_NAPERTS(phot))
call asrtr (Memr[AP_APERTS(phot)], Memr[AP_APERTS(phot)],
AP_NAPERTS(phot))
}
case PWSTRING:
call strcpy (str, AP_PWSTRING(phot), SZ_FNAME)
case PSFSTRING:
call strcpy (str, AP_PSFSTRING(psf), SZ_FNAME)
default:
call error (0, "APSETS: Unknown apphot string parameter")
}
end
# AP1SETI -- Procedure to set an integer apphot parameter.
procedure ap1seti (ap, param, ival)
pointer ap # pointer to apphot structure
int param # parameter
int ival # integer value
pointer cen, sky, phot, psf
begin
cen = AP_PCENTER(ap)
sky = AP_PSKY(ap)
phot = AP_PPHOT(ap)
psf = AP_PPSF(ap)
switch (param) {
case POSITIVE:
AP_POSITIVE(ap) = ival
case WCSIN:
AP_WCSIN(ap) = ival
case WCSOUT:
AP_WCSOUT(ap) = ival
case MW:
AP_MW(ap) = ival
case CTIN:
AP_CTIN(ap) = ival
case CTOUT:
AP_CTOUT(ap) = ival
case CENTERFUNCTION:
AP_CENTERFUNCTION(cen) = ival
case CLEAN:
AP_CLEAN(cen) = ival
case CMAXITER:
AP_CMAXITER(cen) = ival
case SKYFUNCTION:
AP_SKYFUNCTION(sky) = ival
case SMAXITER:
AP_SMAXITER(sky) = ival
case SNREJECT:
AP_SNREJECT(sky) = ival
case SMOOTH:
AP_SMOOTH(sky) = ival
case NSKY:
AP_NSKY(sky) = ival
case NSKY_REJECT:
AP_NSKY_REJECT(sky) = ival
case PWEIGHTS:
AP_PWEIGHTS(phot) = ival
case PSFUNCTION:
AP_PSFUNCTION(psf) = ival
case NPARS:
AP_PSFNPARS(psf) = ival
case MAXNPARS:
AP_MAXNPARS(psf) = ival
case PMAXITER:
AP_PMAXITER(psf) = ival
case PNREJECT:
AP_PNREJECT(psf) = ival
default:
call error (0, "APSETI: Unknown apphot integer parameter")
}
end
# AP1SETR -- Procedure to set a real apphot parameter.
procedure ap1setr (ap, param, rval)
pointer ap # pointer to apphot structure
int param # parameter
real rval # real value
pointer cen, sky, phot, psf
begin
cen = AP_PCENTER(ap)
sky = AP_PSKY(ap)
phot = AP_PPHOT(ap)
psf = AP_PPSF(ap)
switch (param) {
case FWHMPSF:
AP_FWHMPSF(ap) = rval
case SCALE:
AP_SCALE(ap) = rval
case WX:
AP_WX(ap) = rval
case WY:
AP_WY(ap) = rval
case ITIME:
AP_ITIME(ap) = rval
case CWX:
AP_CWX(ap) = rval
case CWY:
AP_CWY(ap) = rval
case DATAMIN:
AP_DATAMIN(ap) = rval
case DATAMAX:
AP_DATAMAX(ap) = rval
case XAIRMASS:
AP_XAIRMASS(ap) = rval
case CDATALIMIT:
AP_CDATALIMIT(cen) = rval
case XSHIFT:
AP_XSHIFT(cen) = rval
case YSHIFT:
AP_YSHIFT(cen) = rval
case OXSHIFT:
AP_OXSHIFT(cen) = rval
case OYSHIFT:
AP_OYSHIFT(cen) = rval
case CXCUR:
AP_CXCUR(cen) = rval
case CYCUR:
AP_CYCUR(cen) = rval
case CAPERT:
AP_CAPERT(cen) = rval
case CTHRESHOLD:
AP_CTHRESHOLD(cen) = rval
case MAXSHIFT:
AP_MAXSHIFT(cen) = rval
case MINSNRATIO:
AP_MINSNRATIO(cen) = rval
case RCLEAN:
AP_RCLEAN(cen) = rval
case RCLIP:
AP_RCLIP(cen) = rval
case SIGMACLEAN:
AP_SIGMACLEAN(cen) = rval
case OXINIT:
AP_OXINIT(cen) = rval
case OYINIT:
AP_OYINIT(cen) = rval
case XCENTER:
AP_XCENTER(cen) = rval
case YCENTER:
AP_YCENTER(cen) = rval
case OXCENTER:
AP_OXCENTER(cen) = rval
case OYCENTER:
AP_OYCENTER(cen) = rval
case XERR:
AP_XERR(cen) = rval
case YERR:
AP_YERR(cen) = rval
case ANNULUS:
AP_ANNULUS(sky) = rval
case DANNULUS:
AP_DANNULUS(sky) = rval
case SXCUR:
AP_SXCUR(sky) = rval
case SYCUR:
AP_SYCUR(sky) = rval
case OSXCUR:
AP_OSXCUR(sky) = rval
case OSYCUR:
AP_OSYCUR(sky) = rval
case K1:
AP_K1(sky) = rval
case SLOREJECT:
AP_SLOREJECT(sky) = rval
case SHIREJECT:
AP_SHIREJECT(sky) = rval
case SLOCLIP:
AP_SLOCLIP(sky) = rval
case SHICLIP:
AP_SHICLIP(sky) = rval
case BINSIZE:
AP_BINSIZE(sky) = rval
case RGROW:
AP_RGROW(sky) = rval
case SKY_BACKGROUND:
AP_SKYBACKGROUND(sky) = rval
case SKY_MODE:
AP_SKY_MODE(sky) = rval
case SKY_SIGMA:
AP_SKY_SIG(sky) = rval
case SKY_SKEW:
AP_SKY_SKEW(sky) = rval
case PXCUR:
AP_PXCUR(phot) = rval
case PYCUR:
AP_PYCUR(phot) = rval
case OPXCUR:
AP_OPXCUR(phot) = rval
case OPYCUR:
AP_OPYCUR(phot) = rval
case ZMAG:
AP_ZMAG(phot) = rval
case PK2:
AP_PK2(psf) = rval
case PSFAPERT:
AP_PSFAPERT(psf) = rval
case PFXCUR:
AP_PFXCUR(psf) = rval
case PFYCUR:
AP_PFYCUR(psf) = rval
case OPFXCUR:
AP_OPFXCUR(psf) = rval
case OPFYCUR:
AP_OPFYCUR(psf) = rval
default:
call error (0, "APSETR: Unknown apphot real parameter")
}
end
# AP1SETD -- Procedure to set a double apphot parameter.
procedure ap1setd (ap, param, dval)
pointer ap # pointer to apphot structure
int param # parameter
double dval # double value
pointer cen, sky, phot, psf
begin
cen = AP_PCENTER(ap)
sky = AP_PSKY(ap)
phot = AP_PPHOT(ap)
psf = AP_PPSF(ap)
switch (param) {
default:
call error (0, "APSETD: Unknown apphot double parameter")
}
end
|