This page was created by the IDL library routine mk_html_help2.

Last modified: Tue May 7 11:36:21 2013.


Directory Listing of Routines


Routine Descriptions

CRIB_LSHELL

[Next Routine] [List of Routines]

 Name: crib_lshell
 
 Purpose: Demonstrates usage of basic L-shell code 
          using THEMIS data (calculate_lshell.pro) 
 
 Note: The l-shell code requires the IDL geopack routines 
 
 
 $LastChangedBy:  $
 $LastChangedDate:  $
 $LastChangedRevision:  $
 $URL:  $

(See themis/examples/crib_lshell.pro)


FAC_CRIB

[Previous Routine] [Next Routine] [List of Routines]
Procedure: fac_crib

Purpose:  A crib on showing how to transform into field aligned coordinates

Notes:

 $LastChangedBy: aaflores $
 $LastChangedDate: 2013-04-01 15:47:32 -0700 (Mon, 01 Apr 2013) $
 $LastChangedRevision: 11930 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/fac_crib.pro $

(See themis/examples/fac_crib.pro)


MVA_CRIB

[Previous Routine] [Next Routine] [List of Routines]
Procedure: mva_crib

Purpose:  A crib on showing how to transform into minimum variance
analysis coordinates

Notes:

 $LastChangedBy: aaflores $
 $LastChangedDate: 2013-04-01 15:47:32 -0700 (Mon, 01 Apr 2013) $
 $LastChangedRevision: 11930 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/mva_crib.pro $

(See themis/examples/mva_crib.pro)


RXY_CRIB

[Previous Routine] [Next Routine] [List of Routines]
Procedure: rxy_crib.pro

Purpose:  A crib showing how to transform data into the RXY coordinate system. This
  coordinate system is a variant of GSM that has the GSM Z axis, but the XY-plane is 
  rotated so that the X-axis is on the Earth->Spacecraft line, and more positive values
  are further from the earth.

Notes:

  Code heavily based on make_mat_Rxy.pro & transform_gsm_to_rxy.pro by Christine Gabrielse(cgabrielse@ucla.edu)

 $LastChangedBy: aaflores $
 $LastChangedDate: 2013-04-01 15:47:32 -0700 (Mon, 01 Apr 2013) $
 $LastChangedRevision: 11930 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/rxy_crib.pro $

(See themis/examples/rxy_crib.pro)


SSE_CRIB

[Previous Routine] [Next Routine] [List of Routines]
Procedure: sse_crib.pro

Purpose:  A crib showing how to transform data from GSE to SSE coordinate system. 
   SSE is defined as:
        X: Moon->Sun Line projected into the ecliptic plane
        Y: Z x X
        Z: Ecliptic north

Notes:

  Code heavily based on make_mat_Rxy.pro & transform_gsm_to_rxy.pro by Christine Gabrielse(cgabrielse@ucla.edu)

 $LastChangedBy: jwl $
 $LastChangedDate: 2012-06-04 10:31:14 -0700 (Mon, 04 Jun 2012) $
 $LastChangedRevision: 10496 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/sse_crib.pro $

(See themis/examples/sse_crib.pro)


THM_CRIB_ASI

[Previous Routine] [Next Routine] [List of Routines]
thm_crib_asi.pro
usage:
 .run thm_crib_asi

 updated with data past 2006-01-01, Oct. 20, 2010

Written by Harald Frey
 $LastChangedBy: kenb-win2000 $
 $LastChangedDate: 2007-02-11 21:26:08 -0500 (Sun, 11 Feb 2007) $
 $LastChangedRevision: 379 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/examples/thm_crib_asi.pro $

(See themis/examples/thm_crib_asi.pro)


THM_CRIB_CALC

[Previous Routine] [Next Routine] [List of Routines]
procedure:  thm_crib_calc.pro

purpose: demonstrate how to use the mini-language program 'calc'

usage:
 .run thm_crib_fgm


 $LastChangedBy: pcruce $
 $LastChangedDate: 2008-09-15 17:05:42 -0700 (Mon, 15 Sep 2008) $
 $LastChangedRevision: 3501 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_calc.pro $

(See themis/examples/thm_crib_calc.pro)


THM_CRIB_COTRANS

[Previous Routine] [Next Routine] [List of Routines]
 Batch File: THM_CRIB_COTRANS

 Purpose:  Demonstrate how to use thm_cotrans and cotrans.
 Examples will be shown for both tplot variables and array data.

 Calling Sequence:
 .run thm_crib_cotrans, or using cut-and-paste.

 Arguements:
   None.

 Notes:
 None.

 $LastChangedBy: crussell $
 $LastChangedDate: 2012-04-17 08:52:44 -0700 (Tue, 17 Apr 2012) $
 $LastChangedRevision: 10337 $
 $URL $

(See themis/examples/thm_crib_cotrans.pro)


THM_CRIB_EFI

[Previous Routine] [Next Routine] [List of Routines]
	Batch File: THM_CRIB_EFI

	Purpose:  Demonstrate the loading, calibration, and plotting
		of THEMIS EFI data.

	Calling Sequence:
	.run thm_crib_fbk, or using cut-and-paste.

	Arguements:
   None.

	Notes:
               ***WARNING: Running THM_CRIB_EFI (or likely just calling THM_LOAD_EFI) after THM_CRIB_CLEANEFW will result in the wrong plot labels.
                           The problem is probably in the way that some of the LASP code handles, or does not handle, the TPLOT labelling.
	None.

 $LastChangedBy: mfeuerstein $
 $LastChangedDate: 2009-08-26 17:06:41 -0700 (Wed, 26 Aug 2009) $
 $LastChangedRevision: 6642 $
 $URL $

(See themis/examples/thm_crib_efi.pro)


