This page was created by the IDL library routine mk_html_help2.

Last modified: Mon Oct 31 12:42:20 2011.


Directory Listing of Routines


Routine Descriptions

THM_PART_DIST[2]

[Next Routine] [List of Routines]
NAME:
 thm_part_dist
PURPOSE:
 wrapper function around the different routines called 'get_p???'
 used for ESA particle data and 'thm_sst_p???' routines that extract
 SST data.
 
 This is a working version for development of SST calibrations.
INPUT:
 format = a string denoting the data that is desired: options are:
          'tha_peif': Full Esa mode data, ions, probe A
          'tha_peef': Full Esa mode data, electrons, probe A
          'tha_peir': Reduced Esa mode data, ions, probe A
          'tha_peer': Reduced Esa mode data, electrons, probe A
          'tha_peir': Burst Esa mode data, ions, probe A
          'tha_peer': Reduced Esa mode data, electrons, probe A
          'tha_psif': Full Sst mode data, ions, probe A
          'tha_psef': Full Sst mode data, electrons, probe A
          'tha_psir': Reduced Sst mode data, ions, probe A
          'tha_pser': Reduced Sst mode data, electrons, probe A
         For other probes, just replace 'tha' with the appropriate
         string, 'thb', 'thc', 'thd', 'the'
          If this is not set, then the string is constructed from the
          type and probe keywords
 time = an input time, if not passed in, then this routine will
        attempt to get the time from plotted data, via ctime, unless
        the index keyword is passed in (for SST) or
        when start, en, advance, retreat, or index are passed in.
KEYWORDS:
 type = 4 character string denoting the type of data that you need,
        e.g., 'peif' for full mode esa data
 probe = the THEMIS probe, 'a','b','c','d','e'
 cursor = if set, then choose a time from the plot, using
          ctime.pro. This overrides any input -- that is, the
          variable that was used becomes the input variable and the
          time obtained becomes the time of the data.
 index = an index for the data point that is to be returned
 start (ESA only) = if set, then get the first saved data point
 en (ESA only) = if set, get the last saved data point
 advance (ESA only) = if set, get the data point after the one that
                      was gotten last
 retreat (ESA only) = if set, get the data point before the one that
                      was gotten last
 times = if set, returns the time array for all the saved data points
OUTPUT:
 dat = the '3d data structure' for the given data type: In general
       this will be different for different data types, but there are
       elements that are common to all, Here is a sample for tha_psif
       data:
   PROJECT_NAME    STRING    'THEMIS'
   DATA_NAME       STRING    'SST Ion Full distribution'
   UNITS_NAME      STRING    'Counts'
   UNITS_PROCEDURE STRING    'thm_sst_convert_units'
   TPLOTNAME       STRING    ''
   TIME            DOUBLE       1.1837675e+09
   END_TIME        DOUBLE       1.1837676e+09
   TRANGE          DOUBLE    Array[2] ;;not always present
   INDEX           LONG                 4
   NBINS           LONG                64
   NENERGY         LONG                16
   MAGF            FLOAT     Array[3]
   SC_POT          FLOAT           0.00000
   MASS            FLOAT         0.0104390
   CHARGE          FLOAT           0.00000
   VALID           INT              1
   MODE            INT              0
   CNFG            INT            577
   NSPINS          INT             64
   DATA            FLOAT     Array[16, 64]
   ENERGY          FLOAT     Array[16, 64]
   THETA           FLOAT     Array[16, 64]
   PHI             FLOAT     Array[16, 64]
   DENERGY         FLOAT     Array[16, 64]
   DTHETA          FLOAT     Array[16, 64]
   DPHI            FLOAT     Array[16, 64]
   BINS            INT       Array[16, 64]
   GF              FLOAT     Array[16, 64]
   INTEG_T         FLOAT     Array[16, 64]
   DEADTIME        FLOAT     Array[16, 64]
   GEOM_FACTOR     FLOAT          0.100000
   ATTEN           INT             10
   ;Following fields added for ESA compatibility purposes
   DEAD            FLOAT          0.0
   ;Following fields added for calibration purposes, values are read from a file
   EFF             FLOAT     Array[16, 64] ;Detector Efficiency only 16x4 unique values
   ENERGY_SCALE    FLOAT     Array[16, 64] ;Energy Scale Factors only 4 unique values
   ENERGY_OFFSET   FLOAT     Array[16, 64] ;Energy Offsets only 4 unique values
   GF              FLOAT     Array[16, 64] ;Gfactor corrections, only 4 unique values
   
   Note: True Geometric factor = GEOM_FACTOR*GF,  GF are corrections for aperture variations
   

 NOTE: 1.  that the .time tag refers to the interval start time. The
 .trange tag gives the time range, and is not always present.
       2.  For documentation on sun contamination correction keywords that
       may be passed in through the _extra keyword please see:
       thm_remove_sunpulse.pro or thm_crib_sst_contamination.pro


