This page was created by the IDL library routine
mk_html_help2.
Last modified: Wed May 14 01:32:11 2008.
et interface for calling tplot from the themis_w widget,
currently of limited usefulness, but expandable
CALLING SEQUENCE:
thm_ui_dproc, master_widget_id
INPUT:
master_widget_id = the id number of the widget that calls this
OUTPUT:
none, there are buttons to push for plotting, setting limits, not
sure what else yet...
HISTORY:
06-may-2008, cg, added check to validate data, any active data that
has dimensions ge 3 cannot be processed
added data check for despike, time deriv, wavelet,
powerspec, active data that has a y component > 6
cannot be processed
and finally, rearranged widgets to allow for a long
narrow message window
28-mar-2008, cg, added filename dialog box to ascii save option,
(See themis/common/thm_ui_timefix.pro)
NAME:
thm_check_valid_name
PURPOSE:
checks a string or array input against another array and 'all' to
find matches.
CALLING SEQUENCE:
ok_names = thm_check_valid_name(names, valid_names)
INPUT:
names = a string array of possible names for data types, stations,
etc...
valid_names = those names that will be valid
OUTPUT:
ok_names = the valid data names, if there are none, then the null
string is returned
KEYWORDS:
include_all = if set, include 'all' in the possible datanames
ignore_case = if set converts all inputs
loose_interpretation = if set, adds wild card '*'s to each end of
the input names -- used in thm_load_mom, and
thm_load_esa, where there are many L2 variables.
HISTORY:
22-jan-2007, jmm, jimm@ssl.berkeley.edu
11-feb-2007, jmm, Added loose_interpretation keyword
(See themis/common/thm_check_valid_name.pro)
dRevision: 241 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_check_valid_name.pro $
Function: thm_config_filedir.pro
Purpose: Get the applications user directory for THEMIS data analysis software
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
PRO themis_config
This procedure serves as the themis configuration file. It sets global (system)
variables and initializes devices
This procedure will define the location of data files and the data server.
This procedure is intended to be called from within the "THM_INIT" procedure.
This should be the only THEMIS file that requires modification for use in different
locations.
There is no need to modify this file if:
- Your computer is an SSL UNIX machine that mounts "/disks/data/" (i.e. ALL Linux and Solaris machines at SSL)
- You use a portable computer that will be caching files on a local hard drive.
Settings in this file will be overridden by settings in the environment.
(see setup_themis or setup_themis_bash for examples of setting environment
variables on UNIX-like systems. The environment can also be set on Windows
systems.)
KEYWORDS
no_color_setup added to prevent cronjob to crash, hfrey, 2007-02-10
Author: Davin Larson Nov 2006
jmm, 2007-05-17, Altered to read thm_comfig text file,
(See themis/common/thm_config.pro)
.berkeley.edu 11-feb-2007, jmm, Added loose_interpretation keyword $LastChangedBy: kenb-mac $ $LastChangedDate: 2007-01-26 15:52:34 -0800 (Fri, 26 Jan 2007) $ $LastChangedRevision: 241 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_check_valid_name.pro $
(See themis/common/thm_config_filedir.pro)
remote and local
directories, if they are not there
cg, 2008-5-6, reset default default directory
$LastChangedBy: jimm $
$LastChangedDate: 2008-05-13 18:23:04 -0700 (Tue, 13 May 2008) $
$LastChangedRevision: 3083 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_config.pro $
NAME:
thm_data2load
PURPOSE:
returns a list of variables that can be loaded for a given THEMIS
instrument. For the most part, it calls the appropriate thm_load
routine with the /valid_names keyword set. The dataypes and
valid_names keywords are used inconsistently in the thm_loads, and
do not allow for the distinction between level2 data that is
to be input from level2 files, and level2 data the is to be input
from level1 files and calbrated, cotrans'ed, etc... but has the same
name as an L2 variable. Designed to be called from
thm_ui_valid_dtype.pro
(See themis/common/thm_data_calibrated.pro)
the thm_loads, and do not allow for the distinction between level2 data that is to be input from level2 files, and level2 data the is to be input from level1 files and calbrated, cotrans'ed, etc... but has the same name as an L2 variable. Designed to be called from thm_ui_valid_dtype.pro
(See themis/common/thm_file_download.pro)
rument, level)
INPUT:
instrument = the THEMIS instrument: one of:
['asi', 'ask', 'esa', 'efi', 'fbk', 'fft', 'fgm', $
'fit', 'gmag', 'mom', 'scm', 'sst', 'state', 'bau', 'hsk', 'trg']
level = 'l1' for any data that can be gotten from the l1 file --
including calibrated, etc... 'l2' for data gotten from L2
files. 'l10' for data that only is loaded from L1 files. For
ESA data, 'L10' data and 'L1' data are gotten from the
packet files.
OUTPUT:
dtyp = a string array that can be used as an input to the datatype
keyword for the given instrument
HISTORY:
started on 31-Jan-2008, jmm, jimm@ssl.berkeley.edu, this is under
development for the next 6 months or so.
9-apr-2008, jmm, added all instruments, for Version 4_00
$LastChangedBy $
$LastChangedDate $
$LastChangedRevision $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_data2load.pro $
Function: THM_DATA_CALIBRATED
Purpose: Determine whether the data stored in a particular TPLOT variable has already been calibrated by examining the contents of it's DLIMIT structure.
(See themis/common/thm_gen_overplot.pro)
equence:
tplot_var = 'tha_eff'
get_data, tplot_var, data=d, limit=l, dlimit=dl
if thm_data_calibrated( dl) then return
; -- or --
if thm_data_calibrated('tha_eff') then return
Arguements:
DL, Anonymous STRUCT or tplot varaible name
Notes:
None.
$LastChangedBy: kenb-mac $
$LastChangedDate: 2007-05-02 17:25:43 -0700 (Wed, 02 May 2007) $
$LastChangedRevision: 629 $
$URL $
Purpose:
Generates esa overview plots for a given date
(See themis/common/thm_gui.pro)
RL $
Purpose:
Generates esa overview plots for a given date
this includes one day long plot and 4 1/4 day plots
It stores these plots in the current directory
Arguments:
date: the date for which the plots will be generated
directory(optional): an optional output directory
device(optional):switch to 'z' device for cron plotting
Example:
thm_esa_overviews,'2007-03-23',dir='~/out',device='z'
$LastChangedBy: jimm $
$LastChangedDate: 2008-03-07 14:08:42 -0800 (Fri, 07 Mar 2008) $
$LastChangedRevision: 2460 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_esa_overviews.pro $
Purpose:
Generates fgm overview plots for a given date
this includes one day long plot and 4 1/4 day plots
It stores these plots in the current directory
Arguments:
date: the date for which the plots will be generated
directory(optional): an optional output directory
device(optional):switch to 'z' device for cron plotting
$LastChangedBy: jimm $
$LastChangedDate: 2008-03-05 11:47:57 -0800 (Wed, 05 Mar 2008) $
$LastChangedRevision: 2449 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_fgm_overviews.pro $
Purpose: wrapper for the thm_fgm_overviews procedure
Arguments:
date(optional): the input date (default: current date)
reprocess(optional): set this keyword to reprocess all the
plots
test_reprocess(optional): set this keyword to perform jimm's
reprocessing test
directory(optional): the directory into which pngs will be
output (default: current working directory)
$LastChangedBy: pcruce $
$LastChangedDate: 2007-09-19 14:13:17 -0700 (Wed, 19 Sep 2007) $
$LastChangedRevision: 1598 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_fgm_shell.pro $
PROCEDURE: thm_file_download
PURPOSE: This is a general purpose routine will download all THEMIS data files within
a given time range.
It looks for all procedures that match: "thm_load_*.pro" and executes them with the /DOWNLOADONLY keyword set.
Warning - This is a BETA routine and may be deleted in a future release.
Purpose:
Generates a set of field and moment plots.
(See themis/common/thm_init.pro)
'z' device for cron plotting
Example:
thm_fitmom_overviews,'2007-03-23','b',dir='~/out',device='z'
$LastChangedBy: jimm $
$LastChangedDate: 2007-12-03 16:23:07 -0800 (Mon, 03 Dec 2007) $
$LastChangedRevision: 2138 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_sst_overviews.pro $
Purpose: To make mission overview plots of all instruments
Inputs: PROBES: spacecraft ('a','b','c','d','e')
DATE: the date string or seconds since 1970 ('2007-03-23')
DUR: duration (default units are days)
DAYS: redundant keyword to set the units of duration (but its comforting to have)
HOURS: keyword to make the duration be in units of hours
DEVICE: sets the device (x or z) (default is x)
MAKEPNG: keyword to generate 5 png files
DIRECTORY: sets the directory where the above pngs are placed (default is './')
FEARLESS: keyword that prevents program from quitting when it fears its in an infinite loop
(infinite loop is feared when catch statement has been call 1000 times)
DONT_DELETE_DATA: keyword to not delete all existing tplot variables before loading data in for
the overview plot (sometimes old variables can interfere with overview plot)
Example: thm_gen_overplot,probe='a',date='2007-03-23',dur=1
The above example will produce a full day plot in the X window.
Version:
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
NAME:
thm_gui
PURPOSE:
GUI for THEMIS data analysis
CALLING SEQUENCE:
thm_gui
INPUT:
none
OUTPUT:
none
HISTORY:
Version 2.0 jmm, jimm@ssl.berkeley.edu 25-apr-2007
jmm, 21-may-2007, Currently Only Loads data
jmm, 7-jun-2007, all buttons are now defined
jmm, 31-jul-2007, added warning for too long time ranges
jmm, 2-aug-2007, added widget_kill_request block so that
the pointers and progobj are cleaned up when you click
the 'x'
jmm, 11-sep-2007, added this comment
jmm, 25-oct-2007, Now holds plot parameters (wondow
number,etc) in state structure
jmm, 4-mar-2008, put in this comment to test email
notifications
cg, 1-apr-2008, added ps_size and ps_units to pstate structure
(needed to store user inputs for postscript file size)
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
PROCEDURE: thm_init
PURPOSE: Initializes system variables for themis. Can be called from idl_startup to set
(See themis/common/thm_load_proc_arg.pro)
it in LOCAL_DATA_DIR
with the same relative pathname, and then continue processing.
KEYWORDS:
RESET: Reset !themis to values in environment (or values in keywords).
LOCAL_DATA_DIR: use given value for local_data_dir, rather than environment. Only works on
initial call or reset.
REMOTE_DATA_DIR: Use given value for remote_data_dir, rather than env. Only works on inital
call or reset.
NO_COLOR_SETUP do not set colors if already taken care of
Typical examples:
Desktop UNIX/LINUX computer located at SSL
LOCAL_DATA_DIR = '/disks/data/themis/' ; This master directory is read only.
REMOTE_DATA_DIR = '' ; Should be empty sting. (/disks/data/themis and server are the same)
Desktop WINDOWS computer located at SSL
LOCAL_DATA_DIR = '\\justice\data\themis\' ; Justice is a samba server (physically the same as /disk/data/themis)
REMOTE_DATA_DIR = ''
laptop WINDOWS computer located far from a data server, but with internet connection.
LOCAL_DATA_DIR = 'C;\data\themis\' ; Local (portable) directory on laptop
REMOTE_DATA_DIR = 'http://sprg.ssl.berkeley.edu/data/themis/' ; URL used to download data to LOCAL_DATA_DIR
MacOS computer located away from SSL without a nearby data server
LOCAL_DATA_DIR = '/data/themis/' ; Local (portable) directory on laptop
REMOTE_DATA_DIR = 'http://sprg.ssl.berkeley.edu/data/themis/' ; URL used to download data to LOCAL_DATA_DIR
Note: If automatic downloads are used. (i.e. REMOTE_DATA_DIR is not an empty string) the user must ensure that
LOCAL_DATA_DIR is writeable.
Note to WINDOWS users: the WINDOWS version of IDL accepts both the '\' and '/' character as the directory
separation character. The converse is not true.
HISTORY
Written by Davin Larson
2006-12-16 KRB Can now be called from idl_startup to set paths using
optional keywords.
2007-07-02, jmm, Adds trailing slash to local and remote data dirs,
if not there
$LastChangedBy: davin-win $
$LastChangedDate: 2008-04-03 16:12:20 -0700 (Thu, 03 Apr 2008) $
$LastChangedRevision: 2596 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_init.pro $
Procedure: THM_LOAD_PROC_ARG
Purpose: Generic argument validation routine for THEMIS Data File Loading
routines, meant to be called by
instrument-specific thm_load procedures.
keywords:
post_process_proc: name of procedure to call after cdf2tplot is called
will be called w/ keywords sname, dt (datatype), lvl,
and _extra.
relpath_funct: name of routine to call in place of file_dailynames
may simply be a wrapper.
will be called w/ keywords sname, dt (datatype), lvl,
and _extra.
(See themis/common/thm_load_xxx.pro)
rresponding to each
valid data type. If there is a one-to-one correpspondence
between filetype and datatype, vfiletypes may be left undefined.
If all datatypes are in a single file, then vfiltypes may contain
a single name, rather than a list.
vL2datatypes= space-separated list of datatypes valid for L2 data
vL2coord= space-separated list of coordinates valid for L2 data
file_vL2datatypes=same as file_vdatatypes, but for L2 data. Defaults to
value of file_vdatatypes.
TRANGE= (Optional) Time range of interest (2 element array), if
this is not set, the default is to prompt the user. Note
that if the input time range is not a full day, a full
day's data is loaded
level = the level of the data, the default is 'l1', or level-1
data. A string (e.g., 'l2') or an integer can be used. 'all'
can be passed in also, to get all levels.
vlevels=A space-separated list of valid levels, e.g. 'l1 l2'
proc_type = the type of data, i.e. 'raw' or 'calibrated'. This is
for validating the 'type' keyword to thm_load procs.
vtypes =A space-separated list of valid types, e.g. 'raw calibrated'
No validation on proc_type if not set.
(See themis/common/thm_read_config.pro)
prompt the user. Note
that if the input time range is not a full day, a full
day's data is loaded
level = the level of the data, the default is 'l1', or level-1
data. A string (e.g., 'l2') or an integer can be used. 'all'
can be passed in also, to get all levels.
vlevels=A space-separated list of valid levels, e.g. 'l1 l2'
proc_type = the type of data, i.e. 'raw' or 'calibrated'. This is
for validating the 'type' keyword to thm_load procs.
vtypes =A space-separated list of valid types, e.g. 'raw calibrated'
No validation on proc_type if not set.
deftype = default for type. only applied to L1. If not supplied,
then 'calibrated' will be uses as the default value.
CDF_DATA: named variable in which to return cdf data structure: only works
for a single spacecraft and datafile name.
VARNAMES: names of variables to load from cdf: default is all.
/GET_SUPPORT_DATA: load support_data variables as well as data variables
into tplot variables.
(See themis/common/thm_tplot_var.pro)
e 'type' keyword to thm_load procs.
vtypes =A space-separated list of valid types, e.g. 'raw calibrated'
No validation on proc_type if not set.
deftype = default for type. only applied to L1. If not supplied,
then 'calibrated' will be uses as the default value.
CDF_DATA: named variable in which to return cdf data structure: only works
for a single spacecraft and datafile name.
VARNAMES: names of variables to load from cdf: default is all.
/GET_SUPPORT_DATA: load support_data variables as well as data variables
into tplot variables.
/valid_names, if set, then this routine will return the valid probe, datatype
and/or level options in named variables supplied as
arguments to the corresponding keywords.
files named varible for output of pathnames of local files.
/VERBOSE set to output some useful info
Output Keywords:
oft distinct file types that need to be loaded. Array of strings.
ofdt datatypes corresponding to each file type in ofts. Array of
strings, each containing a space-separate list of datatypes .
(See themis/common/thm_ui_call_cal_data.pro)
load support_data variables as well as data variables
into tplot variables.
/valid_names, if set, then this routine will return the valid probe, datatype
and/or level options in named variables supplied as
arguments to the corresponding keywords.
files named varible for output of pathnames of local files.
/VERBOSE set to output some useful info
Output Keywords:
oft distinct file types that need to be loaded. Array of strings.
ofdt datatypes corresponding to each file type in ofts. Array of
strings, each containing a space-separate list of datatypes .
odt validated datatypes
olvl validated levels.
otyp validated type.
Notes:
This routine is a utility function used to implement thm_load_??? routines.
$LastChangedBy: jimm $
$LastChangedDate: 2008-03-05 11:47:57 -0800 (Wed, 05 Mar 2008) $
$LastChangedRevision: 2449 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_load_proc_arg.pro $
Procedure: THM_LOAD_XXX
Purpose: Generic THEMIS Data File Loading routine, meant to be called by
type specific thm_load procedures.
keywords:
post_process_proc: name of procedure to call after cdf2tplot is called
will be called w/ keywords sname, dt (datatype), lvl,
(See themis/common/thm_ui_call_tplot.pro)
meant to be called by
type specific thm_load procedures.
keywords:
post_process_proc: name of procedure to call after cdf2tplot is called
will be called w/ keywords sname, dt (datatype), lvl,
and _extra.
relpath_funct: name of routine to call in place of file_dailynames
may simply be a wrapper.
will be called w/ keywords sname, dt (datatype), lvl,
and _extra.
cdf_to_tplot: user-supplied procedure to override cdf2tplot
sname = site or probe name. The default is 'all',
type_sname = string, set to 'probe' or 'site'
/all_sites_in_one: set this if all sites are contained in a single file.
vsnames = space-separated list of valid probes/sites
datatype = Can be any datatype from the list of valid datatypes
or 'all'
vdatatypes = space-separated list of valid data types
file_vdatatypes = space-separated list of file types corresponding to each
valid data type. If there is a one-to-one correpspondence
between filetype and datatype, vfiletypes may be left undefined.
If all datatypes are in a single file, then file_vdatatypes may
contain a single name, rather than a list.
TRANGE= (Optional) Time range of interest (2 element array), if
this is not set, the default is to prompt the user. Note
(See themis/common/thm_ui_check4spin.pro)
s
or 'all'
vdatatypes = space-separated list of valid data types
file_vdatatypes = space-separated list of file types corresponding to each
valid data type. If there is a one-to-one correpspondence
between filetype and datatype, vfiletypes may be left undefined.
If all datatypes are in a single file, then file_vdatatypes may
contain a single name, rather than a list.
TRANGE= (Optional) Time range of interest (2 element array), if
this is not set, the default is to prompt the user. Note
that if the input time range is not a full day, a full
day's data is loaded
level = the level of the data, the default is 'l1', or Level 1
data. A string (e.g., 'l2') or an integer can be used.
vlevels=A space-separated list of valid levels, e.g. 'l1 l2'
proc_type = the type of data, i.e. 'raw' or 'calibrated'. This is
for validating the 'type' keyword to thm_load procs.
vtypes =A space-separated list of valid types, e.g. 'raw calibrated'
vL2datatypes= space-separated list of datatypes valid for L2 data
vL2coord= space-separated list of coordinates valid for L2 data
file_vL2datatypes=same as file_vdatatypes, but for L2 data. Defaults to
value of file_vdatatypes.
coord = coordinate system of data to be loaded. For L2, may be an array or
space-separated list, which will checked against vL2coord.
For L1, no checking: passed on to post_process_proc.
CDF_DATA: named variable in which to return cdf data structure: only works
for a single spacecraft and datafile name.
VARNAMES: names of variables to load from cdf: default is all.
/GET_SUPPORT_DATA: load support_data variables as well as data variables
into tplot variables.
(See themis/common/thm_ui_choose_dtype.pro)
dinates valid for L2 data
file_vL2datatypes=same as file_vdatatypes, but for L2 data. Defaults to
value of file_vdatatypes.
coord = coordinate system of data to be loaded. For L2, may be an array or
space-separated list, which will checked against vL2coord.
For L1, no checking: passed on to post_process_proc.
CDF_DATA: named variable in which to return cdf data structure: only works
for a single spacecraft and datafile name.
VARNAMES: names of variables to load from cdf: default is all.
/GET_SUPPORT_DATA: load support_data variables as well as data variables
into tplot variables.
/DOWNLOADONLY: download file but don't read it.
/valid_names, if set, then this routine will return the valid probe, datatype
(See themis/common/thm_ui_config.pro)
ch to return cdf data structure: only works
for a single spacecraft and datafile name.
VARNAMES: names of variables to load from cdf: default is all.
/GET_SUPPORT_DATA: load support_data variables as well as data variables
into tplot variables.
/DOWNLOADONLY: download file but don't read it.
/valid_names, if set, then this routine will return the valid probe, datatype
and/or level options in named variables supplied as
arguments to the corresponding keywords.
files named varible for output of pathnames of local files.
/VERBOSE set to output some useful info
suffix suffix to add to names of tplot variables loaded from CDF
Notes:
This routine is (should be) platform independent.
$LastChangedBy: pcruce $
$LastChangedDate: 2008-01-28 17:05:44 -0800 (Mon, 28 Jan 2008) $
$LastChangedRevision: 2321 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_load_xxx.pro $
NAME:
(See themis/common/thm_ui_cotrans.pro)
o output some useful info
suffix suffix to add to names of tplot variables loaded from CDF
Notes:
This routine is (should be) platform independent.
$LastChangedBy: pcruce $
$LastChangedDate: 2008-01-28 17:05:44 -0800 (Mon, 28 Jan 2008) $
$LastChangedRevision: 2321 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_load_xxx.pro $
NAME:
thm_new_coords
PURPOSE:
sets coordinate systems in the dlimits structure of input
tplot variables from the CDF attributes, or alternatively, input
keywords
CALLING SEQUENCE:
thm_new_coords,vars,coords_in=coords_in
INPUT:
vars = variable names
OUTPUT:
none explicit, the dlimits structure of the variables are changed
KEYWORDS:
coords_in = if set, then the coords for all vars will be set to this
value (this is a scalar input)
HISTORY:
12-feb-2008, jmm, jimm@ssl.berkeley.edu
(See themis/common/thm_ui_dproc.pro)
ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_new_coords.pro $ NAME: thm_new_units PURPOSE: sets units in the dlimits structure of input tplot variables from the CDF attributes, or alternatively, input keywords CALLING SEQUENCE: thm_new_units,vars,units_in=units_in INPUT: vars = variable names
(See themis/common/thm_ui_error.pro)
les from the CDF attributes, or alternatively, input keywords CALLING SEQUENCE: thm_new_units,vars,units_in=units_in INPUT: vars = variable names OUTPUT: none explicit, the dlimits structure of the variables are changed KEYWORDS: units_in = if set, then the units for all vars will be set to this
(See themis/common/thm_ui_help.pro)
le names
OUTPUT:
none explicit, the dlimits structure of the variables are changed
KEYWORDS:
units_in = if set, then the units for all vars will be set to this
value (this is a scalar input)
HISTORY:
12-feb-2008, jmm, jimm@ssl.berkeley.edu
$LastChangedBy: jimm $
$LastChangedDate: 2008-03-05 11:47:57 -0800 (Wed, 05 Mar 2008) $
$LastChangedRevision: 2449 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_new_units.pro $
NAME:
thm_read_config
PURPOSE:
Reads the thm_config file
CALLING SEQUENCE:
cstruct = thm_read_config()
INPUT:
none, the filename is hardcoded, 'thm_config.txt',and is s put in a
folder given by the routine thm_config_filedir, that uses the IDL
routine app_user_dir to create/obtain it: my linux example:
/disks/ice/home/jimm/.idl/themis/thm_config-4-linux
OUTPUT:
cstruct = a structure with the changeable fields of the !themis
structure
HISTORY:
17-may-2007, jmm, jimm@ssl.berkeley.edu
2-jul-2007, jmm, 'Add trailing slash to data directories, if necessary
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
NAME:
thm_roi_bar
PURPOSE:
creates the roi bar for overview plots
CALLING SEQUENCE:
p = thm_roi_bar(in_data)
INPUT:
in_data: the name of the roi variable to
be plotted(generally something like 'thb_state_roi'
OUTPUT:
p = the variable name of the roi_bar, set to '' if not
successfule
HISTORY:
2007-02-28 pcruce@ssl.berkeley.edu
$LastChangedBy: pcruce $
$LastChangedDate: 2008-01-25 15:07:47 -0800 (Fri, 25 Jan 2008) $
(See themis/common/thm_ui_load_data_fn.pro)
$LastChangedDate: 2008-04-24 20:58:59 -0700 (Thu, 24 Apr 2008) $
$LastChangedRevision: 2816 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_sample_rate_bar.pro $
This program takes a variable and sets zero values to the minimum
nonzero value -- not NaN's though
ro thm_spec_lim4overplot, var, zmin = zmin, zmax = zmax, zlog = zlog, $
ymin = ymin, ymax = ymax, ylog = ylog, $
(See themis/common/thm_ui_multichoice_history.pro)
ymin = ymin, ymax = ymax, ylog = ylog, $
overwrite = overwrite, _extra = _extra
Version:
$LastChangedBy: jimm $
$LastChangedDate: 2007-11-28 13:32:47 -0800 (Wed, 28 Nov 2007) $
$LastChangedRevision: 2091 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_spec_lim4overplot.pro $
Purpose:
Generates sst overview plots for a given date
this includes one day long plot and 4 1/4 day plots
It stores these plots in the current directory
Arguments:
date: the date for which the plots will be generated
directory(optional): an optional output directory
device(optional):switch to 'z' device for cron plotting
Example:
(See themis/common/thm_ui_npar.pro)
nt directory
Arguments:
date: the date for which the plots will be generated
directory(optional): an optional output directory
device(optional):switch to 'z' device for cron plotting
Example:
thm_sst_overviews,'2007-03-23',dir='~/out',device='z'
$LastChangedBy: jimm $
$LastChangedDate: 2008-03-07 14:08:42 -0800 (Fri, 07 Mar 2008) $
$LastChangedRevision: 2460 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_sst_overviews.pro $
Function: THM_TPLOT_VAR
Purpose: Creates TPLOT variable name from SC id and data qty strings.
keywords:
/VERBOSE or VERBOSE=n ; set to enable diagnostic message output.
higher values of n produce more and lower-level diagnostic messages.
(See themis/common/thm_ui_only_trange.pro)
tes: $LastChangedBy: kenb-mac $ $LastChangedDate: 2007-02-08 10:02:45 -0800 (Thu, 08 Feb 2007) $ $LastChangedRevision: 329 $ $URL $ NAME: thm_ui_call_tplot PURPOSE: A widget interface for calling tplot from the themis_w widget, currently of limited usefulness, but expandable CALLING SEQUENCE: thm_ui_call_tplot, master_widget_id INPUT: master_widget_id = the id number of the widget that calls this OUTPUT: none, there are buttons to push for plotting, setting limits, not sure what else yet... HISTORY: 14-dec-2006, jmm, jimm@ssl.berkeley.edu
(See themis/common/thm_ui_par.pro)
12-mar-2007, jmm, Added wavelet button
2-apr-2007, jmm, Added pwrspc options, NEEDS TESTING.
jun-2007, jmm, split from dproc widget.
12-jul-2007, jmm, added a message widget, for invalid user input
errors, grays out all buttons while processing
31-jul-2007, jmm, various checks for windows present to avoid tplot
and ctime bombs
25-oct-2007, jmm, plot info, window number, size, ptyp, are no held
in the main GUI state structure
19-mar-2008, jmm, changed state.ptyp to pstate.ptyp to fix bug
1-apr-2008, cg, added a pop-up window to allow user to set size/units
for postscript files
5-may-2008, cg, fixed bug with scroll bar
$LastChangedBy: kenb-mac $
$LastChangedDate: 2007-01-26 15:52:34 -0800 (Fri, 26 Jan 2007) $
$LastChangedRevision: 241 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_ui_call_tplot.pro $
NAME:
thm_ui_check4spin
(See themis/common/thm_ui_progobj__define.pro)
able name
OUTPUT:
vname_spin1 = the tplot variable containing the spin period. or
spinras
vname_spin2 = the tplot variable containing the spin phase or
spindec
history_out = a history string, if data needs loading
KEYWORDS:
rasdec = if set, return the variables for spinras, and spindec used
for dsl <-> gse tranformations
HISTORY:
26-feb-2007, jmm, jimm@ssl.berkeley.edu
(See themis/common/thm_ui_reset_common_block.pro)
ING SEQUENCE:
thm_ui_choose_dtype, instr, dtyp, station, astation, probe
INPUT:
instr = the instrument, one of ['asi', 'ask', 'esa_pkt', $
'efi', 'fbk', 'fft', 'fgm', $
'fit', 'gmag', 'mom', 'scm', 'sst', 'state']
OUTPUT:
dtyp = the output datatype, a string of instr/datatype/datalevel,
e.g., 'state/spinras/l1'
station = the ground station(s) if gmag data was chosen
astation = the ground station(s) if asi data was chosen
probe = the spacecraft if spacecraft data was chosen
HISTORY:
jmm, jimm@ssl.berkeley.edu 1-may-2007
jmm, Changed the probe list to reflect probe assigments:
A (P5), B (P1), C (P2), D (P3) and E (P4)
14-jun-2007
(See themis/common/thm_ui_sclist.pro)
chosen
probe = the spacecraft if spacecraft data was chosen
HISTORY:
jmm, jimm@ssl.berkeley.edu 1-may-2007
jmm, Changed the probe list to reflect probe assigments:
A (P5), B (P1), C (P2), D (P3) and E (P4)
14-jun-2007
jmm, correctly handles level 1 and level 2 datatypes, 11-jul-2007
jmm, really correctly handles level 1 and 2 data types, by using a
common block to handle them
jmm, changed default behavior of windows, when an invalid string is
used, then the available data types are set to 'None',
31-jul-2007
jmm, Changed call to thm_ui_valid_dtype to
reflect new version, 11-apr-2008
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
NAME:
thm_ui_config
(See themis/common/thm_ui_set_active_dset.pro)
s the user to set some of the fields in the
!themis system variable: Also allows the user to set the themis
configuration text file, and save it
HISTORY:
17-may-2007, jmm, jimm@ssl.berkeley.edu
2-jul-2007, jmm, 'Add trailing slash to data directories, if necessary
5-may-2008, cg, removed text boxes and replaced with radio buttons or
pulldowns, fixed reset to default
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
NAME:
thm_ui_cotrans
PURPOSE:
Widget for coordinate transforms
(See themis/common/thm_ui_set_data_id.pro)
tChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
NAME:
thm_ui_cotrans
PURPOSE:
Widget for coordinate transforms
CALLING SEQUENCE:
thm_ui_cotrans, gui_id
INPUT:
gui_id = the widget id of the thm_gui widget that called this one.
OUTPUT:
none explicit, new variables are created
HISTORY:
26-feb-2007, jmm, jimm@ssl.berkeley.edu
10-apr-2007, jmm, changed input from state to the variable names
31-may-2007, jmm, rewrite to become its own widget, and to call
thm_cotrans, rather than cotrans directly
(See themis/common/thm_ui_set_trange.pro)
rather than cotrans directly
12-jul-2007, jmm, added a message widget, for invalid user input errors
06-may-2008, cg, rearranged gui so that message window is at bottom, is
longer and doesn't wrap
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
NAME:
thm_ui_dproc
PURPOSE:
(See themis/common/thm_ui_summplot.pro)
onent > 6
cannot be processed
and finally, rearranged widgets to allow for a long
narrow message window
28-mar-2008, cg, added filename dialog box to ascii save option,
and passed file name to tplot_ascii
14-dec-2006, jmm, jimm@ssl.berkeley.edu
13-feb-2007, jmm, fixed problem with !p.background resetting in
set_plot commands
12-mar-2007, jmm, Added wavelet button
2-apr-2007, jmm, Added pwrspc options
5-jun-2007, jmm, rewritten
(See themis/common/thm_ui_timefix.pro)
time limits' 17-mar-2008, jmm, changed smooth option to input seconds, not npts $LastChangedBy: kenb-mac $ $LastChangedDate: 2007-01-26 15:52:34 -0800 (Fri, 26 Jan 2007) $ $LastChangedRevision: 241 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_ui_dproc.pro $ NAME: thm_ui_error PURPOSE: A widget to display, edit and save the file 'thm_gui_error.txt' error $LastChangedBy$ $LastChangedDate$ $LastChangedRevision$ $URL$ NAME: thm_ui_help
(See themis/common/thm_ui_tselect.pro)
ground resetting in
set_plot commands
12-mar-2007, jmm, Added wavelet button
2-apr-2007, jmm, Added pwrspc options
5-jun-2007, jmm, rewritten
12-jul-2007, jmm, added a message widget, for invalid user input
errors, grays out all buttons while processing
(See themis/common/thm_ui_tselect_fn.pro)
m_gui.txt' help
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
NAME:
thm_ui_load_data_fn
PURPOSE:
A widget interface to load CDF data for whatever instrument
CALLING SEQUENCE:
varnames = thm_ui_load_data_fn(st_time, en_time, $
dtype = dtype, $
station = station, $
astation = astation, $
probe = probe)
INPUT:
(See themis/common/thm_ui_update_data_all.pro)
astation = astation, $
probe = probe)
INPUT:
st_time, en_time = start and end times in seconds from
1-jan-1970 0:00
KEYWORDS:
dtype, the type of data, a string, of form
'instrument/datatype/datalevel', the default is 'gmag/mag/l2'
station, the ground station of the gmag data, default is '*', for all
astation, the ground station of the asi data, default is '*', for all
probe = one or more of ['a','b','c','d','e'], default is ['a','b','c','d','e']
OUTPUT:
varnames = an array of tplot variable names, to pass into tplot
HISTORY:
22-sep-2006, jmm, jimm@ssl.berkeley.edu
23-oct-2006, jmm, changed to call cdf2tplot
30-oct-2006, jmm, changed again, to call load_thg_mag, also added
(See themis/common/thm_ui_update_data_display.pro)
ssl.berkeley.edu
23-oct-2006, jmm, changed to call cdf2tplot
30-oct-2006, jmm, changed again, to call load_thg_mag, also added
dtype and station as inputs
13-nov-2006, jmm, changed the argument list, now the output is a
data id string, added a check for start time > end
time
08-dec-2006, krb, changed load_thg_mag to thm_load_gmag
13-dec-2006, jmm, Added call to cdf2tplot for data for which there
is no load program...
14-dec-2006, jmm, returns an array of variable names and
subscripts, which should be easier to read..
15-dec-2006, jmm, Added calls to thm_load_fgm, fit, sst, efi,
ask,probe can be an array
16-jan-2007, jmm, Add all of the thm_load routines
5-feb-2007, jmm, update calls to load routines
10-apr-2007, jmm, removed history tracking, which is now handled in
thm_gui_event, also changed dtype, station
astation and probe to keywords
1-may-2007, jmm, New version, new argument list,etc....
10-may-2007, jmm, New version, new argument list,etc... that last
one lasted a long time, didn't it
30-jul-2007, jmm, allow for string time input, this is needed to
run histories.
(See themis/common/thm_ui_update_history.pro)
ion
astation and probe to keywords
1-may-2007, jmm, New version, new argument list,etc....
10-may-2007, jmm, New version, new argument list,etc... that last
one lasted a long time, didn't it
30-jul-2007, jmm, allow for string time input, this is needed to
run histories.
11-apr-2008, jmm, Added 'spin' ipnput option
21-apr-2008, WMFeuerstein, Changed THM_LOAD_SCM call as per Vassilis'
instructions.
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
This program creates a string for the history array when multiple
datatypes, spacecraft or stations are chosen, for use in the
(See themis/common/thm_ui_update_progress.pro)
1-apr-2008, WMFeuerstein, Changed THM_LOAD_SCM call as per Vassilis'
instructions.
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
This program creates a string for the history array when multiple
datatypes, spacecraft or stations are chosen, for use in the
themis_w_event routine
$LastChangedBy: kenb-mac $
$LastChangedDate: 2007-01-26 15:52:34 -0800 (Fri, 26 Jan 2007) $
$LastChangedRevision: 241 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_ui_multichoice_history.pro $
NAME:
thm_ui_npar
PURPOSE:
Simple widget that allows user to change n parameter values and units (if units were
specified)
CALLING SEQUENCE:
(See themis/common/thm_ui_userdef.pro)
i_npar
PURPOSE:
Simple widget that allows user to change n parameter values and units (if units were
specified)
CALLING SEQUENCE:
new_value = thm_ui_npar(name, init_value, [radio_array=radio_array], $
[radio_value=radio_value])
INPUT:
name = the name of the parameter, can be an array
init_value = the initial value of the parameter, e.g., '1.0', must
be a string array of the smae size as name
radio_array = optional string array containing radio button names
radio_value = optional string containing the radio button to set initially
OUTPUT:
new_value = the output value of the parameters, a string array of values,
e.g., ['4.67', '3.0', ...n]
if optional radio buttons were used the last element of the array
will contain the radio button selection,
e.g., ['4.67', '3.0', ..., 'inches']
METHODS:
thm_ui_npar0 - creates the window, widgets, and calls the xmanager
thm_ui_npar0_event - event handler for the window (handles parameter input, cancel/
accept buttons, and window close 'X'
thm_ui_rad_event - event handler for the radio buttons; thm_ui_npar0 - creates the window, widgets, and calls the xmanager
HISTORY:
5-feb-2007, jmm, jimm@ssl.berkeley.edu
25-OCt-2007, jmm, added KILL_REQUEST block
$LastChangedBy$
(See themis/common/thm_ui_valid_dtype.pro)
window, widgets, and calls the xmanager HISTORY: 5-feb-2007, jmm, jimm@ssl.berkeley.edu 25-OCt-2007, jmm, added KILL_REQUEST block $LastChangedBy$ $LastChangedDate$ $LastChangedRevision$ $URL$ NAME: thm_ui_only_trange PURPOSE: This program oprerates on the tplot data_quants to strip out data the is not in the input time range: start time, end time, and the subscripts of the appropriate data_quants structures are used, this is designed to be used in thm_ui_load_data_fn only... jmm, 13-nov-2006 INPUT: st_time, en_time = time in seconds from 1-jan-1970 0:00 data_ss = the subscripts of the data array to on which to operate OUTPUT: None explicit, the tplot variables are changed
(See themis/common/thm_ui_wavelet.pro)
ot variables are changed
HISTORY:
jmm, 13-nov-2006, jimm@ssl.berkeley.edu
jmm, 13-dec-2006, made to work for non thg_mag data
$LastChangedBy: kenb-mac $
$LastChangedDate: 2007-01-26 15:52:34 -0800 (Fri, 26 Jan 2007) $
$LastChangedRevision: 241 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_ui_only_trange.pro $
NAME:
thm_ui_par
PURPOSE:
Simple widget that asks for a parameter
CALLING SEQUENCE:
new_value = thm_ui_par(name, init_value)
INPUT:
name = the name of the parameter, e.g., 'time_resolution'
init_value = the initial value of the parameter, e.g., '1.0', must
be a string.
OUTPUT:
new_value = the output value of the parameter, a string, e.g., '4.67'
HISTORY:
22-jan-2007, jmm, jimm@ssl.berkeley.edu
(See themis/common/thm_valid_input.pro)
es an object to pass through into file_retrieve and
file_http_copy that allows updates to the thm_gui progress widget
METHODS DEFINED IN THIS CLASS:
set = sets the parameter (only one, the gui widget id)
get = returns the parameter
update = if called, this updates the thm_gui progress widget, with
the input text
checkcancel = Currently does nothing, but will eventually allow the
user to cancel a download.
HISTORY:
15-may-2007, jmm, jimm@ssl.berkeley.edu
(See themis/common/thm_valid_level.pro)
user to cancel a download.
HISTORY:
15-may-2007, jmm, jimm@ssl.berkeley.edu
24-jul-2007, jmm, activated checkcancel, to see if it can do anything...
5-mar-2008, jmm, pass _extra through to thm_ui_update_progress, to
allow the message_wid value to be passed through
$LastChangedBy$
$LastChangedDate$
$LastChangedRevision$
$URL$
NAME:
tpwrspc
PURPOSE:
wapper for pwrspc.pro for calling from GUI, a split_vec is performed
on the data if necessary
CALLING SEQUENCE:
thm_ui_pwrspc, varnames, new_names, trange, history_ext, $
polar = polar, dynamic = dynamic, _extra = _extra
INPUT:
varnames = an array (or scalar) of tplot variable names
Output
(See themis/common/thm_write_config.pro)
, cg, fixed bug with scroll bar
$LastChangedBy: kenb-mac $
$LastChangedDate: 2007-01-26 15:52:34 -0800 (Fri, 26 Jan 2007) $
$LastChangedRevision: 241 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/thmsoc/trunk/idl/themis/common/thm_ui_call_tplot.pro $
NAME:
thm_ui_check4spin
PURPOSE:
given a THEMIS tplot variable name, check to see if spin period and
phase exist, for coordinate transformations, If they do not, load
the state data for the appropriate time period
CALLING SEQUENCE:
thm_ui_check4spin, vname, vname_spin1, vname_spin2, history_out
INPUT:
vname = tplot variable name
OUTPUT:
vname_spin1 = the tplot variable containing the spin period. or
spinras
vname_spin2 = the tplot variable containing the spin phase or
spindec
(See themis/common/thm_ui_pwrspc.pro)
an array (or scalar) of tplot variable names Output new_names = the variable names of any new variables HISTORY: 28-mar-2007, jmm, jimm.ssl.berkeley.edu 2-apr-2007, jmm, added the /dynamic keyword 5-jun-2007, jmm, no longer handles history $LastChangedBy$ $LastChangedDate$ $LastChangedRevision$ $URL$ This puts the input data structure into the tplot common block as the data_quants structure, and undefines all of the other variables in the common block, using temporary, the original common block is saved in a different common block. This is needed to call the stackmagplot routine on a subset of stations 13-nov-2006, jmm, jimm@ssl.berkeley.edu $LastChangedBy: kenb-mac $ $LastChangedDate: 2007-01-26 15:52:34 -0800 (Fri, 26 Jan 2007) $
(See themis/common/yesno_widget_fn.pro)