Download this file

PDS_VERSION_ID                   = PDS3                                       
                                                                              
RECORD_TYPE                      = STREAM                                     
RELEASE_ID                       = 0001                                       
REVISION_ID                      = 0000                                       
                                                                              
OBJECT                           = TEXT                                       
  PUBLICATION_DATE               = 2008-10-28                                 
  NOTE                           = "Description of the CALIB directory        
                                    contents for an ASPERA-3 release."        
END_OBJECT                       = TEXT                                       
END                                                                           
                                                                              
                   CALIB Directory Contents                                   
                                                                              
The CALIB directory contains calibration tables for a MEX ASPERA-3            
archive volume.  The files listed below are found in this directory.          
                                                                              
CALINFO.TXT    -  The file you are reading.                                   
                                                                              
IMA_MASS.TAB   -  The ASPERA-3 Ion Mass Analyzer (IMA) Mass channels data     
                  calibration table.  This table provides the background      
                  noise values and the correction ratio for each of the       
                  32 mass channels.  This table is applicable for all IMA     
                  sectors, and thus is used for all IMA_AZ* data products.    
                                                                              
IMA_MASS.LBL   -  PDS label that describes the ASPERA-3 Ion Mass Analyzer     
                  (IMA) Mass channels data calibration table.                 
                                                                              
IMA_ENERGYn.TAB -  The ASPERA-3 Ion Mass Analyzer (IMA) Energy steps data     
                   calibration tables.  These tables provide the center       
                   energy in eV for each energy step, and the fraction of     
                   noise dependent on energy step.  These tables also         
                   contain elevation angle information per elevation          
                   (polar) index and per energy step.  These tables are       
                   applicable for all IMA sectors, and thus used for all      
                   IMA_AZ* data.  Note that there are different tables        
                   for different time periods, so the tables are numbered     
                   where 'n' starts at 1.  The time periods each table        
                   covers is documented in the associated .LBL file.          
                   Beginning with table IMA_ENERGY9, a new table has been     
                   added with 'H' appended to 'n' (IMA_ENERGY9H) for use      
                   when in high resolution mode where only 32 energies and 6  
                   elevation angles are returned in telemetry.  This table    
                   covers the same time period as its associated table. The   
                   first time this mode is used is 12-13 November 2013 for    
                   testing, and then put into operation late December 2013.   
                                                                              
IMA_ENERGYn.LBL -  PDS labels that describe the ASPERA-3 Ion Mass Analyzer    
                   (IMA) Energy steps data calibration, tables including      
                   the time periods for which the associated table is valid.  
                                                                              
IMA_AZIMUTH.TAB - The ASPERA-3 Ion Mass Analyzer (IMA) Azimuth sectors data   
                  calibration table.  This table provides the central         
                  directions (in degrees) of each azimuth sector as well      
                  as the efficiencies and very rough estimation of the        
                  geometric factors for each of the sectors. There is one     
                  row per azimuth sector corresponding to each IMA_AZ*        
                  data product for a total of 16 rows (16 sectors).           
                                                                              
IMA_AZIMUTH.LBL - PDS label that describes the ASPERA-3 Ion Mass Analyzer     
                  (IMA) Azimuth sectors data calibration table.               
                                                                              
******************************* IMPORTANT NOTE *******************************
                                                                              
   The ASPERA-3 IMA data is complicated and there is no unique procedure to   
   calibrate the data.  Proper calibration depends on the data itself and     
   user specific judgments. There are many issues to address when analyzing   
   the ASPERA-3 IMA data. The IMA_CALIBRATION_REPORT.PDF (in the DOCUMENT     
   directory) addresses these issues and it is advised to contact the IMA     
   team (Rickard Lundin - rickard@irf.se, Stas Barabash - stas@irf.se, and    
   Andrei Fedorov - Andrei.Fedorov@cesr.fr) for guidance in analyzing IMA     
   data.  The calibration information and tables provided in this IMA data    
   set are to mainly describe how to remove background noise.  Although a     
   description and tables are provided in this IMA data set to convert from   
   raw counts [cnts/accum] to differential number flux [cnts/(cm**2-sr-s-eV)],
   the user is to BEWARE - the many issues to address are NOT taken into      
   account here.  For instance, the default geometric factor is used here     
   even though the geometric factor is dependent on the data itself           
   (different for O+ and H+).  This is just a very simplified procedure to    
   show how to convert IMA data from raw units to differential number flux    
   using the IMA tables.                                                      
                                                                              
 ** Please contact the ASPERA-3 IMA Team (Rickard Lundin - rickard@irf.se,    
    Stas Barabash - stas@irf.se, Andrei Fedorov - Andrei.Fedorov@cesr.fr)     
    for more information before using IMA data.                               
                                                                              
