|
Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://xmm.vilspa.esa.es/sas/8.0.0/doc/epevents/node28.html
Дата изменения: Wed Jul 2 05:21:44 2008 Дата индексирования: Fri Sep 5 20:48:02 2008 Кодировка: Поисковые слова: http astrokuban.info astrokuban |
subroutine epevents
*** Get program parameters from parameter input
*** Open and check input file, copy to output file and condition outfile
infile = dataSet(stringParameter("eventset"),READ)
check if infile has EVENTS extension
check if infile has EXPOSURE extension
copyDataSet infile => outfile
outfile = dataSet(stringParameter("outset"),MODIFY)
create event attributes in EVENTS extension
addColumn DETX,DETY,PHA\_GAIN,PHA\_CTI,PI,PAT\_TYP,PAT\_IND,PAT\_ORI,
PAT\_ID,PAT\_SEQ,PATTERN
setNullValue PHA\_CTI,PI,PAT\_TYP,PAT\_IND,PAT\_ORI,PAT\_ID,
PAT\_SEQ,PATTERN
open columns needed
do checks on quadrant and ccd numbers
*** Get program parameters from dataset attributes
get datamode to guide further processing
EpnPrimeFullWindow
FastTiming => no trailing event rejection
source position used to determine event time
FastBurst => source position used to determine event time
get number of events in data set
get window dimensions and determine edges
get source position for timing and burst mode
get MIP rejection mode used in epframes
NONE = mip columns not flagged
SAS = mip columns flagged
COM = mip columns and neighbours flagged
*** Read and convolve bad pixel map
check if bad pixel extension exists
create bad pixel map (intensity codes bad pixel type)
create convolved bad pixel map (mark pixels above, below, left and right
of a bad pixel, and mark edge pixels)
*** Determine frame boundaries and discarded lines in frame
read number of frames and frame boundaries from exposure extension
read discarded lines in frame from exposure extension
do frame = firstFrame, lastFrame
set parameters and allocate array size according to number of events
in frame
*** adjust bad pixel map and convolved bad pixel map according to
mip rejection mode (MIP flagged columns correspond to bad pixels,
neighbour columns are flagged like edge pixels)
*** flag reemission events (if not timing mode)
determine trailing event
flag if PHA of trailing event is < reemissionthreshold
determined from PHA of preceding event
count trailing events
*** perform pattern analysis
determine the pattern parameters PAT_TYP, PAT_IND, PAT_ORI
and PAT_SEQ
mark uncertain patterns as invalid: if a single or the maximum of a
pattern coincides with a pixel of the convolved bad pixel map,
edge pixels are treated as if there was a bad pixel just outside
the sensitive area of the CCD
check for MIPs
count different pattern types
*** collect PAT_Infos and combine into PATTERN and PAT_ID columns
*** perform gain correction, use CAL routine CAL_pnGainCorrect
enddo
*** perform cti correction, use CAL routine CAL_pnCtiCorrect
*** recombine the corrected amplitudes from each pattern (=> PI column)
show results of trailing event and pattern analysis
*** convert raw unlinearized detection coordinates RAWX/Y into
corresponding physical location DETX/Y
*** Store statistics of pattern analysis as attributes in exposure extension
end subroutine epevents