Документ взят из кэша поисковой машины. Адрес оригинального документа : http://xmm.vilspa.esa.es/sas/5.4.1/doc/saslib/gvxmm199901.txt
Дата изменения: Wed May 3 15:15:26 2000
Дата индексирования: Sat Dec 22 12:21:28 2007
Кодировка:

Поисковые слова: spirit rover

Interface specification for the XMM
event attributes

Giuseppe Vacanti

Ref: GV/XMM/1999-01 [Issue: 1.5]

$Revision: 1.2 $ $Date: 2000/05/03 11:15:26 $


* Change history

Issue 1.5:

New flag list after discussions on sas-devel.

Issue 1.4:

Added the following RGS flags:
EVATT_NEXT_TO_BADPIX, EVATT_BAD_SHAPE, EVATT_ONBOARD_SER

Issue 1.3:

Added section explaining the meaning of the attributes (MOS only)
Added EVATT_UNKNOWN_RAWX_PATTERN
Added EVATT_EVLIST_LOCAL

Issue 1.2:

Added:

EVATT_OUT_OF_CCD_WINDOW
EVATT_OUTSIDE_THRESHOLDS

* Scope

This technical memorandum addresses the naming conventions for the
event attributes in the XMM SAS.

* Merging event lists

Note that event attributes describing one instrument are guaranteed to
map onto unique bits in the flag column.

* Interface

The names below refer to Fortran 9x. For the C++ names remove the
string 'EVATT_'.


! name of the flag column
EVATT_COLUMN_NAME = 'FLAG'

! event attributes
EVATT_BAD_E3E4
EVATT_BAD_SHAPE
EVATT_BELOW_ACCEPTANCE
EVATT_CLOSE_TO_BADCOL
EVATT_CLOSE_TO_BADROW
EVATT_CLOSE_TO_BRIGHTPIX
EVATT_CLOSE_TO_CCD_BORDER
EVATT_CLOSE_TO_CCD_WINDOW
EVATT_CLOSE_TO_DEADPIX
EVATT_CLOSE_TO_FLICKERINGPIX
EVATT_CLOSE_TO_NODE_BOUNDARY
EVATT_CLOSE_TO_ONBOARD_BADPIX
EVATT_COSMIC_RAY
EVATT_DIAGONAL
EVATT_EVLIST_LOCAL
EVATT_IN_BAD_FRAME
EVATT_IN_SPOILED_FRAME
EVATT_MIP_ASSOCIATED
EVATT_NEXT_TO_BADPIX
EVATT_NEXT_TO_CCD_BORDER
EVATT_NEXT_TO_OFFSET_COLUMN
EVATT_ONBOARD_SER
EVATT_ON_BADPIX
EVATT_ON_BADROW
EVATT_ON_NODE0
EVATT_ON_NODE1
EVATT_ON_OFFSET_COLUMN
EVATT_OUTSIDE_GTI
EVATT_OUTSIDE_THRESHOLDS
EVATT_OUT_OF_CCD_WINDOW
EVATT_OUT_OF_FOV
EVATT_REJECTED_BY_GATTI
EVATT_SECONDARY
EVATT_TRAILING
EVATT_UNKNOWN_RAWX_PATTERN


! these are the instrument masks
EVATT_RGS_REJECTION_MASK = EVATT_ON_BADPIX + &
EVATT_NEXT_TO_BADPIX + &
EVATT_BAD_SHAPE + &
EVATT_NEXT_TO_CCD_BORDER + &
EVATT_BELOW_ACCEPTANCE + &
EVATT_IN_BAD_FRAME + &
EVATT_OUTSIDE_GTI

EVATT_EMOS_REJECTION_MASK = EVATT_OUT_OF_FOV + &
EVATT_IN_BAD_FRAME + &
EVATT_COSMIC_RAY + &
EVATT_ON_BADPIX + &
EVATT_REJECTED_BY_GATTI + &
EVATT_OUT_OF_CCD_WINDOW + &
EVATT_OUTSIDE_THRESHOLDS

EVATT_EPN_REJECTION_MASK = EVATT_OUT_OF_FOV + &
EVATT_IN_BAD_FRAME + &
EVATT_COSMIC_RAY + &
EVATT_ON_BADPIX + &
EVATT_SECONDARY + &
EVATT_TRAILING + &
EVATT_MIP_ASSOCIATED

! to reset all bits to 0
EVATT_CLEAR_ALL_FLAGS = 0

! this is a flag local to the event list. It can be used to
! temporarily flag events. It should not be used for anything
! else.
EVATT_EVLIST_LOCAL

These should be read like so:

event attribute is diagonal
event attribute is close to CCD border
etc.

And-ing an event attribute with one of the rejection masks leaves
active only the bits that would cause the event to be
rejected. Instrument specific masks are provided. This frees us from
having to know which bit is which. The mask is the or-ing of the
rejection flags.

* Meaning (incomplete)

** EPIC MOS (contributed by Jean Ballet, 1999 April 29)