THM_CRIB_EFI_CAL

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_crib_efi_cal
PURPOSE:
 Allows comparison of calibrated, semi-calibrated and raw EFI data
CALLING SEQUENCE:
 thm_crib_efi_cal, date = date, probe = probe, datatype = datatype, $
                   trange = trange, /split_components
INPUT:
 None explicit
OUTPUT:
 No explicit output, a bunch of tplot variables are created for the
 given probe, date and datatype;for example, for probe='c' and
 datatype='eff', then varibles named: 'tha_eff_raw',
 'tha_eff_no_edc_offset', 'tha_eff_calfile_edc_offset', and
 'tha_eff_full' are created.
  Variable: tha_raw contains raw data
  Variable: tha_no_edc_offset contains data in physical units --
             with no EDC offsets subtracted from the spin-plane components E12 and E34.
  Variable: tha_calfile_edc_offset contains data in physical units -- 
             with EDC offsets obtained from the calibration file subtracted 
             from the spin-plane components E12 and E34.
  Variable: tha_full contains data in physical units -- 
             with spin-averaged EDC offsets from the spin-plane components E12 and E34.
KEYWORDS:
 date = the date for the data needed, not used if trange is set. The
        default is '2010-01-01'
 probe = probe, one of 'a', 'b', 'c','d', 'e'. The default is 'a'.
 datatype = the tye of EFI field data to be used, 'eff', 'efp',
            'efw'. The default is 'eff'.
 trange = an input time range, will supercede the date keyword
 split_components = if set, then call split_vec on the outputs to
                    compare individual components
HISTORY:
 20-sep-2010, jmm, jimm@ssl.berkeley.edu
 $LastChangedBy: jimm $
 $LastChangedDate: 2010-09-21 11:24:34 -0700 (Tue, 21 Sep 2010) $
 $LastChangedRevision: 7835 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_efi_cal.pro $

(See themis/examples/thm_crib_efi_cal.pro)


THM_CRIB_ESA_BGND_REMOVE

[Previous Routine] [Next Routine] [List of Routines]
procedure:  thm_crib_esa_bgnd_remove

purpose: Cleanup ESA background.

 This demonstrates the cleanup process for your event.
 Note you have to use the get routines I sent you that
 implement the bgnd_remove keyword. You simply replace the
 old ones with these ones in your thm idl directory.
 
 Crib provided by Vassilis

usage:
 .run thm_crib_esa_bgnd_remove
 
 SEE ALSO:
   thm_part_moments
   thm_part_getspec
   thm_esa_bgnd_remove
   get_th?_pe??.pro

 $LastChangedBy: pcruce $
 $LastChangedDate: 2010-12-02 15:16:40 -0800 (Thu, 02 Dec 2010) $
 $LastChangedRevision: 7917 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_esa_bgnd_remove.pro $

(See themis/examples/thm_crib_esa_bgnd_remove.pro)


THM_CRIB_ESA_READ_GMOMS

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_crib_esa_read_gmoms
PURPOSE:
This crib shows how to extract the ground-based moments from level 2
ESA data files

Note on variable/routine names: Particle variables/routines follow
the naming convention th[a/b/c/d/e]_p[e/s][i/e][f/r/b] where
th=themis, [a/b/c/d/e]=spacecraft, p=particle, [e/s]=ESA or SST
instrument, [i/e]=ion/electron, [f/r/b]=full/reduced/burst
distribution

 3-dec-2007, jmm, jimm@ssl.berkeley.edu
 $LastChangedBy: jimm $
 $LastChangedDate: 2007-12-03 17:40:09 -0800 (Mon, 03 Dec 2007) $
 $LastChangedRevision: 2139 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_esa_read_gmoms.pro $

(See themis/examples/thm_crib_esa_read_gmoms.pro)


THM_CRIB_ESA_SLICE2D

[Previous Routine] [Next Routine] [List of Routines]
Procedure: thm_crib_esa_slice2d

Propose:   Example to call the pro file of thm_esa_slice2d. PNG or PS files of ESA (ion or
           electron) Distribution Functions for the spacecraft (sc) and the type of data (full, reduced
           or burst) would be automatically printed, and the output file would be a 2-D slice of the
           3-D distribution function. The detailed slice properties (such as the definition of x and y
           axis, the two limits of the slice, etc) can be found in thm_esa_slice2d.

Remarks:   You can select a start time and an end time to produce a set of distribution function plots
           with the time increments (specified by INCREMENT) no less than 3 seconds. For each plot, it
           is allowed to have a longer interval than 3 seconds (specified by TIMEINTERVAL) with the
           distribution function being averaged during the whole time interval. Also you need to designate
           the folder (specified by OUTPUTFOLDER) that you wish to put the output files.

LAST EDITED BY XUZHI ZHOU 4-24-2008

(See themis/examples/thm_crib_esa_slice2d.pro)


THM_CRIB_EXPORT

[Previous Routine] [Next Routine] [List of Routines]
	Batch File: THM_CRIB_EXPORT

	Purpose:  Demonstrate tplot export functions

	Calling Sequence:
	.run thm_crib_export, or using cut-and-paste.

	Arguements:
   None.

	Notes:
	None.

 $LastChangedBy: jimm $
 $LastChangedDate: 2010-04-07 14:44:00 -0700 (Wed, 07 Apr 2010) $
 $LastChangedRevision: 7468 $
 $URL $

(See themis/examples/thm_crib_export.pro)


THM_CRIB_FAC

[Previous Routine] [Next Routine] [List of Routines]
Procedure: thm_crib_fac

Purpose:  A crib on showing how to transform into field aligned coordinates DSL coordinates

