This page was created by the IDL library routine
mk_html_help2
.
Last modified: Wed Dec 6 12:50:16 2017.
Procedure: dmpa2dsl Purpose: MMS coordinate transformation: DMPA <--> DSL ---------------------------------------------- | This is currently a placeholder and only | | performs an identity transformation! | ----------------------------------------------- Inputs TBD Keywords: /dsl2dmpa: Inverse transformation /IGNORE_DLIMITS: If the specified from coord is different from the coord system labeled in the dlimits structure of the tplot variable setting this keyword prevents an error. Example: Notes: $LastChangedBy: aaflores $ $LastChangedDate: 2015-12-21 19:27:01 -0800 (Mon, 21 Dec 2015) $ $LastChangedRevision: 19640 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_2_1/projects/mms/common/cotrans/dmpa2dsl.pro $
(See projects/mms/common/cotrans/dmpa2dsl.pro)
Procedure: dmpa2gse Purpose: MMS coordinate transformation: DMPA <--> GSE interpolates, right ascension, declination updates coord_sys attribute of output tplot variable. inputs name_mms_xxx_in ... data to transform (dmpa coordinates) name_mms_spinras ... right ascension of the L-vector (J2000 coordinates) name_mms_spindec ... declination of the L-vector (J2000 coordinates) name_mms_xxx_out ... name for output (t-plot variable name) keywords: /GSE2DMPA inverse transformation /IGNORE_DLIMITS if the specified from coord is different from the coord system labeled in the dlimits structure of the tplot variable setting this keyword prevents an error Example: Notes: Based on dsl2gse from THEMIS, forked 6/22/2015 dmpa2gse is functionally equivalent to dsl2gse, and with proper input it can be used to perform a DSL to GSE transformation, as described below. MEC L_vec assumes rigid-body rotation even when the wire booms are oscillating, and thus, at any point in time it does not give L, but rather the average orientation of the nutating MPA (which is also assumed fixed relative to the rigid body) as it wobbles in inertial space with a period of ~7 minutes. When the user wants a DSL to GSE transformation, this can be done if the spinra/spindec give the actual orientation of the angular momentum vector. This can come from: predatt (e.g. via AFG/DFG QL RADec_gse), or defatt, (e.g. via MEC L_vec data), sufficiently smoothed to remove any ‘wobble’ - The wobble is large: it can be as large as 0.2 degrees in amplitude right after a maneuver, and still as large as 0.1 degrees 12 hours after a maneuver. - A gaussian filter with a low-pass cutoff low enough to clobber the 7-minute wobble works well. $LastChangedBy: egrimes $ $LastChangedDate: 2017-06-12 15:08:37 -0700 (Mon, 12 Jun 2017) $ $LastChangedRevision: 23455 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_2_1/projects/mms/common/cotrans/dmpa2gse.pro $
(See projects/mms/common/cotrans/dmpa2gse.pro)
Procedure: mms_cotrans Purpose: Transform between MMS and geophysical coordinate systems. Calling Sequence: mms_cotrans, input_name [,output_name] ,out_coord=out_coord [,out_suffix=out_suffix] [,in_coord=in_coord] [,in_suffix=in_suffix] ... Example Usage: mms_cotrans, 'mms1_fgm_b_gse_srvy_l2_bvec', in_coord='dmpa', out_coord='gsm', $ out_suffix='_gsm', /ignore_dlimits Arguments: input_name: String or string array of input tplot variable(s). Standard tplot wildcards may be used to specify multiple variables. output_name (optional) String or string array of output tplot variable names. Number of output names must match number of input names once wildcards are considered. Keywords: in_coord: String specifying the coordinate system of the input(s). This keyword is optional if the dlimits.data_att.coord_sys attribute is present for the tplot variable, and if present, it must match the value of that attribute (see cotrans_set_coord, cotrans_get_coord). e.g. 'dmpa', 'gse', 'gsm', 'sm', 'gei','geo', 'mag' out_coord: String specifying the desitnation coordinate system. e.g. 'dmpa', 'gse', 'gsm', 'sm', 'gei','geo', 'mag' in_suffix: Suffix of input variable name. This specifies the portion of the input variable's name that will be replace with the output suffix. If specified, the name effective input name will be input_name + in_suffix out_suffix: Suffix appended to the output name. If in_suffix is present or the input coordinates are part of the input variable's name then they will be replaced with out_suffix. support_suffix: Suffix appended to standard support data names when looking for support data (i.e. RA & Dec) out_vars: return a list of the names of any transformed variables valid_names: return valid coordinate system names in named variables supplied to in_coord and/or out_coord keywords. ignore_dlimits: set this keyword to true so that an error will not be produced if the internal label of the coordinate system clashed with the user provided coordinate system. no_update_labels: Set this keyword if you want the routine to not update the labels automatically Notes: Based on thm_cotrans $LastChangedBy: egrimes $ $LastChangedDate: 2017-06-12 15:08:37 -0700 (Mon, 12 Jun 2017) $ $LastChangedRevision: 23455 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_2_1/projects/mms/common/cotrans/mms_cotrans.pro $
(See projects/mms/common/cotrans/mms_cotrans.pro)
Procedure: mms_cotrans_parse Purpose: Parse input coordinates stored in suffix string. This should allow coordinates systems denoted non-three-character strings and handle disambiguation between systems with identical substrings. Calling Sequence: coord_string = mms_cotrans_parse(input_string, valid_strings) Input: input_string: The suffix to be parsed (scalar) valid_strings: Array of valid coordinate strings Output: return value: Returns recognized coordinate or empty string if none found. Notes: $LastChangedBy: egrimes $ $LastChangedDate: 2016-05-25 15:38:52 -0700 (Wed, 25 May 2016) $ $LastChangedRevision: 21208 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_2_1/projects/mms/common/cotrans/mms_cotrans_parse.pro $
(See projects/mms/common/cotrans/mms_cotrans_parse.pro)
Procedure: mms_cotrans_qrotate Purpose: Perform a quaternion rotation on a tplot variable Calling Sequence: mms_cotrans_qrotate, name_in, quaternion_name [,name_out] [,inverse=inverse] Input: name_in: Tplot variable to be transformed quaternion_name: Tplot variable containing MMS rotation quaternion name_out: New name for output variable, if not specified the original is overwritten inverse: Flag to apply inverse rotation out_coord: String specifying output coordinates for updating dlimits Output: none, may alter or create new tplot variable Notes: $LastChangedBy: aaflores $ $LastChangedDate: 2016-05-25 18:22:33 -0700 (Wed, 25 May 2016) $ $LastChangedRevision: 21214 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_2_1/projects/mms/common/cotrans/mms_cotrans_qrotate.pro $
(See projects/mms/common/cotrans/mms_cotrans_qrotate.pro)
Procedure: mms_cotrans_qtransformer Purpose: Helps simplify transformation logic code using a recursive formulation. Rather than specifying the set of transformations for each combination of in_coord & out_coord, this routine will perform only the nearest transformation then make a recursive call to itself, with each call performing one additional step in the chain. This makes it so only neighboring coordinate transforms need be specified. All possible transformations currently go through ECI coordinates Input: in_name: name of variable to be transformed out_name: output name for transformed variable in_coord: coordinate system of the input out_coord: coordinate system of the output probe: probe designation for input variable Output: No explicit output, calls transformation routines and itself Notes: Modeled after thm_cotrans_transform_helper $LastChangedBy: aaflores $ $LastChangedDate: 2016-05-25 18:22:33 -0700 (Wed, 25 May 2016) $ $LastChangedRevision: 21214 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_2_1/projects/mms/common/cotrans/mms_cotrans_qtransformer.pro $
(See projects/mms/common/cotrans/mms_cotrans_qtransformer.pro)
Procedure: mms_cotrans_transformer Purpose: Helps simplify transformation logic code using a recursive formulation. Rather than specifying the set of transformations for each combination of in_coord & out_coord, this routine will perform only the nearest transformation then make a recursive call to itself, with each call performing one additional step in the chain. This makes it so only neighboring coordinate transforms need be specified. The set of possible transformations forms the following graph: GSE<->AGSM | DMPA<->GSE<->GSM<->SM | GSE<->GEI<->GEO<->MAG | GEI<->J2000 Input: in_name: name of variable to be transformed out_name: output name for transformed variable in_coord: coordinate system of the input out_coord: coordinate system of the output spinras: name of spacecraft right ascension variable spindec: name of spacecraft declination variable ingnore_dlimits: ignore variable metadata Output: No explicit output, calls transformation routines and itself Notes: - Modeled after thm_cotrans_transform_helper - the dmpa2dsl transformation is an identity transformation (dmpa is approximately the same as dsl; see the notes in the header of dmpa2gse for more info) $LastChangedBy: egrimes $ $LastChangedDate: 2017-06-12 15:08:37 -0700 (Mon, 12 Jun 2017) $ $LastChangedRevision: 23455 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_2_1/projects/mms/common/cotrans/mms_cotrans_transformer.pro $
(See projects/mms/common/cotrans/mms_cotrans_transformer.pro)
Procedure: mms_qcotrans Purpose: Perform coordinate transformations using MMS MEC quaternions. This routine mirrors mms_cotrans but applies a different transformation. Calling Sequence: mms_qcotrans, input_name [,output_name] ,out_coord=out_coord [,out_suffix=out_suffix] [,in_coord=in_coord] [,in_suffix=in_suffix] ... Example Usage: mms_qcotrans, 'mms1_fgm_b_gse_srvy_l2_bvec', in_coord='gse', out_coord='gsm', $ out_suffix='_gsm' Arguments: input_name: String or string array of input tplot variable(s). Standard tplot wildcards may be used to specify multiple variables. output_name (optional) String or string array of output tplot variable names. Number of output names must match number of input names once wildcards are considered. Keywords: in_coord: String specifying the coordinate system of the input(s). This keyword is optional if the dlimits.data_att.coord_sys attribute is present for the tplot variable, and if present, it must match the value of that attribute (see cotrans_set_coord, cotrans_get_coord). e.g. 'bcs','gse','gse2000','gsm','sm','geo','eci' out_coord: String specifying the output coordinate system. e.g. 'bcs','gse','gse2000','gsm','sm','geo','eci' in_suffix: Suffix of input variable name. This specifies the portion of the input variable's name that will be replace with the output suffix. If specified, the name effective input name will be input_name + in_suffix out_suffix: Suffix appended to the output name. If in_suffix is present or the input coordinates are part of the input variable's name then they will be replaced with out_suffix. out_vars: return a list of the names of any transformed variables valid_names: return valid coordinate system names no_update_labels: Set this keyword if you want the routine to not update the labels automatically Notes: This is a near clone of mms_cotrans and maybe be temporary $LastChangedBy: egrimes $ $LastChangedDate: 2016-09-02 10:58:42 -0700 (Fri, 02 Sep 2016) $ $LastChangedRevision: 21791 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_2_1/projects/mms/common/cotrans/mms_qcotrans.pro $
(See projects/mms/common/cotrans/mms_qcotrans.pro)
Procedure: mms_qcotrans_check_rate Purpose: Verify that quaternion transformations have sufficient time resolution for spinning/despinning data. Calling Sequence: bool = mms_qcotrans_check_times(in_coord, out_coord, probe) Input: in_coord: input coordinates string out_coord: output coordinates probe: probe designation Output: return value: 1 if required quaternion are present and have insufficient resolution 0 otherwise Notes: -Assumes all tranformations performed through ECI $LastChangedBy: egrimes $ $LastChangedDate: 2016-05-25 15:38:52 -0700 (Wed, 25 May 2016) $ $LastChangedRevision: 21208 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_2_1/projects/mms/common/cotrans/mms_qcotrans_check_rate.pro $
(See projects/mms/common/cotrans/mms_qcotrans_check_rate.pro)