This page was created by the IDL library routine `mk_html_help2`.

Last modified: Fri Aug 1 18:18:06 2025.

# Directory Listing of Routines

# general/cotrans/special/sse

- SEL_MATRIX_MAKE
- SSE_MATRIX_MAKE

# Routine Descriptions

## SEL_MATRIX_MAKE

[Next Routine] [List of Routines]

    PROCEDURE: sel_matrix_make

    Purpose:
      Creates a set of matrices that will rotate data from SSE coordinate to SEL coordinate
    Arguments:
    Inputs:
     name_lun_att_x: Name of the tplot variable(s) storing the SEL-X basis vectors in
                     GEI coords. Vector data can also be input and should be of the
                     form [t,x,y,z] .

     name_lun_att_z: Name of the tplot variable(s) storing the SEL-Z basis vectors in
                     GEI coords. Vector data can also be input and should be of the
                     form [t,x,y,z].

     Input names can have globbing or can be arrays of names, but number of elements for
     lun_att_x and and lun_att_z after globbing must match.

    Outputs:
      fail: Will be set to 1 if operation failed, returns 0 if operation succeeded.  Will not signal failure if
            at least one input was processed.

    Keywords
      suffix: The suffix to be appended to the tplot variables that the output matrices will be stored in.
             (Default: sse_sel_mat)
      newname: The name of the output matrix.  If this keyword is used with multiple input values, the outputs
              may overwrite each other.  So you should only set this keyword if there is
              a single value for the state input. This variable should be used if
              vector data is input
      ignore_dlimits: If set, will force routine to generate matrix, even if inputs are
              labeled as the wrong coordinate system. This flag is ignored if vector
              data in input.

    Example:

      timespan,'2007-03-23'
      thm_load_slp
      sel_matrix_make,'slp_lun_att_x','slp_lun_att_z',newname='sel_mat'
      thm_load_state,probe='a'
      thm_cotrans,'tha_pos',out_coord='sse',out_suff='_sse'
      tvector_rotate,'sel_mat','tha_state_pos_sse'

      Or if using vector data

      sel_matrix_make,lun_att_x,lun_att_z,newname=sel_mat

    NOTES:
      #1 SEL is defined as:
            X: TBD
            Y: TBD
            Z: TBD

    Adapted from sse_matrix_make, written by Jenni Kissinger and Patrick Cruce

     $LastChangedBy: cgoethel $
     $LastChangedDate: 2011-11-15 12:50:08 -0800 (Tue, 15 Nov 2011) $
     $LastChangedRevision: 9298 $
     $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/trunk/general/cotrans/special/sse/sel_matrix_make.pro $

(See general/cotrans/special/sse/sel_matrix_make.pro)

## SSE_MATRIX_MAKE

[Previous Routine] [List of Routines]

    PROCEDURE: sse_matrix_make

    Purpose:
      Creates a set of matrices that will rotate data from GSE coordinate to SSE coordinate
    Arguments:
    Inputs:
     name_sun_pos_gse: Name of the tplot variable(s) storing the sun position or
                       as vector data (should be of the form [t,x,y,z]

     name_lun_pos_gse: Name of the tplot variable(s) storing the lunar position or
                       as vector data (should be of the form [t,x,y,z]

     Input names can have globbing or can be arrays of names, but number of elements for
     sun_pos and and lun_pos after globbing must match.

    Outputs:
      fail: Will be set to 1 if operation failed, returns 0 if operation succeeded.  Will not signal failure if
            at least one input was processed.

    Keywords
      suffix: The suffix to be appended to the tplot variables that the output matrices will be stored in.
             (Default: name_sun_pos_gse + '_sse_mat')
      newname: The name of the output matrix.  If this keyword is used with multiple input values, the outputs
              may overwrite each other.  So you should only set this keyword if there is
              a single value for the state input. This should be set if vector data is
              input.
      ignore_dlimits: If set, will force routine to generate matrix, even if inputs are
              labeled as the wrong coordinate system. This flag is ignored if vector data
              is input.

    Example:
      timespan,'2007-03-23'
      thm_load_slp
      cotrans,'slp_sun_pos','slp_sun_pos_gse',/gei2gse
      cotrans,'slp_lun_pos','slp_lun_pos_gse',/gei2gse
      sse_matrix_make,'slp_sun_pos_gse','slp_lun_pos_gse',newname='sse_mat'
      thm_load_state,probe='a',coord='gse'
      tvector_rotate,'sse_mat','tha_state_pos'

      Or for vector data

      sse_matrix_make,sun_pos_gse,lun_pos_gse,newname=sse_mat

    NOTES:
      #1 SSE is defined as:
            X: Moon->Sun Line
            Y: Ecliptic North cross X
            Z: X cross Y
      #2 SSE coordinate Z-axis is generally not exactly parallel to ecliptic north,
          as the moon will not always be in the ecliptic plane, and thus the moon->sun line
          will not always lie in the ecliptic plane.

      #3  If times in sun_pos_gse and lun_pos_gse do not match,
      data will be interpolated to match the time grid in sun_pos_gse.

      #4  If sun_pos_gse begins before or ends after lun_pos_gse, then lun_pos_gse
      will be extrapolate with NaNs.  This means the that no valid transformations
      will be available on the intervals where both quantities are not available.

    Written by Jenni Kissinger and Patrick Cruce

     $LastChangedBy: cgoethel $
     $LastChangedDate: 2011-11-15 12:50:08 -0800 (Tue, 15 Nov 2011) $
     $LastChangedRevision: 9298 $
     $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/trunk/general/cotrans/special/sse/sse_matrix_make.pro $

(See general/cotrans/special/sse/sse_matrix_make.pro)