Notes:

 $LastChangedBy: jimm $
 $LastChangedDate: 2010-04-07 14:44:00 -0700 (Wed, 07 Apr 2010) $
 $LastChangedRevision: 7468 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_fac.pro $

(See themis/examples/thm_crib_fac.pro)


THM_CRIB_FBK

[Previous Routine] [Next Routine] [List of Routines]
	Batch File: THM_CRIB_FBK

	Purpose:  Demonstrate the loading, calibration, and plotting
		of THEMIS FBK (Filter Bank) spectral data.

	Calling Sequence:
	.run thm_crib_fbk, or using cut-and-paste.

	Arguements:
   None.

	Notes:
	None.

 $LastChangedBy: egrimes $
 $LastChangedDate: 2013-04-02 09:09:45 -0700 (Tue, 02 Apr 2013) $
 $LastChangedRevision: 11936 $
 $URL $

(See themis/examples/thm_crib_fbk.pro)


THM_CRIB_FFT

[Previous Routine] [Next Routine] [List of Routines]
	Batch File: THM_CRIB_FFT

	Purpose:  Demonstrate the loading, calibration, and plotting
		of THEMIS FFT spectra (ParticleBurst and WaveBurst) data

	Calling Sequence:
	.run thm_crib_fft, or using cut-and-paste.

	Arguements:
   None.

	Notes:
	None.

Written by Patrick Cruce(with liberal copying from thm_crib_fit.pro)

(See themis/examples/thm_crib_fft.pro)


THM_CRIB_FGM

[Previous Routine] [Next Routine] [List of Routines]
thm_crib_fgm.pro
usage:
 .run thm_crib_fgm


Written by Hannes Schwarzl and Ken Bromund
 $LastChangedBy: nikos $
 $LastChangedDate: 2013-04-01 19:26:28 -0700 (Mon, 01 Apr 2013) $
 $LastChangedRevision: 11931 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_fgm.pro $

(See themis/examples/thm_crib_fgm.pro)


THM_CRIB_FIT

[Previous Routine] [Next Routine] [List of Routines]
	Batch File: THM_CRIB_FIT

	Purpose:  Demonstrate the loading, calibration, and plotting
		of THEMIS FIT (On-Board E- and B-Field SpinFit) data.

	Calling Sequence:
	.run thm_crib_fit, or using cut-and-paste.

	Arguements:
   None.

	Notes:
	None.

Written by John Bonnell
 $LastChangedBy: nikos $
 $LastChangedDate: 2013-04-01 19:26:28 -0700 (Mon, 01 Apr 2013) $
 $LastChangedRevision: 11931 $
 $URL $

(See themis/examples/thm_crib_fit.pro)


THM_CRIB_GMAG

[Previous Routine] [Next Routine] [List of Routines]
pro thm_crib_gmag
 This is an example crib sheet that will load ground mag data.
 Open this file in a text editor and then use copy and paste to copy
 selected lines into an idl window. Or alternatively compile and run
 using the command:
 .RUN THM_CRIB_GMAG

(See themis/examples/thm_crib_gmag.pro)


THM_CRIB_MAKE_AE

[Previous Routine] [Next Routine] [List of Routines]
pro thm_crib_make_AE

 This is an example crib sheet that will calculate and plot "pseudo" geomagnetic
 indices (thmAE, thmAU, thmAL) as derived from THEMIS ground magnetometer data.
 In future, it is planned to include ground magnetometer data from other magnetometer
 networks. Note that currently the calculation of these "pseudo" indices does not
 subtract quiet day variation but simply the median.

 Open this file in a text editor and then use copy and paste to copy
 selected lines into an idl window.


 Written by Andreas Keiling, 15 May 2008

 Modifications:
   Changed name from thm_crib_AE to thm_crib_make_AE, added print info/stops,
     remove DEL_DATA,'*' command, W.M.Feuerstein, 6/2/2008.

 $LastChangedBy: jimm $
 $LastChangedDate: 2009-02-06 13:01:05 -0800 (Fri, 06 Feb 2009) $
 $LastChangedRevision: 4910 $
 $URL $

(See themis/examples/thm_crib_make_ae.pro)


THM_CRIB_MOM

[Previous Routine] [Next Routine] [List of Routines]
pro thm_crib_mom
 This is an example crib sheet that will load onboard MOMent data.
 It also shows how to compute moments from the full distributions.
 Data is corrected for spacecraft potential.

 Open this file in a text editor and then use copy and paste to copy
 selected lines into an idl window. Or alternatively compile and run
 using the command:
 .RUN THM_CRIB_MOM

(See themis/examples/thm_crib_mom.pro)


THM_CRIB_MOM_DEAD_TIME_CORRECT

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_crib_mom_dead_time_correct
PURPOSE:
 example for use of dead time corrections for on-board moments
 calculated from ground-based moments.
CALLING SEQUENCE:
 thm_crib_mom_dead_time_corrections

(See themis/examples/thm_crib_mom_dead_time_correct.pro)


THM_CRIB_MVA

[Previous Routine] [Next Routine] [List of Routines]
Procedure: thm_crib_mva

Purpose:  A crib on showing how to transform into minimum variance
analysis coordinates

Notes:

 $LastChangedBy: pcruce $
 $LastChangedDate: 2010-10-18 10:37:54 -0700 (Mon, 18 Oct 2010) $
 $LastChangedRevision: 7873 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_mva.pro $

(See themis/examples/thm_crib_mva.pro)


THM_CRIB_NEUTRAL_SHEET

