HK/TM Product¶
Data product name¶
DpdHKTMProduct
Data product custodian¶
Name of the Schema file¶
euc-soc-HktmProduct.xsdDPDD version¶
1.1
Processing Element(s) creating/using the data product¶
Creators:
SOC
Consumers:
VIS_PF, NISP_PF
Processing function using the data product¶
VIS processing function, NISP processing function.
Data product elements¶
- Header:
object of type sys:genericHeader
- Data:
object of type soc-pro:hktmProductData
- QualityFlags:
object of type dqc:sqfPlaceHolder
- Parameters:
object of type ppr:genericKeyValueParameters
Detailed description of the data product¶
The HK/TM Product is produced by SOC from the HK/TM data received by MOC and ingested into the SOC ARES System. This is intended to be used primarily, but not exclusively, by the LE1 Teams.
The current approach for the HKTM products generation is done according to the following guidelines:
The HKTM data is extracted from the ARES system (Hadoop cluster).
The HKTM product data time span is 1 hour. That is, it contains parameter data with their time stamp included in the 1 hour period corresponding to that product.
The HKTM product is compossed of: - A series of FITS files, each of them with:
1 Primary HDU (Header Data Units) with a general metadata header
1 Extension layer (additional HDU) per parameter, each of them with one binary table with a number of rows (one per sample), and 2 columns, the first one with the sample time stamp, and the second one with the parameter value.
One XML file with the appropriate metadata information for the HKTM product. This contains a two-way index of the parameters: (parameter) → (file, hdu) and (file, hdu) → (parameter).
For each parameter, the type used in the corresponding table in the FITS file is stated. This could be removed, since this information already appears in the table HDU (TBD).
The set of data is split into several FITS files. The current splitting criteria is: #. 1 FITS file with VIS parameters #. 1 FITS file with NISP parameters #. 1 FITS file with AOCS parameters #. 1 FITS file with Flight Dynamics related parameters #. I FITS file with the rest of parameters
All the tables have a first column with a time stamp. It has been suggested to group all this information in a common time column. But this is a problem with a number of aspects: - First, there are lots of different sampling frequencies, so in order to have a common TIMESTAMP column, we should make an effort on grouping the different parameters by a common frequency. Grouping per frequency/period several thousands of parameters is a LOT of work. - This will not be valid for those non-periodic parameters, though; those parameters that get updated only from time to time. You could think about putting them in separate files. - Then, even if one succeeds with the grouping, you will have the problem of having in separate FITS files parameters that have a common nature/origin (although a different sampling frequency).
Finally, even with a common sampling frequency, that doesn’t mean that they share a common timestamp (imagine a very simplistic scenario of two 2-hour period parameters; one could be generated at odd hours, the other at even hours). In summary: what we get from the system is not parameter values for a given set of timestamps; what we obtain are sets of pairs (timestamp, param.value). So, storing them as pairs in the FITS files is not only faster, convenient and easier to use; it is actually how the data is generated and retrieved.
Here you can see an example of the list of files generated for 1 hour that will conform the HKTM Product:
Length Date Time Name
--------- ---------- ----- ----
52709760 01-27-2022 19:10 EUC_SOC_HKTM-AOCS_20211029T070000-20211029T080000.fits
11687040 01-27-2022 19:10 EUC_SOC_HKTM-VIS_20211029T070000-20211029T080000.fits
26786880 01-27-2022 19:10 EUC_SOC_HKTM-NISP_20211029T070000-20211029T080000.fits
10327680 01-27-2022 19:10 EUC_SOC_HKTM-FGS_20211029T070000-20211029T080000.fits
106574400 01-27-2022 19:11 EUC_SOC_HKTM-others_20211029T070000-20211029T080000.fits
2084434 01-28-2022 07:55 EUC_SOC_HKTM_20211029T070000-20211029T080000.xml
--------- -------
210170194 6 files
Below, a (reduced) view of the content of the XML Metadata file:
<?xml version="1.0" encoding="UTF-8"?>
<dpd-le1-hktm:DpdHKTMProduct xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://euclid.esa.org/schema/dpd/soc/hktm euc-test-soc-HktmProduct.xsd"
xmlns:dpd-le1-hktm="http://euclid.esa.org/schema/dpd/soc/hktm">
<Header>
<ProductId>EUC_SOC_HKTM_20211029T070000-20211029T080000</ProductId>
<ProductType>DpdHKTMProduct</ProductType>
<SoftwareName>HKTMProductGenerator</SoftwareName>
<SoftwareRelease>3.2.1</SoftwareRelease>
<ProdSDC>SOC</ProdSDC>
<DataSetRelease>TEST</DataSetRelease>
<Purpose>TEST</Purpose>
<PlanId/>
<PPOId>NA</PPOId>
<PipelineDefinitionId/>
<PpoStatus/>
<ManualValidationStatus>VALID</ManualValidationStatus>
<ExpirationDate>2100-01-01T00:00:00.000Z</ExpirationDate>
<Published>0</Published>
<Curator>SOC</Curator>
<CreationDate>2022-01-27T18:11:59.802Z</CreationDate>
</Header>
<Data>
<DateTimeRange>
<FromDate>2021-10-29T07:00:00.000000Z</FromDate>
<ToDate>2021-10-29T08:00:00.000000Z</ToDate>
</DateTimeRange>
<ParameterList>
<Parameter pid="3623" name="ACCT7509" type="D" prodIndex="1" hduIndex="1"/>
<Parameter pid="3624" name="AW1T7509" type="D" prodIndex="1" hduIndex="2"/>
. . .
<Parameter pid="27667" name="DSST1065" type="D" prodIndex="5" hduIndex="7843"/>
</ParameterList>
<HKTMProductList>
<Product index="1" id="EUC_SOC_HKTM-AOCS_20211029T070000-20211029T080000">
<HDU index="1" pid="3623" paramName="ACCT7509" type="D"/>
<HDU index="2" pid="3624" paramName="AW1T7509" type="D"/>
. . .
<HDU index="1733" pid="25115" paramName="ATGT6991" type="A13"/>
</Product>
. . .
<Product index="5" id="EUC_SOC_HKTM-others_20211029T070000-20211029T080000">
<HDU index="1" pid="1" paramName="DJJT1100" type="X"/>
<HDU index="2" pid="2" paramName="DJJT1139" type="X"/>
. . .
<HDU index="7843" pid="27667" paramName="DSST1065" type="D"/>
</Product>
</HKTMProductList>
<HKTMContainer>
<File filestatus="PROPOSED">
<FileName>EUC_SOC_HKTM-AOCS_20211029T070000-20211029T080000.fits</FileName>
</File>
<File filestatus="PROPOSED">
<FileName>EUC_SOC_HKTM-VIS_20211029T070000-20211029T080000.fits</FileName>
</File>
<File filestatus="PROPOSED">
<FileName>EUC_SOC_HKTM-NISP_20211029T070000-20211029T080000.fits</FileName>
</File>
<File filestatus="PROPOSED">
<FileName>EUC_SOC_HKTM-FGS_20211029T070000-20211029T080000.fits</FileName>
</File>
<File filestatus="PROPOSED">
<FileName>EUC_SOC_HKTM-others_20211029T070000-20211029T080000.fits</FileName>
</File>
</HKTMContainer>
</Data>
</dpd-le1-hktm:DpdHKTMProduct>
Finally, you can see below an excerpt of the metadata keywords for the different table extensions, each corresponding to a different parameter, in the FITS files.
# HDU 0 in EUC_SOC_HKTM-VIS_20211029T070000-20211029T080000.fits:
SIMPLE = T / conforms to FITS standard
BITPIX = 8 / array data type
NAXIS = 0 / number of array dimensions
EXTEND = T
CREATOR = 'HKTMProductGenerator 3.2.1'
OBSERVER= 'Euclid Operator'
COMMENT Multitable FITS file, with data retrieved from ARES system
COMMENT File contains data for parameters in VIS group
# HDU 1 in EUC_SOC_HKTM-VIS_20211029T070000-20211029T080000.fits:
XTENSION= 'BINTABLE' / binary table extension
BITPIX = 8 / array data type
NAXIS = 2 / number of array dimensions
NAXIS1 = 16 / length of dimension 1
NAXIS2 = 360 / length of dimension 2
PCOUNT = 0 / number of group parameters
GCOUNT = 1 / number of groups
TFIELDS = 2 / number of table fields
TTYPE1 = 'TIMESTAMP'
TFORM1 = 'K '
TTYPE2 = 'VMGT3035'
TFORM2 = '8A '
EXTNAME = 'VMGT3035' / extension name
. . .
# HDU 46 in EUC_SOC_HKTM-VIS_20211029T070000-20211029T080000.fits:
XTENSION= 'BINTABLE' / binary table extension
BITPIX = 8 / array data type
NAXIS = 2 / number of array dimensions
NAXIS1 = 16 / length of dimension 1
NAXIS2 = 1800 / length of dimension 2
PCOUNT = 0 / number of group parameters
GCOUNT = 1 / number of groups
TFIELDS = 2 / number of table fields
TTYPE1 = 'TIMESTAMP'
TFORM1 = 'K '
TTYPE2 = 'VMGT3022'
TFORM2 = 'D '
EXTNAME = 'VMGT3022' / extension name
. . .