Event attribute (information) Meaning
--------------- -------

EVATT_DIAGONAL This event was part of a pair of single
events touching one another by a corner,
but otherwise isolated. A significant number
of those hint at pile-up.

EVATT_CLOSE_TO_CCD_BORDER This event was immediately next to a border
of the CCD, so that part of its charge
may have been lost.

EVATT_CLOSE_TO_CCD_WINDOW This event was immediately next to a border
of the current CCD window (when not in full
frame mode), so that part of its charge
may have been lost. For EPIC/MOS only events
next to the left and lower borders are
affected and flagged.

EVATT_CLOSE_TO_NODE_BOUNDARY This event was immediately next to the limit
between the read-out nodes (when in 2-node
mode), so that its energy may not be precise.

EVATT_CLOSE_TO_ONBOARD_BADPIX This event was immediately next (to the left,
right, above or below but not diagonally) to
a bad pixel declared on board. Its energy will
be imprecise, but since this may happen only
when the bad pixel is inactive it should be
a true X-ray.

EVATT_CLOSE_TO_BRIGHTPIX This event was immediately next (to the left,
right, above or below but not diagonally) to
a bright pixel not declared on board. Its
energy will be imprecise, and it could be
a false event if the bright pixel next to it
was active.

EVATT_CLOSE_TO_DEADPIX This event was immediately next (to the left,
right, above or below but not diagonally) to
a dead pixel, so that part of its charge
may have been lost.

EVATT_CLOSE_TO_BADCOL This event was immediately next to a column
declared bad through its offset, so that part
of its charge may have been lost.

EVATT_CLOSE_TO_BADROW This event was immediately next to a row
declared bad through its offset, so that part
of its charge may have been lost. It could
be a false event if the bad row is bright.

EVATT_IN_SPOILED_FRAME This event was detected in a frame which
was judged imperfect (like frames with
extended integration time). As a result
the energy or time of the event may be
slightly wrong.

This is an approximate ordering, in the order of decreasing energy reliability:

EVATT_DIAGONAL > EVATT_IN_SPOILED_FRAME > EVATT_CLOSE_TO_NODE_BOUNDARY >
EVATT_CLOSE_TO_DEADPIX > EVATT_CLOSE_TO_ONBOARD_BADPIX >
EVATT_CLOSE_TO_CCD_WINDOW > EVATT_CLOSE_TO_CCD_BORDER > EVATT_CLOSE_TO_BADCOL
> EVATT_CLOSE_TO_BRIGHTPIX > EVATT_CLOSE_TO_BADROW

[this description added by GV
Ref: email 199905211014.MAA04720@salyut.saclay.cea.fr]

EVATT_UNKNOWN_RAWX_PATTERN to cover the case of COMPRESSED TIMING
mode events, whose abscissa and
pattern are unknown

Event attribute (rejection) Meaning
--------------- -------

EVATT_OUT_OF_FOV This event was detected outside the nominal
field of view of XMM. It was most likely
a particle event.

EVATT_IN_BAD_FRAME This event was detected in a frame where
something was incoherent, hinting at
corrupted data.

EVATT_COSMIC_RAY This event was detected with one of the
large patterns (30 or 31). It was most likely
a particle event.

EVATT_ON_BADPIX This event was detected at the location of
a registered bad pixel (not declared on board).

EVATT_REJECTED_BY_GATTI This event had E1 truncated at the maximum
value. It was most likely a particle event.

EVATT_OUT_OF_CCD_WINDOW This event was detected outside the CCD or
the current window. This is usually noise
in the under/overscans.

EVATT_OUTSIDE_THRESHOLDS This event had total energy (E1+E2) lower
than the EMDH lower threshold (noise
fluctuation) or larger than the EMDH upper
threshold (particle event).

Note that EVATT_OUTSIDE_THRESHOLDS could be split between
EVATT_BELOW_LOWER_THRESHOLD and EVATT_ABOVE_UPPER_THRESHOLD, as
those two cases reflect completely different situations.

** EPIC PN

Missing

** RGS

Missing

* Usage

** Setting the event attributes

Given a table, one would get the column with the appropriate name, as
Int32. Then as the loop through the events is carried out, this is how
a bit is set:

at(i) = ior(at(i), EVATT_REJECTED_BY_GATTI)

This is how a bit is tested for:

if ( iand(at(i), EVATT_TRAILING) > 0 ) then
special treatment for trailing events
endif

This is how to test whether an event has any of the rejection bits
set:

if ( iand(at(i), EVATT_RGS_REJECTION_MASK) > 0 ) then
the event can be rejected
endif

The task that puts the column in the table must also initialize it
with EVATT_CLEAR_ALL_FLAGS. This is the same as setting the column to
0, but makes the operation more explicit.

More information on the interface is available in the online
documentation (package saslib).

** Procedure

A task that is testing for a condition that is flagged with an event
attribute is responsible for indicating so by using setEventAttribute
(see package saslib).