[Previous Routine] [Next Routine] [List of Routines]
 Name: thm_crib_neutral_sheet

 Purpose:crib to demonstrate use of the neutral sheet routines
      and means for generating plots.

 Notes: 1. run it by compiling in idl and then typing ".go"
        or copy and paste.  

 SEE ALSO: idl/external/IDL_GEOPACK/trace/ttrace_crib.pro
           idl/ssl_general/cotrans/aacgm/aacgm_example.pro
           idl/themis/examples/thm_crib_tplotxy.pro

 $LastChangedBy: egrimes $
 $LastChangedDate: 2013-04-02 09:45:31 -0700 (Tue, 02 Apr 2013) $
 $LastChangedRevision: 11938 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_neutral_sheet.pro $

(See themis/examples/thm_crib_neutral_sheet.pro)


THM_CRIB_OVERPLOT

[Previous Routine] [Next Routine] [List of Routines]
 NAME: thm_crib_overplot

 PURPOSE: this crib describes how to generate overview plots
          if there are any arguments or features for these 
          procedures you would like to request, please feel 
          free to ask.

 $LastChangedBy: egrimes $
 $LastChangedDate: 2013-04-02 11:11:01 -0700 (Tue, 02 Apr 2013) $
 $LastChangedRevision: 11939 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_overplot.pro $

(See themis/examples/thm_crib_overplot.pro)


THM_CRIB_PART_GETSPEC

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE: thm_crib_part_getspec

  ***** A copy and paste crib *****

PURPOSE:
  A crib showing how to create energy and angular spectrograms using
  THM_PART_GETSPEC.

DETAILS
  THM_PART_GETSPEC is a wrapper that takes user input and creates tplot
  variables containing energy and/or angular spectra of ESA and SST data. The
  tplot variables created end in 'en_eflux' for energy spectra and 'an_eflux'
  plus a suffix corresponding to the type of angular spectrum specified by
  the ANGLE keyword for angular spectra by default. The user can select a
  range of probe(s), PROBE, and time range, TRANGE, of interest. The energy
  range of interest, ERANGE, is specified in eV. The user can also choose to
  create tplot variable for one or more data types, DATA_TYPE. The phi, PHI,
  and theta, THETA, ranges of interest, specified in DSL coordinates, can also
  be input, by the user. SUFFIX specifies a string that will be added to the
  *an_eflux*' tplot variables.

  If the phi range is greater than 360 degrees, then the phi bins at the
  beginning of the phi range are added and wrapped around the end of phi
  range. For example, if phi=[0,420], the phi bins corresponding to 0-60
  degrees are appended to the top of the plot.

  The START_ANGLE keyword specifies the start of the y-axis (phi). This is
  useful to center the spectra plot on the y-axis at a particular phi angle.
  If this keyword is not set, the y-axis starts at the first angle input to
  the PHI keyword.

  Use the ENERGY and ANGLE keywords to specify whether to create tplot
  variables for energy and/or angular spectra. The ANGLE keyword is also used
  to specify the type of angular spectrum created (e.g. phi, theta, pa, gyro).
  If neither of ENERGY and ANGLE keywords are specified, then both are turned
  on and the angular spectrum type defaults to phi.

  When set, the AUTOPLOT keyword enables to the tplot variables to be
  automatically plotted using some simple code located at the end of
  THM_PART_GETSPEC. The tplot variables created are properly formatted by
  THM_PART_MOMENTS2 and THM_PART_GETSPEC whether or not AUTOPLOT is set.
  Setting AUTOPLOT will also create a default tplot title containing the
  theta, phi, and energy ranges used to create the plot.

  After reading in the user's input, THM_PART_GETSPEC then calls THM_LOAD_SST
  and/or THM_LOAD_ESA_PKT to load the particle data.  THM_PART_MOMENTS2 is
  then called to format the spectra data based on the user's input and create
  the tplot variables.  THM_PART_MOMENTS2 calls THM_PART_GETANBINS in order to
  determine which energy/angle bins should be turned on/off. If there's a mode
  change, THM_PART_MOMENTS2 will re-call THM_PART_GETANBINS to account for any
  changes in the mode's anglemap.

  Pitch angle (ANGLE='pa') and gyrovelocity (ANGLE='gyro') spectra are generated
  by gridding a globe in a field-aligned coordinate (FAC) system at regular
  intervals along pitch (latitude) and gyrovelocity (longitude) as specified by
  the REGRID keyword. These FAC angle bins are then rotated back into the
  native DSL coordinates of the particle distribution data. The flux assigned
  to a given FAC angle bin is determined by native angle bin to which the center
  of FAC angle bin has been rotated. So if a FAC angle bin center is rotated
  into the 88th angle bin of the probe's particle distribution data, the flux
  for that FAC angle bin is the same as the flux in angle bin 88 of the
  particle distribution data. This rotation occurs for each time sample of the
  probe's particle data.

  The size of the FAC system grid is specified with the REGRID = [m,n], a two-
  element array in which the first element of the array specifies the number
  of grid elements in the gyrovelocity (longitudinal) direction while the second
  element sets he number of grid elements in the pitch (latitudinal)
  direction.  Increasing the number of elements in the FAC system grid will
  increase the accuracy of the pitch angle and gyrovelocity angle spectra as it
  decreases the degree to which the FAC bins overlap into one or more native
  distribution angle bin. Suitable numbers for m and n are numbers like 2^k.
  So far, k=2-6 has been tested and work. Other numbers will work provided
  180/n and 360/m are rational.

  The PITCH and GYRO keywords set the angle range of interest for pitch angle
  and gyrovelocity spectra plots similarly to the THETA and PHI keywords.
  Setting PHI and THETA will affect pitch angle and gyrovelocity plot, but the
  PITCH and GYRO keywords will be ignored when the ANGLE keyword is set to
  'PHI' or 'THETA'. Energy spectra, generated by using the /ENERGY keyword, will
  also be affected by PITCH and GYRO settings. 

  The OTHER_DIM keyword specifies the second axis for the field aligned
  coordinate system, necessary when plotting pitch angle or gyrovelocity spectra.
  See THM_FAC_MATRIX_MAKE for more info. If the keyword is not set in
  THM_PART_GETSPEC, OTHER_DIM defaults to 'mphigeo'.

  Also, when calculating pitch angle and/or gyrovelocity spectra
  THM_FAC_MATRIX_MAKE might require the data be de-gapped in order to
  calculate the rotation matrix. If so, the /degap keyword and tdegap keywords
  can passed in the call to THM_PART_GETSPEC.  See TDEGAP and
  THM_FAC_MATRIX_MAKE for more info.

  The /NORMALIZE keyword will normalize the flux for each time sample in a
  spectra plot to values between 0 and 1.
  
  BADBINS2MASK is a 0-1 array that will be mask SST bins with a NaN to
  eliminate artifacts such as sun contamination. The array should have the same
  number of elements as the number of angle bins for a given data type. A 0
  indicates that will be masked with a NaN. This is basically the output from
  the bins argument of EDIT3DBINS.
  
  The DATAGAP is very useful when you want to overlay burst mode spectra plots
  over full mode spectra. Set the DATAGAP keyword to a number of seconds that
  is less than the time gap of the burst data, but greater than the sample
  interval of the underlying full mode data.  This way the time gaps between
  the burst mode data won't be interpolated by SPECPLOT and cover up the full
  mode data between the burst mode data. 


