This page was created by the IDL library routine mk_html_help2.

Last modified: Thu Aug 6 12:53:14 2020.


Directory Listing of Routines


Routine Descriptions

THM_UI_COORDINATE_SYSTEMS

[Next Routine] [List of Routines]
 NAME: 
     thm_ui_coordinate_systems

 PURPOSE:
     This object exists for two purposes:
         1) Maintain the list of coordinate systems used throughout SPEDAS 
            in a single location
         2) Encapsulate the methods that produce coordinate system lists
            for different contexts, e.g., the verify data panel, 
            load data panel, data processing panel, etc.
               
     Both are ultimately for code maintenance


 KEYWORDS:
     
 METHODS:
     makeCoordSysList: creates and returns a list of valid coordinate systems
     makeCoordSysListForSpinModel: creates and returns a list of valid 
         coordinate systems that don't require spin model variables to be loaded
     makeCoordSysListForTHEMIS: creates and returns a list of valid THEMIS-centric 
         coordinate systems ('dsl', 'ssl', 'spg')
     makeCoordSysListForTHEMISReqPos: creates and returns a list of valid THEMIS coordinate
         systems that require position data to be transformed to/from

 EXAMPLES:
     To make a simple list of general purpose coordinate systems:
        THEMIS> coordSysObj = obj_new('thm_ui_coordinate_systems') ; create the object
        THEMIS> print, coordSysObj->makeCoordSysList(/uppercase) ; make the list
           DSL SSL SPG GSM AGSM GSE GEI SM GEO MAG SEL SSE
        THEMIS> print, coordSysObj->makeCoordSysList(/uppercase, /include_none) ; include N/A 
           N/A DSL SSL SPG GSM GSE GEI SM GEO MAG SEL SSE
        THEMIS> print, coordSysObj->makeCoordSysList(/uppercase, /include_none, /include_all) ; includes 'N/A' and 'ALL'
           N/A DSL SSL SPG GSM GSE GEI SM GEO MAG SEL SSE ALL
        THEMIS> obj_destroy, coordSysObj ; delete the object


 NOTE: 
      All coordinate system lists exist in this object's constructor, with pointers
        to the lists in the objects state structure
        
      Changes to this object should be reflected in the corresponding test procedure, thm_ui_test_coordinate_systems_obj


$LastChangedBy: crussell $
$LastChangedDate: 2015-09-18 14:21:09 -0700 (Fri, 18 Sep 2015) $
$LastChangedRevision: 18843 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_4_0/projects/themis/spedas_plugin/thm_ui_cotrans/thm_ui_coordinate_systems__define.pro $

(See projects/themis/spedas_plugin/thm_ui_cotrans/thm_ui_coordinate_systems__define.pro)


THM_UI_COTRANS

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

Purpose:
  Perform coordinate transforms for THEMIS dproc plugin.
  This is the primary routine which loads support data
  as requested and calls thm_cotrans to perform the 
  transformation.

Calling Sequence:
  Called internally by SPEDAS 

API Input:
  active_data:  List of of tplot vars exported from the GUI for processing  

  support_parameters:  Structure containing options from the setup routine (thm_ui_cotrans_options)

  status_bar:  SPEDAS GUI status bar object
  history_window:  SPEDAS GUI history window object  

  _extra keyword also required by API

API Output:
  output_names:  List of tplot variables to be loaded into the GUI on completion.
  support_names:  List of support data to be left as tplot variables.
                  All other new tplot variables will be deleted on completion

Notes:
  This routine executes the core of the operation and should be replayable
  without required user input.  To that end, any user querries should be
  placed in the setup routine (thm_ui_cotrans_options).


$LastChangedBy: aaflores $
$LastChangedDate: 2015-04-24 18:45:02 -0700 (Fri, 24 Apr 2015) $
$LastChangedRevision: 17429 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_4_0/projects/themis/spedas_plugin/thm_ui_cotrans/thm_ui_cotrans.pro $

(See projects/themis/spedas_plugin/thm_ui_cotrans/thm_ui_cotrans.pro)


