This page was created by the IDL library routine mk_html_help2.

Last modified: Fri Apr 1 11:58:51 2022.


Directory Listing of Routines


Routine Descriptions

HYBRID_ORBIT

[Next Routine] [List of Routines]
PROCEDURE:   hybrid_orbit
PURPOSE:
  Plots the MAVEN orbit over a hybrid model of the Mars-solar wind interaction.

USAGE:
  hybrid_orbit, lon, lat

INPUTS:
       lon:       East longitude (0 to 360 degrees).

       lat:       Latitude (-90 to 90 degrees).

                  Note: lon and lat must have the same number
                        of elements.

KEYWORDS:
       PSYM:      Symbol type (same as for plot).

       LSTYLE:    Line style (same as for plot).

       COLOR:     Line/symbol color (same as for plot).

       RESET:     Read in the MAG-MOLA image and calculate the
                  plot size and position.

       MONITOR:   Place snapshot window in this monitor.  Only works if
                  monitor configuration is defined (see putwin.pro).

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2021-03-02 11:51:00 -0800 (Tue, 02 Mar 2021) $
 $LastChangedRevision: 29730 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/hybrid_orbit.pro $

CREATED BY:	David L. Mitchell  04-02-03

(See projects/maven/maven_orbit_tplot/hybrid_orbit.pro)


MAG_MOLA_ORBIT

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   mag_mola_orbit
PURPOSE:
  Plots a set of [longitude,latitude] positions over a MAG-MOLA
  map.

USAGE:
  mag_mola_orbit, lon, lat

INPUTS:
       lon:       East longitude (0 to 360 degrees).

       lat:       Latitude (-90 to 90 degrees).

                  Note: lon and lat must have the same number
                        of elements.

KEYWORDS:
       PSYM:       Symbol type (same as for plot).

       NOSYM:      Do not plot symbol at s/c position.

       LSTYLE:     Line style (same as for plot).

       COLOR:      Line/symbol color (same as for plot).

       RESET:      Read in the MAG-MOLA image and calculate the
                   plot size and position.

       NOERASE:    Do not refresh the plot for each [lon, lat] point.

       BIG:        Use a 1000x500 MAG-MOLA image.

       DBR:        Use a 1000x500 dBr/dt image.
                   (Note: dBr/dt is approx. the same as dBr/dlat.)

       TERMINATOR: Overlay the terminator at the time specified by this
                   keyword.

       SHADOW:     If TERMINATOR is set, specifies which "terminator" to
                   plot.
                      0 : Optical shadow boundary at surface.
                      1 : Optical shadow boundary at s/c altitude.
                      2 : EUV shadow boundary at s/c altitude.
                      3 : EUV shadow at electron absorption altitude.

       SITES:      A 2 x N array of surface locations to plot.

       SLAB:       Text labels for each of the sites.

       SCOL:       Color for each of the sites.

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2021-11-06 12:22:51 -0700 (Sat, 06 Nov 2021) $
 $LastChangedRevision: 30406 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/mag_mola_orbit.pro $

CREATED BY:	David L. Mitchell  04-02-03

(See projects/maven/maven_orbit_tplot/mag_mola_orbit.pro)


MAG_NPOLE_ORBIT

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   mag_npole_orbit
PURPOSE:
  Plots a set of [longitude,latitude] positions over a polar MAG map.

USAGE:
  mag_Npole_orbit, lon, lat

INPUTS:
       lon:       East longitude (0 to 360 degrees).

       lat:       Latitude (-90 to 90 degrees).

                  Note: lon and lat must have the same number
                        of elements.

KEYWORDS:
       PSYM:      Symbol type (same as for plot).

       LSTYLE:    Line style (same as for plot).

       COLOR:     Line/symbol color (same as for plot).

       RESET:     Read in the MAG-MOLA image and calculate the
                  plot size and position.

       NOERASE:   Do not refresh the plot for each [lon, lat] point.

       TERMINATOR: Overlay the terminator.

       SHADOW:     If TERMINATOR is set, specifies which "terminator" to
                   plot.
                      0 : Optical shadow boundary at surface.
                      1 : Optical shadow boundary at s/c altitude.
                      2 : EUV shadow boundary at s/c altitude.

       MONITOR:   Place snapshot window in this monitor.  Only works if
                  monitor configuration is defined (see putwin.pro).

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2021-02-28 12:46:30 -0800 (Sun, 28 Feb 2021) $
 $LastChangedRevision: 29710 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/mag_npole_orbit.pro $

