Helios Data Structure on MODs

Data Structure

The data for each spectrum is contained in two separate records: a parameter record and a raw data record. The parameter record contains orbit/attitude information and all hydrodynamic quantities and is read using the Fortran structure GEN. The raw data record contains the raw count rate data and is read using the Fortran structures NDM, HDM1 or HDM2, depending on the data mode and format.
A Fortran include file (struct.inc) is used access these structures from all related programs. If this page and struct.inc differ, struct.inc is the definitive reference.

GEN parameter

Quantity                      Example      Origin         GEN-name    Format

Time of day (ms)             86399123    PB*  OUT(4,1)    mSec        char*8
Recordlabel (A)                     A    Calc  *          Seq         char*1
Year (-1900)                       74    PB*  OUT(2,1)    Year        byte
Day of year                       374    PB   OUT(3,1)    DOY         int*2
S/C ID (Helios 1,2)                 1    PB*  OUT(2,1)    Helios      byte
Heliogr. Longitude (deg)        246.1    PB   OUT(11,1)   HelLngAsc   real*4
S/C-Sun-Earth angle (deg)       123.1    PB   OUT(7,1)    HSEangle    real*4
Distance S/C-Sun (AU)            0.39    PB   OUT(8,1)    HelDisSun   real*4
Distance Earth-Sun (AU)          0.99    PB   OUT(10,1)   EarDisSun   real*4
Radial velocity S/C (AU/day)   -23.14    OA   ORA(8)      HelVrad     real*4
Normal velocity S/C.(AU/day)     1.23    OA   ORA(9)      HelVnorm    real*4
Carrington lat Earth (deg)      -7.12    PB   OUT(12,1)   EarCarLat   real*4
Carrington long Earth (deg)      5.23    Calc  *          EarCarLong  real*4
Carrington long S/C (deg)       128.1    Calc  *          HelCarLong  real*4
Carrington Rotation S/C          1649    Calc  *          HelCarRot   int*2
Carrington long Earth           349.4    Calc  *          HelLonEar   real*4
Carrington Rotation Earth        1649    Calc  *          EarCarRot   int*2
Solar Aspect angle (deg)        3.456    OA   ORA(15)     Aspect      real*4
Pitch angle                     89.12    OA   ORA(16)     Pitch       real*4
Average S/C spinrate (1/s)      60.01    OA   ORA(17)     SpinRate    real*4
Data Transmission Bitrate        2048    PB*  OUT(16,1)   BitRate     int*2
Distribution mode (0,...,7)         0    PB*  OUT(15,1)   DisMod      byte
Format (1,2,3,5)                    5    PB*  OUT(15,1)   Format      byte
       >> For Format=2,3 the HDM2 structure is used for the raw data
       >> For other values (1,5) the HDM1 structure is used
Data Mode (Normal=0/10, High=1/11)  1    PB*  OUT(17,1)   Mode        byte
       >> If data mode is larger 1, no raw spectral data are available
Shift Off or On (0/1)               1    PB*  OUT(17,1)   Shift       byte
Azimuth shift On or Off (0/1)       1    SDT   *          AzShift     byte
I1a/I3 On, or both Off (1/2/0)      1    PB*  OUT(16,1)   I1A_3       byte
I2a or I2b On (1/2)                 2    SDT   *          I2A_B       byte

Instrument I1a

Proton velocity (km/s)          734.5    PB   OUT(2,2)    Vp_I1A      real*4
Proton temperature (K)      1234567.8    PB   OUT(3,2)    Tp_I1A      real*4
Proton density (cm^-3)         123.45    PB   OUT(4,2)    Np_I1A      real*4
Flow angle Azimuth (deg)       23.123    PB   OUT(13,2)   AZp_I1A     real*4
Flow angle Elevation (deg)    -12.123    PB   OUT(12,2)   ELp_I1A     real*4
Helium velocity (km/s)        1456.12    PB   OUT(2,7)    Valpha      real*4
Helium temperature (K)     4567891.12    PB   OUT(3,7)    Talpha      real*4
Helium density (cm^-3)          12.34    PB   OUT(4,7)    Nalpha      real*4
Average zero rate               12.11    PB   OUT(16,2)   ZeroRate_I1Areal*4

Instrument I1b

Proton velocity (km/s)        1236.12    PB   OUT(2,8)    Vp_I1B      real*4
Proton temperature (K)     1234567.89    PB   OUT(3,8)    Tp_I1B      real*4
Proton density (cm^-3)         123.00    PB   OUT(4,8)    Np_I1B      real*4
Average zero rate               24.12    PB   OUT(16,8)   ZeroRate_I1Breal*4
Variation in zero rate          12.12    PB   OUT(17,8)   ZeroVar_I1B real*4

