;+ ; NAME: ; JPLEPHMAKE ; ; AUTHOR: ; Craig B. Markwardt, NASA/GSFC Code 662, Greenbelt, MD 20770 ; craigm@lheamail.gsfc.nasa.gov ; UPDATED VERSIONs can be found on my WEB PAGE: ; http://cow.physics.wisc.edu/~craigm/idl/idl.html ; ; PURPOSE: ; Make a new ephemeris suitable for interpolation by JPLEPHINTERP ; ; MAJOR TOPICS: ; Planetary Orbits, Interpolation ; ; CALLING SEQUENCE: ; JPLEPHREAD, INFO, RAW, OBJ, T, CX, CY, CZ, $ ; [ POSUNITS=, AUTHOR=, DATE=, OBJECTNAME=, ] ; [ KEYWORDS=, KEYVALUES=, /RESET ] ; ; DESCRIPTION: ; ; JPLEPHMAKE is a utility routine which forms an ephemeris table ; suitable for interpolation with JPLEPHINTERP. This is a way for ; users to make or augment an ephemeris of solar system bodies not ; already present in the JPL planetary ephemeris. This routine only ; creates new ephemerides in memory. No facility is provided to ; write to disk. ; ; The user must have already estimated the Chebyshev polynomial ; coefficients for the body of interest. One way to do this is with ; CHEBGRID from the Markwardt library. ; ; The two options are either to create a new ephemeris or to augment ; an existing one. Augmentation merely means that new columns are ; added to an existing ephemeris table. The JPL ephemeris itself ; can be augmented. ; ; Even when creating a new ephemeris from scratch, passing an ; existing INFO structure based on another epehemeris is strongly ; recommended, because the structure usually contains planetary ; masses, physical constants, etc. which are relevant. ; ; ; ; PARAMETERS: ; ; ; INFO - upon input, an existing INFO structure based on a known ; ephemeris. Upon output, a modified INFO structure. ; ; If INFO is undefined upon input, or the RESET keyword is ; set, then the returned INFO is set to a generic header. ; ; RAW - upon input, an existing set of Chebyshev coefficients. Upon ; output, the new or augmented set of coefficients. ; ; If RAW is undefined upon input, or if the RESET keyword is ; set, then the returned RAW variable is initialized to a new ; set of keywords. ; ; OBJ - scalar string, name of the object. ; ; T - array of times, in Julian Days (TDB), which refer to the ; *start* epoch of each granule. [ In the terminology of the ; JPL ephemeris and CHEBGRID, a "granule" is a single ; subinterval over which a Chebyshev polynomial is fitted. ] If ; an existing ephemeris is to be augmented, then T must overlap ; exactly. ; ; CX, CY, CZ - arrays of Chebyshev polynomial coefficients. ; ; ; ; KEYWORD PARAMETERS: ; ; POSUNITS - a scalar string, the units of position as fitted by CX, ; CY, and CZ. Allowed values: ; 'KM' - kilometers (default) ; 'CM' - centimeters ; 'AU' - astronomical units ; 'LT-S' - light seconds ; ; NSUBINTERVALS - Number of granules per time sample. ; Default: 1 ; ; RESET - if set, then a new ephemeris table is created. Any ; Chebyshev coefficients in RAW are overwritten. ; ; AUTHOR - a scalar string, an identifier giving the author of the ; new ephemeris. ; Default: '' ; ; DATE - a scalar string, the creation date of the ephemeris. ; Default: SYSTIME(0) ; ; KEYWORDS - an optional string array, giving any header keywords to ; be added to the ephemeris (in conjunction with ; KEYVALUES). ; Default: (none) ; ; KEYVALUES - an optional double array, giving any header values for ; the keywords specified by KEYWORDS. ; ; Default: (none) ; ; ; EXAMPLE: ; ; ; REFERENCES: ; ; JPL Export Ephmeris FTP Site ; ftp://navigator.jpl.nasa.gov/pub/ephem/export/ ; (ephemeris files are available here, however, they must be ; converted to FITS format using the "bin2eph" utility found in ; AXBARY) ; ; ; SEE ALSO ; JPLEPHREAD, JPLEPHINTERP, JPLEPHTEST ; ; MODIFICATION HISTORY: ; Written and Documented, CM, Mar 2002 ; Corrected way that ephemerides are merged, also ; way that AUTHOR field is filled, 29 May 2002, CM ; ; $Id: jplephmake.pro,v 1.4 2002/05/29 20:07:41 craigm Exp $ ; ;- ; Copyright (C) 2002, Craig Markwardt ; This software is provided as is without any warranty whatsoever. ; Permission to use, copy and distribute unmodified copies for ; non-commercial purposes, and to modify and use for personal or ; internal use, is granted. All other rights are reserved. ;-