CREATED BY:	David L. Mitchell  04-02-03

(See projects/maven/maven_orbit_tplot/mag_npole_orbit.pro)


MAVEN_ORBIT_BETA

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   maven_orbit_beta
PURPOSE:
  Calculates the MAVEN orbit beta angle, which is the angle between
  the Sun direction and the orbit plane [-90 to 90 degrees].  When beta
  is positive, the orbit normal (P x V, where P is position and V is 
  velocity) points toward the Sun-facing hemisphere.

  This routine requires SPICE.

USAGE:
  maven_orbit_beta

INPUTS:
       time:      [Optional] One or more UTC times, in any format accepted by
                  time_double.  If not specified and MISSION is not set, then 
                  try to get the periapsis times for all MAVEN orbits within 
                  the tplot timespan (TRANGE_FULL).

KEYWORDS:
       RESULT:    Structure containing UTC (x) and beta angle (y).  Works as a
                  tplot variable.

       MISSION:   Ignore the time input, and calculate beta at periapsis for
                  every orbit in the mission that has SPK coverage (including 
                  up to several weeks into the future).

                  Warning: This will likely require SPICE to be reinitialized.

       TPLOT:     Store the tplot variable and set some tplot options.
                  Default = 1.

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2021-09-15 11:55:02 -0700 (Wed, 15 Sep 2021) $
 $LastChangedRevision: 30296 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/maven_orbit_beta.pro $

(See projects/maven/maven_orbit_tplot/maven_orbit_beta.pro)


MAVEN_ORBIT_COMMON

[Previous Routine] [Next Routine] [List of Routines]
COMMON BLOCK:   maven_orbit_common
PURPOSE:
  Common block definition for maven_orbit_tplot and associated routines.

USAGE:
  To be used inside routines that want access to the common block.  Put this
  line near the top:

    @maven_orbit_common

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2021-03-22 19:19:14 -0700 (Mon, 22 Mar 2021) $
 $LastChangedRevision: 29806 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/maven_orbit_common.pro $

CREATED BY:	David L. Mitchell

(See projects/maven/maven_orbit_tplot/maven_orbit_common.pro)


MAVEN_ORBIT_EPH

[Previous Routine] [Next Routine] [List of Routines]
FUNCTION:   maven_orbit_eph
PURPOSE:
  Returns the MAVEN spacecraft ephemeris, consisting of the MSO and GEO state
  vectors along with some derived quantities: altitude, GEO longitude, GEO
  latitude, and solar zenith angle.  The reference surface for calculating
  altitude ("datum") is specified.

  The coordinate frames are:

   GEO = body-fixed Mars geographic coordinates (non-inertial) = IAU_MARS

              X ->  0 deg E longitude, 0 deg latitude
              Y -> 90 deg E longitude, 0 deg latitude
              Z -> 90 deg N latitude (= X x Y)
              origin = center of Mars
              units = kilometers

   MSO = Mars-Sun-Orbit coordinates (approx. inertial)

              X -> from center of Mars to center of Sun
              Y -> opposite to Mars' orbital angular velocity vector
              Z = X x Y
              origin = center of Mars
              units = kilometers

USAGE:
  eph = maven_orbit_eph()
INPUTS:
       none

KEYWORDS:
       none

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2019-03-15 12:33:21 -0700 (Fri, 15 Mar 2019) $
 $LastChangedRevision: 26801 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/maven_orbit_eph.pro $

(See projects/maven/maven_orbit_tplot/maven_orbit_eph.pro)


MAVEN_ORBIT_MAKEEPH

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   maven_orbit_makeeph
PURPOSE:
  Generates MAVEN spacecraft state vectors using the SPICE Icy toolkit.
  The result is returned in a structure with the following tags:

    T              Time (UTC): number of seconds since 1970-01-01
    X              X position coordinate (km)
    Y              Y position coordinate (km)
    Z              Z position coordinate (km)
    VX             X velocity component (km/s)
    VY             Y velocity component (km/s)
    VZ             Z velocity component (km/s)

USAGE:
  maven_orbit_makeeph, frame=frame, origin=origin, eph=eph
INPUTS:

KEYWORDS:
       TSTEP:     Time step (seconds).  Default = 60.

       EPH:       Named variable to hold the ephemeris structure.

       FRAME:     Coordinate frame.  Type mvn_frame_name(/list) for a full list.

       ORIGIN:    Origin of coordinate frame.  Can be "Mars", "Phobos", or
                  "Deimos".  Default = "Mars".

       TSTART:    Start time for output save file ephemeris.

       TSTOP:     Stop time for output save file ephemeris.

       MVN_SPK:   Include the specified spacecraft kernel(s) in the loadlist.  
                  Full path and filename is required.  Used for the long-range 
                  predict kernels, such as the design reference mission (DRM).

       UNLOAD:    Unload all kernels (cspice_kclear) after completion.

       RESET:     Unload all kernels (cspice_kclear) and start fresh.

       STAT:      Return statistics of ephemeris coverage.  (Useful to determine
                  the boundary between reconstructions and predictions.)

       OBJECT:    By default, this routine uses the name 'MAVEN' (id = -202) for
                  the spacecraft, which is the definition used by NAIF.  It is 
                  possible for an ephemeris to use a non-standard object name/id.
                  Use this keyword to override the default and specify the non-
                  standard name or id.  Example: OBJECT='-200000'.

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2018-07-05 13:14:34 -0700 (Thu, 05 Jul 2018) $
 $LastChangedRevision: 25439 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/maven_orbit_makeeph.pro $

CREATED BY:	David L. Mitchell  2014-10-13

(See projects/maven/maven_orbit_tplot/maven_orbit_makeeph.pro)


MAVEN_ORBIT_MOVIE