Instrument E2 (Magnetic field)

Bx (0.01 nT)                   -39.12    PB   FE2(1,1)    Bx          real*4
By (0.01 nT)                    40.11    PB   FE2(2,1)    By          real*4
Bz (0.01 nT)                   -23.11    PB   FE2(3,1)    Bx          real*4
Sigma Bx (0.01 nT)              23.11    PB   FE2(4,1)    BxSig       real*4
Sigma By (0.01 nT)              56.11    PB   FE2(5,1)    BySig       real*4
Sigma Bz (0.01 nT)              12.99    PB   FE2(6,1)    BzSig       real*4

NDM raw

Quantity                      Example      Origin         NDM-name    Format

Time of day (ms)             86399123    PB*  OUT(4,1)    mSec        char*8
Recordlabel (B)                     B    Calc  *          Seq         char*1
General quality word               24    SDT  JID1(15,1)  Qw(1)       int*4
Quality word I1a                   27    SDT  JID1(16,1)  Qw(2)       int*4
             I1b                   25    SDT  JID1(19,1)  Qw(5)       int*4
             I3                    01    SDT  JID1(18,1)  Qw(4)       int*4
             I2                    21    SDT  JID1(17,1)  Qw(3)       int*4
Initial Data,    n=1,8          61680    SDT  JID1(19+n)  Init(n)     int*4
Max. Adresses   energy             12    SDT  JID1(12)    MaxEn       byte
                azimuth             7    SDT  JID1(13)    MaxAz       byte
                elevation           5    SDT  JID1(14)    MaxEl       byte
Mass channel (I3)                   9    SDT  JID1(11)    Mass        byte
Count rates
 I1b          En=1,32              24    SDT  FI1B(nE)    I1B(nE)     real*4
 I1a (integr) En=1,32               1    SDT  FINT(nE)    I1Aint(nE)  real*4
 I2   Az=1,8; En=1,16             567    SDT
                          JIS2((nE-1)*8+nA)   I2AB(nA,nE)             int*4
       >> only the first 128 values of JIS2 are used in I2AB
 I1a/I3 nEl=1,5; nAz=1,5; nE=1,9    0    SDT
                          FIS1(nEl,nAz,nE)    I1A_3(nE1,nAz,nE)       real*4
       >> array elements with identical indices are moved from FIS1 to I1A_3
       >> element I1A_3(3,3,3) (usually) contains data for the MaxAdr channels

HDM raw

Quantity                      Example      Origin         GEN-name    Format

Time of day (ms)             86399123    PB*  OUT(4,1)    mSec        char*8
Recordlabel (B)                     B    Calc  *          Seq         char*1
Time of day (ms)     n=2,4   86409145    PB*  JID1(7,n)   mSecE(n)    real*4
General quality word n=1,4         24    SDT  JID1(15,n)  Qw(1,n)     int*4
Quality word I1a     n=1,4         27    SDT  JID1(16,n)  Qw(2,n)     int*4
             I1b     n=1,4         25    SDT  JID1(19,n)  Qw(3,n)     int*4
             I3      n=1,4         01    SDT  JID1(18,n)  Qw(4,n)     int*4
             I2      n=1,4         21    SDT  JID1(17,n)  Qw(5,n)     int*4
Initial Data, m=1,8; n=1,4      61680    SDT  JID1(m,n)   Init(m,n)   int*4
Max. Adresses  energy,    n=1,4    12    SDT  JID1(12,n)  MaxEn(n)    byte
               azimuth,   n=1,4     7    SDT  JID1(13,n)  MaxAz(n)    byte
               elevation, n=1,4     5    SDT  JID1(14,n)  MaxEl(n)    byte
Mass channel (I3)         n=1,4     9    SDT  JID1(11,n)  Mass(n)     byte
Count rates
 I1B          nE=1,32              24    SDT  FI1B(nE)    I1B(nE)     real*4
 I1a (integr) nE=1,32               1    SDT  FINT(nE)    I1Aint(nE)  real*4
 I2   nA=1,8; nE=1,32             567    SDT              I2AB(nA,nE)
                                              JIS2((nE-1)*8+nA)       int*4
 I1a/I3      E1,A1,E1               0    SDT  FIS1(1,1,1) I13(1)      real*4
             E5,A5,E9              21    SDT  FIS1(7,7,32) I13(392)   real*4
 I1a/I3 nEl=1,7; nAz=1,7; nE=1,32   0    SDT              I1A_3(nE1,nAz,nE)
                                              FIS1(nEl,nAz,nE)        real*4
       >> array elements with identical indices are moved from FIS1 to I1A_3
       >> For structure HDM2 the number of elevations is 7.

Last modified: 12 Feb 1999, Kevin Ivory