CENA data validation¶
Because CENA is the first developed instrument, one should take care of the noise reduction or validation.
In this document, I will describe how the “invalid”-likely data
can be removed by the pyana.cena
module.
For the purpose of the data analysis, I concentrate on the mass mode here.
Dataset¶
CENA mass mode data can be obtained via pyana.cena.cena_mass2.getdataE16()
function.
The returned data is an JdObject with masked array data. The data has (16, 7, 128) shape.
H-ENA flux¶
pyana.cena.cena_mass2.getHdefluxE16()
returns the H-ENA energy spectra.
>>> jddat = getdataE16(datetime.datetime(2009, 4, 18, 1, 30, 0))
>>> jddat.getDate().shape
(16, 7, 128)
Suspicious data can be removed by validation keyword. The keyword should be an array
of the mask functions. Implementation is done in the pyana.cena.cena_mass2.invalid_mask
class.
Simplest way of doing it is as follows:
>>> f = getHdefluxE16(datetime.datetime(2009, 7, 13, 11, 17),
validation=[invalid_mask.high_heavy_mask, invalid_mask.high_count_mask])
>>> f.getData().shape
(16, 7)
This will remove (mask) the channel either 1) the count in H-ENA channels is >100 or 2) counts in O-ENA channels have >10% of the H-ENA channels.
Threshold can be changed if you instance mask function. See sample below.
>>> mask1 = invalid_mask.make_high_heavy_mask(0.5)
>>> mask2 = invalid_mask.make_high_count_mask(50)
>>> f = getHdefluxE16(datetime.datetime(2009, 7, 13, 11, 17), validation=[mask1, mask2]