[Previous Routine] [Next Routine] [List of Routines]
 PROCEDURE:
       maven_orbit_movie
 PURPOSE:
       3D visualization of MAVEN orbit using IDL 8 new graphics
 CALLING SEQUENCE:
       timespan,'2015-01-01'
       maven_orbit_movie, dim=[640,480], rate=3600
 OPTIONAL KEYWORDS:
       TRANGE: time range (if not present then timerange() is called)
       DIMENSIONS: [width,height] (Def: half of the screen size)
       MOVIENAME: name of the output movie file (Def: 'maven_orbit.mp4')
       RATE: speed of the movie (Def: 4*3600 = 4 hr/sec)
       FPS: frames per sec of the movie (Def: 20)
       ZOOMSCALE: zoom in/out scale (Def: 1.5)
       FONT_SIZE: font size of the time stamp (Def: 24)
       BOXSIZE: minmax of the 3D box in km (Def: [-3.,3.]*R_M)
       BCMODEL: specifies crustal field model (Def: 'morschhauser')
       SNAP: if set, generate a snapshot instead of a movie
       TSNAP: time of the snapshot (Def: start time of timerange())
       FIGNAME: name of the snapshot file (Def: 'maven_orbit.png')
                most file formats are acceptable
                (http://www.exelisvis.com/docs/save_method.html)
       CLOSEWIN: close the graphic window when finished
 CREATED BY:
       Yuki Harada on 2015-11-04

 $LastChangedBy: haraday $
 $LastChangedDate: 2021-10-17 22:40:06 -0700 (Sun, 17 Oct 2021) $
 $LastChangedRevision: 30373 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/maven_orbit_movie.pro $

(See projects/maven/maven_orbit_tplot/maven_orbit_movie.pro)


MAVEN_ORBIT_OPTIONS

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   maven_orbit_options
PURPOSE:
  Stores a structure of MAVEN_ORBIT keyword options and provides
  a mechanism for changing those options.  Keywords set by this
  routine are persistent defaults in the MAVEN_ORBIT routines.
  They can be overridden by explicitly setting keywords in those
  routines.

  Call this routine from your idl_startup.pro to customize default
  options for yourself.

USAGE:
  maven_orbit_options, key

INPUTS:
       key:           Structure containing keyword(s) for MAVEN_ORBIT_TPLOT 
                      and MAVEN_ORBIT_SNAP.  Unrecognized keywords can be 
                      added to the structure but will subsequently be ignored.

                      {KEYWORD: value, KEYWORD: value, ...}

KEYWORDS:
       GET:           Set this to a named variable to return the current 
                      default keyword structure (after changes, if any).

       REPLACE:       If this keyword is set, then the input structure 
                      replaces any existing structure.  Otherwise, the
                      input structure is merged with any existing one.

       DELETE:        An array of tag names to delete from the default
                      keyword structure.

       RESET:         Reset the default structure to something universally
                      benign: {WSCALE: 1.}

       LIST:          List the current keyword default structure.  This is
                      the default when this routine is called without any
                      inputs or keywords.

       SILENT:        Suppresses output.

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2021-03-22 19:18:19 -0700 (Mon, 22 Mar 2021) $
 $LastChangedRevision: 29805 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/maven_orbit_options.pro $

(See projects/maven/maven_orbit_tplot/maven_orbit_options.pro)


MAVEN_ORBIT_SNAP

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   maven_orbit_snap
PURPOSE:
  After running maven_orbit_tplot, this routine plots the orbit as viewed
  along each of the MSO axes.  Optionally, the orbit can be superimposed on
  models of the solar wind interaction with Mars.  Also optionally, the 
  position of the spacecraft can be plotted (in GEO coordinates) on a map
  of Mars' topography and magnetic field based on MGS MOLA and MAG data.

  All plots are generated at times selected with the cursor on the TPLOT
  window.  Hold down the left mouse button and drag for a movie effect.

USAGE:
  maven_orbit_snap
INPUTS:

KEYWORDS:
       PREC:     Plot the position of the spacecraft at the selected time,
                 superimposed on the orbit.  Otherwise, the periapsis 
                 location for each orbit is plotted.  For time ranges less
                 than seven days, the default is PREC = 1.  Otherwise the 
                 default is 0.

       MHD:      Plot the orbit superimposed on an image of an MHD simulation
                 of the solar wind interaction with Mars (from Ma).
                   1 : Plot the XY projection
                   2 : Plot the XZ projection

       HYBRID:   Plot the orbit superimposed on an image of a hybrid simulation
                 of the solar wind interaction with Mars (from Brecht).
                   1 : Plot the XZ projection
                   2 : Invert Z in the model, then plot the XZ projection

       LATLON:   Plot MSO longitudes and latitudes of periapsis (PREC=0) or 
                 the spacecraft (PREC=1) in a separate window.

       CYL:      Plot MSO cylindrical projection (x vs. sqrt(y^2 + z^2)).

       XZ:       Plot only the XZ projection (view from side).

       XY:       Plot only the XY projection (view from ecliptic north).

       YZ:       Plot only the YZ projection (view from Sun)

       MARS:     Plot the position of the spacecraft (PREC=1) or periapsis 
                 (PREC=0) on an image of Mars topography (colors from MOLA)
                 and radial magnetic field (contours from Connerney et al. 
                 2001).  Alternatively, use an image of dBr/dt that better
                 filters out solar wind influences (Connerney et al. 2004),
                 on top of a greyscale topo map with elevation contours.
                   1 : Use a small MAG-MOLA image
                   2 : Use a large MAG-MOLA image
                   3 : Use a large dBr-topology image

       NPOLE:    Plot the position of the spacecraft (PREC=1) or periapsis
                 (PREC=0) on a north polar projection (lat > 55 deg).  The
                 background image is the north polar magnetic anomalies observed
                 at 180-km altitude by MGS (from Acuna).

       ALT:      If set and keywords MARS and/or NPOLE are set, then indicate the
                 spacecraft altitude next its symbol.

       TERMINATOR: Overplot the terminator and sub-solar point onto the Mars
                   topography plots (see MARS and NPOLE above).  SPICE must be 
                   installed and initialized (e.g., mvn_swe_spice_init) before 
                   using this keyword.  The following values are recognized:
                      0 : Do not plot any shadow boundary.  (default)
                      1 : Plot optical shadow boundary at surface.
                      2 : Plot optical shadow boundary at s/c altitude.
                      3 : Plot EUV shadow boundary at s/c altitude.
                      4 : Plot EUV shadow at electron absorption altitude.

       NOERASE:  Don't erase previously plotted positions.  Can be used to build
                 up a visual representation of sampling.

       NODOT:    Do not plot a filled circle at periapsis or spacecraft location.

       NOORB:    Do not plot the orbit.

       SCSYM:    Symbol for the spacecraft.  Default = 1 (plus symbol).

       RESET:    Initialize all plots.

       COLOR:    Symbol color index.

       SSIZE:    Symbol size.

       KEEP:     Do not kill the plot windows on exit.

       TIMES:    An array of times for snapshots.  Snapshots are overlain onto
                 a single version of the plot.  For evenly spaced times, this
                 produces a "spirograph" effect.  This overrides the interactive
                 entry of times with the cursor.  Sets KEEP, NOERASE, and RESET.

       TCOLORS:  Color index for every element of TIMES.

       BDIR:     Set keyword to show magnetic field direction in three planes,
                 In each plane, the same two components of B in MSO coordinates 
                 are shown, i.e. in XY plane, plotting Bx-By. The color shows 
                 if the third component (would be Bz in XY plane) is positive 
                 (red) or negative (blue).

       BCLIP:    Maximum amplitude for plotting B whisker.

       MSCALE:   To change the scale/length of magnetic field lines, the default
                 value is set to 0.05

       VDIR:     Set keyword to a tplot variable containing MSO vectors for a whisker
                 plot (like BDIR).

       VCLIP:    Maximum amplitude for plotting V whisker.

       VRANGE:   Time range for plotting vectors.

       VSCALE:   To change the scale/length of vector lines, the default value is
                 set to 0.05.

       THICK:    Line thickness.

       WSCALE:   Scale factor for sizing plot windows.  Default = 1.
                 Has no effect when plotting orbit projections over images, which
                 have fixed sizes.

       MAGNIFY:  Synonym for WSCALE.  (WSCALE takes precedence.)

       NOLABEL:  Omit text labels showing altitude and solar zenith angle.

       PSNAME:   Name of a postscript plot.  Works only for orbit plots.

       LANDERS:  Plot the locations of landers.  Can also be an 2 x N array
                 of surface locations (lon, lat) in the IAU_Mars frame.

       SLAB:     Text labels for each of the landers.  If LANDERS is a scalar,
                 then this provides a 1- or 2-character label for each lander.
                 If LANDERS is a 2 x N array, SLAB should be an N-element string
                 array.  Set SLAB to zero to disable text labels and just plot
                 symbols instead.  Text labels are centered in longitude with
                 the baseline at latitude.

       SCOL:     Color(s) for the lander labels or symbols.  If there are more
                 landers than colors, then additional landers are all given the
                 last color.  Default is 6 (red) for all.

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2022-03-10 17:49:27 -0800 (Thu, 10 Mar 2022) $
 $LastChangedRevision: 30670 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/maven_orbit_snap.pro $

CREATED BY:	David L. Mitchell  10-28-11

(See projects/maven/maven_orbit_tplot/maven_orbit_snap.pro)


MAVEN_ORBIT_TPLOT

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   maven_orbit_tplot
PURPOSE:
  Loads MAVEN ephemeris information, currently in the form of IDL save files produced
  with maven_spice_eph.pro, and plots the spacecraft trajectory as a function of time
  (using tplot).  The plots are color-coded according to the nominal plasma regime, 
  based on conic fits to the bow shock and MPB from Trotignon et al. (PSS 54, 357-369, 
  2006).  The wake region is either the EUV or optical shadow in MSO coordinates:
  (sqrt(y*y + z*z) < Rm ; x < 0), where Rm is the Mars radius appropriate for optical
  or EUV wavelengths.

  The available coordinate frames are:

   GEO = body-fixed Mars geographic coordinates (non-inertial) = IAU_MARS

              X ->  0 deg E longitude, 0 deg latitude
              Y -> 90 deg E longitude, 0 deg latitude
              Z -> 90 deg N latitude (= X x Y)
              origin = center of Mars
              units = kilometers
              full rotation once per Mars day

   MSO = Mars-Sun-Orbit coordinates (approx. inertial)

              X -> from center of Mars to center of Sun
              Y -> opposite to Mars' orbital angular velocity vector
              Z = X x Y
              origin = center of Mars
              units = kilometers
              full rotation once per Mars year

USAGE:
  maven_orbit_tplot
INPUTS:

KEYWORDS:
       STAT:     Named variable to hold the plasma regime statistics.

       DOMEX:    Use a MEX ephemeris, instead of one for MAVEN.

       SWIA:     Calculate viewing geometry for SWIA, based on nominal s/c
                 pointing.

       DATUM:    String for specifying the datum, or reference surface, for
                 calculating altitude.  Can be one of "sphere", "ellipsoid",
                 "areoid", or "surface".  Default = 'ellipsoid'.
                 Minimum matching is used for this keyword.
                 See mvn_altitude.pro for more information.

       IALT:     Ionopause altitude.  Highly variable, but nominally ~400 km.
                 For display only - not included in statistics.  Default is NaN.

       SHADOW:   Choose shadow boundary definition:
                    0 : optical shadow at spacecraft altitude
                    1 : EUV shadow at spacecraft altitude (default)

       SEGMENTS: Plot nominal altitudes for orbit segment boundaries as dotted
                 horizontal lines.  Closely spaced lines are transitions, during
                 which time the spacecraft is reorienting.  The actual segment 
                 boundaries vary with orbit period.

       RESULT:   Named variable to hold the MSO ephemeris with some calculated
                 quantities.  OBSOLETE.  Use keyword EPH instead.

       EPH:      Named variable to hold the MSO and GEO state vectors along with 
                 some calculated values.

       CURRENT:  Load the ephemeris from MOI to the current date + 2 weeks.  This
                 uses reconstructed SPK kernels, as available, then predicts.
                 This is the default.  OBSOLETE.

       SPK:      String array with an even number of elements >= 2 containing the 
                 names of the MSO and GEO save/restore ephemerides to use instead 
                 of the standard set.  Multiple MSO and GEO files can be specified,
                 but each MSO file must have a corresponding GEO file.  (These are
                 made in pairs - see maven_orbit_makeeph).

                 Used for long range predict and special events kernels.  Replaces
                 keywords EXTENDED and HIRES.

       EXTENDED: If set, load long-term predict ephemerides created 2021-03-30.  
                 These include an apoapsis raise maneuver on 2022-06-01 and a 
                 periapsis raise maneuver on 2026-12-16.  The MarsGRAM density 
                 scale factor is assumed to be 2.5.  The SPK kernels are:

                   trj_orb_210326-260101_dsf2.5-otm0.4-arms-prm-13.9ms_210330.bsp
                   trj_orb_260101-301230_dsf2.5-otm0.4-arms-prm-13.9ms_210330.bsp

       HIRES:    OBSOLETE - this keyword has no effect at all.

       LOADONLY: Create the TPLOT variables, but do not plot.

       NOLOAD:   Don't load or refresh the ephemeris information.  Just fill in any
                 keywords and exit.

       RESET_TRANGE: If set, then reset the time span to cover the entire ephemeris
                     time range, overwriting any existing time range.  This will
                     affect any routines that use timespan for determining what
                     data to process.  Use with caution.

       TIMECROP: An array with at least two elements, in any format accepted by 
                 time_double.  Only ephemeris data between the earliest and
                 latest times in this array are retained.  Default is to crop
                 data to current timespan, if it exists -- otherwise, load and
                 display all available ephemeris data (same as NOCROP).

       NOCROP:   Load and display all available ephemeris data.  Overrides TIMECROP.

       COLORS:   Color indices the nominal plasma regimes: [sheath, pileup, wake].
                 The solar wind is always plotted in the default foreground color,
                 typically white or black.  For other regimes, the defaults are:

                   regime       index       color (table 43)
                   -----------------------------------------
                   sheath         4         green
                   pileup       199         orange
                   wake           2         blue
                   -----------------------------------------

       VARS:     Array of TPLOT variables created.

       NOW:      Plot a vertical dotted line at the current time.

       PDS:      Plot vertical dashed lines separating the PDS release dates.

       VERBOSE:  Verbosity level passed to mvn_pfp_file_retrieve.  Default = 0
                 (suppress most messages).  Try a value > 2 to see more
                 messages; > 4 for lots of messages.

       CLEAR:    Clear the common block and exit.

       SAVE:     Make a save file for all tplot variables and the common block.

       RESTORE:  Restore tplot variables and the common block from a save file.

       MISSION:  Restore save files that span from Mars orbit insertion to the 
                 present.  These files are updated periodically.  Together, the
                 save files are 8.7 GB in size.

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2022-02-10 11:27:56 -0800 (Thu, 10 Feb 2022) $
 $LastChangedRevision: 30576 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/maven_orbit_tplot.pro $

CREATED BY:	David L. Mitchell  10-28-11

(See projects/maven/maven_orbit_tplot/maven_orbit_tplot.pro)


MAVEN_ORBIT_UPDATE

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   maven_orbit_update
PURPOSE:
  Updates the "current" spacecraft ephemeris using SPICE. 

USAGE:
  maven_orbit_update

INPUTS:

KEYWORDS:
       TSTEP:    Ephemeris time step (sec).  Default = 60 sec.

       REBUILD:  Normally, months containing only reconstructed kernels are not
                 updated.  Set this keyword to rebuild the entire database.

       TSTART:   Rebuild all files that contain data after this date.

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2020-10-21 15:38:28 -0700 (Wed, 21 Oct 2020) $
 $LastChangedRevision: 29269 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/maven_orbit_update.pro $

CREATED BY:	David L. Mitchell  2014-10-13

(See projects/maven/maven_orbit_tplot/maven_orbit_update.pro)


MHD_ORBIT

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   mhd_orbit
PURPOSE:
  Plots 

USAGE:
  mhd_orbit, lon, lat

INPUTS:
       lon:       East longitude (0 to 360 degrees).

       lat:       Latitude (-90 to 90 degrees).

                  Note: lon and lat must have the same number
                        of elements.

KEYWORDS:
       PSYM:      Symbol type (same as for plot).

       LSTYLE:    Line style (same as for plot).

       COLOR:     Line/symbol color (same as for plot).

       RESET:     Read in the MAG-MOLA image and calculate the
                  plot size and position.

       MONITOR:   Place snapshot window in this monitor.  Only works if
                  monitor configuration is defined (see putwin.pro).

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2021-02-28 12:46:30 -0800 (Sun, 28 Feb 2021) $
 $LastChangedRevision: 29710 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/mhd_orbit.pro $

CREATED BY:	David L. Mitchell  04-02-03

(See projects/maven/maven_orbit_tplot/mhd_orbit.pro)


MVN_MARS_LOCALTIME

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   mvn_mars_localtime
PURPOSE:
  Uses SPICE to determine the local solar time on Mars at a given longitude
  and UTC.  The result is stored as tplot variables and optionally returned
  via keyword.  You can specify arrays of times and longitudes as inputs, or
  this information can be obtained from the maven_orbit_tplot common block.

  It is assumed that you have already initialized SPICE.  (See 
  mvn_swe_spice_init for an example.)

USAGE:
  mvn_mars_localtime, time, lon, result=dat  ; user provides time and lon

  mvn_mars_localtime, result=dat             ; time & lon from common block

INPUTS:
       time:      An array of times, in any format accepted by time_double.
                  Optional.  Required if lon is specified.

       lon:       An array of IAU_MARS east longitudes (units = degrees).
                  Optional.  Required if time is specified.

                  Both time and lon must have the same number of elements.
                  If only one is specified or they don't have the same
                  number of elements, an error is generated, and the
                  routine will exit without doing anything.

                  If both are unspecified (zero elements), then this
                  routine will attempt to get time and lon from the 
                  maven_orbit_tplot common block.

KEYWORDS:
       RESULT:    Structure containing the result:

                    time  : unix time (seconds since 1970)
                    lon   : east longitude at time (deg)
                    lst   : local solar time (Mars hours, 0 = midnight)
                    slon  : sub-solar point east longitude (deg)
                    slat  : sub-solar point latitude (deg)
                    frame : reference frame for longitudes and latitudes

       PANS:      Returns the names of any tplot variables created.

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2021-04-09 11:30:39 -0700 (Fri, 09 Apr 2021) $
 $LastChangedRevision: 29860 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/mvn_mars_localtime.pro $

CREATED BY:	David L. Mitchell

(See projects/maven/maven_orbit_tplot/mvn_mars_localtime.pro)


MVN_MARS_TERMINATOR

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   mvn_mars_terminator
PURPOSE:
  Given a time, uses SPICE to determine the location of the 
  terminator and the subsolar point in IAU_MARS coordinates.
  The terminator is calculated with 1-deg resolution (360 points).
  The result is returned via keyword.

  It is assumed that you have already initialized SPICE.  (See 
  mvn_swe_spice_init for an example.)

USAGE:
  mvn_mars_terminator, time, result=dat

INPUTS:
       time:      Time for calculating the terminator

KEYWORDS:
       RESULT:    Structure containing the result:

                    time  : unix time for used for calculation
                    t_lon : terminator longitude (deg)
                    t_lat : terminator latitude (deg)
                    s_lon : sub-solar point longitude (deg)
                    s_lat : sub-solar point latitude (deg)
                    frame : coordinate frame ("IAU_MARS")

       SHADOW:    Choose which "shadow" to calculate:
                     0 : optical shadow at surface (default)
                     1 : optical shadow at spacecraft altitude
                     2 : EUV shadow at spacecraft altitude

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2017-03-01 14:56:42 -0800 (Wed, 01 Mar 2017) $
 $LastChangedRevision: 22890 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/mvn_mars_terminator.pro $

CREATED BY:	David L. Mitchell

(See projects/maven/maven_orbit_tplot/mvn_mars_terminator.pro)


MVN_SUN_BAR

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   mvn_sun_bar
PURPOSE:
  Creates a colored bar indicating sun/shadow.  Assumes that
  you have run maven_orbit_tplot first.

USAGE:
  mvn_sun_bar

INPUTS:

KEYWORDS:

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2017-09-07 11:20:21 -0700 (Thu, 07 Sep 2017) $
 $LastChangedRevision: 23904 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/mvn_sun_bar.pro $

CREATED BY:    David L. Mitchell

(See projects/maven/maven_orbit_tplot/mvn_sun_bar.pro)


PARABOLA_VERTEX

[Previous Routine] [Next Routine] [List of Routines]
PROCEDURE:   parabola_vertex
PURPOSE:
  Calculates the vertex of the parabola defined by three points.
  The parabola is assumed to be of the form:

    y = A*(x - xv)^2. + yv

  where A is a constant and [xv, yv] are the coordinates of the 
  vertex.  Works best when the input x values surround the vertex,
  but works in other cases as well.

  Uses the second-order Lagrange interpolation formula.  This is
  not a fit -- it is an exact algebraic calculation.

USAGE:
  parabola_vertex, xi, yi, xv, yv

INPUTS:
     xi : independent variable (at least 3 values)
     yi : dependent variable (at least 3 values)

     If xi and yi contain more than 3 values, then the routine 
     uses the three points surrounding the extremum in yi.  The
     points do not have to be evenly spaced.

     The xi must be different.

OUTPUTS:
     xv : location of the parabola vertex in x
     yv : value of the dependent variable at the vertex

KEYWORDS:

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2020-10-21 13:14:47 -0700 (Wed, 21 Oct 2020) $
 $LastChangedRevision: 29266 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/parabola_vertex.pro $

CREATED BY:    David L. Mitchell

(See projects/maven/maven_orbit_tplot/parabola_vertex.pro)


TIME_TO_PERIAPSIS

[Previous Routine] [List of Routines]
PROCEDURE:   time_to_periapsis
PURPOSE:
  Calculates the time needed for the spacecraft to go from periapsis
  to some higher altitude(s).  NAIF conventions are used:

    Periapsis is defined as the minimum distance in the orbit to the 
    center of Mars (a.k.a. "geometric periapsis").

    Altitude is calculated with respect to the IAU 2000 Mars ellipsoid
    (R_equator = 3396.19 km, R_pole = 3376.20 km).  This is known as
    "areodetic altitude".

  The spacecraft ephemeris is calculated using maven_orbit_tplot, which
  in turn uses SPICE.  The ephemeris is refreshed daily at 3:30 am (Pacific)
  using the latest available kernels from NAIF.  The ephemeris coverage
  extends from Mars orbit insertion to about eight weeks into the future.

USAGE:
  time_to_periapsis, h

INPUTS:
       h:             An array of altitudes (units = km).

KEYWORDS:
       TIME:          Reference time for selecting the nearest orbit.
                      Can be in any format accepted by time_double.
                      If you supply an array of times, only the first
                      element is used.  If not specified, the current
                      UTC is used.

       RESULT:        Named variable to hold the result structure.

       VERBOSE:       Verbosity level.  See dprint.pro.

 $LastChangedBy: dmitchell $
 $LastChangedDate: 2020-10-26 15:28:30 -0700 (Mon, 26 Oct 2020) $
 $LastChangedRevision: 29295 $
 $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/tags/spedas_5_0/projects/maven/maven_orbit_tplot/time_to_periapsis.pro $

CREATED BY:    David L. Mitchell

(See projects/maven/maven_orbit_tplot/time_to_periapsis.pro)