NOTES:
	- All angles are in DSL coordinates
	- All datatypes are now valid
   - Theta input must satisfy: -90 < theta[0] < theta[1] < 90
   - Phi input must be specified in ascending order in degrees
     (e.g. [270, 450] or [-90, 90] to specify the 'daylight' hemisphere in DSL
     coordinates)
   - Incorporates improvements contained in v1.2

CREATED BY:  Bryan Kerr
VERSION: 1.2
  $LastChangedBy: aaflores $
  $LastChangedDate: 2011-02-17 16:08:13 -0800 (Thu, 17 Feb 2011) $
  $LastChangedRevision: 8241 $
  $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_part_getspec.pro $

(See themis/examples/thm_crib_part_getspec.pro)


THM_CRIB_PART_SLICE2D[1]

[Previous Routine] [Next Routine] [List of Routines]
Purpose: A crib detailing how to plot 2-D slices through THEMIS ESA and SST
         particle distributions using thm_part_dist_array, thm_part_slice2d, 
         and plot_part_slice2d
         
         Run "thm_ui_slice2d" on the IDL console to use for the GUI version.
         (Also part of the Analysis menu on the main THEMIS GUI) 


QUICK DESCRIPTION:  Particle distributions from the ESA and SST are used 
      to generate 2D slices of the particles’ three-dimensional velocity
      distributions. The slices show contoured particle data (in counts 
      or other units) plotted against their Cartesian velocities.  
      If the time range requested covers multiple distributions then 
      the data are averaged.


TYPE:  There are three methods of producing velocity slices:

   Geomtric (default):
     Exact method showing the bounds of all bins intersecting the slice plane.
     Values are averaged in cases of overlapping bins or when the slice plane 
     is coplanar with a bin's boundary.  
   
   2D Interpolation (from thm_esa_slice2d, keyword:/TWO_D_INTERP):
     Datapoints within the specified range are projected onto the slice plane 
     and linearly interpolated onto a regular grid. The range may be specified 
     by theta value (defualt) or z-axis value (in km/s) with respect to the 
     slice plane's coordinates (see ROTATION and COORD keywords).  

   3D Interpolation (keyword:/THREE_D_INTERP):
     The entire 3-dimensional distribution is linearly interpolated onto a 
     regular 3d grid and a this slice is extracted. This method works best with dense data.
       Note: - Interpolation may occur across data gaps or areas with recorded zeroes
             - Can be slow if slice resolution is high (>250)


KEYWORD INFO:

 COORD: Available coordinates (DSL by default):
        'DSL','GSM','GSE'

 ROTATION: The rotation keyword further specifies the coordinates system used
       to create a slice. A description of each new set of coordinates
       is given below.  Some rotations are invariant of the coordinates
       specified by COORD (BV,perp), other are not (xy,perp_xy). By default
       the slice will be cut along the x-y plane of the given coordinates.
                  
       Field alligned coordinates (FAC) options can be used in stead of the
       rotations listed below. See thm_fac_matrix_make for descriptions of each.
       
       'BV': The x axis is parallel to the B field; the bulk velocity defines the x-y plane.
       'BE': The x axis is parallel to the B field; the B x V(bulk) vector defines the x-y plane.
       'xy': The x axis is V_x and the y axis is V_y. (No rotation/default)
       'xz': The x axis is V_x and the y axis is V_z.
       'yz': The x axis is V_y and the y axis is V_z.
       'xvel': The x axis is V_x; the y axis is defined by the bulk velocity. 
       'perp': The x axis is the bulk velocity projected onto the plane normal to the B field; y is B x V(bulk)
       'perp_xy': Geometric xy coordinates projected onto the plane normal to the B field.
       'perp_xz': Geometric xz coordinates projected onto the plane normal to the B field.
       'perp_yz': Geometric yz coordinates projected onto the plane normal to the B field.
       
       Valid FACs:
       'xgse':  The x axis is the projection of the GSE x-axis
       'ygsm':  The y axis is the projection of the GSM y-axis
       'zdsl':  The y axis is the projection of the DSL z-axis
       'RGeo':  The x is the projection of radial spacecraft position vector (GEI)
       'mRGeo':  The x axis is the projection of the negative radial spacecraft position vector (GEI)
       'phiGeo':  The y axis is the projection of the azimuthal spacecraft position vector (GEI), positive eastward
       'mphiGeo':  The y axis is the projection of the azimuthal spacecraft position vector (GEI), positive westward
       'phiSM':  The y axis is the projection of the azimuthal spacecraft position vector in Solar Magnetic coords
       'mphiSM':  The y axis is the projection of the negative azimuthal spacecraft position vector in Solar Magnetic coords



 UNITS: Available units (DF by default):
        'Counts', 'DF', 'Rate', 'CRate', 'Flux', 'EFlux'