********************************** END NOTE **********************************
                                                                              
 Description of calibration table formulation and use:                        
                                                                              
   This is the calibration table formulation for all the IMA_AZ* data         
   products.  These tables provide calibration values (columns) for the       
   mass channels (IMA_MASS.TAB, 32 rows), the energy steps (IMA_ENERGYn.TAB,  
   96 (or 32) rows), and the azimuth sectors (IMA_AZIMUTH.TAB, 16 rows).      
   There is a description of each calibration value and how to apply them     
   to the SENSOR data for removing background noise and for converting raw    
   counts [cnts/accum] to differential number flux [cnts/(cm**2-sr-s-eV)].    
                                                                              
                                                                              
  Removing Background                                                         
  -------------------                                                         
                                                                              
   Four of the mass channels (0, 4, 10, and 22) have been identified as       
   not trustworthy.  So, the data in these must first be replaced.            
                                                                              
   Let each data value be represented by                                      
                                                                              
      Data(i)(j), where i represents the energy step (0-95 or 0-31)           
                   and j represents the mass channel (0-31)                   
                                                                              
   Replace data values in channel 0 with zeros:                               
                                                                              
      Data(i)(0)  = 0                                                         
                                                                              
   Replace data values in channels 4, 10, and 22 by averaging their           
   adjacent mass channel data values for each energy step:                    
                                                                              
      Data(i)(4)  = [Data(i)(3) + Data(i)(5)] / 2                             
      Data(i)(10) = [Data(i)(9) + Data(i)(11)] / 2                            
      Data(i)(22) = [Data(i)(21) + Data(i)(23)] / 2                           
                                                                              
  Now, calculate the Data Mean for each energy x mass matrix:                 
                                                                              
      NE = Number of energies: 96 or 32                                       
      N = NE * 32 (Number of samples: 96 or 32 energies x 32 mass channels)   
      E_M_MATRIX_SUM = SUM [Data(i)(j)]  for i=0-95 (or 0-31) and j=0-31      
      DATA_MEAN = E_M_MATRIX_SUM / N                                          
                                                                              
  Compute standard deviation, SD:                                             
                                                                              
      E_M_MATRIX_SQR_SUM = SUM {[Data(i)(j)]**2}  for i=0-95, j=0-31          
                                                  (or i=0-31)                 
                                                                              
                +-                                          -+                
                | N * E_M_MATRIX_SQR_SUM - E_M_MATRIX_SUM**2 |                
      SD = SQRT | ------------------------------------------ |                
                |                 N**2 - N                   |                
                +-                                          -+                
                                                                              
                                                                              
  If the standard deviation is greater than the data mean, then the           
  background mean is computed.  If standard deviation is less than or         
  equal to the data mean, then the data mean is the background mean.          
                                                                              
  The background mean is computed by excluding any data greater than          
  the data mean + 2 * standard deviation:                                     
                                                                              
  If SD ❯ DATA_MEAN, do the following:                                        
                                                                              
     NB = Number of data samples that meet the criteria                       
                                                                              
     If Data(i)(j) less than or equal to (DATA_MEAN + 2 * SD),                
       Add Data(i)(j) to BACKGROUND_SUM                                       
       Increment NB                                                           
                                                                              
     BACKGROUND_MEAN = BACKGROUND_SUM / NB                                    
                                                                              
  If SD ❮= DATA_MEAN, BACKGROUND_MEAN = DATA_MEAN                             
                                                                              
                                                                              
  C CODE EXAMPLE to compute BACKGROUND_MEAN:                                  
                                                                              
  E_M_MATRIX_SUM = 0;                                                         
  E_M_MATRIX_SQR_SUM = 0;                                                     
  N = NE*32; /* NE = 96 or 32 depending on mode */                            
             /* if operational index ❯ 63, NE=32 (high resolution mode) */    
                                                                              
  for (i=0; i ❮ NE; ++i)                                                      
  {                                                                           
     for (j=0; j ❮ 32; ++j)                                                   
     {                                                                        
        E_M_MATRIX_SUM = E_M_MATRIX_SUM + Data[i][j];                         
        DATA_SQR = Data[i][j] * Data[i][j];                                   
        E_M_MATRIX_SQR_SUM = E_M_MATRIX_SQR_SUM + DATA_SQR;                   
     }                                                                        
  }                                                                           
                                                                              
  DATA_MEAN = E_M_MATRIX_SUM / N;                                             
  SD = sqrt((N * E_M_MATRIX_SQR_SUM - E_M_MATRIX_SUM**2) / (N**2 - N));       
                                                                              
  if (SD ❯ DATA_MEAN)                                                         
  {                                                                           
     NB = 0;                                                                  
     BACKGROUND_SUM = 0;                                                      
                                                                              
     for (i=0; i ❮ NE; ++i)                                                   
     {                                                                        
        for (j=0; j ❮ 32; ++j)                                                
        {                                                                     
           if (Data[i][j] ❮= (DATA_MEAN + 2*SD))                              
           {                                                                  
              BACKGROUND_SUM = BACKGROUND_SUM + Data[i][j];                   
              NB = NB + 1;                                                    
           }                                                                  
        }                                                                     
     }                                                                        
     BACKGROUND_MEAN = BACKGROUND_SUM / NB;                                   
  }                                                                           
  else                                                                        
     BACKGROUND_MEAN = DATA_MEAN;                                             
                                                                              
                                                                              
  Computing and Subtracting Background Noise                                  
  ------------------------------------------                                  
                                                                              
  The IMA_MASS.TAB and IMA_ENERGYn.TAB calibration tables are used to         
  determine the background noise per mass channel, per energy step.           
  Please note that the correct IMA_ENERGYn.TAB file must be used based        
  on the time period.  Also, if data is sampled during high resolution        
  mode (op index ❯ 63), then the IMA_ENERGYnH.TAB file should be used for     
  the time period.  Another clue to use the high resolution table is if       
  only 32 energies are present.  Check the IMA_ENERGYn.LBL files for the      
  time period covered for that energy table where n = 1, 2, etc. (Use the     
  START_TIME and STOP_TIME values for time range of the corresponding         
  IMA_ENERGYn.TAB file.)  In addition, please note that negative values       
  for the CENTER_ENERGY in the energy tables indicate that IMA cannot         
  measure the positive ions on the given energy step so data at these         
  energy levels should be ignored and not used.  Also included in the         
  IMA_ENERGYn.TAB files are the elevation angles per index (polar angle       
  index found as a MODE value in the data files) and per energy step.         
  Columns 4-19 correspond to the elevation (polar) index and the 96 rows      
  correspond to the energy steps.  If in high resolution mode, then           
  columns 4-9 correspond to the elevation (polar) index and the 32 rows       
  correspond to the energy steps.  Please note that elevation angles less     
  than -50.0 (degrees) indicate invalid data that should be excluded from     
  data analysis.                                                              
                                                                              
  Let the background noise for each data value be represented by              
                                                                              
      BACKGROUND_NOISE(i)(j), where i represents the energy step (0-95/0-31)  
                              and j represents the mass channel (0-31)        
                                                                              
  In the IMA_MASS.TAB, column 1 gives the mass channel name to which          
  the calibration data applies.                                               
                                                                              