$LastChangedBy: pcruce $
$LastChangedDate: 2011-03-03 15:00:29 -0800 (Thu, 03 Mar 2011) $
$LastChangedRevision: 8329 $
$URL: svn+ssh://thmsvn@ambrosia2.ssl.berkeley.edu/repos/thmsoc/tags/tdas_6_00_vmtest/idl/themis/spacecraft/particles/SST/SST_cal_workdir/thm_part_dist2.pro $

(See themis/spacecraft/particles/SST/SST_cal_workdir/thm_part_dist2.pro)


THM_SST_CALIBRATION_TEST

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_sst_calibration_test
PURPOSE:

  This routine is for testing new calibrations(will eventually be moved to QA directory) 

$LastChangedBy: pcruce $
$LastChangedDate: 2010-07-15 14:28:41 -0700 (Thu, 15 Jul 2010) $
$LastChangedRevision: 7713 $
$URL: svn+ssh://thmsvn@ambrosia2.ssl.berkeley.edu/repos/thmsoc/tags/tdas_6_00_vmtest/idl/themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_calibration_tests.pro $

(See themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_calibration_tests.pro)


THM_SST_CALIB_PARAMS2

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_sst_calib_params2
PURPOSE:
  This populates the correct fields of the dist struct so that data can be correctly calibrated.

Inputs:
  dist: The dist struct that will have its fields populated
  param_structs: An array of parameter structs that contains the calibration parameters for each time

Outputs:
  error: Set to 1 if error occurred and 0 otherwise.  If error occurs calling routine should halt.
    
NOTES:
  #1 dist.time should be set by the time this is called
  #2 uses the calibration parameters for full distribution on all types.

$LastChangedBy: pcruce $
$LastChangedDate: 2010-12-16 17:26:18 -0800 (Thu, 16 Dec 2010) $
$LastChangedRevision: 7929 $
$URL: svn+ssh://thmsvn@ambrosia2.ssl.berkeley.edu/repos/thmsoc/tags/tdas_6_00_vmtest/idl/themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_calib_params2.pro $

(See themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_calib_params2.pro)


THM_SST_CONVERT_UNITS2

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_sst_convert_units2
PURPOSE:

  This routine converts input data into the desired physical units 
  It is used as a callback function by ssl_general routines like moments_3d/conv_units
  
Inputs:
  data: data struct that is being converted, this structure will have its data mutated
  units: string identifying the desired output units
 
Outputs:
  scale: scale factor that was used to convert the data into the desired format, should have dimensions that match the data
  
SEE ALSO:
  thm_sst_energy_cal2
  moments_3d
  conv_units
  thm_convert_esa_units
  
NOTES:
  This code is based heavily on thm_convert_esa_units.  Looking there should be helpful in understand this code.

$LastChangedBy: pcruce $
$LastChangedDate: 2010-12-16 17:26:18 -0800 (Thu, 16 Dec 2010) $
$LastChangedRevision: 7929 $
$URL: svn+ssh://thmsvn@ambrosia2.ssl.berkeley.edu/repos/thmsoc/tags/tdas_6_00_vmtest/idl/themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_convert_units2.pro $

(See themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_convert_units2.pro)