CONTAMINATION REMOVAL: See the documentation in THM_PART_DIST_ARRAY for options on 
         contamination removal. The contamination/background removal keywords used with
         THM_PART_GETSPEC and THM_PART_MOMENTS may be used in calls to THM_PART_DIST_ARRAY.  
         Also see THM_CRIB_SST_CONTAMINATION and THM_CRIB_ESA_BGND_REMOVE.  



OTHER: A general overview of velocity slices can be found the THEMIS User's guide.
       Detailed information on keywords and usage can be found in the documentation for:
         thm_part_slice2d.pro        (main slices routine)
         plot_part_slice2d.pro       (slices plotting routine)
         thm_part_dist_array.pro     (particle data load routine)


NOTE: A second crib detailing how to export multiple slices at once 
      is at the bottom of this document. 

(See themis/examples/thm_crib_part_slice2d.pro)


THM_CRIB_PART_SLICE2D[2]

[Previous Routine] [Next Routine] [List of Routines]
 
 A Secondary Crib: Create Multiple Slices and Export:
 
 

(See themis/examples/thm_crib_part_slice2d.pro)


THM_CRIB_PLOTXY

[Previous Routine] [Next Routine] [List of Routines]
 Name: thm_crib_plotxy

 Purpose:crib to demonstrate capabilities of plotxy

 Notes: run it by compiling in idl and then typing ".go"
        or copy and paste.

 $LastChangedBy: pcruce $
 $LastChangedDate: 2008-02-06 13:43:58 -0800 (Wed, 06 Feb 2008) $
 $LastChangedRevision: 2352 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/ssl_general/trunk/tplot/tplotxy.pro $

(See themis/examples/thm_crib_plotxy.pro)


THM_CRIB_PLOTXYVEC

[Previous Routine] [Next Routine] [List of Routines]
 Name: thm_crib_plotxyvec

 Purpose:crib to demonstrate capabilities of plotxyvec

 Notes: run it by compiling in idl and then typing ".go"
        or copy and paste.

 The options:  hsize,color,hthick,solid, & thick from the arrow
    routine are usable in this routine.

 $LastChangedBy: lphilpott $
 $LastChangedDate: 2011-05-26 11:55:33 -0700 (Thu, 26 May 2011) $
 $LastChangedRevision: 8703 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_plotxyvec.pro $

(See themis/examples/thm_crib_plotxyvec.pro)


THM_CRIB_PLOTXYZ

[Previous Routine] [Next Routine] [List of Routines]
 Name: thm_crib_plotxyz

 Purpose:crib to demonstrate capabilities of plotxyz

 Notes: run it by compiling in idl and then typing ".go"
        or copy and paste.

 SEE ALSO: bin1d.pro,bin2d.pro,plotxyz.pro

 $LastChangedBy: pcruce $
 $LastChangedDate: 2008-02-06 13:43:58 -0800 (Wed, 06 Feb 2008) $
 $LastChangedRevision: 2352 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/ssl_general/trunk/tplot/tplotxy.pro $

(See themis/examples/thm_crib_plotxyz.pro)


THM_CRIB_READ_WRITE_ASCII_CMDLINE

[Previous Routine] [Next Routine] [List of Routines]
 Name: thm_crib_read_write_ascii_cmdline

 Purpose:crib to demonstrate use of the read_ascii_cmdline and 
    the write_ascii_cmdline IDL procedures


 SEE ALSO: idl/ssl_general/misc/write_ascii_cmdline.pro 
           idl/ssl_general/misc/write_ascii.pro 
           idl/ssl_general/misc/read_ascii_cmdline.pro
           and read_ascii.pro in the lib subdirectory of the idl distribution

 To run type 'thm_crib_read_write_ascii_cmdline'
 

(See themis/examples/thm_crib_read_write_ascii_cmdline.pro)


THM_CRIB_SCM

[Previous Routine] [Next Routine] [List of Routines]
 **********************************************************************
 thm_crib_scm.pro : IDL batch file to get, clean and calibrate SCM data
  with thm_cal_scm
 K. Bromund
 O. Le Contel & P. Robert, CETP
 **********************************************************************
 $LastChangedBy: jwl $
 $LastChangedDate: 2013-04-12 11:02:27 -0700 (Fri, 12 Apr 2013) $
 $LastChangedRevision: 12026 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_scm.pro $

(See themis/examples/thm_crib_scm.pro)


THM_CRIB_SLP_SSE

[Previous Routine] [Next Routine] [List of Routines]
  thm_crib_slp_sse

Purpose:
  Crib to demonstrate how to use Solar Lunar Planetary Data,
  And how to perform SSE transformation


 $LastChangedBy: jimm $
 $LastChangedDate: 2010-04-07 14:44:00 -0700 (Wed, 07 Apr 2010) $
 $LastChangedRevision: 7468 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_slp_sse.pro $

(See themis/examples/thm_crib_slp_sse.pro)


THM_CRIB_SPINFIT

