The compression rate of on board EIS data may vary depending on a few factors such as the observing target (QS, AR, CH, etc), slit/slot selection, exposures, etc.
The purpose of this study is trying to investigate how different compression schemes effect EIS data volume on board and work out a better estimation of compression rate for compression scheme (eg. DPCM, JPEG98, JPEG95, etc.)
The approach:
1. to get actual data volume from MDP status information: the inclined curve means data packets from EIS on MDP, the vertical curve means data packets dumped to ground station. So in general, known a raster's start and end time can calculate actual data volume, and then compare it with the designed data volume of this raster to get data compression rate.
![]() |
2. to get related information from planning database/eis catalogue/fits header, for example: raster ID, compression scheme, designed data volume, SCI_OBJ, TARGET, slit/slot, exposures, etc.
3. prepare plots based on various factor combinations: compression rate vs. slit/slot, rate vs. target, rate vs. exposures
Some preliminary results (plots):
(The investigation here is for dates between 2007-Sep-15 and 2007-Dec-15, as EIS is operationally stable over this duration. The other data sets is in 2008-Mar (for JPEG85), and 2006-Dec (for JPEG75))
However, there is not always having value for SCI_OBJ in EIS fits header, also the range of value of SCI_OBJ keyword is varying, (SCI_OBJ_Example), sometimes we have to throw away some EIS data as it's hard to judge the SCI_OBJ belong to QS,AR or CH, eg. LMB, or FIL.
compFactor={compression_factor, $
study_ACR :'', $ ;string
study_id :'', $ ;string
rast_ACR :'', $ ;string
rast_id :'', $ ;string
ll_ACR :'',$ ;string
ll_id :'',$ ;string
start_time :'', $ ;string
end_time :'', $ ;string
fitsname :'',$ ;string
target :'',$ ;string
sci_obj :'',$ ;string
slit :'',$ ;string
def_volume :0LL,$ ;long64 int, unit: bits
mdp_volume :0.0,$ ;float, unit: kbits
comp_scheme :0,$ ;int
nexp :0,$ ;int
rast_req :0,$ ;int
exposures :fltarr(8) $ ;float, unit: sec
}
I attached the IDL sav file here
. Please download it and play it with your self, for example, I use:
if (str1[i].SCI_OBJ eq 'QS') && (str1[i].COMP_SCHEME eq 1) && (str1[i].MDP_VOLUME gt 0.) then ind[i]=1
to find those records having 'QS' SCI_OBJ and using DPCM compression scheme.