THM_SST_DIST3D_16X64[1]

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_sst_dist3d_16x64
PURPOSE:
  This routine defines the appropriate distribution representation struct for 
  16 Energy and 64 angle SST data.
  

$LastChangedBy: pcruce $
$LastChangedDate: 2010-12-16 17:26:18 -0800 (Thu, 16 Dec 2010) $
$LastChangedRevision: 7929 $
$URL: svn+ssh://thmsvn@ambrosia2.ssl.berkeley.edu/repos/thmsoc/tags/tdas_6_00_vmtest/idl/themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_dist3d_16x64_2__define.pro $

(See themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_dist3d_16x64_2__define.pro)


THM_SST_DIST3D_16X64[2]

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_sst_dist3d_16x64
PURPOSE:
  This routine returns the appropriate distribution representation struct for 
  16 Energy and 64 angle SST data.(16 energy by 4 theta by 16 phi)
  Default and/or constant values will be populated.  At this point,
  the structure should be considered incomplete. 

$LastChangedBy: pcruce $
$LastChangedDate: 2010-07-15 14:05:27 -0700 (Thu, 15 Jul 2010) $
$LastChangedRevision: 7712 $
$URL: svn+ssh://thmsvn@ambrosia2.ssl.berkeley.edu/repos/thmsoc/tags/tdas_6_00_vmtest/idl/themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_dist3d_16x64_2.pro $

(See themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_dist3d_16x64_2.pro)


THM_SST_DIST3D_DEF

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_sst_dist3d_def
PURPOSE:
  This routine returns the appropriate distribution representation struct for 
  a particular number of SST angles in the data type.
  Default and/or constant values will be populated.  At this point,
  the structure should be considered incomplete. 

$LastChangedBy: pcruce $
$LastChangedDate: 2010-07-13 16:50:20 -0700 (Tue, 13 Jul 2010) $
$LastChangedRevision: 7708 $
$URL: svn+ssh://thmsvn@ambrosia2.ssl.berkeley.edu/repos/thmsoc/tags/tdas_6_00_vmtest/idl/themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_dist3d_def2.pro $

(See themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_dist3d_def2.pro)


THM_SST_ENERGY_CAL2

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_sst_energy_cal2
PURPOSE:
  This routine performs bin energy boundary calibrations.  Transforming DAP values into eV
  The routine directly modifies the dat struct according to parameters stored in the struct
  But results can be returned for reference.
  
Inputs:
  dat
  
Outputs:
  energy:  The midpoint of each energy bin
  denergy: The width of each energy bin

SEE ALSO:
  thm_sst_convert_units2

$LastChangedBy: pcruce $
$LastChangedDate: 2010-12-16 17:26:18 -0800 (Thu, 16 Dec 2010) $
$LastChangedRevision: 7929 $
$URL: svn+ssh://thmsvn@ambrosia2.ssl.berkeley.edu/repos/thmsoc/tags/tdas_6_00_vmtest/idl/themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_energy_cal2.pro $

(See themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_energy_cal2.pro)


THM_SST_READ_CALIBRATION_PARAMS

[Previous Routine] [List of Routines]
NAME:
 thm_sst_read_calibration_params
PURPOSE:
  This routine reads calibration parameters from a file.

Inputs:
  thx:  probe identifier string (e.g. 'tha','thb'...)
  species: 'e' or 'i', to indicate ion or electron
  dtype: distribution type 'f','b','r'

Returns:
  The parameter struct for the calibration file
    
NOTES:
  #1 Reading and applying the calibration parameters is done separately, because reading later when 
     they are applied leads to duplicated parameter reads. And because there is not enough information
     to apply parameters at load time.

$LastChangedBy: pcruce $
$LastChangedDate: 2010-07-15 14:05:27 -0700 (Thu, 15 Jul 2010) $
$LastChangedRevision: 7712 $
$URL: svn+ssh://thmsvn@ambrosia2.ssl.berkeley.edu/repos/thmsoc/tags/tdas_6_00_vmtest/idl/themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_read_calib_params.pro $

(See themis/spacecraft/particles/SST/SST_cal_workdir/thm_sst_read_calib_params.pro)