This page was created by the IDL library routine
mk_html_help. For more information on
this routine, refer to the IDL Online Help Navigator
or type:
? mk_html_help
at the IDL command line prompt.
Last modified: Tue Aug 18 15:38:05 2015.
NAME: et2jd PURPOSE: converts ET to julian date (ET = TDB seconds after J2000) DESCRIPTION: converts ET to julian date (ET = TDB seconds after J2000) CALLING SEQUENCE: jd = et2jd(et) INPUTS: et - may be a double, or an array or matrix of doubles KEYWORDS OUTPUTS: jd - Julian date. Same dimensions as et. PROCEDURE: Calls cspice_et2jd to get the year, month, day; raparse to get the fractional day, and jdcnv to get the conversion to julian date. REVISON HISTORY: 2006 Apr 12 Leslie Young. Based on single_eph
(See ../naif/et2jd.pro)
NAME:
et2utc
PURPOSE:
converts ET to strings (ET = TDB seconds after J2000)
DESCRIPTION:
converts ET to strings (ET = TDB seconds after J2000)
CALLING SEQUENCE:
utc = et2utc(et)
INPUTS:
et - may be a double, or an array or matrix of doubles
KEYWORDS
format =the scalar string format of the output time string,
it may be any of the following:
"C" Calendar format, UTC
"D" Day-of-Year format, UTC
"J" Julian Date format, UTC
"ISOC" ISO Calendar format, UTC
"ISOD" ISO Day-of-Year format, UTC
DEFAULT IS "C"
prec the scalar integer number of decimal places of precision to
which fractional seconds (for Calendar and Day-of-Year
formats) or days (for Julian Date format) are to be
computed
DEFAULT IS 3 (or 5 for format = 'J')
OUTPUTS:
utc - String representation of et. Same dimensions as et.
PROCEDURE:
Just calls cspice_et2utc
REVISON HISTORY:
2006 Jan 05 Leslie Young. Based on single_eph
(See ../naif/et2utc.pro)
NAME: et2utcs PURPOSE: converts ET (TDB) to UTC seconds after J2000 DESCRIPTION: converts ET (TDB) to UTC seconds after J2000 CALLING SEQUENCE: utcs = et2utcs(et) INPUTS: et - may be a double, or an array or matrix of doubles OUTPUTS: utcs - UTC seconds after J2000 PROCEDURE: cspice_et2utc and cspice_deltaet REVISON HISTORY: 2008 Mar 25 Leslie Young.
(See ../naif/et2utcs.pro)
NAME: et2utcy PURPOSE: converts ET (TDB) seconds to UTC years after J2000 CALLING SEQUENCE: utcy = et2utcy(et) INPUTS: et - may be a double, or an array or matrix of doubles OUTPUTS: utcy - UTC years REVISON HISTORY: 2008 Mar 25 Leslie Young.
(See ../naif/et2utcy.pro)
NAME: getdir PURPOSE: (one line) find the directory that filename is in DESCRIPTION: CATEGORY: Miscellaneous CALLING SEQUENCE: getdir, filename, dirname, dirsep INPUTS: filename OPTIONAL INPUT PARAMETERS: none KEYWORD INPUT PARAMETERS: none KEYWORD OUTPUT PARAMETERS: none OUTPUTS: dirname - the directory that filename.pro is in COMMON BLOCKS: None. SIDE EFFECTS: Defines the system variable !eph using defsysv RESTRICTIONS: PROCEDURE: MODIFICATION HISTORY: Written 2005 January 15, by Cathy Olkin, SwRI
(See ../naif/getdir.pro)
NAME: met2et_nh PURPOSE: (one line) Given an array or scalar of New Horizons MET, return Ephemeris Time DESCRIPTION: CATEGORY: CALLING SEQUENCE: et = met2et_nh INPUTS: met = mission elapsed time. Should be a double. OUTPUTS: et = Ephemeris Time. TDB (Barycentric Dynamical Time) since J2000. See NAIF documentation for details. RESTRICTIONS: MET should be double The New Horizons sclk kernel must be loaded. PROCEDURE: CSPICE_SCS2E interprets them as ". ". The major and minor ticks are defined in the SCLK kernel: In a particular partition of the NEW HORIZONS spacecraft clock, the clock read-out consists of two separate stages: 1/18424652:24251 The first stage, a 32 bit field, represents the spacecraft clock seconds count. The second, a 16 bit field, represents counts of 20 microsecond increments of the spacecraft clock. MODIFICATION HISTORY: Written 2015 July 19 (P+5), by Leslie Young, SwRI Many thanks to David Kaufman and
(See ../naif/met2et_nh.pro)
NAME:
naif
PURPOSE: (one line)
prepare tnaif library and collect some constants into a system variable
DESCRIPTION:
see /usr/local/icy/doc/html/req/icy.html for ICY info
CATEGORY:
Astronomy
CALLING SEQUENCE:
naif
INPUTS:
none
OPTIONAL INPUT PARAMETERS:
forcedef - define !naif even if it is defined
rw - allow !naif to be read-write
kernelFile - the kernels to load. This can take two different
forms, either a single string which is the
full path name of one kernel file (tls or bsp for
example), or a metakernel file with the
names of the kernels to load. If this optional
argument is not defined, the file ;
"kernels.txt" is used.
This file is located in /User/naif/kernels.txt.
Note: under OSX, the cpsice_furnsh function expects the master
kernel file to have lines delimited
by line feeds instead of carriage returns.
KEYWORD INPUT PARAMETERS:
none
KEYWORD OUTPUT PARAMETERS:
none
OUTPUTS:
None.
COMMON BLOCKS:
None.
SIDE EFFECTS:
Defines the system variable !eph using defsysv
RESTRICTIONS:
PROCEDURE:
MODIFICATION HISTORY:
Written 2004 May, by Leslie Young, SwRI
Modified 2004 Dec 7, by Cathy Olkin, SwRI
1. Moved "help, 'icy',/dlm" to be after package is loaded to remove error message.
2. Added a kernel file
3. Call cspice_furnsh on the kernel file
4. Made a standard kernels.txt file and added an optional argument to override the
standard kernel file.
To do: 1. Add to !naif, either the string passed to cspice_furnsh or the contents of the file
loaded by cspice_furnsh. I should be able to use the output from cspice_kdata to do this,
but I am not sure how to do this right now.
(See ../naif/naif.pro)
NAME:
naifinit
PURPOSE: (one line)
prepare tnaif library and collect some constants into a system variable
DESCRIPTION:
see /usr/local/icy/doc/html/req/icy.html for ICY info
CATEGORY:
Astronomy
CALLING SEQUENCE:
naifinit
INPUTS:
none
OPTIONAL INPUT PARAMETERS:
forcedef - define !naif even if it is defined
rw - allow !naif to be read-write
kernelFile - the kernels to load. This can take two different
forms, either a single string which is the
full path name of one kernel file (tls or bsp for
example), or a metakernel file with the
names of the kernels to load. If this optional
argument is not defined, the file
"kernels.tm" is used. This file is located
in the same directory as naifinit.pro.
Note: under OSX, the cpsice_furnsh function expects the master
kernel file to have lines delimited
by line feeds instead of carriage returns.
KEYWORD INPUT PARAMETERS:
none
KEYWORD OUTPUT PARAMETERS:
none
OUTPUTS:
None.
COMMON BLOCKS:
None.
SIDE EFFECTS:
Defines the system variable !eph using defsysv
RESTRICTIONS:
PROCEDURE:
MODIFICATION HISTORY:
Written 2004 May, by Leslie Young, SwRI
Modified 2004 Dec 7, by Cathy Olkin, SwRI
1. Moved "help, 'icy',/dlm" to be after package is
loaded to remove error message.
2. Added a kernel file
3. Call cspice_furnsh on the kernel file
4. Made a standard kernels.tm file and added an
optional argument to override the
standard kernel file.
To do: 1. Add to !naif the string passed to cspice_furnsh
2005 Mar 3 Leslie Young. Moved to $idl/layoung/naif
Changed call to getdir to call to findpro,
Added more error checking
2005 Apr 26 Leslie Young. Added readonly to structure
2005 Nov 16.Default to read-write; default TextMetakernel -> kernels.tm
(See ../naif/naifinit.pro)
NAME:
naifreinit
PURPOSE: (one line)
unload existing kernels and reload new kernels for naif
DESCRIPTION:
see /usr/local/icy/doc/html/req/icy.html for ICY info
CATEGORY:
Astronomy
CALLING SEQUENCE:
naifreinit
INPUTS:
none
OPTIONAL INPUT PARAMETERS:
kernelFile - the kernels to load. This can take two different
forms, either a single string which is the
full path name of one kernel file (tls or bsp for
example), or a metakernel file with the
names of the kernels to load. If this optional
argument is not defined, the file
"kernels.tm" is used. This file is located
in the same directory as naifinit.pro.
Note: under OSX, the cpsice_furnsh function expects the master
kernel file to have lines delimited
by line feeds instead of carriage returns.
KEYWORD INPUT PARAMETERS:
none
KEYWORD OUTPUT PARAMETERS:
none
OUTPUTS:
None.
COMMON BLOCKS:
None.
SIDE EFFECTS:
Defines the system variable !naif using defsysv
RESTRICTIONS:
PROCEDURE:
MODIFICATION HISTORY:
2005 Apr 26 Leslie Young. based on naifinit
2005 Nov 16 Leslie Young. Default file -> kernels.tm (Text Metakernel)
(See ../naif/naifreinit.pro)
NAME: naif_id PURPOSE: Given an integer or a string return the naif id of target DESCRIPTION: Given an integer or a string return the naif id of target CALLING SEQUENCE: id = naif_id(idin, found) INPUTS: idin - scalar or array of integers or strings OUTPUTS: found - scalar or array, 1 if found, 0 if not found id - scalar or array of longs, the naif ID REVISON HISTORY: 2007 Sep 12 LAY 2009 May 5 LAY change to use size instead of datatype
(See ../naif/naif_id.pro)
NAME: naif_loadedkernels PURPOSE: (one line) return the loaded kernels DESCRIPTION: see /usr/local/icy/doc/html/req/icy.html for ICY info CATEGORY: Astronomy CALLING SEQUENCE: naifinit INPUTS: none OPTIONAL INPUT PARAMETERS: none KEYWORD INPUT PARAMETERS: none KEYWORD OUTPUT PARAMETERS: none OUTPUTS: Array of strings containing the loaded kernels COMMON BLOCKS: None. SIDE EFFECTS: Defines the system variable !eph using defsysv RESTRICTIONS: PROCEDURE: MODIFICATION HISTORY: Written 2005 Dec 26, by Leslie Young, SwRI
(See ../naif/naif_loadedkernels.pro)
NAME:
naif_phys
PURPOSE: (one line)
calculate physical data for a target
DESCRIPTION:
calculate physical data for a target: sub observer and solar lat
and lon, phase angle
CATEGORY:
Astronomy
CALLING SEQUENCE:
naif_phys
INPUTS:
target - target string or code
obset - ET (TDB s after J2000) at the observer
OPTIONAL INPUT PARAMETERS:
none
KEYWORD INPUT PARAMETERS:
obs - observer code
lonlatlat - [east long in rad, geodetic lat in rad, alt in km]
KEYWORD OUTPUT PARAMETERS:
none
OUTPUTS:
a structure with
subobslat = sub-observer latitude (radian)
subobslon = sub-observer longitude (radian)
subsollat = sub-solar latitude (radian)
subsollon = sub-solar longitude (radian)
phase = observer-target-sun angle (radian)
obsdist = observer-target distance (km)
soldist = sun-target distance (km)
COMMON BLOCKS:
None.
SIDE EFFECTS:
RESTRICTIONS:
PROCEDURE:
MODIFICATION HISTORY:
Written 2006 May 11 Leslie Young, SwRI
2007 June 06 LAY - corrected documentation
2008 Mar 25 LAY - corrected sign error in subsollon
2011 Jan 13 LAY - Added calls to naif_id to all targ to be string
(See ../naif/naif_phys.pro)
NAME:
ocpluto_pos
PURPOSE:
Calculates position of Pluto, Charon, barycenter, and photocenter
DESCRIPTION:
Calculates position of Pluto, Charon, barycenter, and photocenter
CALLING SEQUENCE:
INPUTS:
et - the ET at which you want to know the coordinates (may be an
array). Units are seconds of TDB (barycentric dynamical
time) after J2000.
KEYWORD INPUT
lonlatalt - lon, lat, altitude for topocentric
ephemerides. Default geocentric
KEYWORD OUTPUT:
pluto - pluto body center. pluto[0,*] = ra, etc
Charon - Charon body center
barycener - barycenter
photocenter - system photocenter
RESTRICTIONS
For geocentric observations, ltime and position can be off by
Re/c = 21 ms.
REVISON HISTORY:
2006 Jan 02 Leslie Young. Based on single_eph
2006 May 11 LAY Added ltime
(See ../naif/oc_pluto_pos.pro)
NAME:
oc_ephicy.Pro
PURPOSE:
Returns a structure with the following information:
{et, ra, dec, radot, decdot, ephinfo} where ephinfo
contains the observer range and observer range rate.
DESCRIPTION:
Calculates the ra, dec, radot, decdot, observer range
and range rate using the NAIF ICY routines.
CALLING SEQUENCE:
eph = oc_ephicy(target, observer, utcStrStart, utcStrEnd, dt, neph)
INPUTS:
target - the target for the ephemeris, i.e. "Pluto"
observer - the observer location, i.e. "Earth"
utcStrStart - the UTC string of the start time,
i.e. "January 11, 2006 00:00:00"
utcStrEnd - the UTC string of the end time
dt - the increment in time, seconds
OUTPUTS:
eph - a structure with the following elements
eph.et - ephemeris time at observer, in TDB s past J2000
eph.ra - the target RA in radians
eph.dec - the target Dec in radians
eph.raerr - the error in cos(dec)*ra (-999 for undefined)
eph.decerr - the error in Dec in radians (-999 for undefined)
eph.radot - the RA rate in radians/s (d(ra)*cos(dec)/dt)
eph.decdot -- the Dec rate in radians/s
eph.radoterr - the error in radot (-999 for undefined)
eph.decdoterr - the error in decdot (-999 for undefined)
eph.delta - target-obeserver distance in km
eph.deltadot - change in target-obeserver distance in km/s
eph.state - J2000 [X,Y,Z, X', Y', Z'] in km and km/s
eph.naif - naif info structure
eph.naif.target - NAIF target name
eph.naif.observer - NAIF observer name
eph.naif.targetcode - NAIF target code
eph.naif.observercode - NAIF observer code
eph.naif.frame - frame for returning state, eg 'J2000'
eph.naif.abcorr - aberation correction, eg 'LT' for lighttime
eph.naif.kernels - list of kernels loaded
REVISON HISTORY:
17-January-2005 CBO SwRI
21-March-2005 LAY SwRI
Changed from procedure to function
Changed i from float to long
12 March 2006 LAY SwRI
Cleaned up docs to reflect new single_eph output
Cast dt to be a double
22 March 2006 LAY SwRI added verbose, abcoor, frame,
lonlatalt keywords
02-July-2006 LAY SwRI add kernel keyword to single_eph to avoid extra calls
to naif_laodedkernels
(See ../naif/oc_ephicy.pro)
NAME:
oc_ephicy_arclen.Pro
PURPOSE:
Returns a structure with the following information:
{et, ra, dec, radot, decdot, ephinfo} where ephinfo
contains the observer range and observer range rate.
DESCRIPTION:
Calculates the ra, dec, radot, decdot, observer range
and range rate using the NAIF ICY routines.
CALLING SEQUENCE:
oc_ephicy_arclen, target, observer, utcStrStart, utcStrEnd,
arclen, eph
INPUTS:
target - the target for the ephemeris, i.e. "Pluto"
observer - the observer location, i.e. "Earth"
utcStrStart - the UTC string of the start time,
i.e. "January 11, 2006 00:00:00"
utcStrEnd - the UTC string of the end time
arclen - the increment in sky-plane distance traveled
by the target, radians
OUTPUTS:
eph - a structure with the following elements
eph.ra - the Pluto RA in radians
eph.dec - the Pluto Dec in radians
eph.radot - the RA rate in radians/s
(d(ra)*cos(dec)/dt)
eph.decdot -- the Dec rate in radians/s
eph.ephinfo - the observer range (in km)
and range rate (km/s).
REVISON HISTORY:
17-January-2005 CBO SwRI
26-January-2005 LAY SwRI added newton-raphson step
19-November-2005 LAY SwRI Changed from procedure to function
20-November-2005 LAY SwRI added call to rd2xieta to
avoid xi=2pi when ra crosses zero
02-July-2006 LAY SwRI add kernel keyword to single_eph to avoid extra calls
to naif_laodedkernels
(See ../naif/oc_ephicy_arclen.pro)
NAME:
oc_ephicy_et.Pro
PURPOSE:
Returns a structure with the following information:
{et, ra, dec, radot, decdot, ephinfo} where ephinfo
contains the observer range and observer range rate.
DESCRIPTION:
Calculates the ra, dec, radot, decdot, observer range
and range rate using the NAIF ICY routines.
CALLING SEQUENCE:
eph = oc_ephicy(target, observer, time, dt, neph)
INPUTS:
target - the target for the ephemeris, i.e. "Pluto"
observer - the observer location, i.e. "Earth"
time - either a list of UTC strings or a list of et
OUTPUTS:
eph - an ephemeris structure (see single_eph.pro)
REVISON HISTORY:
11-May-2006 LAY SwRI
02-July-2006 LAY SwRI add kernel keyword to single_eph to avoid extra calls
to naif_laodedkernels
21-Sept-2006 LAY SwRI return correct neph
(See ../naif/oc_ephicy_et.pro)
NAME:
oc_eph_et2fgh.pro
PURPOSE:
returns [f,g,h,f',g',h'] for a eph at a given et
DESCRIPTION:
returns [f,g,h,f',g',h'] for a eph at a given et
where h is toward a star, f is sky east, and g is sky north.
CALLING SEQUENCE:
fgh = oc_eph_et2fgh(et,eph, star, method)
INPUTS:
et - ephemeris time (seconds TDB after J2000)
eph - array of eph structures
OPTIONAL INPUT PARAMETERS:
KEYWORDS
method
'piececub' - piecewise cubic interpolation of the state
'naif' - calls to naif routines, using eph.naif
OUTPUTS:
If et is a scalar, return [ra, dec].
If et is an array, return [ radec_0, radec_1, ... ] where radec_i is for et[i]
If et is a scalar and the eph is an array of structures
then return [ radec_0, radec_1, ... ] where radec_i is for eph[i]
If both et and the eph are arrays
then return [ radec_0, radec_1, ... ] where radec_i is for et[i], eph[i]
(if they are different lengths, then do up to the minimum)
REVISON HISTORY:
2006 Jan 02 Leslie Young.
(See ../naif/oc_eph_et2fgh.pro)
NAME:
oc_eph_et2state.pro
PURPOSE:
returns [x,y,z,x',y',z'] for a eph at a given et
DESCRIPTION:
returns [x,y,z,x',y',z'] for an ephemeris structure at a given et
where xyz are J2000 cartesian coordinates
CALLING SEQUENCE:
state = oc_eph_et2state(et,eph)
INPUTS:
et - ephemeris time (seconds TDB after J2000)
eph - array of eph structures
OPTIONAL INPUT PARAMETERS:
KEYWORDS
method
'piececub' - piecewise cubic interpolation of the state
'naif' - calls to naif routines, using eph.naif
OUTPUTS:
If et is a scalar, return [ra, dec].
If et is an array, return [ radec_0, radec_1, ... ] where radec_i is for et[i]
If et is a scalar and the eph is an array of structures
then return [ radec_0, radec_1, ... ] where radec_i is for eph[i]
If both et and the eph are arrays
then return [ radec_0, radec_1, ... ] where radec_i is for et[i], eph[i]
(if they are different lengths, then do up to the minimum)
REVISON HISTORY:
2006 Jan 02 Leslie Young.
(See ../naif/oc_eph_et2state.pro)
NAME:
oc_fg2lla.pro
PURPOSE:
Calculate the Earth' longitude and latitude for a given time and f, g
DESCRIPTION:
Calculate the longitude and latitude ON EARTH
from which, at a given time, a body center will have
sky-place coordinates f, g
CALLING SEQUENCE:
lonlatalt = oc_fg2lla(et,targ,radec_star, fgh, $
obs=obs,abcorr=abcorr,frame=frame)
INPUTS:
et - the ET at which you want to know the coordinates (may be an
array). Units are seconds of TDB (barycentric dynamical
time) after J2000.
targ = target code
radec_star - vector of;
A - right ascention in radians
D - declination in radians
fg - vector of [f, g] of TANGENT POINT - TARGET CENTER
OPTIONAL INPUT PARAMETERS:
KEYWORDS
obs - the keyword argument that indicates the observer location,
default to Earth center (399).
abcorr - aberation correction. Default 'LT'
frame - frame of state, ra, dec. Default 'J2000'
OUTPUTS:
lonlatalt - array of [east longitude (radian),
geodetic latitude (radian),
0]
REVISON HISTORY:
2006 Jan 11 Leslie Young. Based on single_eph
(See ../naif/oc_fg2lla.pro)
NAME:
oc_fgh2lla.pro
PURPOSE:
Convert between fgh (skyplane) coordinates and lon, lat, alt
DESCRIPTION:
Convert between fgh (skyplane) coordinates and lon, lat, alt
CALLING SEQUENCE:
lonlatalt = oc_fgh2lla(targ,et,radec_star, fgh)
INPUTS:
et - the ET at the target for which you want to know the coordinates
targ = target code
radec_star - vector of;
A - right ascention in radians
D - declination in radians
fgh - vector of [f, g, h] relative to target center
OPTIONAL INPUT PARAMETERS:
KEYWORDS
OUTPUTS:
lonlatalt - array of [east longitude (radian),
geodetic latitude (radian),
altitude (km)]
REVISON HISTORY:
2007 Sep 12 Leslie Young
(See ../naif/oc_fgh2lla.pro)
NAME:
oc_naiffgh.pro
PURPOSE:
returns a 6-element fgh state vector (or a 6 x n matrix)
DESCRIPTION:
Calculates the state using the NAIF ICY routines.
CALLING SEQUENCE:
state = oc_naiffgh(et,targ,radec_star, dradec_star, $
obs=obs,abcorr=abcorr,frame=frame,lonlatalt=lonlatalt)
INPUTS:
et - the ET at which you want to know the coordinates (may be an
array). Units are seconds of TDB (barycentric dynamical
time) after J2000.
targ = target code
radec_star - vector of;
A - right ascention in radians
D - declination in radians
OPTIONAL INPUT PARAMETERS:
dradec_star - vector of
dA = d(A)/dt (NOT cosdec dA/dt)
dD = dD/dt
KEYWORDS
obs - the keyword argument that indicates the observer location,
default to Earth center (399).
abcorr - aberation correction. Default 'LT'
frame - frame of state, ra, dec. Default 'J2000'
lonlatalt - lon, lat, altitude for topocentric
ephemerides. Default geocentric
OUTPUTS:
If et is a double, then return fgh6 = [f,g,h,f',g',h'] in
km and km/s.
If et is an array, return fgh6arr = [ [fgh0], [fgh1], ...]
so single 6-element fgh arrays are accessed by fgh6arr[*,i]
REVISON HISTORY:
2006 Jan 02 Leslie Young. Based on single_eph
(See ../naif/oc_naiffgh.pro)
NAME:
oc_naifstate.pro
PURPOSE:
returns a 6-element state (or a 6 x n matrix)
DESCRIPTION:
Calculates the state using the NAIF ICY routines.
CALLING SEQUENCE:
state = oc_naifstate(et,targ,$
obs=obs,abcorr=abcorr,frame=frame,lonlatalt=lonlatalt)
INPUTS:
et - the ET at which you want to know the coordinates (may be an
array). Units are seconds of TDB (barycentric dynamical
time) after J2000.
targ = target code
KEYWORDS
obs - the keyword argument that indicates the observer location,
default to Earth center (399).
abcorr - aberation correction. Default 'LT'
frame - frame of state, ra, dec. Default 'J2000'
lonlatalt - lon, lat, altitude for topocentric
ephemerides. Default geocentric
OUTPUTS:
ltime - optional output of light-travel time
If et is a double, then return state = [x,y,z,x',y',z'] in
km and km/s.
If et is an array, return statearr = [ [state0], [state1], ...]
so single states are accessed by statearr[*,i]
RESTRICTIONS
For geocentric observations, ltime and position can be off by
Re/c = 21 ms.
REVISON HISTORY:
2006 Jan 02 Leslie Young. Based on single_eph
2006 May 11 LAY Added ltime
2009 Oct 21 LAY Change i in loop to long
(See ../naif/oc_naifstate.pro)
NAME: oc_star_apply_pm PURPOSE: Apply proper motion to a star DESCRIPTION: Apply proper motion to a star CALLING SEQUENCE: star_et = oc_star_apply_pm(star, et) INPUTS: star - star structure or array of structures et - ephemeris time (seconds TDB after J2000) OPTIONAL INPUT PARAMETERS: None KEYWORDS: None OUTPUTS: If et is a scalar and star is a single structure then return a star structure If et is an array and the star is a single structure then return [star_0,star_1,...] where star_i is for et[i] If et is a scalar and the star is an array of structures then return [ star_0, star_1, ... ] where star_i is for star[i] If both et and the star are arrays then return [ star_0, star_1, ... ] where star_i is for et[i], star[i] (if they are different lengths, then do up to the minimum) REVISON HISTORY: 2006 Mar 08 Leslie Young. 2006 Mar 21 Henry Throop. Modified to return proper ET.
(See ../naif/oc_star_apply_pm.pro)
NAME:
oc_star_radec.pro
PURPOSE:
returns [ra, dec] for a star at a given et
DESCRIPTION:
returns [ra, dec] for a star at a given et
CALLING SEQUENCE:
[ra,dec] = oc_star_radec(et,star, dradec, radecerr)
INPUTS:
et - ephemeris time (seconds TDB after J2000)
star - star structure or array of structures
OPTIONAL INPUT PARAMETERS:
KEYWORDS
OUTPUTS:
If et is a scalar and star is a single structure then
return [ra, dec].
If et is an array and the star is a single structure
then return [ radec_0, radec_1, ... ] where radec_i is for et[i]
If et is a scalar and the star is an array of structures
then return [ radec_0, radec_1, ... ] where radec_i is for star[i]
If both et and the star are arrays
then return [ radec_0, radec_1, ... ] where radec_i is for et[i], star[i]
(if they are different lengths, then do up to the minimum)
dradec is the derivatives of cos(dec) ra and dec w/ respect to time
(radian/sec). Note: cos(dec) d ra/dt, not dra/dt.
REVISON HISTORY:
2006 Jan 02 Leslie Young.
2006 Mar 08 LAY. Corrected docs on dradec, added 2-element et,
added array of radecerr.
(See ../naif/oc_star_radec.pro)
NAME:
oc_tracklla
PURPOSE:
Calculate the longitude and latitude for occultation tracks
DESCRIPTION:
Calculate the longitude and latitude for occultation tracks
CALLING SEQUENCE:
oc_tracklonlat(et,targ,radec_star, r, lon, lat, found, fg0=fg0, $
obs=obs,abcorr=abcorr,frame=frame, deg=deg)
INPUTS:
et - the ET at which you want to know the coordinates (may be an
array). Units are seconds of TDB (barycentric dynamical
time) after J2000.
targ = target code
radec_star - vector of;
A - right ascention in radians
D - declination in radians
r - km north (south if r < 0) of track centerline
OPTIONAL INPUT PARAMETERS:
KEYWORDS
fg0 - final fg = nominal - fg0
deg - if set, return lon, lat in decimal degrees
obs - the keyword argument that indicates the observer location,
default to Earth center (399).
abcorr - aberation correction. Default 'LT'
frame - frame of state, ra, dec. Default 'J2000'
OUTPUTS:
lon - longitude
lat - latitude
found - 1 if lat, lon on Earth
REVISON HISTORY:
2006 Jan 11 Leslie Young. Based on single_eph
(See ../naif/oc_tracklonlat.pro)
NAME:
single_eph.Pro
PURPOSE:
Returns a structure with the following information:
{et, ra, dec, radot, decdot, ephinfo} where ephinfo
contains the observer range and observer range rate.
DESCRIPTION:
Calculates the ra, dec, radot, decdot, observer range
and range rate using the NAIF ICY routines.
CALLING SEQUENCE:
eph = single_eph( target, et, neph, observer=observer,
testing=testing)
INPUTS:
et - the ET at which you want to know the
coordinates
KEYWORDS
observer - the keyword argument that indicates the
observer location, default to Earth.
verbose - a keyword argument. If set, it
will print out error messages.
abcorr - aberation correction. Default 'LT'
frame - frame of state, ra, dec. Default 'J2000'
lonlatalt - lon, lat, altitude for geocentric ephemerides
OUTPUTS:
eph - a structure with the following elements
eph.ra - the Pluto RA in radians
eph.dec - the Pluto Dec in radians
eph.radot - the RA rate in radians/s
(d(ra)*cos(dec)/dt)
eph.decdot -- the Dec rate in radians/s
eph.ephinfo.delta - the observer range (in km)
eph.ephinfo.deltadot - the observer range rate (in km/s)
eph.ephinfo.target - the target
eph.ephinfo.observer - the observer name
REVISON HISTORY:
17-January-2005 CBO SwRI
2005 Mar 3 Moved to $idl/layoung/naif LAY
Also put long lines onto 2 lines
2005 Apr 26 Return 1 for neph under usual circumstances
Bypass bodn2c if target or observer are integers
Change verbose = 0 for quiet, 1 for verbose,
and removed testing
2005 Nov 20 LAY. Multliply dra/dt from rec5rad6 by cos(dec)
as per documentation and design docs.
2005 Dec 29 LAY. Add latlonlat
2006 Jan 02 LAY. Change substructure name to naif.
Keep ephinfo as an option for compatibility
2006 Jul 02 LAY. Add kernels as an input option for speed.
Avoids extra calls tp naif_loadedkernels()
2009 May 05 LAY. Call naif_id
(See ../naif/single_eph.pro)
NAME: utc2et PURPOSE: converts strings to ET (TDB seconds after J2000) DESCRIPTION: converts strings to ET (TDB seconds after J2000) CALLING SEQUENCE: et = utc2et(utc) INPUTS: utc - may be a string, or an array or matrix of strings KEYWORDS OUTPUTS: et - (double) seconds after J2000. Same dimensions as utc. PROCEDURE: Just calls cspice_str2et REVISON HISTORY: 2006 Jan 05 Leslie Young. Based on single_eph
(See ../naif/utc2et.pro)
NAME:
utcs2et
PURPOSE:
converts UTC seconds to ET (TDB) after J2000
CALLING SEQUENCE:
et = utcs2et(utcs)
INPUTS:
utcs - UTC seconds after J2000
may be a double, or an array or matrix of doubles
OUTPUTS:
et -
PROCEDURE:
cspice_et2utc and cspice_deltaet
REVISON HISTORY:
2008 Mar 25 Leslie Young.
(See ../naif/utcs2et.pro)
NAME: utcy2et PURPOSE: converts UTC years to ET (TDB) seconds after J2000 CALLING SEQUENCE: utcy = utcy2et(utcy) INPUTS: utcy - may be a double, or an array or matrix of doubles OUTPUTS: utcy - UTC years after J2000 REVISON HISTORY: 2008 Mar 25 Leslie Young.
(See ../naif/utcy2et.pro)