[Previous Routine] [Next Routine] [List of Routines]
	Batch File: THM_SPINFIT

	Purpose:  Demonstration of finding spin fit parameters for spinning data.
   The FIT module calculates the E-Field and B-Field vectors by taking 32 points at equal angles
   and fitting a sine wave least squares fit to the data. The best fit of the data is defined by the
   formula: A + B*cos() + C*sin(). The module calculates the standard deviation of the fit
   called Sigma, and the number of points remaining in the curve called N.

	Calling Sequence:
	  Cut-and-paste the code to the command line.

	Arguments:
   required parameters:
     var_name_in = tplot variable name containing data to fit

   keywords:
    sigma = If set, will cause program to output tplot variable with sigma for each period.
    npoints = If set, will cause program to output tplot variable with number of points in fit.
    spinaxis = If set, program will output a tplot variable storing the average over the spin axis dimension
             for each time period.
    median  = If spinaxis set, program will output a median of each period instead of the average.
    plane_dim = Tells program which dimension to treat as the plane. 0=x, 1=y, 2=z. Default 0.
    axis_dim = Tells program which dimension contains axis to average over. Default 0.  Will not
             create a tplot variable unless used with /spinaxis.
    min_points = Minimum number of points to fit.  Default = 5.
    alpha = A parameter for finding fits.  Points outside of sigma*(alpha + beta*i)
          will be thrown out.  Default 1.4.
    beta = A parameter for finding fits.  See above.  Default = 0.4
    phase_mask_starts = Time to start masking data.  Default = 0
    phase_mask_ends = Time to stop masking data.  Default = -1
    sun2sensor = Tells how much to rotate data to align with sun sensor.


	Notes:
	The module determines which data is more than xN * �N (sN = standard deviation) away from fit,
   and removes those points and repeats the fit. The second time the standard deviation is
   smaller so the tolerance is increased a bit. The tolerance xN varies with try as:
   Alpha*NBeta, where A=1.4 and Beta=0.4 provide good results. The operation continues
   until no points are outside the bounds and the process is considered convergent.

Written by Katherine Ramer
 $LastChangedBy: Katherine Ramer$
 $LastChangedDate: 2010-04-07 14:44:00 -0700 (Wed, 07 Apr 2010) $
 $LastChangedRevision: 7468 $
 $URL $

(See themis/examples/thm_crib_spinfit.pro)


THM_CRIB_SST

[Previous Routine] [Next Routine] [List of Routines]
pro thm_sst_crib
 This is an example crib sheet that will load Solid State Telescope data.
 Open this file in a text editor and then use copy and paste to copy
 selected lines into an idl window. Or alternatively compile and run
 using the command:
 .RUN THM_SST_CRIB
Author: Davin Larson

Modified: 2007-07-19 by Matt Davis.  This a simplified version of Davin's
		original crib and is intended to demonstrate the very basics of
		loading in the SST energy spectrograms.
		The more comprehensive crib can be found with the SST routines in:
		idl/themis/spacecraft/particles/SST/thm_sst_crib.pro

 $Id: thm_crib_sst.pro 1586 2007-09-18 12:42:50Z davin-win $

(See themis/examples/thm_crib_sst.pro)


THM_CRIB_SST_CALIBRATIONS

[Previous Routine] [Next Routine] [List of Routines]
NAME:
 thm_crib_sst_calibrations
PURPOSE:
  This crib demonstrates how to use of the development branch SST calibration code.  
  (WARNING: the SST calibration code is in development, it is changing quickly!)

See Also:
  themis/spacecraft/particles/SST/SST_cal_workdir.pro
  thm_sst_convert_units2.pro

$LastChangedBy: pcruce $
$LastChangedDate: 2012-04-23 16:21:22 -0700 (Mon, 23 Apr 2012) $
$LastChangedRevision: 10356 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_sst_calibration.pro $

(See themis/examples/thm_crib_sst_calibration.pro)


THM_CRIB_SST_CONTAMINATION

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE: thm_crib_sst_contamination
Purpose: 1. Demonstrate the basic procedure for removal of sun contamination,
            electronic noise, and masking.
         2.. Demonstrate removal of suncontamination via various methods.  
         3. Demonstrate the correction of inadvertant masking in SST data
         4. Demonstrate scaling data for loss of solid angle in SST measurements.
         5. Demonstrate substraction of electronic noise by selecting bins in a specific region
         6. Show how to use these techniques for both angular spectrograms,energy spectrgrams, and moments.

SEE ALSO:
  thm_remove_sunpulse.pro(this routine has the majority of the documentation)
  thm_part_moments.pro, thm_part_moments2.pro, thm_part_getspec.pro
  thm_part_dist.pro, thm_sst_psif.pro, thm_sst_psef.pro,thm_sst_erange_bin_val.pro
  thm_crib_part_getspec.pro

 To run this crib either copy and paste text into command line or use .run thm_crib_sst_contamination

 $LastChangedBy: pcruce $
 $LastChangedDate: 2012-02-03 14:02:40 -0800 (Fri, 03 Feb 2012) $
 $LastChangedRevision: 9684 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_sst_contamination.pro $

(See themis/examples/thm_crib_sst_contamination.pro)


THM_CRIB_STATE

[Previous Routine] [Next Routine] [List of Routines]
	Batch File: THM_CRIB_STATE

	Purpose:  Demonstrate the loading, coordinate transformation,
	plotting and labeling with state data

	Calling Sequence:
	.run thm_crib_state, or using cut-and-paste.

	Arguements:
   None.

	Notes:
	None.

 $LastChangedBy: jimm $
 $LastChangedDate: 2010-04-07 14:44:00 -0700 (Wed, 07 Apr 2010) $
 $LastChangedRevision: 7468 $
 $URL $

(See themis/examples/thm_crib_state.pro)


THM_CRIB_SUPERPO_INTERPOL_HISTO