COLUMN 2 of IMA_MASS.TAB:  MASS_CHANNEL_NOISE per mass channel                
                                                                              
   This is the mass channel noise for all energy steps (i).                   
                                                                              
   BACKGROUND_NOISE(i)(j) = BACKGROUND_MEAN * MASS_CHANNEL_NOISE(j), j=0-31   
                                                                              
  In the IMA_ENERGYn.TAB, column 1 gives the energy index value for the       
  energy step the calibration data applies.                                   
                                                                              
COLUMN 3 of IMA_ENERGYn.TAB:  E_STEP_NOISE per energy step                    
                                                                              
   This is the energy step noise for all mass channels (j).                   
                                                                              
   BACKGROUND_NOISE(i)(j) = BACKGROUND_MEAN * E_STEP_NOISE(i), i=0-95 / 0-31  
                                                                              
                                                                              
  Now, the background noise needs to be adjusted based on summation modes.    
  Use the MODE DATA rows in the data files for the time period of the data    
  matrix (energy x mass) currently processing, Data(i)(j).  The values for    
  the following summation mode descriptions (defined in the label files as    
  SENSOR_NAME), are used to adjust the background noise.                      
                                                                              
     ASUM = "Azimuth Sum Mode" value in the data file                         
     PSUM = "Polar Angle Sum Mode" value in the data file                     
     MSUM = "Mass Channel Sum Mode" value in the data file                    
                                                                              
   ADJUST_FACTOR = 2**ASUM * 2**PSUM * 2**MSUM                                
                                                                              
   For example, if ASUM = 0, PSUM = 2, and MSUM = 3, then                     
                     ADJUST_FACTOR = 1 * 4 * 8 = 32                           
                                                                              
   The adjusted background noise is then:                                     
                                                                              
      ADJ_BCKGRND_NOISE(i)(j) = BACKGROUND_NOISE(i)(j) / ADJUST_FACTOR        
                                                                              
  Now subtract the adjusted background noise from the data:                   
                                                                              
   Adj_Data(i)(j) = Data(i)(j) - ADJ_BCKGRND_NOISE(i)(j)                      
                                                                              
  One last correction to make before converting to flux:                      
  Apply the mass correction ratio.                                            
                                                                              