THM_UI_COTRANS_OPTIONS

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

Purpose:
  Gets and returns information required to perform THEMIS
  coordinate transforms in the SPEDAS GUI.
  This is the setup routine for thm_ui_cotrans and the 
  routine explicitly listed in the plugin text file.

Calling Sequence:
  Called internally by SPEDAS

API Input:
  gui_id:  Top level widget ID needed for building new windows
  
  status_bar:  SPEDAS GUI status bar object
  history_window:  SPEDAS GUI history window object  

  loaded_data:  SPEDAS loaded data object.
                Used to check necessity of loading THEMIS support data.  
  
API Output:
  plugin_structure:  Custom output structure used to pass information to
                     plugin's primary routine (thm_ui_cotrans).

Notes:
  This routine is for setup only.  Any action needed to replay the
  requested operation must occur in the primary routine (thm_ui_cotrans)
  instead of here.  This includes:
    -adding to or editing the GUI's loaded data
    -loading support data or other necessary tplot variables 


$LastChangedBy: aaflores $
$LastChangedDate: 2015-05-22 16:55:11 -0700 (Fri, 22 May 2015) $
$LastChangedRevision: 17684 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_4_0/projects/themis/spedas_plugin/thm_ui_cotrans/thm_ui_cotrans_options.pro $

(See projects/themis/spedas_plugin/thm_ui_cotrans/thm_ui_cotrans_options.pro)


THM_UI_REQ_SLP

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

NAME: 
  thm_ui_req_slp

PURPOSE:
  Determines availablity of solar/lunar ephemeris data.

CALLING SEQUENCE:
  General:
    bool = thm_ui_req_spin(inCoord,outCoord,trange [,loadedData])

  Example:
    if thm_ui_req_spin(inCoord,outCoord,trange,loadedData) then begin
      thm_load_slp,datatype='all',trange=trange
    endif

INPUT:
  inCoord: string storing the destination coordinate system (e.g. 'gse')
  outCoord: string storing the destination coordinate system (e.g. 'sse')
  trange: two element arraw storing the time range
  loadedData: gui loadedData object reference
 
OUTPUT:
  Returns boolean: 1 if required data is not present or does not cover
                   the time range, 0 otherwise.

NOTES:
  This code assumes that only explicit transformations into the
  coordinates in question will require slp data.

HISTORY:
  2015-04-24 - loaded data object now optional


$LastChangedBy: aaflores $
$LastChangedDate: 2015-04-24 18:45:02 -0700 (Fri, 24 Apr 2015) $
$LastChangedRevision: 17429 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_4_0/projects/themis/spedas_plugin/thm_ui_cotrans/thm_ui_req_slp.pro $

(See projects/themis/spedas_plugin/thm_ui_cotrans/thm_ui_req_slp.pro)


THM_UI_REQ_SPIN

[Previous Routine] [List of Routines]
NAME:
  thm_ui_req_spin

PURPOSE:
  Determines availability of parameters for spin model.

CALLING SEQUENCE:
  bool = thm_ui_req_spin(in_coord, out_coord, probe, trange [,loadedData])

  Example:
    if thm_ui_req_spin(in_coord, out_coord, probe, trange) then begin
      thm_load_state, probe=probe, trange=trange, /get_support_data
    endif

INPUT:
  in_coord:  string storing the original coordinate system
  out_coord:  a string storing the destination coordinate system
  probe:  string probe designation
  trange:  two element double storing requested time range
  loadedData:  (optional) SPEDAS loadedData object
 
OUTPUT:
  return value: 0 if required data is present for entire time range plus margin
                1 otherwise

NOTES:

HISTORY:
  2015-04-24 - loaded data object now optional


$LastChangedBy: aaflores $
$LastChangedDate: 2015-04-24 18:45:02 -0700 (Fri, 24 Apr 2015) $
$LastChangedRevision: 17429 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_4_0/projects/themis/spedas_plugin/thm_ui_cotrans/thm_ui_req_spin.pro $

(See projects/themis/spedas_plugin/thm_ui_cotrans/thm_ui_req_spin.pro)