[Previous Routine] [Next Routine] [List of Routines]
	Batch File: THM_CRIB_SUPERPOSED_INTERPOL_HISTO

	Purpose:  Demonstrates the application of the routines
 		      superpo_interpol and superpo_histo

   Note:  The examples in this crib sheet call 'superpo_interpol'. Simply
          replace the calls with 'superpo_histo' to try the other routine.
          Both routines accept the same input parameters.

   Written by Andreas Keiling

 $LastChangedBy:   $
 $LastChangedDate:   $
 $LastChangedRevision:  $
 $URL $

(See themis/examples/thm_crib_superpo_interpol_histo.pro)


THM_CRIB_TPLOTXY

[Previous Routine] [Next Routine] [List of Routines]
 Name: thm_crib_tplotxy

 Purpose:crib to demonstrate capabilities of tplotxy

 Notes: run it by compiling in idl and then typing ".go"
        or copy and paste.

 $LastChangedBy: pcruce $
 $LastChangedDate: 2008-02-06 13:43:58 -0800 (Wed, 06 Feb 2008) $
 $LastChangedRevision: 2352 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/ssl_general/trunk/tplot/tplotxy.pro $

(See themis/examples/thm_crib_tplotxy.pro)


THM_CRIB_TPLOT_OVERLAY

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE: thm_crib_tplot_overlay

  ***** A copy and paste crib *****

PURPOSE:
  A crib showing how to overlay spectra on top of spectra.

DETAILS
  This crib shows how to combine full and burst mode spectra into one plot by
  overlaying the burst mode data on top of the full mode data.

  The DATAGAP keyword is very useful when you want to overlay burst mode
  spectra plots over full mode spectra. Set the DATAGAP keyword to a number
  of seconds that is less than the time gap of the burst data, but greater than
  the sample interval of the underlying full mode data.  This way the time gaps
  between the burst mode data won't be interpolated by SPECPLOT and cover up
  the full mode data between the burst mode data. 


CREATED BY:  Bryan Kerr

(See themis/examples/thm_crib_tplot_overlay.pro)


THM_CRIB_TRACE

[Previous Routine] [Next Routine] [List of Routines]
 Name: thm_crib_trace

 Purpose:crib to demonstrate use of Tsyganenko trace routines, and means for generating plots of trace routines.

 Notes: 1. run it by compiling in idl and then typing ".go"
        or copy and paste.  If you want, you can just edit the parameters for the
        routine and run it as is.
        
        2. There are commented sections, to do things like plot positions of ground stations and other spacecraft, or use other fields model.
           Just uncomment these sections to enable the desired behavior

 SEE ALSO: idl/external/IDL_GEOPACK/trace/ttrace_crib.pro
           idl/ssl_general/cotrans/aacgm/aacgm_example.pro
           idl/themis/examples/thm_crib_tplotxy.pro

 $LastChangedBy: egrimes $
 $LastChangedDate: 2013-04-02 14:39:29 -0700 (Tue, 02 Apr 2013) $
 $LastChangedRevision: 11940 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/thm_crib_trace.pro $

(See themis/examples/thm_crib_trace.pro)


THM_CRIB_TWAVPOL

[Previous Routine] [Next Routine] [List of Routines]
 **********************************************************************
 thm_crib_twavpol.pro : with twavpol.pro
 **********************************************************************
This version stores these outputs as tplot variables with the
specified prefix
         These are follows:

         Wave power: On a linear scale, at this stage no units

         Degree of Polarisation:
		This is similar to a measure of coherency between the input
		signals, however unlike coherency it is invariant under
		coordinate transformation and can detect pure state waves
		which may exist in one channel only.100% indicates a pure
		state wave. Less than 70% indicates noise. For more
		information see J. C. Samson and J. V. Olson 'Some comments
		on the description of the polarization states
		of waves' Geophys. J. R. Astr. Soc. (1980) v61 115-130

         Wavenormal Angle:
		the angle between the direction of minimum
		variance calculated from the complex off diagonal
		elements of the spectral matrix and the Z direction
		of the input
		ac field data. For magnetic field data in
		field aligned coordinates this is the
		wavenormal angle assuming a plane wave.

         Ellipticity:The ratio (minor axis)/(major axis) of the
		ellipse transcribed by the field variations of the
		components transverse to the Z direction. The sign
		indicates the direction of rotation of the field vector in
  		the plane. Negative signs refer to left-handed
		rotation about the Z direction. In the field
		aligned coordinate system these signs refer to
		plasma waves of left and right handed
		polarisation.

         Helicity:Similar to Ellipticity except defined in terms of the
	direction of minimum variance instead of Z. Stricltly the Helicity
	is defined in terms of the wavenormal direction or k.
	However since from single point observations the
	sense of k cannot be determined,  helicity here is
	simply the ratio of the minor to major axis transverse to the
       minimum variance direction without sign.


Written by : Kaori(I'll remember to get her last name soon)


 $LastChangedBy: pcruce $
 $LastChangedDate: 2007-12-06 14:56:54 -0800 (Thu, 06 Dec 2007) $
 $LastChangedRevision: 2161 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/ssl_general/trunk/misc/tplotxy.pro $

(See themis/examples/thm_crib_twavpol.pro)


TWAVPOL_SCM_CRIB

[Previous Routine] [List of Routines]

NAME:
 twavpol_scm_crib
 
Purpose:
 Demonstrate the usage of the wave polarization routines.
 
NOTES:
  Shortened version of Olivier Le Contel's <olivier.lecontel@lpp.polytechnique.fr> wave polarization
  crib(scm_mfa_wpol_ole_fc_crib.pro)
  


 $LastChangedBy: jwl $
 $LastChangedDate: 2012-06-04 10:34:11 -0700 (Mon, 04 Jun 2012) $
 $LastChangedRevision: 10498 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/tags/tdas_8_00/idl/themis/examples/twavpol_scm_crib.pro $

(See themis/examples/twavpol_scm_crib.pro)