COLUMN 3 of IMA_MASS.TAB:  MASS_CORR_RATIO per mass channel                   
                                                                              
   This is the mass channel correction ratio for all energy steps (i).        
                                                                              
   Bckgrnd_Removed_Data(i)(j) = Adj_Data(i)(j) * MASS_CORR_RATIO(j), j=0-31   
                                                                              
                                                                              
  Converting to Number Flux                                                   
  -------------------------                                                   
                                                                              
  To go from corrected cnts/accum to cnts/(cm**2-sr-s-eV):                    
                                                                              
   The differential number flux (DNF) per energy step (i),                    
   per mass channel (j), per anode (Azimuth Sector (k)) is:                   
                                                                              
                               Bckgrnd_Removed_Data(i)(j)                     
   DNF(i)(j) =  ---------------------------------------------------------     
                Detector_eff(k) * DATA_ACCUM * Geom_Fac(k) * center_eV(i)     
                                                                              
                                                                              
  In the IMA_AZIMUTH.TAB, column 1 gives the IMA Azimuth sector name to       
  which the calibration data applies.  This table contains one row per        
  IMA_AZ* data product.  Column 2 of the IMA_AZIMUTH.TAB contains the         
  central directions (in degrees) of each of azimuthal sector from +X         
  to +Z of S/C.                                                               
                                                                              
COLUMN 3 of IMA_AZIMUTH.TAB:  AZIMUTH_EFF per azimuth sector (IMA_AZ*)        
                                                                              
   This is the detector efficiency for each IMA azimuth anode (or sector).    
                                                                              
   Detector_eff(k) = AZIMUTH_EFF                                              
                                                                              
      where k is the row for the azimuth sector (IMA_AZ* data)                
                                                                              
 DATA_ACCUM is constant for all energy steps, mass channels, and azimuths.    
 DATA_ACCUM is 0.1209 seconds                                                 
                                                                              
COLUMN 4 of IMA_AZIMUTH.TAB:  GEOM_FACTOR per azimuth sector (IMA_AZ*)        
                                                                              
   This is the detector geometry factor (cm**2-ster-eV/eV).                   
                                                                              
   Geom_Fac(k) = GEOM_FACTOR                                                  
                                                                              
      where k is the row for the azimuth sector (IMA_AZ* data)                
                                                                              
COLUMN 2 of IMA_ENERGYn.TAB:  CENTER_ENERGY per energy step                   
                                                                              
   This is the center energy (eV) for each energy step (j).                   
                                                                              
    NOTE: Negative values indicate that IMA cannot measure the positive       
          ions on the given energy step and therefore data at these energy    
          steps should be ignored and not used in the data analysis.          
                                                                              
   Center_eV(j) = CENTER_ENERGY                                               
                                                                              
      where j is the corresponding ENERGY_INDEX based on the position         
          of the items in the data files, starting at 0                       
                                                                              
                                                                              
   This completes the set of terms needed to determine the differential       
number flux [cnts/(cm**2-sr-s-eV)] per energy step (i), per mass channel(j),  
per IMA Azimuth sector (IMA_AZ* data product (k)) using the equation given:   
                                                                              
                               Bckgrnd_Removed_Data(i)(j)                     
   DNF(i)(j) =  ---------------------------------------------------------     
                Detector_eff(k) * DATA_ACCUM * Geom_Fac(k) * center_eV(i)