API
SPICE.SpiceCharCell
— TypeSpiceCharCell(size, length)
Create a SpiceCharCell that can contain up to size
strings with length
characters.
SPICE.SpiceDoubleCell
— TypeSpiceDoubleCell(size)
Create a SpiceDoubleCell that can contain up to size
elements.
SPICE.SpiceIntCell
— TypeSpiceIntCell(size)
Create a SpiceIntCell that can contain up to size
elements.
Base.append!
— Methodappend!(cell, collection)
Append all items from collection
to the char/double/integer SpiceCell cell
.
Base.copy
— Methodcopy(cell::SpiceCell)
Duplicate the SpiceCell cell
.
Base.diff
— Methoddiff(a::T, b::T) where T <: SpiceCell
Compute the difference of two sets of any data type to form a third set.
Arguments
a
: First input setb
: Second input set
Output
Returns a cell containing the difference of a
and b
.
References
Base.length
— Methodlength(cell)
Returns the cardinality (number of elements) of cell
.
Base.push!
— Methodpush!(cell, items...)
Insert one or more items
at the end of the char/double/integer SpiceCell cell
.
Base.union
— Methodunion(a::T, b::T) where T <: SpiceCell
Compute the union of two sets of any data type to form a third set.
Arguments
a
: First input setb
: Second input set
Output
Returns a cell containing the union of a
and b
.
References
SPICE.appnd
— Methodappnd(item, cell)
Append an item
to the char/double/integer SpiceCell cell
.
References
SPICE.axisar
— Methodaxisar(axis, angle)
Construct a rotation matrix that rotates vectors by a specified angle
about a specified axis
.
Arguments
axis
: Rotation axisangle
: Rotation angle in radians
Output
Rotation matrix corresponding to axis
and angle
References
SPICE.b1900
— MethodSPICE.b1950
— MethodSPICE.badkpv
— Methodbadkpv(caller, name, comp, size, divby, typ)
Determine if a kernel pool variable is present and if so that it has the correct size and type.
Arguments
caller
: Name of the routine calling this routinename
: Name of a kernel pool variablecomp
: Comparison operatorsize
: Expected size of the kernel pool variabledivby
: A divisor of the size of the kernel pool variabletype
: Expected type of the kernel pool variable
Output
The function returns false
if the kernel pool variable is OK otherwise an exception is thrown.
References
SPICE.bltfrm
— Methodbltfrm(frmcls)
Return a SPICE set containing the frame IDs of all built-in frames of a specified class.
Arguments
frmcls
: Frame class
Output
idset
: Set of ID codes of frames of the specified class
References
SPICE.bodc2n
— Methodbodc2n(code)
Translate the SPICE integer code of a body into a common name for that body.
Arguments
code
: Integer ID code to be translated into a name
Output
A common name for the body identified by code or nothing
if none was found.
References
SPICE.bodc2s
— Methodbodc2s(code)
Translate a body ID code to either the corresponding name or if no name to ID code mapping exists, the string representation of the body ID value.
Arguments
code
: Integer ID code to translate to a string
Output
Returns a string corresponding to code
References
SPICE.boddef
— Methodboddef(name, code)
Define a body name/ID code pair for later translation via bodn2c
or bodc2n
.
Arguments
name
: Common name of some bodycode
: Integer code for that body
References
SPICE.bodfnd
— Methodbodfnd(body, item)
Determine whether values exist for some item for any body in the kernel pool.
Arguments
body
: ID code of bodyitem
: Item to find ("RADII", "NUTAMPRA", etc.)
Output
Returns true
if the item is in the kernel pool and false
if it is not.
References
SPICE.bodn2c
— Methodbodn2c(name)
Translate the name of a body or object to the corresponding SPICE integer ID code.
Arguments
name
: Body name to be translated into a SPICE ID code
Output
Return the SPICE integer ID code for the named body or nothing
if none was found.
References
SPICE.bods2c
— Methodbods2c(name)
Translate a string containing a body name or ID code to an integer code.
Arguments
name
: String to be translated to an ID code
Output
Retunrs the integer ID code corresponding to name
or nothing
if none as found.
References
SPICE.bodvcd
— Functionbodvcd(bodyid, item)
Fetch from the kernel pool the double precision values of an item associated with a body, where the body is specified by an integer ID code.
Arguments
bodyid
: Body ID codeitem
: Item for which values are desired. ("RADII"
,"NUT_PREC_ANGLES"
, etc.)maxn
: Maximum number of values that may be returned (default: 100)
Output
Returns the requested values.
References
SPICE.bodvrd
— Functionbodvrd(bodynm, item)
Fetch from the kernel pool the double precision values of an item associated with a body.
Arguments
bodynm
: Body nameitem
: Item for which values are desired. ("RADII"
,"NUT_PREC_ANGLES"
, etc.)maxn
: Maximum number of values that may be returned (default: 100)
Output
values
: Values
References
SPICE.brcktd
— Functionbrcktd(number, e1, e2)
Use clamp
from Julia's standard library instead.
SPICE.brckti
— Functionbrckti(number, e1, e2)
Use clamp
from Julia's standard library instead.
SPICE.bschoc
— Functionbschoc(value, array, order)
Use findfirst(array .== value)
instead.
SPICE.bschoi
— Functionbschoi(value, array, order)
Use findfirst(array .== value)
instead.
SPICE.bsrchc
— Functionbsrchc(value, array)
Use findfirst(array .== value)
instead.
SPICE.bsrchd
— Functionbsrchd(value, array)
Use findfirst(array .== value)
instead.
SPICE.bsrchi
— Functionbsrchi(value, array)
Use findfirst(array .== value)
instead.
SPICE.card
— Methodcard(cell)
Returns the cardinality (number of elements) of cell
.
SPICE.ccifrm
— Methodccifrm(frclss, clssid)
Return the frame name, frame ID, and center associated with a given frame class and class ID.
Arguments
frclss
: Class of frameclssid
: Class ID of frame
Output
Returns nothing
if no frame was found or
frcode
: ID code of the framefrname
: Name of the framecenter
: ID code of the center of the frame
References
SPICE.cgv2el
— Methodcgv2el(center, vec1, vec2)
Form an ellipse from a center vector and two generating vectors.
Arguments
center
: Center vectorvec1
: Generating vectorvec2
: Generating vector
Output
Returns the ellipse defined by the input vectors.
References
SPICE.chbder
— Methodchbder(cp, x2s, x, nderiv)
Given the coefficients for the Chebyshev expansion of a polynomial, this returns the value of the polynomial and its first nderiv
derivatives evaluated at the input x
.
Arguments
cp
: Chebyshev polynomial coefficientsx2s
: Transformation parameters of polynomialx
: Value for which the polynomial is to be evaluatednderiv
: The number of derivatives to compute
Output
Returns the derivatives of the polynomial.
References
SPICE.cidfrm
— Methodcidfrm(cent)
Retrieve frame ID code and name to associate with a frame center.
Arguments
cent
: ID code for an object for which there is a preferred reference frame
Output
Returns nothing
if no frame was found or
frcode
: The ID code of the frame associated withcent
frname
: The name of the frame with IDfrcode
References
SPICE.ckcls
— Methodckcls(handle)
Close an open CK file.
Arguments
handle
: Handle of the CK file to be closed
References
SPICE.ckcov!
— Methodckcov!(ck, idcode, needav, level, tol, timsys, cover)
Find the coverage window for a specified object in a specified CK file.
Arguments
ck
: Name of CK fileidcode
: ID code of objectneedav
: Flag indicating whether angular velocity is neededlevel
: Coverage level: "SEGMENT" OR "INTERVAL"tol
: Tolerance in tickstimsys
: Time system used to represent coveragecover
: Window giving coverage foridcode
. Data already present incover
will be combined with coverage found for the object designated byidcode
in the fileck
.
References
SPICE.ckcov
— Methodckcov(ck, idcode, needav, level, tol, timsys)
Find the coverage window for a specified object in a specified CK file.
Arguments
ck
: Name of CK fileidcode
: ID code of objectneedav
: Flag indicating whether angular velocity is neededlevel
: Coverage level: "SEGMENT" OR "INTERVAL"tol
: Tolerance in tickstimsys
: Time system used to represent coverage
Output
Window giving coverage for idcode
References
SPICE.ckgp
— Methodckgp(inst, sclkdp, tol, ref)
Get pointing (attitude) for a specified spacecraft clock time.
Arguments
inst
: NAIF ID of instrument, spacecraft, or structuresclkdp
: Encoded spacecraft clock timetol
: Time toleranceref
: Reference frame
Outputs
Returns nothing
if the requested pointing is not available or
cmat
: C-matrix pointing dataclkout
: Output encoded spacecraft clock time
References
SPICE.ckgpav
— Methodckgpav(inst, sclkdp, tol, ref)
Get pointing (attitude) and angular velocity for a specified spacecraft clock time.
Arguments
inst
: NAIF ID of instrument, spacecraft, or structuresclkdp
: Encoded spacecraft clock timetol
: Time toleranceref
: Reference frame
Outputs
Returns nothing
if the requested pointing is not available or
cmat
: C-matrix pointing dataav
: Angular velocity vectorclkout
: Output encoded spacecraft clock time
References
SPICE.cklpf
— Methodcklpf(filename)
Load a CK pointing file for use by the CK readers. Return that file's handle, to be used by other CK routines to refer to the file.
Arguments
filename
: Name of the CK file to be loaded
Output
Loaded file's handle
References
SPICE.ckobj!
— Methodckobj!(ck, ids)
Find the set of ID codes of all objects in a specified CK file.
Arguments
ck
: Name of CK fileids
: Set of ID codes of objects in CK file. Data already present inids
will be combined with ID code set found for the fileck
.
References
SPICE.ckobj
— Methodckobj(ck)
Find the set of ID codes of all objects in a specified CK file.
Arguments
ck
: Name of CK file
Output
Set of ID codes of objects in CK file.
References
SPICE.ckopn
— Functionckopn(fname, ifname="CK_file", ncomch=0)
Open a new CK file, returning the handle of the opened file.
Arguments
fname
: The name of the CK file to be openedifname
: The internal filename for the CK (default: "CK_file")ncomch
: The number of characters to reserve for comments (default: 0)
Output
handle
: The handle of the opened CK file
References
SPICE.ckupf
— Methodckupf(handle)
Unload a CK pointing file so that it will no longer be searched by the readers.
Arguments
handle
: Handle of CK file to be unloaded
References
SPICE.ckw01
— Functionckw01(handle, begtim, endtim, inst, ref, segid, sclkdp, quats, avvs=[zeros(3)])
Add a type 1 segment to a C-kernel.
Arguments
handle
: Handle of an open CK filebegtim
: The beginning encoded SCLK of the segmentendtim
: The ending encoded SCLK of the segmentinst
: The NAIF instrument ID coderef
: The reference frame of the segmentsegid
: Segment identifiersclkdp
: Encoded SCLK timesquats
: Quaternions representing instrument pointingavvs
: Angular velocity vectors (optional)
References
SPICE.ckw02
— Methodckw02(handle, begtim, endtim, inst, ref, segid, start, stop, quats, avvs, rates)
Write a type 2 segment to a C-kernel.
Arguments
handle
: Handle of an open CK filebegtim
: The beginning encoded SCLK of the segmentendtim
: The ending encoded SCLK of the segmentinst
: The NAIF instrument ID coderef
: The reference frame of the segmentsegid
: Segment identifierstart
: Encoded SCLK interval start timesstop
: Encoded SCLK interval stop timesquats
: Quaternions representing instrument pointingavvs
: Angular velocity vectorsrates
: Number of seconds per tick for each interval
References
SPICE.ckw03
— Functionckw03(handle, begtim, endtim, inst, ref, segid, sclkdp, quats, starts, avvs=[zeros(3)])
Add a type 3 segment to a C-kernel.
Arguments
handle
: Handle of an open CK filebegtim
: The beginning encoded SCLK of the segmentendtim
: The ending encoded SCLK of the segmentinst
: The NAIF instrument ID coderef
: The reference frame of the segmentsegid
: Segment identifiersclkdp
: Encoded SCLK timesquats
: Quaternions representing instrument pointingstarts
: Encoded SCLK interval start timesavvs
: Angular velocity vectors (optional)
References
SPICE.ckw05
— Methodckw05(handle, subtyp, degree, begtim, endtim, inst, ref, avflag, segid, sclkdp, packts,
- rate, nints, starts)
Write a type 5 segment to a CK file.
Arguments
handle
: Handle of an open CK filesubtyp
: CK type 5 subtype codedegree
: Degree of interpolating polynomialsbegtim
: The beginning encoded SCLK of the segmentendtim
: The ending encoded SCLK of the segmentinst
: The NAIF instrument ID coderef
: The reference frame of the segmentavflag
: True if the segment will contain angular velocitysegid
: Segment identifiersclkdp
: Encoded SCLK timespackts
: Array of packetsrate
: Nominal SCLK rate in seconds per ticknints
: Number of intervalsstarts
: Encoded SCLK interval start times
References
SPICE.cleard
— Functioncleard(array)
Use empty!(array)
instead.
SPICE.clight
— MethodSPICE.clpool
— Methodclpool()
Remove all variables from the kernel pool. Watches on kernel variables are retained.
References
SPICE.cmprss
— Methodcmprss(delim, n, input)
Compress a character string by removing occurrences of more than n
consecutive occurrences of a specified character.
Arguments
delim
: Delimiter to be compressedn
: Maximum consecutive occurrences of deliminput
: Input string
Output
Returns the compressed string.
References
SPICE.cnmfrm
— Functioncnmfrm(cname)
Retrieve frame ID code and name to associate with an object.
Arguments
cname
: Name of the object to find a frame for
Output
Returns a tuple of the ID code and the name of the frame associated with cname
or nothing
if no frame is found.
References
SPICE.conics
— Methodconics(elts, et)
Determine the state (position, velocity) of an orbiting body from a set of elliptic, hyperbolic, or parabolic orbital elements.
Arguments
elts
: Conic elementset
: Input time
Output
Returns the state of orbiting body at et
.
References
SPICE.convrt
— Methodconvrt(x, in, out)
Take a measurement x
, the units associated with x
, and units to which x
should be converted; return y
- the value of the measurement in the output units.
Arguments
x
: Number representing a measurement in some unitsin
: The units in which x is measuredout
: Desired units for the measurement
Output
Returns the measurement in the desired units.
References
SPICE.cpos
— Methodcpos(str, chars, start)
Find the first occurrence in a string of a character belonging to a collection of characters, starting at a specified location, searching forward.
Arguments
str
: Any character stringchars
: A collection of charactersstart
: Position to begin looking for one of chars
Output
Returns the index of the first character of str
that is one of the characters in string chars
. Returns -1 if none of the characters was found.
References
SPICE.cposr
— Methodcposr(str, chars, start)
Find the first occurrence in a string of a character belonging to a collection of characters, starting at a specified location, searching in reverse.
Arguments
str
: Any character stringchars
: A collection of charactersstart
: Position to begin looking for one of chars
Output
Returns the index of the last character of str
that is one of the characters in string chars
. Returns -1 if none of the characters was found.
References
SPICE.cvpool
— Methodcvpool(agent)
Indicate whether or not any watched kernel variables that have a specified agent on their notification list have been updated.
Arguments
agent
: Name of the agent to check for notices
Output
Returns true
if variables for agent
have been updated.
References
SPICE.cyllat
— Methodcyllat(r, lonc, z)
Convert from cylindrical to latitudinal coordinates.
Arguments
r
: Distance of point from z axislonc
: Cylindrical angle of point from XZ plane (radians)z
: Height of point above XY plane
Output
radius
: Radiuslon
: Longitude (radians)lat
: Latitude (radians)
References
SPICE.cylrec
— Methodcylrec(r, lon, z)
Convert from cylindrical to rectangular coordinates.
Arguments
r
: Distance of the point of interest from z axislon
: Cylindrical angle (in radians) of the point of interest from XZ planez
: Height of the point above XY plane
Output
Returns rectangular coordinates of the point of interest.
References
SPICE.cylsph
— Methodcylsph(r, lonc, z)
Convert from cylindrical to spherical coordinates.
Arguments
r
: Distance of point from z axislonc
: Angle (radians) of point from XZ planez
: Height of point above XY plane
Output
radius
: Distance of the point from the origincolat
: Polar angle (co-latitude in radians)lon
: Azimuthal angle (longitude)
References
SPICE.dafac
— Methoddafac(handle, buffer)
Add comments from a buffer of character strings to the comment area of a binary DAF file, appending them to any comments which are already present in the file's comment area.
Arguments
handle
: Handle of a DAF opened with write accessbuffer
: Buffer of comments to put into the comment area
References
SPICE.dafbbs
— Methoddafbbs(handle)
Begin a backward search for arrays in a DAF.
Arguments
handle
: Handle of DAF to be searched
References
SPICE.dafbfs
— Methoddafbfs(handle)
Begin a forward search for arrays in a DAF.
Arguments
handle
: Handle of DAF to be searched
References
SPICE.dafcls
— Methoddafcls(handle)
Close the DAF associated with a given handle.
Arguments
handle
: Handle of DAF to be closed
Output
Returns the handle of the closed file.
References
SPICE.dafcs
— Methoddafcs(handle)
Select a DAF that already has a search in progress as the one to continue searching.
Arguments
handle
: Handle of DAF to continue searching
References
SPICE.dafdc
— Methoddafdc(handle)
Delete the entire comment area of a specified DAF file.
Arguments
handle
: The handle of a binary DAF opened for writing
References
SPICE.dafec
— Methoddafec(handle; bufsiz=256, lenout=1024)
Extract comments from the comment area of a binary DAF.
Arguments
handle
: Handle of binary DAF opened with read accessbufsiz
: Maximum size, in lines, of buffer (default: 256)lenout
: Length of strings in output buffer (default: 1024)
Output
Returns a buffer where extracted comment lines are placed.
References
SPICE.daffna
— Methoddaffna()
Find the next (forward) array in the current DAF.
Output
Returns true
if an array was found.
References
SPICE.daffpa
— Methoddaffpa()
Find the previous (backward) array in the current DAF.
Output
Returns true
if an array was found.
References
SPICE.dafgda
— Methoddafgda(handle, start, stop)
Read the double precision data bounded by two addresses within a DAF.
Arguments
handle
: Handle of a DAFstart, stop
: Initial, final address within file
Output
Returns the data contained between start
and stop
.
References
SPICE.dafgh
— MethodSPICE.dafgn
— Functiondafgn(lenout=128)
Return (get) the name for the current array in the current DAF.
Arguments
lenout
: Length of array name string (default: 128)
Output
Returns the name of the current array.
References
SPICE.dafgs
— Functiondafgs(lenout=128)
Return (get) the summary for the current array in the current DAF.
Arguments
lenout
: The maximum length of the summary array
Output
Returns the summary for the current array.
References
SPICE.dafgsr
— MethodRead a portion of the contents of a summary record in a DAF file.
Arguments
handle
: Handle of DAFrecno
: Record numberstart
: First word to read from recordstop
: Last word to read from record
Output
Returns the contents of the record or nothing
if none was found.
References
SPICE.dafopr
— Methoddafopr(fname)
Open a DAF for subsequent read requests.
Arguments
fname
: Name of DAF to be opened
Output
Returns the handle assigned to DAF.
References
SPICE.dafopw
— Methoddafopw(fname)
Open a DAF for subsequent write requests.
Arguments
fname
: Name of DAF to be opened
Output
Returns the handle assigned to DAF.
References
SPICE.dafps
— Methoddafps(dc, ic)
Pack (assemble) an array summary from its double precision and integer components.
Arguments
dc
: Double precision componentsic
: Integer components
Output
Returns the array summary.
References
SPICE.dafrfr
— Functiondafrfr(handle, lenout=128)
Read the contents of the file record of a DAF.
Arguments
handle
: Handle of an open DAF filelenout
: Available room in the output string `ifname' (default: 128)
Output
nd
: Number of double precision components in summariesni
: Number of integer components in summariesifname
: Internal file namefward
: Forward list pointerbward
: Backward list pointerfree
: Free address pointer
References
SPICE.dafrs
— Methoddafrs(sum)
Change the summary for the current array in the current DAF.
Arguments
sum
: New summary for current array
References
SPICE.dafus
— Methoddafus(sum, nd, ni)
Unpack an array summary into its double precision and integer components.
Arguments
sum
: Array summarynd
: Number of double precision componentsni
: Number of integer components
Output
dc
: Double precision componentsic
: Integer components
References
SPICE.dasac
— Methoddasac(handle, buffer)
Add comments from a buffer of character strings to the comment area of a binary DAS file, appending them to any comments which are already present in the file's comment area.
Arguments
handle
: Handle of a DAS opened with write accessbuffer
: Buffer of comments to put into the comment area
References
SPICE.dascls
— Methoddascls(handle)
Close the DAS associated with a given handle.
Arguments
handle
: Handle of DAS to be closed
Output
Returns the handle of the closed file.
References
SPICE.dasdc
— Methoddasdc(handle)
Delete the entire comment area of a specified DAS file.
Arguments
handle
: The handle of a binary DAS opened for writing
References
SPICE.dasec
— Methoddasec(handle; bufsiz=256, lenout=1024)
Extract comments from the comment area of a binary DAS.
Arguments
handle
: Handle of binary DAS opened with read accessbufsiz
: Maximum size, in lines, of buffer (default: 256)lenout
: Length of strings in output buffer (default: 1024)
Output
Returns a buffer where extracted comment lines are placed.
References
SPICE.dashfn
— Functiondashfn(handle, namelen=256)
Return the name of the DAS file associated with a handle.
Arguments
handle
: Handle of a DAS filenamlen
: Length of output file name string (default: 256)
Output
Returns the corresponding file name.
References
SPICE.dasopr
— Methoddasopr(fname)
Open a DAS for subsequent read requests.
Arguments
fname
: Name of DAS to be opened
Output
Returns the handle assigned to DAS.
References
SPICE.dasopw
— Methoddasopw(fname)
Open a DAS for subsequent write requests.
Arguments
fname
: Name of DAS to be opened
Output
Returns the handle assigned to DAS.
References
SPICE.dasrfr
— Functiondasrfr(handle, idwlen=128, ifnlen=256)
Read the contents of the file record of a DAS.
Arguments
handle
: DAS file handleidwlen
: Length of ID word string (default: 128)ifnlen
: Length of internal file name string (default: 256)
Output
idword
: ID wordifname
: DAS internal file namenresvr
: Number of reserved records in filenresvc
: Number of characters in use in reserved records areancomr
: Number of comment records in filencomc
: Number of characters in use in comment area
References
SPICE.dcyldr
— Methoddcyldr(x, y, z)
Compute the Jacobian of the transformation from rectangular to cylindrical coordinates.
Arguments
x
: X-coordinate of pointy
: Y-coordinate of pointz
: Z-coordinate of point
Output
Returns the matrix of partial derivatives.
References
SPICE.deltet
— Methoddeltet(epoch, eptype)
Return the value of ΔET (ET-UTC) for an input epoch.
Arguments
epoch
: Input epoch (seconds past J2000)eptype
: Type of input epoch ("UTC" or "ET")
Output
Returns ΔET (ET-UTC) at input epoch.
References
SPICE.dgeodr
— Methoddgeodr(x, y, z, re, f)
Compute the Jacobian of the transformation from rectangular to geodetic coordinates.
Arguments
x
: X-coordinate of pointy
: Y-coordinate of pointz
: Z-coordinate of pointre
: Equatorial radius of the reference spheroidf
: Flattening coefficient
Output
Returns the matrix of partial derivatives.
References
SPICE.diags2
— Methoddiags2(symmat)
Diagonalize a symmetric 2x2 matrix.
Arguments
symmat
: A symmetric 2x2 matrix
Output
diag
: A diagonal matrix similar tosymmat
rotate
: A rotation used as the similarity transformation
References
SPICE.dlabbs
— Methoddlabbs(handle)
Begin a backward segment search in a DLA file.
Arguments
handle
: Handle of open DLA file
Output
Returns the descriptor of the last segment in the DLA file or nothing
if none was found.
References
SPICE.dlabfs
— Methoddlabfs(handle)
Begin a forward segment search in a DLA file.
Arguments
handle
: Handle of open DLA file
Output
Returns the descriptor of the first segment in the DLA file or nothing
if none was found.
References
SPICE.dlafns
— Methoddlafns(handle, descr)
Find the segment following a specified segment in a DLA file.
Arguments
handle
: Handle of open DLA filedescr
: Descriptor of a DLA segment
Output
Returns the descriptor of the next segment in the DLA file or nothing
if none was found.
References
SPICE.dlafps
— Methoddlafps(handle, descr)
Find the segment preceding a specified segment in a DLA file.
Arguments
handle
: Handle of open DLA filedescr
: Descriptor of a DLA segment
Output
Returns the descriptor of the previous segment in the DLA file or nothing
if none was found.
References
SPICE.dlatdr
— Methoddlatdr(x, y, z)
Compute the Jacobian of the transformation from rectangular to latitudinal coordinates.
Arguments
x
: X-coordinate of pointy
: Y-coordinate of pointz
: Z-coordinate of point
Output
Returns the matrix of partial derivatives.
References
SPICE.dp2hx
— Functiondp2hx(number, lenout=128)
Convert a double precision number to an equivalent character string using base 16 "scientific notation."
Arguments
number
: Number to be convertedlenout
: Available space for output string
Output
Returns the equivalent character string, left justified.
References
SPICE.dpgrdr
— Methoddpgrdr(x, y, z, re, f)
Compute the Jacobian of the transformation from rectangular to planetographic coordinates.
Arguments
body
: Body with which coordinate system is associatedx
: X-coordinate of pointy
: Y-coordinate of pointz
: Z-coordinate of pointre
: Equatorial radius of the reference spheroidf
: Flattening coefficient
Output
Returns the matrix of partial derivatives.
References
SPICE.dpmax
— Functiondpmax()
Use prevfloat(typemax(Float64))
instead.
SPICE.dpmin
— Functiondpmin()
Use nextfloat(typemin(Float64))
instead.
SPICE.dpr
— Functiondpr()
Use rad2deg(1.0)
instead.
SPICE.drdcyl
— Methoddrdcyl(r, lon, z)
Compute the Jacobian of the transformation from cylindrical to rectangular coordinates.
Arguments
r
: Distance of a point from the originlon
: Angle of the point from the xz plane in radiansz
: Height of the point above the xy plane
Output
Returns the matrix of partial derivatives.
References
SPICE.drdgeo
— Methoddrdgeo(lon, lat, alt, re, f)
Compute the Jacobian of the transformation from geodetic to rectangular coordinates.
Arguments
lon
: Geodetic longitude of point (radians)lat
: Geodetic latitude of point (radians)alt
: Altitude of point above the reference spheroidre
: Equatorial radius of the reference spheroidf
: Flattening coefficient
Output
Returns the matrix of partial derivatives.
References
SPICE.drdlat
— Methoddrdlat(radius, lon, lat)
Compute the Jacobian of the transformation from latitudinal to rectangular coordinates.
Arguments
radius
: Distance of a point from the originlon
: Angle of the point from the XZ plane in radianslat
: Angle of the point from the XY plane in radians
Output
Returns the matrix of partial derivatives.
References
SPICE.drdpgr
— Methoddrdpgr(body, lon, lat, alt, re, f)
Compute the Jacobian matrix of the transformation from planetographic to rectangular coordinates.
Arguments
body
: Name of body with which coordinates are associatedlon
: Planetographic longitude of a point (radians)lat
: Planetographic latitude of a point (radians)alt
: Altitude of a point above reference spheroidre
: Equatorial radius of the reference spheroidf
: Flattening coefficient
Output
Returns the matrix of partial derivatives.
References
SPICE.drdsph
— Methoddrdsph(r, colat, lon)
Compute the Jacobian of the transformation from latitudinal to rectangular coordinates.
Arguments
r
: Distance of a point from the origincolat
: Angle of the point from the positive z-axislon
: Angle of the point from the xy plane
Output
Returns the matrix of partial derivatives.
References
SPICE.dskb02
— Methoddskb02(handle, dladsc)
Return bookkeeping data from a DSK type 2 segment.
Arguments
handle
: DSK file handledladsc
: DLA descriptor
Output
nv
: Number of vertices in modelnp
: Number of plates in modelnvxtot
: Number of voxels in fine gridvtxbds
: Vertex boundsvoxsiz
: Fine voxel edge lengthvoxori
: Fine voxel grid originvgrext
: Fine voxel grid exentcgscal
: Coarse voxel grid scalevtxnpl
: Size of vertex-plate correspondence listvoxnpt
: Size of voxel-plate pointer listvoxnpl
: Size of voxel-plate correspondence list
References
SPICE.dskcls
— Functiondskcls(handle, optmiz=true)
Close a DSK file.
Arguments
handle
: Handle assigned to the opened DSK fileoptmiz
: Flag indicating whether to segregate the DSK (default:true
)
References
SPICE.dskd02
— Methoddskd02(handle, dladsc, item, start, room)
Fetch double precision data from a type 2 DSK segment.
Arguments
handle
: DSK file handledladsc
: DLA descriptoritem
: Keyword identifying item to fetchstart
: Start indexroom
: Amount of room in output array
Output
Returns an array containing the requested item.
References
SPICE.dskgd
— Methoddskgd(handle, dladsc)
Return the DSK descriptor from a DSK segment identified by a DAS handle and DLA descriptor.
Arguments
handle
: Handle of a DSK filedladsc
: DLA segment descriptor
Output
Returns the DSK segment descriptor.
References
SPICE.dskgtl
— Methoddskgtl(keywrd)
Retrieve the value of a specified DSK tolerance or margin parameter.
Arguments
keywrd
: Code specifying parameter to retrieve
Output
Returns the value of the parameter.
References
SPICE.dski02
— Methoddski02(handle, dladsc, item, start, room)
Fetch integer data from a type 2 DSK segment.
Arguments
handle
: DSK file handledladsc
: DLA descriptoritem
: Keyword identifying item to fetchstart
: Start indexroom
: Amount of room in output array
Output
Returns an array containing the requested item.
References
SPICE.dskmi2
— Methoddskmi2(vrtces, plates, finscl, corscl, worksz, voxpsz, voxlsz, makvtl, spaisz)
Make spatial index for a DSK type 2 segment.
Arguments
vrtces
: Verticesplates
: Platesfinscl
: Fine voxel scalecorscl
: Coarse voxel scaleworksz
: Workspace sizevoxpsz
: Voxel-plate pointer array sizevoxlsz
: Voxel-plate list array sizemakvtl
: Vertex-plate list flagspxisz
: Spatial index integer component size
Output
spaixd
: Double precision component of spatial index.spaixi
: Integer component of spatial index.
References
SPICE.dskn02
— Methoddskn02(handle, dladsc, plid)
Compute the unit normal vector for a specified plate from a type 2 DSK segment.
Arguments
handle
: DSK file handledladsc
: DLA descriptorplid
: Plate ID
Output
Return the plate's unit normal vector.
References
SPICE.dskobj!
— Methoddskobj!(set, dsk)
Find the set of body ID codes of all objects for which topographic data are provided in a specified DSK file.
Arguments
dsk
: Name of DSK fileset
orlen
: Either a preallocatedSpiceIntCell
or thesize
of the output set.
Output
Returns the set of ID codes of objects in the DSK file.
References
SPICE.dskopn
— Methoddskopn(fname, ifname, ncomch)
Open a new DSK file for subsequent write operations.
Arguments
fname
: Name of a DSK file to be openedifname
: Internal file namencomch
: Number of comment characters to allocate
Output
Returns the handle assigned to the opened DSK file.
References
SPICE.dskp02
— Methoddskp02(handle, dladsc, start, room)
Fetch triangular plates from a type 2 DSK segment.
Arguments
handle
: DSK file handledladsc
: DLA descriptorstart
: Start indexroom
: Amount of room in output array
Output
Returns an array of plates.
References
SPICE.dskrb2
— Methoddskrb2(vrtces, plates, corsys, corpar)
Determine range bounds for a set of triangular plates to be stored in a type 2 DSK segment.
Arguments
vrtces
: Verticesplates
: Platescorsys
: DSK coordinate system codecorpar
: DSK coordinate system parameters
Output
mncor3
: Lower bound on range of third coordinatemxcor3
: Upper bound on range of third coordinate
References
SPICE.dsksrf!
— Methoddsksrf!(set, dsk)
Find the set of surface ID codes of all objects for which topographic data are provided in a specified DSK file.
Arguments
dsk
: Name of DSK fileset
orlen
: Either a preallocatedSpiceIntCell
or thesize
of the output set.
Output
Returns the set of ID codes of surfaces in the DSK file.
References
SPICE.dskstl
— Methoddskstl(keywrd)
Set the value of a specified DSK tolerance or margin parameter.
Arguments
keywrd
: Code specifying parameter to retrievedpval
: Value of parameter
References
SPICE.dskv02
— Methoddskv02(handle, dladsc, start, room)
Fetch vertices from a type 2 DSK segment.
Arguments
handle
: DSK file handledladsc
: DLA descriptorstart
: Start indexroom
: Amount of room in output array
Output
Returns an array of vertices.
References
SPICE.dskw02
— Methoddskw02(handle, center, surfid, dclass, frame, corsys, corpar, mncor1, mxcor1,
- mncor2, mxcor2, mncor3, mxcor3, first, last, vrtces, plates, spaixd, spaixi)
Write a type 2 segment to a DSK file.
Arguments
handle
: Handle assigned to the opened DSK filecenter
: Central body ID codesurfid
: Surface ID codedclass
: Data classframe
: Reference framecorsys
: Coordinate system codecorpar
: Coordinate system parametersmncor1
: Minimum value of first coordinatemxcor1
: Maximum value of first coordinatemncor2
: Minimum value of second coordinatemxcor2
: Maximum value of second coordinatemncor3
: Minimum value of third coordinatemxcor3
: Maximum value of third coordinatefirst
: Coverage start timelast
: Coverage stop timenv
: Number of verticesvrtces
: Verticesnp
: Number of platesplates
: Platesspaixd
: Double precision component of spatial indexspaixi
: Integer component of spatial index
References
SPICE.dskx02
— Methoddskx02(handle, dladsc, vertex, raydir)
Determine the plate ID and body-fixed coordinates of the intersection of a specified ray with the surface defined by a type 2 DSK plate model.
Arguments
handle
: Handle of DSK kernel containing plate modeldladsc
: DLA descriptor of plate model segmentvertex
: Ray vertex in the body fixed frameraydir
: Ray direction in the body fixed frame
Output
Returns nothing
if no intercept exists or
plid
: ID code of the plate intersected by the rayxpt
: Intercept
References
SPICE.dskxsi
— Functiondskxsi(pri, target, nsurf, srflst, et, fixref, vertex, raydir, maxd=1, maxi=1)
Compute a ray-surface intercept using data provided by multiple loaded DSK segments. Return information about the source of the data defining the surface on which the intercept was found: DSK handle, DLA and DSK descriptors, and DSK data type-dependent parameters.
Arguments
pri
: Data prioritization flagtarget
: Target body namesrflst
: Surface ID listet
: Epoch, expressed as seconds past J2000 TDBfixref
: Name of target body-fixed reference framevertex
: Vertex of rayraydir
: Direction vector of raymaxd
: Size of DC array (default: 1)maxi
: Size of IC array (default: 1)
Output
Returns nothing
if no intercept exists or
xpt
: Intercept pointhandle
: Handle of segment contributing surface datadladsc
: DLA descriptor of segmentdskdsc
: DSK descriptor of segmentdc
: Double precision component of source infoic
: Integer component of source info
References
SPICE.dskxv
— Methoddskxv(pri, target, srflst, et, fixref, nrays, vtxarr, dirarr)
Compute ray-surface intercepts for a set of rays, using data provided by multiple loaded DSK segments.
Arguments
pri
: Data prioritization flagtarget
: Target body namesrflst
: Surface ID listet
: Epoch, expressed as seconds past J2000 TDBfixref
: Name of target body-fixed reference framenrays
: Number of raysvtxarr
: Array of vertices of raysdirarr
: Array of direction vectors of rays
Output
xptarr
: Intercept point arrayfndarr
: Found flag array
References
SPICE.dskz02
— Methoddskz02(handle, dladsc)
Return plate model size parameters - plate count and vertex count - for a type 2 DSK segment.
Arguments
handle
: DSK file handledladsc
: DLA descriptor
Output
nv
: Number of verticesnp
: Number of plates
References
SPICE.dsphdr
— Methoddsphdr(x, y, z)
Compute the Jacobian of the transformation from rectangular to spherical coordinates.
Arguments
x
: X-coordinate of pointy
: Y-coordinate of pointz
: Z-coordinate of point
Output
Returns the matrix of partial derivatives.
References
SPICE.dtpool
— Methoddtpool(name)
Return the data about a kernel pool variable.
Arguments
name
: Name of the variable whose value is to be returned
Output
Returns the tuple (n ,vartype)
.
n
: Number of values returned for namevartype
: Type of the variable:C
if the data is character data:N
if the data is numeric:X
if there is no variable name in the pool
References
SPICE.ducrss
— Methodducrss(s1, s2)
Compute the unit vector parallel to the cross product of two 3-dimensional vectors and the derivative of this unit vector.
Arguments
s1
: Left hand state for cross product and derivatives2
: Right hand state for cross product and derivative
Output
Returns the unit vector and derivative of the cross product.
References
SPICE.dvcrss
— Methoddvcrss(s1, s2)
Compute the cross product of two 3-dimensional vectors and the derivative of this cross product.
Arguments
s1
: Left hand state for cross product and derivatives2
: Right hand state for cross product and derivative
Output
Returns the cross product and its derivative.
References
SPICE.dvdot
— Methoddvdot(s1, s2)
Compute the derivative of the dot product of two double precision position vectors.
Arguments
s1
: First state vector in the dot products2
: Second state vector in the dot product
Output
Returns the derivative of the dot product s1 ⋅ s2
.
References
SPICE.dvhat
— Methoddvhat(s1)
Find the unit vector corresponding to a state vector and the derivative of the unit vector.
Arguments
s1
: State to be normalized
Output
Returns the unit vector s1 / |s1|
, and its time derivative.
References
SPICE.dvnorm
— Methoddvnorm(state)
Function to calculate the derivative of the norm of a 3-vector.
Arguments
state
: A 6-vector composed of three coordinates and their derivatives.
Output
Returns the derivative of the norm of state
.
References
SPICE.dvpool
— Methoddvpool(name)
Delete a variable from the kernel pool.
Arguments
name
: Name of the kernel variable to be deleted
References
SPICE.dvsep
— Methoddvsep(s1, s2)
Calculate the time derivative of the separation angle between two input states, s1
and s2
.
Arguments
s1
: State vector of the first bodys2
: State vector of the second body
Output
Returns the value of the time derivative of the angular separation between s1
and s2
.
References
SPICE.edlimb
— Methodedlimb(a, b, c, viewpt)
Find the limb of a triaxial ellipsoid, viewed from a specified point.
Arguments
a
: Length of ellipsoid semi-axis lying on the x-axisb
: Length of ellipsoid semi-axis lying on the y-axisc
: Length of ellipsoid semi-axis lying on the z-axisviewpt
: Location of viewing point
Output
Returns the limb of the ellipsoid as seen from the viewing point.
References
SPICE.edterm
— Methodedterm(trmtyp, source, target, et, fixref, abcorr, obsrvr, npts)
Compute a set of points on the umbral or penumbral terminator of a specified target body, where the target shape is modeled as an ellipsoid.
Arguments
trmtyp
: Terminator typesource
: Light sourcetarget
: Target bodyet
: Observation epochfixref
: Body-fixed frame associated with targetabcorr
: Aberration correctionobsrvr
: Observernpts
: Number of points in terminator set
Output
trgepc
: Epoch associated with target centerobspos
: Position of observer in body-fixed frametrmpts
: Terminator point set
References
SPICE.ekacec
— Methodekacec(handle, segno, recno, column, cvals, isnull)
Add data to a character column in a specified EK record.
Arguments
handle
: EK file handlesegno
: Index of segment containing recordrecno
: Record to which data is to be addedcolumn
: Column namecvals
: Character values to add to columnisnull
: Flag indicating whether column entry is null
References
SPICE.ekaced
— Methodekaced(handle, segno, recno, column, dvals, isnull)
Add data to an double precision column in a specified EK record.
Arguments
handle
: EK file handlesegno
: Index of segment containing recordrecno
: Record to which data is to be addedcolumn
: Column namedvals
: Double precision values to add to columnisnull
: Flag indicating whether column entry is null
References
SPICE.ekacei
— Methodekacei(handle, segno, recno, column, ivals, isnull)
Add data to an integer column in a specified EK record.
Arguments
handle
: EK file handlesegno
: Index of segment containing recordrecno
: Record to which data is to be addedcolumn
: Column nameivals
: Integer values to add to columnisnull
: Flag indicating whether column entry is null
References
SPICE.ekaclc
— Methodekaclc(handle, segno, column, cvals, nlflgs, rcptrs)
Add an entire character column to an EK segment.
Arguments
handle
: EK file handle.segno
: Number of segment to add column to.column
: Column name.cvals
: Character values to add to column.nlflgs
: Array of null flags for column entries.rcptrs
: Record pointers for segment.
References
SPICE.ekacld
— Methodekacld(handle, segno, column, dvals, nlflgs, rcptrs)
Add an entire double precision column to an EK segment.
Arguments
handle
: EK file handlesegno
: Number of segment to add column tocolumn
: Column namedvals
: Double precision values to add to columnnlflgs
: Array of null flags for column entriesrcptrs
: Record pointers for segment
References
SPICE.ekacli
— Methodekacli(handle, segno, column, ivals, nlflgs, rcptrs)
Add an entire integer column to an EK segment.
Arguments
handle
: EK file handlesegno
: Number of segment to add column tocolumn
: Column nameivals
: Integer values to add to columnnlflgs
: Array of null flags for column entriesrcptrs
: Record pointers for segment
References
SPICE.ekappr
— Methodekappr(handle, segno)
Append a new, empty record at the end of a specified E-kernel segment.
Arguments
handle
: File handlesegno
: Segment number
Output
Returns the number of appended record.
References
SPICE.ekbseg
— Methodekbseg(handle, tabnam, cnames, decls)
Start a new segment in an E-kernel.
Arguments
handle
: File handletabnam
: Table namecnames
: Names of columnsdecls
: Declarations of columns
Output
Returns the segment number.
References
SPICE.ekccnt
— Methodekccnt(table)
Return the number of distinct columns in a specified, currently loaded table
Arguments
table
: Name of table
Output
Returns the count of distinct, currently loaded columns.
References
SPICE.ekcii
— Functionekcii(table, cindex, lenout=256)
Return attribute information about a column belonging to a loaded EK table, specifying the column by table and index.
Arguments
table
: Name of table containing columncindex
: Index of column whose attributes are to be foundlenout
: Maximum allowed length of column name (default: 256)
Output
column
: Name of columnattdsc
: Column attribute descriptor
References
SPICE.ekcls
— MethodSPICE.ekdelr
— Methodekdelr(handle, segno, recno)
Delete a specified record from a specified E-kernel segment.
Arguments
handle
: File handlesegno
: Segment numberrecno
: Record number
References
SPICE.ekffld
— Methodekffld(handle, segno, rcptrs)
Complete a fast write operation on a new E-kernel segment.
Arguments
handle
: File handlesegno
: Segment numberrcptrs
: Record pointers
References
SPICE.ekfind
— Functionekfind(query, lenout=256)
Find E-kernel data that satisfy a set of constraints.
Arguments
query
: Query specifying data to be found.lenout
: Declared length of output error message string (default: 256)
Output
Returns the number of matching rows.
References
SPICE.ekgc
— Functionekgc(selidx, row, elment, lenout=256)
Return an element of an entry in a column of character type in a specified row.
Arguments
selidx
: Index of parent column in SELECT clauserow
: Row to fetch fromelment
: Index of element, within column entry, to fetchlenout
: Maximum length of column element (default: 256)
Output
Returns the character string element of column entry or missing
if it was null or nothing
if the column was not found.
References
SPICE.ekgd
— Methodekgd(selidx, row, element)
Return an element of an entry in a column of double precision type in a specified row.
Arguments
selidx
: Index of parent column in SELECT clauserow
: Row to fetch fromelment
: Index of element, within column entry, to fetch
Output
Returns the double precision element of column entry or missing
if it was null or nothing
if the column was not found.
References
SPICE.ekgi
— Methodekgi(selidx, row, element)
Return an element of an entry in a column of integer type in a specified row.
Arguments
selidx
: Index of parent column in SELECT clauserow
: Row to fetch fromelment
: Index of element, within column entry, to fetch
Output
Returns the integer element of column entry or missing
if it was null or nothing
if the column was not found.
References
SPICE.ekifld
— Methodekifld(handle, tabnam, nrows, cnames, decls)
Initialize a new E-kernel segment to allow fast writing.
Arguments
handle
: File handletabnam
: Table namenrows
: Number of rows in the segmentcnames
: Names of columnsdecls
: Declarations of columns
Output
segno
: Segment numberrcptrs
: Array of record pointers
References
SPICE.ekinsr
— Methodekinsr(handle, segno, recno)
Add a new, empty record to a specified E-kernel segment at a specified index.
Arguments
handle
: File handlesegno
: Segment numberrecno
: Record number
References
SPICE.eklef
— Methodeklef(fname)
Load an EK file, making it accessible to the EK readers.
Arguments
fname
: Name of EK file to load
Output
Returns the file handle of loaded EK file.
References
SPICE.eknelt
— Methodeknelt(selidx, row)
Return the number of elements in a specified column entry in the current row.
Arguments
selidx
: Index of parent column in SELECT clauserow
: Row containing element
Output
Returns the number of elements in entry in current row.
References
SPICE.eknseg
— Methodeknseg(handle)
Return the number of segments in a specified EK.
Arguments
handle
: EK file handle
Output
Returns the number of segments in the specified E-kernel.
References
SPICE.ekntab
— MethodSPICE.ekopn
— Methodekopn(fname, ifname, ncomch)
Open a new E-kernel file and prepare the file for writing.
Arguments
fname
: Name of EK fileifname
: Internal file namencomch
: The number of characters to reserve for comments
Output
Return the handle attached to the new EK file.
References
SPICE.ekopr
— Methodekopr(fname)
Open an existing E-kernel file for reading.
Arguments
fname
: Name of EK file
Output
Returns the handle attached to the EK file.
References
SPICE.ekops
— Methodekops()
Open a scratch (temporary) E-kernel file and prepare the file for writing.
Output
Returns the handle attached to the EK file.
References
SPICE.ekopw
— Methodekopw(fname)
Open an existing E-kernel file for writing.
Arguments
fname
: Name of EK file
Output
Returns the handle attached to the EK file.
References
SPICE.ekpsel
— Functionekpsel(query, msglen=256, tablen=256, collen=256)
Parse the SELECT clause of an EK query, returning full particulars concerning each selected item.
Arguments
query
: EK querymsglen
: Available space in the output error message string (default: 256)tablen
: Length of strings in `tabs' output array (default: 256)collen
: Length of strings in `cols' output array (default: 256)
Output
xbegs
: Begin positions of expressions in SELECT clausexends
: End positions of expressions in SELECT clausextypes
: Data types of expressionsxclass
: Classes of expressionstabs
: Names of tables qualifying SELECT columnscols
: Names of columns in SELECT clause of query
References
SPICE.ekrcec
— Functionekrcec(handle, segno, recno, column, lenout=256, nelts=100)
Read data from a character column in a specified EK record.
Arguments
handle
: Handle attached to EK filesegno
: Index of segment containing recordrecno
: Record from which data is to be readcolumn
: Column namelenout
: Maximum length of output stringsnelts
: Maximum number of elements to return (default: 100)
Output
Returns the character values in column entry or missing
if they are null.
References
SPICE.ekrced
— Functionekrced(handle, segno, recno, column, nelts=100)
Read data from a double precision column in a specified EK record.
Arguments
handle
: Handle attached to EK filesegno
: Index of segment containing recordrecno
: Record from which data is to be readcolumn
: Column namenelts
: Maximum number of elements to return (default: 100)
Output
Returns the values in column entry.
References
SPICE.ekrcei
— Functionekrcei(handle, segno, recno, column, nelts=100)
Read data from an integer column in a specified EK record.
Arguments
handle
: Handle attached to EK filesegno
: Index of segment containing recordrecno
: Record from which data is to be readcolumn
: Column namenelts
: Maximum number of elements to return (default: 100)
Output
Returns the values in column entry.
References
SPICE.ekssum
— Methodekssum(handle, segno)
Return summary information for a specified segment in a specified EK.
Arguments
handle
: Handle of EKsegno
: Number of segment to be summarized
Output
Returns the EK segment summary.
References
SPICE.ektnam
— Functionektnam(n, lenout=256)
Return the name of a specified, loaded table.
Arguments
n
: Index of tablelenout
: Maximum table name length (default: 256)
Output
Returns the name of table.
References
SPICE.ekucec
— Methodekucec(handle, segno, recno, column, cvals, isnull)
Update a character column entry in a specified EK record.
Arguments
handle
: EK file handlesegno
: Index of segment containing recordrecno
: Record to which data is to be updatedcolumn
: Column namecvals
: Character values comprising new column entryisnull
: Flag indicating whether column entry is null
References
SPICE.ekuced
— Methodekuced(handle, segno, recno, column, dvals, isnull)
Update a double precision column entry in a specified EK record.
Arguments
handle
: Handle attached to EK filesegno
: Index of segment containing recordrecno
: Record in which entry is to be updatedcolumn
: Column namedvals
: Double precision values comprising new column entryisnull
: Flag indicating whether column entry is null
References
SPICE.ekucei
— Methodekucei(handle, segno, recno, column, dvals, isnull)
Update an integer column entry in a specified EK record.
Arguments
handle
: Handle attached to EK filesegno
: Index of segment containing recordrecno
: Record in which entry is to be updatedcolumn
: Column nameivals
: Integer values comprising new column entryisnull
: Flag indicating whether column entry is null
References
SPICE.ekuef
— Methodekuef(handle)
Unload an EK file, making its contents inaccessible to the EK reader routines, and clearing space in order to allow other EK files to be loaded.
Arguments
handle
: Handle of EK file
References
SPICE.el2cgv
— MethodConvert an ellipse to a center vector and two generating vectors. The selected generating vectors are semi-axes of the ellipse.
Arguments
ellipse
: An ellipse
Output
Returns the center and semi-axes of ellipse.
References
SPICE.elemc
— Functionelem[c/d/i](item, cell)
Use item in cell
instead.
SPICE.eqncpv
— Methodeqncpv(et, epoch, eqel, rapol, decpol)
Compute the state (position and velocity of an object whose trajectory is described via equinoctial elements relative to some fixed plane (usually the equatorial plane of some planet).
Arguments
et
: Epoch in seconds past J2000 to find stateepoch
: Epoch of elements in seconds past J2000eqel
: Array of equinoctial elementsrapol
: Right Ascension of the pole of the reference planedecpol
: Declination of the pole of the reference plane
Output
Returns the state of the object described by eqel
.
References
SPICE.eqstr
— Methodeqstr(a, b)
Determine whether two strings are equivalent.
Arguments
a
,b
: Arbitrary character strings
Output
Returns true
if a
and b
are equivalent.
References
SPICE.esrchc
— Methodesrchc(value, array)
Search for a given value within a character string array.
Arguments
value
: Key value to be found in arrayarray
: Character string array to search
Output
Returns the index of the first equivalent array entry, or -1 if no equivalent element is found.
References
SPICE.et2lst
— Functionet2lst(et, body, lon, typ, timlen=128, ampmlen=128)
Given an ephemeris epoch, compute the local solar time for an object on the surface of a body at a specified longitude.
Arguments
et
: Epoch in seconds past J2000 epochbody
: ID-code of the body of interestlon
: Longitude of surface point (radians)typ
: Type of longitude "PLANETOCENTRIC", etctimlen
: Available room in output time string (default: 128)ampmlen
: Available room in output `ampm' string (default: 128)
Output
hr
: Local hour on a "24 hour" clockmn
: Minutes past the hoursc
: Seconds past the minutetime
: String giving local time on 24 hour clockampm
: String giving time on A.M./ P.M. scale
References
SPICE.et2utc
— Methodet2utc(et, format, prec)
Convert an input time from ephemeris seconds past J2000 to Calendar, Day-of-Year, or Julian Date format, UTC.
Arguments
et
: Input epoch, given in ephemeris seconds past J2000format
: Format of output epoch. 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
prec
: Digits of precision in fractional seconds or days
Output
Returns an output time string equivalent to the input epoch, in the specified format.
References
SPICE.etcal
— Functionetcal(et, lenout=128)
Convert from an ephemeris epoch measured in seconds past the epoch of J2000 to a calendar string format using a formal calendar free of leapseconds.
Arguments
et
: Ephemeris time measured in seconds past J2000lenout
: Length of output string (default: 128)
Output
Returns a standard calendar representation of et
.
References
SPICE.eul2m
— Methodeul2m(angle3, angle2, angle1, axis3, axis2, axis1)
Construct a rotation matrix from a set of Euler angles.
Arguments
angle3
,angle2
,angle1
: Rotation angles about third, second, and first rotation axes (radians)axis3
,axis2
,axis1
: Axis numbers of third, second, and first rotation axes
Output
A rotation matrix corresponding to the product of the 3 rotations.
References
SPICE.eul2xf
— Methodeul2xf(eulang, axisa, axisb, axisc)
Compute a state transformation from an Euler angle factorization of a rotation and the derivatives of those Euler angles.
Arguments
eulang
: An array of Euler angles and their derivativesaxisa
: Axis A of the Euler angle factorizationaxisb
: Axis B of the Euler angle factorizationaxisc
: Axis C of the Euler angle factorization
Output
Returns a state transformation matrix.
References
SPICE.expool
— Methodexpool(name)
Confirm the existence of a kernel variable in the kernel pool.
Arguments
name
: Name of the variable whose value is to be returned
Output
Returns true
when the variable is in the pool.
References
SPICE.fovray
— Methodfovray(inst, raydir, rframe, abcorr, observer, et)
Determine if a specified ray is within the field-of-view (FOV) of a specified instrument at a given time.
Arguments
inst
: Name or ID code string of the instrumentraydir
: Ray's direction vectorrframe
: Body-fixed, body-centered frame for target bodyabcorr
: Aberration correction flagobserver
: Name or ID code string of the observeret
: Time of the observation (seconds past J2000)
Output
Returns true
if the ray is visible.
References
SPICE.fovtrg
— Methodfovtrg(inst, target, tshape, tframe, abcorr, obsrvr, et)
Determine if a specified ephemeris object is within the field-of-view (FOV) of a specified instrument at a given time.
Arguments
inst
: Name or ID code string of the instrument.target
: Name or ID code string of the target.tshape
: Type of shape model used for the target.tframe
: Body-fixed, body-centered frame for target body.abcorr
: Aberration correction flag.obsrvr
: Name or ID code string of the observer.et
: Time of the observation (seconds past J2000).
Output
Returns true
if the object is visible.
References
SPICE.frame
— Methodframe(x)
Given a vector x
, this routine builds a right handed orthonormal frame x
, y
, z
where the output x
is parallel to the input x
.
Arguments
x
: Input vector
Output
x
: Unit vector parallel tox
on outputy
: Unit vector in the plane orthogonal tox
z
: Unit vector given byx × y
References
SPICE.frinfo
— Methodfrinfo(frcode)
Retrieve the minimal attributes associated with a frame needed for converting transformations to and from it.
Arguments
frcode
: The id code for a reference frame
Output
cent
: The center of the framefrclss
: The class (type) of the frameclssid
: The idcode for the frame within its class
Returns nothing
if no frame with id frcode
could be found.
References
SPICE.frmnam
— Methodfrmnam(frcode)
Retrieve the name of a reference frame associated with an id code.
Arguments
frcode
: The id code for a reference frame
Output
Returns the name associated with the reference frame.
References
SPICE.furnsh
— Methodfurnsh(kernels...)
Load one or more SPICE kernels into a program.
Arguments
kernels
: Path(s) of SPICE kernels to load
References
SPICE.gcpool
— Methodgcpool(name; start=1, room=100, lenout=128)
Return the value of a kernel variable from the kernel pool.
Arguments
name
: Name of the variable whose value is to be returnedstart
: Which component to start retrieving for name (default: 1)room
: The largest number of values to return (default: 100)lenout
: The length of the longest string to return (default: 128)
Output
Returns an array of values if the variable exists or nothing
if not.
References
SPICE.gdpool
— Methodgdpool(name; start=1, room=100)
Return the value of a kernel variable from the kernel pool.
Arguments
name
: Name of the variable whose value is to be returnedstart
: Which component to start retrieving for name (default: 1)room
: The largest number of values to return (default: 100)
Output
Returns an array of values if the variable exists or nothing
if not.
References
SPICE.georec
— Methodgeorec(lon, lat, alt, re, f)
Convert geodetic coordinates to rectangular coordinates.
Arguments
lon
: Geodetic longitude of point (radians)lat
: Geodetic latitude of point (radians)alt
: Altitude of point above the reference spheroidre
: Equatorial radius of the reference spheroidf
: Flattening coefficient
Output
Returns the rectangular coordinates of point.
References
SPICE.getelm
— Methodgetelm(frstyr, lines)
Given the "lines" of a two-line element set, parse the lines and return the elements in units suitable for use in SPICE software.
Arguments
frstyr
: Year of earliest representable two-line elementslines
: A pair of "lines" containing two-line elements
Output
epoch
: The epoch of the elements in seconds past J2000elems
: The elements converted to SPICE units
References
SPICE.getfat
— Functiongetfat(file, arclen=10, typlen=10)
Determine the file architecture and file type of most SPICE kernel files.
Arguments
file
: The name of a file to be examinedarclen
: Maximum length of output architecture string (default: 10)typlen
: Maximum length of output type string (default: 10)
Output
arch
: The architecture of the kernel filetyp
: The type of the kernel file
References
SPICE.getfov
— Functiongetfov(instid, room=10, shapelen=128, framelen=128)
Return the field-of-view (FOV) parameters for a specified instrument. The instrument is specified by its NAIF ID code.
Arguments
instid
: NAIF ID of an instrumentroom
: Maximum number of vectors that can be returned (default: 10)shapelen
: Space available in the stringshape
(default: 128)framelen
: Space available in the stringframe
(default: 128)
Output
Returns a tuple consisting of
shape
: Instrument FOV shapeframe
: Name of the frame in which FOV vectors are definedbsight
: Boresight vectorbounds
: FOV boundary vectors
References
SPICE.gfdist
— Methodgfdist(target, abcorr, obsrvr, relate, refval, adjust, step, nintvls, cnfine)
Return the time window over which a specified constraint on observer-target distance is met.
Arguments
target
: Name of the target bodyabcorr
: Aberration correction flagobsrvr
: Name of the observing bodyrelate
: Relational operatorrefval
: Reference valueadjust
: Adjustment value for absolute extrema searchesstep
: Step size used for locating extrema and rootsnintvls
: Workspace window interval countcnfine
: Window to which the search is confined
Output
Returns a window containing the results.
References
SPICE.gfevnt
— Methodgfevnt(udstep, udrefn, gquant, qnpars, lenvals, qpnams, qcpars, qdpars, qipars, qlpars,
- op, refval, tol, adjust, rpt, udrepi, udrepu, udrepf, nintvls, bail, udbail, cnfine)
Determine time intervals when a specified geometric quantity satisfies a specified mathematical condition.
Arguments
udstep
: Name of the routine that computes and returns a time stepudrefn
: Name of the routine that computes a refined timegquant
: Type of geometric quantityqpnams
: Names of quantity definition parametersqcpars
: Array of character quantity definition parametersqdpars
: Array of double precision quantity definition parametersqipars
: Array of integer quantity definition parametersqlpars
: Array of logical quantity definition parametersop
: Operator that either looks for an extreme value (max, min, local, absolute) or compares the geometric quantity value and a numberrefval
: Reference valuetol
: Convergence tolerance in secondadjust
: Absolute extremum adjustment valuerpt
: Progress reporter on (true
) or off (false
)udrepi
: Function that initializes progress reportingudrepu
: Function that updates the progress reportudrepf
: Function that finalizes progress reportingnintvls
: Workspace window interval councnfine
: SPICE window to which the search is restricted
Output
Returns a window containing the results.
References
SPICE.gffove!
— Methodgffove!(inst, tshape, raydir, target, tframe, abcorr, obsrvr, tol, udstep, udrefn,
- rpt, udrepi, udrepu, udrepf, cnfine, result)
Determine time intervals when a specified target body or ray intersects the space bounded by the field-of-view (FOV) of a specified instrument.
Arguments
inst
: Name of the instrumenttshape
: Type of shape model used for target bodyraydir
: Ray's direction vectortarget
: Name of the target bodytframe
: Body-fixed, body-centered frame for target bodyabcorr
: Aberration correction flagobsrvr
: Name of the observing bodytol
: Convergence tolerance in secondsudstep
: Name of the routine returns a time stepudrefn
: Name of the routine that computes a refined timerpt
: Progress report flagudrepi
: Function that initializes progress reportingudrepu
: Function that updates the progress reportudrepf
: Function that finalizes progress reportingcnfine
: SPICE window to which the search is restrictedresult
: Window containing the results
Output
Returns result
.
References
SPICE.gfilum
— Methodgfilum(method, angtyp, target, illmn, fixref, abcorr, obsrvr, spoint, relate, refval,
- adjust, step, nintvls, cnfine)
Return the time window over which a specified constraint on the observed phase, solar incidence, or emission angle at a specifed target body surface point is met.
Arguments
method
: Computation methodangtyp
: Type of illumination angletarget
: Name of the target bodyillmn
: Name of the illumination sourcefixref
: Body-fixed, body-centered target body frameabcorr
: Aberration correction flagobsrvr
: Name of the observing bodyspoint
: Body-fixed coordinates of a target surface pointrelate
: Relational operatorrefval
: Reference valueadjust
: Adjustment value for absolute extrema searchesstep
: Step size used for locating extrema and rootsnintvls
: Workspace window interval countcnfine
: Window to which the search is confined
Output
Returns a window containing the results.
References
SPICE.gfocce!
— Methodfunction gfocce!(occtyp, front, fshape, fframe, back, bshape, bframe, abcorr, obsrvr, tol,
- udstep, udrefn, rpt, udrepi, udrepu, udrepf, cnfine, result)
Determine time intervals when an observer sees one target occulted by another.
Arguments
occtyp
: Type of occultationfront
: Name of body occulting the otherfshape
: Type of shape model used for front bodyfframe
: Body-fixed, body-centered frame for front bodyback
: Name of body occulted by the otherbshape
: Type of shape model used for back bodybframe
: Body-fixed, body-centered frame for back bodyabcorr
: Aberration correction flagobsrvr
: Name of the observing bodytol
: Convergence tolerance in secondsudstep
: Name of the routine that returns a time stepudrefn
: Name of the routine that computes a refined timerpt
: Progress report flagudrepi
: Function that initializes progress reportingudrepu
: Function that updates the progress reportudrepf
: Function that finalizes progress reportingcnfine
: SPICE window to which the search is restrictedresult
: SPICE window containing results
Output
Returns result
.
References
SPICE.gfoclt
— Functiongfoclt(occtyp, front, fshape, fframe, back, bshape, bframe, abcorr, obsrvr, step, cnfine,
- maxwin=100)
Determine time intervals when an observer sees one target occulted by, or in transit across, another.
The surfaces of the target bodies may be represented by triaxial ellipsoids or by topographic data provided by DSK files.
Arguments
occtyp
: Type of occultationfront
: Name of body occulting the otherfshape
: Type of shape model used for front bodyfframe
: Body-fixed, body-centered frame for front bodyback
: Name of body occulted by the otherbshape
: Type of shape model used for back bodybframe
: Body-fixed, body-centered frame for back bodyabcorr
: Aberration correction flagobsrvr
: Name of the observing bodystep
: Step size in seconds for finding occultation eventscnfine
: Window to which the search is restrictedmaxwin
: Maximum size of the output window (default: 100)
Output
Returns a window containing the results.
References
SPICE.gfpa
— Methodgfpa(result, target, illmn, abcorr, obsrvr, relate, refval, adjust, step, nintvls, cnfine)
Determine time intervals for which a specified constraint on the phase angle between an illumination source, a target, and observer body centers is met.
Arguments
target
: Name of the target bodyillmn
: Name of the illuminating bodyabcorr
: Aberration correction flagobsrvr
: Name of the observing bodyrelate
: Relational operatorrefval
: Reference valueadjust
: Adjustment value for absolute extrema searchesstep
: Step size used for locating extrema and rootsnintvls
: Workspace window interval countcnfine
: Window to which the search is confined
Output
Returns a window containing the results.
References
SPICE.gfposc
— Methodgfposc(target, frame, abcorr, obsrvr, crdsys, coord, relate, refval, adjust, step,
- nintvls, cnfine)
Determine time intervals for which a coordinate of an observer-target position vector satisfies a numerical constraint.
Arguments
target
: Name of the target bodyframe
: Name of the reference frame for coordinate calculationsabcorr
: Aberration correction flagobsrvr
: Name of the observing bodycrdsys
: Name of the coordinate system containingcoord
coord
: Name of the coordinate of interestrelate
: Operator that either looks for an extreme value (max, min, local, absolute) or compares the coordinate value and refvalrefval
: Reference valueadjust
: Adjustment value for absolute extrema searchesstep
: Step size used for locating extrema and rootsnintvls
: Workspace window interval countcnfine
: Window to which the search is restricted
Output
Returns a window containing the results.
References
SPICE.gfrefn
— Methodgfrefn(t1, t2, s1, s2)
For those times when we can't do better, we use a bisection method to find the next time at which to test for state change.
Arguments
t1
: One of two values bracketing a state changet2
: The other value that brackets a state changes1
: State att1
s2
: State att2
Output
Returns the new value at which to check for transition.
References
SPICE.gfrepf
— MethodSPICE.gfrepi
— Methodgfrepi(window, begmss, endmss)
Initialize a search progress report.
Arguments
window
: A window over which a job is to be performedbegmss
: Beginning of the text portion of the output messageendmss
: End of the text portion of the output message
References
SPICE.gfrepu
— Methodgfrepu(ivbeg, ivend, time)
Tell the progress reporting system how far a search has progressed.
Arguments
ivbeg
: Start time of work intervalivend
: End time of work intervaltime
: Current time being examined in the search process
References
SPICE.gfrfov
— Functiongfrfov(inst, raydir, rframe, abcorr, obsrvr, step, cnfine, maxwin=10000)
Determine time intervals when a specified ray intersects the space bounded by the field-of-view (FOV) of a specified instrument.
Arguments
inst
: Name of the instrumentraydir
: Ray's direction vectorrframe
: Reference frame of ray's direction vectorabcorr
: Aberration correction flagobsrvr
: Name of the observing bodystep
: Step size in seconds for finding FOV eventscnfine
: SPICE window to which the search is restrictedmaxwin
: Maximum length of the output window (default: 10000)
Output
Returns a window containing the results.
References
SPICE.gfrr
— Methodgfrr(target, abcorr, obsrvr, relate, refval, adjust, step, nintvls, cnfine)
Determine time intervals for which a specified constraint on the observer-target range rate is met.
Arguments
target
: Name of the target bodyabcorr
: Aberration correction flagobsrvr
: Name of the observing bodyrelate
: Relational operatorrefval
: Reference valueadjust
: Adjustment value for absolute extrema searchesstep
: Step size used for locating extrema and rootsnintvls
: Workspace window interval countcnfine
: Window to which the search is confined
Output
Returns a window containing the results.
References
SPICE.gfsep
— MethodDetermine time intervals when the angular separation between the position vectors of two target bodies relative to an observer satisfies a numerical relationship.
Arguments
targ1
: Name of first bodyshape1
: Name of shape model describing the first bodyframe1
: The body-fixed reference frame of the first bodytarg2
: Name of second bodyshape2
: Name of the shape model describing the second bodyframe2
: The body-fixed reference frame of the second bodyabcorr
: Aberration correction flagobsrvr
: Name of the observing bodyrelate
: Operator that either looks for an extreme value (max, min, local, absolute) or compares the angular separation value and refvalrefval
: Reference valueadjust
: Absolute extremum adjustment valuestep
: Step size in seconds for finding angular separation eventsnintvls
: Workspace window interval countcnfine
: Window to which the search is restricted
Output
Returns a window containing the results.
References
SPICE.gfsntc
— Methodgfsntc(target, fixref, method, abcorr, obsrvr, dref, dvec, crdsys, coord, relate, refval,
- adjust, step, nintvls, cnfine)
Determine time intervals for which a coordinate of an surface intercept position vector satisfies a numerical constraint.
Arguments
target
: Name of the target bodyfixref
: Body fixed frame associated withtarget
method
: Name of method type for surface intercept calculationabcorr
: Aberration correction flagobsrvr
: Name of the observing bodydref
: Reference frame of direction vectordvec
dvec
: Pointing direction vector fromobsrvr
crdsys
: Name of the coordinate system containing COORDcoord
: Name of the coordinate of interestrelate
: Operator that either looks for an extreme value (max, min, local, absolute) or compares the coordinate value andrefval
refval
: Reference valueadjust
: Adjustment value for absolute extrema searchesstep
: Step size used for locating extrema and rootsnintvls
: Workspace window interval countcnfine
: Window to which the search is restricted
Output
Returns a window containing the results.
References
SPICE.gfsstp
— MethodSPICE.gfstep
— Methodgfstep()
Return the time step set by the most recent call to gfsstp
.
Arguments
step
: Time step to take
References
SPICE.gfstol
— Methodgfstol(value)
Override the default GF convergence value used in the high level GF routines.
Arguments
value
: Double precision value returned or to store
References
SPICE.gfsubc
— Methodgfsubc(target, fixref, method, abcorr, obsrvr, crdsys, coord, relate, refval, adjust, step,
- nintvls, cnfine)
Determine time intervals for which a coordinate of an subpoint position vector satisfies a numerical constraint.
Arguments
target
: Name of the target bodyfixref
: Body fixed frame associated withtarget
method
: Name of method type for subpoint calculationabcorr
: Aberration correction flagobsrvr
: Name of the observing bodycrdsys
: Name of the coordinate system containingcoord
coord
: Name of the coordinate of interestrelate
: Operator that either looks for an extreme value (max, min, local, absolute) or compares the coordinate value and refvalrefval
: Reference valueadjust
: Adjustment value for absolute extrema searchesstep
: Step size used for locating extrema and rootsnintvls
: Workspace window interval countcnfine
: Window to which the search is restricted
Output
Returns a window containing the results.
References
SPICE.gftfov
— Methodgftfov(inst, target, tshape, tframe, abcorr, obsrvr, step, nintvls, cnfine)
Determine time intervals when a specified ephemeris object intersects the space bounded by the field-of-view (FOV) of a specified instrument.
Arguments
inst
: Name of the instrumenttarget
: Name of the target bodytshape
: Type of shape model used for target bodytframe
: Body-fixed, body-centered frame for target bodyabcorr
: Aberration correction flagobsrvr
: Name of the observing bodystep
: Step size in seconds for finding FOV eventsnintvls
: Workspace window interval countcnfine
: Window to which the search is restricted
Output
Returns a window containing the results.
References
SPICE.gfudb!
— Methodgfudb!(udfuns, udfunb, step, cnfine, result)
Perform a GF search on a user defined boolean quantity.
Arguments
udfuns
: Name of the routine that computes a scalar quantity of interest corresponding to anet
, e.g.f(et) = ...
udfunb
: Name of the routine returning the boolean value corresponding to anet
, e.g.g(f, et) = ...
step
: Step size used for locating extrema and rootscnfine
: Window to which the search is restrictedresult
: Window containing results
Output
Returns result
.
References
SPICE.gfuds!
— Methodgfuds!(udfuns, udqdec, relate, refval, adjust, step, nintvls, cnfine, result)
Perform a GF search on a user defined scalar quantity.
Arguments
udfuns
: Name of the routine that computes the scalar quantity of interest at some time, e.g.f(et) = ...
udqdec
: Name of the routine that computes whether the scalar quantity is decreasing, e.g.g(f, et) = ...
relate
: Operator that either looks for an extreme value (max, min, local, absolute) or compares the geometric quantity value and a numberrefval
: Value used as reference for scalar quantity conditionadjust
: Allowed variation for absolute extremal geometric conditionsstep
: Step size used for locating extrema and rootsnintvls
: Workspace window interval countcnfine
: SPICE window to which the search is restrictedresult
: SPICE window containing results
Output
Returns result
.
References
SPICE.gipool
— Methodgipool(name; start=1, room=100)
Return the value of a kernel variable from the kernel pool.
Arguments
name
: Name of the variable whose value is to be returnedstart
: Which component to start retrieving for name (default: 1)room
: The largest number of values to return (default: 100)
Output
Returns an array of values if the variable exists or nothing
if not.
References
SPICE.gnpool
— Functiongnpool(name, start, room, lenout=128)
Return names of kernel variables matching a specified template.
Arguments
name
: Template that names should matchstart
: Index of first matching name to retrieveroom
: The largest number of values to returnlenout
: Length of strings in output arraykvars
(default: 128)
Output
Returns lernel pool variables whose names match name
.
References
SPICE.halfpi
— Functionhalfpi()
Use π/2
instead.
SPICE.hrmint
— Methodhrmint(xvals, yvals, x)
Evaluate a Hermite interpolating polynomial at a specified abscissa value.
Arguments
xvals
: Abscissa valuesyvals
: Ordinate and derivative valuesx
: Point at which to interpolate the polynomial
Output
f
: Interpolated function value atx
df
: Interpolated function's derivative atx
References
SPICE.hx2dp
— Methodhx2dp(str)
Convert a string representing a double precision number in a base 16 "scientific notation" into its equivalent double precision number.
Arguments
str
: Hex form string to convert to double precision
Output
dp
: Double precision value to be returned
References
SPICE.illumf
— Methodillumf(method, target, ilusrc, et, fixref, abcorr, obsrvr, spoint)
Compute the illumination angles - phase, incidence, and emission - at a specified point on a target body. Return logical flags indicating whether the surface point is visible from the observer's position and whether the surface point is illuminated.
The target body's surface is represented using topographic data provided by DSK files, or by a reference ellipsoid.
The illumination source is a specified ephemeris object.
Arguments
method
: Computation methodtarget
: Name of target bodyilusrc
: Name of illumination sourceet
: Epoch in TDB seconds past J2000 TDBfixref
: Body-fixed, body-centered target body frameabcorr
: Aberration correction flagobsrvr
: Name of observing bodyspoint
: Body-fixed coordinates of a target surface point
Output
trgepc
: Target surface point epochsrfvec
: Vector from observer to target surface pointphase
: Phase angle at the surface pointincdnc
: Source incidence angle at the surface pointemissn
: Emission angle at the surface pointvisibl
: Visibility flag (true
if visible)lit
: Illumination flag (true
if illuminated)
References
SPICE.illumg
— Methodillumg(method, target, ilusrc, et, fixref, obsrvr, spoint, abcorr)
Find the illumination angles (phase, incidence, and emission) at a specified surface point of a target body.
The surface of the target body may be represented by a triaxial ellipsoid or by topographic data provided by DSK files.
The illumination source is a specified ephemeris object.
Arguments
method
: Computation method.target
: Name of target body.ilusrc
: Name of illumination source.et
: Epoch in ephemeris seconds past J2000 TDB.fixref
: Body-fixed, body-centered target body frame.obsrvr
: Name of observing body.spoint
: Body-fixed coordinates of a target surface point.abcorr
: Aberration correction.
Output
trgepc
: Sub-solar point epoch.srfvec
: Vector from observer to sub-solar point.phase
: Phase angle at the surface point.incdnc
: Solar incidence angle at the surface point.emissn
: Emission angle at the surface point.
References
SPICE.ilumin
— Methodilumin(method, target, et, fixref, obsrvr, spoint, abcorr)
Find the illumination angles (phase, solar incidence, and emission) at a specified surface point of a target body.
Arguments
method
: Computation methodtarget
: Name of target bodyet
: Epoch in ephemeris seconds past J2000 TDBfixref
: Body-fixed, body-centered target body frameobsrvr
: Name of observing bodyspoint
: Body-fixed coordinates of a target surface pointabcorr
: Aberration correction
Output
trgepc
: Sub-solar point epochsrfvec
: Vector from observer to sub-solar pointphase
: Phase angle at the surface pointincdnc
: Solar incidence angle at the surface pointemissn
: Emission angle at the surface point
References
SPICE.inedpl
— Methodinedpl(a, b, c, plane)
Find the intersection of a triaxial ellipsoid and a plane.
Arguments
a
: Length of ellipsoid semi-axis lying on the x-axisb
: Length of ellipsoid semi-axis lying on the y-axisc
: Length of ellipsoid semi-axis lying on the z-axisplane
: Plane that intersects ellipsoid
Output
ellipse
: Intersection ellipse
Returns nothing
if no ellipse could be found.
References
SPICE.inelpl
— Methodinelpl(ellips, plane)
Find the intersection of an ellipse and a plane.
Arguments
ellips
: An ellipseplane
: A plane
Output
nxpts
: Number of intersection points of ellipse and planexpt1
,xpt2
: Intersection points
References
SPICE.inrypl
— Methodinrypl(vertex, dir, plane)
Find the intersection of a ray and a plane.
Arguments
vertex
,dir
: Vertex and direction vector of rayplane
: A plane
Output
nxpts
: Number of intersection points of ray and planexpt1
,xpt2
: Intersection points
References
SPICE.insrtc!
— Methodinsrtc!(set, item)
Insert an item into a character set.
Arguments
set
: Insertion setitem
: Item to be inserted
Output
Returns the updated set.
References
SPICE.insrtd!
— Methodinsrtd!(set, item)
Insert an item into a double set.
Arguments
set
: Insertion setitem
: Item to be inserted
Output
Returns the updated set.
References
SPICE.insrti!
— Methodinsrti!(set, item)
Insert an item into an integer set.
Arguments
set
: Insertion setitem
: Item to be inserted
Output
Returns the updated set.
References
SPICE.inter
— Methodinter(a, b)
Intersect two sets of any data type to form a third set.
Arguments
a
: First input setb
: Second input set
Output
Returns intersection of a and b.
References
SPICE.intmax
— Functionintmax()
Use typemax(Cint)
instead.
SPICE.intmin
— Functionintmin()
Use typemin(Cint)
instead.
SPICE.invert
— Functioninvert(matrix)
Use inv(matrix)
instead.
SPICE.invort
— Functioninvort(matrix)
Use inv(matrix)
instead.
SPICE.isordv
— Functionisordv(vec)
Use isperm(vec)
instead.
SPICE.isrchc
— Functionisrchc(value, array)
Use findfirst(array .== value)
instead.
SPICE.isrchd
— Functionisrchd(value, array)
Use findfirst(array .== value)
instead.
SPICE.isrchi
— Functionisrchi(value, array)
Use findfirst(array .== value)
instead.
SPICE.isrot
— Methodisrot(m, ntol, dtol)
Indicate whether a 3x3 matrix is a rotation matrix.
Arguments
m
: A matrix to be testedntol
: Tolerance for the norms of the columns ofm
dtol
: Tolerance for the determinant of a matrix whose columns are the unitized columns ofm
Output
Returns true
if m
is a rotation matrix.
References
SPICE.iswhsp
— Functioniswhsp(str)
Use isempty(strip(str))
instead.
SPICE.j1900
— Methodj1900()
Returns the Julian Date of 1899 DEC 31 12:00:00 (1900 JAN 0.5).
https://naif.jpl.nasa.gov/pub/naif/toolkitdocs/C/cspice/j1900c.html
SPICE.j1950
— Methodj1950()
Returns the Julian Date of 1950 JAN 01 00:00:00 (1950 JAN 1.0).
https://naif.jpl.nasa.gov/pub/naif/toolkitdocs/C/cspice/j1950c.html
SPICE.j2000
— Methodj2000()
Returns the Julian Date of 2000 JAN 01 12:00:00 (2000 JAN 1.5).
https://naif.jpl.nasa.gov/pub/naif/toolkitdocs/C/cspice/j2000c.html
SPICE.j2100
— Methodj2100()
Returns the Julian Date of 2100 JAN 01 12:00:00 (2100 JAN 1.5).
https://naif.jpl.nasa.gov/pub/naif/toolkitdocs/C/cspice/j2100c.html
SPICE.jyear
— Methodjyear()
Returns the number of seconds per Julian year.
https://naif.jpl.nasa.gov/pub/naif/toolkitdocs/C/cspice/jyearc.html
SPICE.kclear
— Methodkclear()
Clear the KEEPER subsystem: unload all kernels, clear the kernel pool, and re-initialize the subsystem. Existing watches on kernel variables are retained.
References
SPICE.kdata
— Functionkdata(which, kind, fillen=1024, srclen=256)
Return data for the n-th kernel that is among a list of specified kernel types.
Arguments
which
: Index of kernel to fetch from the list of kernelskind
: The kind of kernel to which fetches are limitedfillen
: Available space in output file stringsrclen
: Available space in output source string
Output
Returns nothing
if no kernel was found or a tuple consisting of
file
: The name of the kernel filefiltyp
: The type of the kernelsource
: Name of the source file used to load filehandle
: The handle attached to file
References
SPICE.kinfo
— Functionkinfo(file, srclen=256)
Arguments
file
: Name of a kernel to fetch information forsrclen
: Available space in output source string
Output
Returns nothing
if no kernel was found or a tuple consisting of
filtyp
: The type of the kernelsource
: Name of the source file used to load filehandle
: The handle attached to file
References
SPICE.kplfrm
— Functionkplfrm(frmcls)
Return a SPICE set containing the frame IDs of all reference frames of a given class having specifications in the kernel pool.
Arguments
frmcls
: Frame classsize
: Size of the output set
Output
Returns the set of ID codes of frames of the specified class.
References
SPICE.ktotal
— Methodktotal(kind)
Return the current number of kernels that have been loaded via the KEEPER interface that are of a specified type.
References
SPICE.kxtrct
— Functionkxtrct(keywd, terms, string)
Locate a keyword in a string and extract the substring from the beginning of the first word following the keyword to the beginning of the first subsequent recognized terminator of a list.
Arguments
keywd
: Word that marks the beginning of text of interestterms
: Set of words, any of which marks the end of textstring
: String containing a sequence of words
Output
Returns nothing
if keywd
was found or a tuple consisting of
string
: The inputstring
with the text of interest removedsubstr
: String from end ofkeywd
to beginning of firstterms
item found
References
SPICE.lastnb
— Functionlastnb(str)
Use findprev(!isspace, str, length(str))
instead.
SPICE.latcyl
— Methodlatcyl(radius, lon, lat)
Convert from latitudinal coordinates to cylindrical coordinates.
Arguments
radius
: Distance of a point from the originlon
: Angle of the point from the XZ plane in radianslat
: Angle of the point from the XY plane in radians
Output
Return the tuple (r, lonc, z)
.
r
: Distance of the point from the z axislonc
: Angle of the point from the XZ plane in radians. 'lonc' is set equal to 'lon'z
: Height of the point above the XY plane
References
SPICE.latrec
— Methodlatrec(radius, lon, lat)
Convert from latitudinal coordinates to rectangular coordinates.
Arguments
radius
: Distance of a point from the originlon
: Angle of the point from the XZ plane in radianslat
: Angle of the point from the XY plane in radians
Output
Return the rectangular coordinates vector of the point.
References
SPICE.latsph
— Methodlatsph(radius, lon, lat)
Convert from latitudinal coordinates to spherical coordinates.
Arguments
radius
: Distance of a point from the originlon
: Angle of the point from the XZ plane in radianslat
: Angle of the point from the XY plane in radians
Output
Return the tuple (rho, colat, lons)
.
rho
: Distance of the point from the origincolat
: Angle of the point from positive z axis (radians)lons
: Angle of the point from the XZ plane (radians)
References
SPICE.latsrf
— Methodlatsrf(method, target, et, fixref, npts, lonlat)
Map array of planetocentric longitude/latitude coordinate pairs to surface points on a specified target body.
The surface of the target body may be represented by a triaxial ellipsoid or by topographic data provided by DSK files.
Arguments
method
: Computation methodtarget
: Name of target bodyet
: Epoch in TDB seconds past J2000 TDBfixref
: Body-fixed, body-centered target body framelonlat
: Array of longitude/latitude coordinate pairs
Output
Returns an array of surface points.
References
SPICE.lcase
— Functionlcase(in)
Use lowercase(in)
instead.
SPICE.ldpool
— Methodldpool(kernel)
Load the variables contained in a NAIF ASCII kernel file into the kernel pool.
Arguments
kernel
: Name of the kernel file
Output
None
References
SPICE.lgrind
— Methodlgrind(xvals, yvals, x)
Evaluate a Lagrange interpolating polynomial for a specified set of coordinate pairs, at a specified abscissa value. Return the value of both polynomial and derivative.
Arguments
xvals
: Abscissa values of coordinate pairsyvals
: Ordinate values of coordinate pairsx
: Point at which to interpolate the polynomial
Output
p
: The value at x of the unique polynomial of degree n-1 that fits the points in the plane defined by xvals and yvalsdp
: The derivative at x of the interpolating polynomial described above
References
SPICE.limbpt
— Methodlimbpt(method, target, et, fixref, abcorr, corloc, obsrvr, refvec, rolstp, ncuts, schstp,
- soltol, maxn)
Find limb points on a target body. The limb is the set of points of tangency on the target of rays emanating from the observer. The caller specifies half-planes bounded by the observer-target center vector in which to search for limb points.
The surface of the target body may be represented either by a triaxial ellipsoid or by topographic data.
Arguments
method
: Computation methodtarget
: Name of target bodyet
: Epoch in ephemeris seconds past J2000 TDBfixref
: Body-fixed, body-centered target body frameabcorr
: Aberration correctioncorloc
: Aberration correction locusobsrvr
: Name of observing bodyrefvec
: Reference vector for cutting half-planesrolstp
: Roll angular step for cutting half-planesncuts
: Number of cutting half-planesschstp
: Angular step size for searchingsoltol
: Solution convergence tolerancemaxn
: Maximum number of entries in output arrays
Output
Returns the tuple (npts, points, epochs, tangts)
.
npts
: Counts of limb points corresponding to cutspoints
: Limb pointsepochs
: Times associated with limb pointstangts
: Tangent vectors emanating from the observer
References
SPICE.lmpool
— Methodlmpool(cvals)
Load the variables contained in an internal buffer into the kernel pool.
Arguments
cvals
: An array that contains a SPICE text kernel
References
SPICE.lparse
— Functionlparse(list, delim, nmax)
Use split(list, delim, limit=nmax)
instead.
SPICE.lparsm
— Functionlparsm(list, delims, nmax)
Use split(list, delim, limit=nmax, keepempty=false)
instead.
SPICE.lparss
— Functionlparss(list, delims)
Use Set(split(list, collect(delim)))
instead.
SPICE.lspcn
— Methodlspcn(body, et, abcorr)
Compute L_s, the planetocentric longitude of the sun, as seen from a specified body.
Arguments
body
: Name of the central bodyet
: Epoch in seconds past J2000 TDBabcorr
: Aberration correction
Output
Returns the planetocentric longitude of the sun for the specified body at the specified time in radians.
References
SPICE.lstlec
— Functionlstlecd(x, array)
Use findfirst(item .<= array)
instead.
SPICE.lstled
— Functionlstle[di](x, array)
Use searchsortedlast(array, x)
instead.
SPICE.lstltc
— Functionlstltcd(x, array)
Use findfirst(item .< array)
instead.
SPICE.lstltd
— Functionlstlt[di](x, array)
Use searchsortedlast(array, x, lt=<=)
instead.
SPICE.ltime
— Methodltime(etobs, obs, dir, targ)
This routine computes the transmit (or receive) time of a signal at a specified target, given the receive (or transmit) time at a specified observer. The elapsed time between transmit and receive is also returned.
Arguments
etobs
: Epoch of a signal at some observerobs
: NAIF ID of some observerdir
: Direction the signal travels ( "->" or "<-" )targ
: Time between transmit and receipt of the signal
Output
ettarg
: Epoch of the signal at the targetobs
: NAIF ID of some observer
References
SPICE.lx4dec
— Methodlx4dec(string, first)
Scan a string from a specified starting position for the end of a decimal number.
Arguments
string
: Any character stringfirst
: First character to scan from in string
Output
last
: Last character that is part of a decimal number. If there is no such character, last will be returned with the value first-1.nchar
: Number of characters in the decimal number
References
SPICE.lx4num
— Methodlx4num(string, first)
Scan a string from a specified starting position for the end of a number.
Arguments
string
: Any character stringfirst
: First character to scan from in string
Output
last
: Last character that is part of a number. If there is no such character, last will be returned with the value first-1.nchar
: Number of characters in the number
References
SPICE.lx4sgn
— Methodlx4sgn(string, first)
Scan a string from a specified starting position for the end of a signed integer.
Arguments
string
: Any character stringfirst
: First character to scan from in string
Output
last
: Last character that is part of a signed integer. If there is no such character, last will be returned with the value first-1.nchar
: Number of characters in the signed integer
References
SPICE.lx4uns
— Methodlx4uns(string, first)
Scan a string from a specified starting position for the end of a unsigned integer.
Arguments
string
: Any character stringfirst
: First character to scan from in string
Output
last
: Last character that is part of an unsigned integer. If there is no such character, last will be returned with the value first-1.nchar
: Number of characters in the unsigned integer
References
SPICE.lxqstr
— Methodlxqstr(string, qchar, first)
Lex (scan) a quoted string.
Arguments
string
: String to be scannedqchar
: Quote delimiter characterfirst
: Character position at which to start scanning
Output
last
: Character position of end of tokennchar
: Number of characters in token
References
SPICE.m2eul
— Methodm2eul(r, axis3, axis2, axis1)
Factor a rotation matrix as a product of three rotations about specified coordinate axes.
Arguments
r
: A rotation matrix to be factoredaxis3
: Number of the third rotation axisaxis2
: Number of the second rotation axisaxis1
: Number of the first rotation axis
Output
A tuple consisting of the third, second, and first Euler angles in radians.
References
SPICE.m2q
— Methodm2q(r)
Find a unit quaternion corresponding to a specified rotation matrix.
Arguments
r
: A rotation matrix
Output
A unit quaternion representing `r'
References
SPICE.matchi
— Methodmatchi(string, templ, wstr, wchar)
Determine whether a string is matched by a template containing wild cards. The pattern comparison is case-insensitive.
Arguments
string
: String to be testedtempl
: Template (with wild cards) to test against stringwstr
: Wild string tokenwchr
: Wild character token
Output
Returns true
if the string matches.
References
SPICE.matchw
— Methodmatchw(string, templ, wstr, wchar)
Determine whether a string is matched by a template containing wild cards.
Arguments
string
: String to be testedtempl
: Template (with wild cards) to test against stringwstr
: Wild string tokenwchr
: Wild character token
Output
Returns true
if the string matches.
References
SPICE.maxd
— Functionmaxd(args...)
Use max(args...)
instead.
SPICE.maxi
— Functionmaxi(args...)
Use max(args...)
instead.
SPICE.mequ
— Functionmequ(m1, mout)
Use mout .= m1
instead.
SPICE.mequg
— Functionmequg(m1, mout)
Use mout .= m1
instead.
SPICE.mind
— Functionmind(args...)
Use min(args...)
instead.
SPICE.mini
— Functionmini(args...)
Use min(args...)
instead.
SPICE.mtxm
— Functionmtxm(m1, m2)
Use m1' * m2
instead.
SPICE.mtxmg
— Functionmtxmg(m1, m2)
Use m1' * m2
instead.
SPICE.mtxv
— Functionmtxv(m1,v2)
Use m1' * v2
instead.
SPICE.mtxvg
— Functionmtxvg(m1,v2)
Use m1' * v2
instead.
SPICE.mxm
— Functionmxm(m1, m2)
Use m1 * m2
instead.
SPICE.mxmg
— Functionmxmg(m1, m2)
Use m1 * m2
instead.
SPICE.mxmt
— Functionmxmt(m1, m2)
Use m1 * m2'
instead.
SPICE.mxmtg
— Functionmxmtg(m1, m2)
Use m1 * m2'
instead.
SPICE.mxv
— Functionmxv(m1,v2)
Use m1 * v2
instead.
SPICE.mxvg
— Functionmxvg(m1,v2)
Use m1 * v2
instead.
SPICE.namfrm
— Methodnamfrm(frname)
Look up the frame ID code associated with a string.
Arguments
frname
: The name of some reference frame
Output
The SPICE ID code of the frame.
References
SPICE.ncpos
— Methodncpos(str, chars, start)
Find the first occurrence in a string of a character NOT belonging to a collection of characters, starting at a specified location, searching forward.
Arguments
str
: A stringchars
: A collection of charactersstart
: Position to begin looking for a character not inchars
Output
Returns the index of the first character of str
at or following index start
that is not in the collection chars
.
References
SPICE.ncposr
— Methodncposr(str, chars, start)
Find the first occurrence in a string of a character NOT belonging to a collection of characters, starting at a specified location, searching in reverse.
Arguments
str
: A stringchars
: A collection of charactersstart
: Position to begin looking for a character not inchars
Output
Returns the index of the last character of str
at or before index start
that is not in the collection chars
.
References
SPICE.nearpt
— Methodnearpt(positn, a, b, c)
This routine locates the point on the surface of an ellipsoid that is nearest to a specified position. It also returns the altitude of the position above the ellipsoid.
Arguments
positn
: Position of a point in the bodyfixed framea
: Length of semi-axis parallel to x-axisb
: Length of semi-axis parallel to y-axisc
: Length on semi-axis parallel to z-axis
Output
Returns a tuple consisting of npoint
and alt
.
npoint
: Point on the ellipsoid closest topositn
alt
: Altitude ofpositn
above the ellipsoid
References
SPICE.npedln
— Methodnpedln(a, b, c, linept, linedr)
Find nearest point on a triaxial ellipsoid to a specified line, and the distance from the ellipsoid to the line.
Arguments
a
: Length of semi-axis in the x directionb
: Length of semi-axis in the y directionc
: Length of semi-axis in the z directionlinept
: Point on linelinedr
: Direction vector of line
Output
Returns a tuple consisting of pnear
and dist
.
pnear
: Nearest point on ellipsoid to linedist
: Distance of ellipsoid from line
References
SPICE.npelpt
— Methodnpelpt(point, ellips)
Find the nearest point on an ellipse to a specified point, both in three-dimensional space, and find the distance between the ellipse and the point.
Arguments
point
: Point whose distance to an ellipse is to be foundellips
: A SPICE ellipse
Output
Returns a tuple consisting of pnear
and dist
.
pnear
: Nearest point on ellipse to input pointdist
: Distance of input point to ellipse
References
SPICE.nplnpt
— Methodnplnpt(linept, linedr, point)
Find the nearest point on a line to a specified point, and find the distance between the two points.
Arguments
linept
: Point on linelinedr
: Direction vector of linepoint
: A second point
Output
Returns a tuple consisting of pnear
and dist
.
pnear
: Nearest point on the line topoint
dist
: Distance betweenpoint
andpnear
References
SPICE.nvc2pl
— Methodnvc2pl(norm, point)
Make a SPICE plane from a normal vector and a point.
Arguments
norm
: A normal vector...constant
: ...and a constant defining a plane
Output
Returns a struct representing the plane.
References
SPICE.nvp2pl
— Methodnvp2pl(norm, point)
Make a SPICE plane from a normal vector and a point.
Arguments
norm
: A normal vector...point
: ...and a point defining a plane
Output
Returns a struct representing the plane.
References
SPICE.occult
— Methodoccult(targ1, shape1, frame1, targ2, shape2, frame2, abcorr, obsrvr, et)
Determines the occultation condition (not occulted, partially, etc.) of one target relative to another target as seen by an observer at a given time.
The surfaces of the target bodies may be represented by triaxial ellipsoids or by topographic data provided by DSK files.
Arguments
targ1
: Name or ID of first target.shape1
: Type of shape model used for first target.frame1
: Body-fixed, body-centered frame for first body.targ2
: Name or ID of second target.shape2
: Type of shape model used for second target.frame2
: Body-fixed, body-centered frame for second body.abcorr
: Aberration correction flag.obsrvr
: Name or ID of the observer.et
: Time of the observation (seconds past J2000).
Output
Returns the occultation identification code.
References
SPICE.ordc
— Methodordc(set, item)
The function returns the ordinal position of any given item in a character set.
Arguments
set
: A set to search for a given itemitem
: An item to locate within a set
Output
Returns the ordinal position or nothing
if the items does not appear in the set.
References
SPICE.ordd
— Methodordd(set, item)
The function returns the ordinal position of any given item in a character set.
Arguments
set
: A set to search for a given itemitem
: An item to locate within a set
Output
Returns the ordinal position or nothing
if the items does not appear in the set.
References
SPICE.orderc
— Functionorderc(array)
Use sortperm
instead.
SPICE.orderd
— Functionorderd(array)
Use sortperm
instead.
SPICE.orderi
— Functionorderi(array)
Use sortperm
instead.
SPICE.ordi
— Methodordi(set, item)
The function returns the ordinal position of any given item in a character set.
Arguments
set
: A set to search for a given itemitem
: An item to locate within a set
Output
Returns the ordinal position or nothing
if the items does not appear in the set.
References
SPICE.oscelt
— Methodoscelt(state, et, mu)
Determine the set of osculating conic orbital elements that corresponds to the state (position, velocity) of a body at some epoch.
Arguments
state
: State of body at epoch of elementset
: Epoch of elementsmu
: Gravitational parameter (GM) of primary body
Output
Returns the equivalent conic elements:
rp
: Perifocal distanceecc
: Eccentricityinc
: Inclinationlnode
: Longitude of the ascending nodeargp
: Argument of periapsism0
: Mean anomaly at epocht0
: Epochmu
: Gravitational parameter
References
SPICE.oscltx
— Methodoscltx(state, et, mu)
Determine the set of osculating conic orbital elements that corresponds to the state (position, velocity) of a body at some epoch. In addition to the classical elements, return the true anomaly, semi-major axis, and period, if applicable.
Arguments
state
: State of body at epoch of elementset
: Epoch of elementsmu
: Gravitational parameter (GM) of primary body
Output
Returns the extended set of classical conic elements:
rp
: Perifocal distance.ecc
: Eccentricity.inc
: Inclination.lnode
: Longitude of the ascending node.argp
: Argument of periapsis.m0
: Mean anomaly at epoch.t0
: Epoch.mu
: Gravitational parameter.nu
: True anomaly at epoch.a
: Semi-major axis. A is set to zero if it is not computable.tau
: Orbital period. Applicable only for elliptical orbits. Set to zero otherwise.
References
SPICE.pckcls
— Methodpckcls(handle)
Close an open PCK file.
Arguments
handle
: Handle of the PCK file to be closed
References
SPICE.pckcov!
— Methodpckcov!(cover, pck, idcode)
Find the coverage window for a specified reference frame in a specified binary PCK file.
Arguments
cover
: An initalized windowSpiceDoubleCell
pck
: Path of PCK fileidcode
: Class ID code of PCK reference frame
Output
Returns cover
containing coverage in pck
for idcode
References
SPICE.pckfrm!
— Methodpckfrm!(ids, pck)
Find the set of reference frame class ID codes of all frames in a specified binary PCK file.
Arguments
ids
: An initalizedSpiceIntCell
pck
: Path of PCK file
Output
Returns ids
containing a set of frame class ID codes of frames in PCK file.
References
SPICE.pcklof
— Methodpcklof(filename)
Load a binary PCK file for use by the readers. Return the handle of the loaded file which is used by other PCK routines to refer to the file.
Arguments
filename
: Path of the PCK file
Output
Returns an integer handle.
References
SPICE.pckopn
— Methodpckopn(name, ifname, ncomch)
Create a new PCK file, returning the handle of the opened file.
Arguments
name
: The name of the PCK file to be openedifname
: The internal filename for the PCKncomch
: The number of characters to reserve for comments
Output
Returns the handle of the opened PCK file.
References
SPICE.pckuof
— Methodpckuof(handle)
Unload a binary PCK file so that it will no longer be searched by the readers.
Arguments
handle
: Integer handle of a PCK file
References
SPICE.pckw02
— Methodpckw02(handle, clssid, frame, first, last, segid, intlen, cdata, btime)
Write a type 2 segment to a PCK binary file given the file handle, frame class ID, base frame, time range covered by the segment, and the Chebyshev polynomial coefficients.
Arguments
handle
: Handle of binary PCK file open for writing.clssid
: Frame class ID of body-fixed frame.frame
: Name of base reference frame.first
: Start time of interval covered by segment.last
: End time of interval covered by segment.segid
: Segment identifier.intlen
: Length of time covered by logical record.cdata
: Array of Chebyshev coefficients.btime
: Begin time of first logical record.
References
SPICE.pcpool
— Methodpcpool(name, vals)
Insert character data into the kernel pool.
Arguments
name
: The kernel pool name to associate withvals
vals
: An array of values to insert into the kernel pool
References
SPICE.pdpool
— Methodpdpool(name, vals)
Insert double precision data into the kernel pool.
Arguments
name
: The kernel pool name to associate withvals
vals
: An array of values to insert into the kernel pool
References
SPICE.pgrrec
— Methodpgrrec(body, lon, lat, alt, re, f)
Convert planetographic coordinates to rectangular coordinates.
Arguments
body
: Body with which coordinate system is associated.lon
: Planetographic longitude of a point (radians).lat
: Planetographic latitude of a point (radians).alt
: Altitude of a point above reference spheroid.re
: Equatorial radius of the reference spheroid.f
: Flattening coefficient.
Output
Returns the rectangular coordinates of the point.
References
SPICE.phaseq
— Methodphaseq(et, target, illmn, obsrvr, abcorr)
Compute the apparent phase angle for a target, observer, illuminator set of ephemeris objects.
Arguments
et
: Ephemeris seconds past J2000 TDBtarget
: Target body nameillmn
: Illuminating body nameobsrvr
: Observer bodyabcorr
: Aberration correction flag
Output
Returns the value of the phase angle.
References
SPICE.pipool
— Methodpipool(name, ivals)
Insert integer data into the kernel pool.
Arguments
name
: The kernel pool name to associate with the valuesivals
: An array of integers to insert into the pool
References
SPICE.pjelpl
— Methodpjelpl(elin, plane)
Project an ellipse onto a plane, orthogonally.
Arguments
elin
: An ellipse to be projectedplane
: A plane onto whichelin
is to be projected
Output
Returns the ellipse resulting from the projection.
References
SPICE.pl2nvc
— Methodpl2nvc(plane)
Return a unit normal vector and constant that define a specified plane.
Arguments
plane
: A plane
Output
Returns a tuple consisting of
normal
: A normal vector and...constant
: ... constant defining the geometric plane represented byplane
References
SPICE.pl2nvp
— Methodpl2nvp(plane)
Return a unit normal vector and point that define a specified plane.
Arguments
plane
: A plane
Output
Returns a tuple consisting of
normal
: A normal vector and...point
: ... point defining the geometric plane represented byplane
References
SPICE.pl2psv
— Methodpl2psv(plane)
Return a point and two orthogonal spanning vectors that define a specified plane.
Arguments
plane
: A plane
Output
Returns a tuple consisting of a point in the plane
and two vectors spanning the input plane.
References
SPICE.pltar
— Methodpltar(vrtces, plates)
Compute the total area of a collection of triangular plates.
Arguments
vrtces
: Array of verticesplates
: Array of plates
Output
Returns the area.
References
SPICE.pltexp
— Methodpltexp(iverts, delta)
Expand a triangular plate by a specified amount. The expanded plate is co-planar with, and has the same orientation as, the original. The centroids of the two plates coincide.
Arguments
iverts
: Vertices of the plate to be expandeddelta
: Fraction by which the plate is to be expanded
Output
Returns the vertices of the expanded plate.
References
SPICE.pltnp
— Methodpltnp(point, v1, v2, v3)
Find the nearest point on a triangular plate to a given point.
Arguments
point
: A point in 3-dimensional space.v1
,v2
,v3
: Vertices of a triangular plate
Output
Returns a tuple consisting of
pnear
: Nearest point on the plate topoint
dist
: Distance betweenpnear
andpoint
References
SPICE.pltnrm
— Methodpltnrm(v1, v2, v3)
Compute an outward normal vector of a triangular plate. The vector does not necessarily have unit length.
Arguments
v1
,v2
,v3
: Vertices of a plate
Output
Returns the plate's outward normal vector.
References
SPICE.pltvol
— Methodpltvol(vrtces, plates)
Compute the volume of a three-dimensional region bounded by a collection of triangular plates.
Arguments
vrtces
: Array of verticesplates
: Array of plates
Output
Returns the volume of the spatial region bounded by the plates.
References
SPICE.polyds
— Methodpolyds(coeffs, nderiv, t)
Compute the value of a polynomial and it's first nderiv
derivatives at the value t
.
Arguments
coeffs
: Coefficients of the polynomial to be evaluatednderiv
: Number of derivatives to computet
: Point to evaluate the polynomial and derivatives
Output
Returns the value of the polynomial and the derivatives as an array.
References
SPICE.pos
— Functionpos(str, substr, start)
Use first(findnext(substr, str, start))
instead.
SPICE.posr
— Functionposr(str, substr, start)
Use first(findprev(substr, str, start))
instead.
SPICE.prop2b
— Methodprop2b(gm, pvinit, dt)
Given a central mass and the state of massless body at time t_0
, this routine determines the state as predicted by a two-body force model at time t_0 + dt
.
Arguments
gm
: Gravity of the central mass.pvinit
: Initial state from which to propagate a state.dt
: Time offset from initial state to propagate to.
Output
Returns the propagated state.
References
SPICE.prsdp
— Functionprsdp(str)
Use parse(Float64, str)
instead.
SPICE.prsint
— Functionprsint(str)
Use parse(Int, str)
instead.
SPICE.psv2pl
— Methodpsv2pl(point, span1, span2)
Make a plane from a point and two spanning vectors.
Arguments
point
,span1
,span2
: A point and two spanning vectors defining a plane
Output
Returns the plane.
References
SPICE.pxform
— Methodpxform(from, to, et)
Return the matrix that transforms position vectors from one specified frame to another at a specified epoch.
Arguments
from
: Name of the frame to transform fromto
: Name of the frame to transform toet
: Epoch of the rotation matrix
Output
Returns the rotation matrix.
References
SPICE.pxfrm2
— Methodpxfrm2(from, to, etfrom, etto)
Return the 3x3 matrix that transforms position vectors from one specified frame at a specified epoch to another specified frame at another specified epoch.
Arguments
from
: Name of the frame to transform fromto
: Name of the frame to transform toetfrom
: Evaluation time offrom
frameetto
: Evaluation time ofto
frame
Output
Returns a position transformation matrix from frame from
to frame to
.
References
SPICE.q2m
— Methodq2m(q)
Find the rotation matrix corresponding to a specified unit quaternion.
Arguments
q
: A unit quaternion
Output
A rotation matrix corresponding to q
.
References
SPICE.qdq2av
— Methodqdq2av(q, dq)
Derive angular velocity from a unit quaternion and its derivative with respect to time.
Arguments
q
: Unit SPICE quaternion (as any kind of iterable with four elements)dq
: Derivative of `q' with respect to time
Output
Angular velocity vector defined by q' and
dq'
References
SPICE.qxq
— Methodqxq(q1, q2)
Multiply two quaternions.
Arguments
q1
: First SPICE quaternion factor (as any kind of iterable with four elements)q2
: Second SPICE quaternion factor (as any kind of iterable with four elements)
Output
A quaternion corresponding to the product of q1' and
q2'
References
SPICE.radrec
— Methodradrec(range, ra, dec)
Convert from range, right ascension, and declination to rectangular coordinates.
Arguments
range
: Distance of a point from the originra
: Right ascension of point in radiansdec
: Declination of point in radians
Output
Returns the rectangular coordinates of the point.
References
SPICE.rav2xf
— Methodrav2xf(rot, av)
Determine a state transformation matrix from a rotation matrix and the angular velocity of the rotation.
Arguments
rot
: Rotation matrixav
: Angular velocity vector
Output
Returns state transformation matrix associated with rot
and av
.
References
SPICE.raxisa
— Methodraxisa(matrix)
Compute the axis of the rotation given by an input matrix and the angle of the rotation about that axis.
Arguments
matrix
: A 3x3 rotation matrix
Output
axis
: Axis of the rotationangle
: Angle through which the rotation is performed
References
SPICE.reccyl
— Methodreccyl(rectan)
Convert from rectangular to cylindrical coordinates.
Arguments
rectan
: Rectangular coordinates of a point
Output
r
: Distance of the point from the Z axislon
: Angle (radians) of the point from the XZ planez
: Height of the point above the XY plane
References
SPICE.recgeo
— Methodrecgeo(rectan, re, f)
Convert from rectangular coordinates to geodetic coordinates.
Arguments
rectan
: Rectangular coordinates of a pointre
: Equatorial radius of the reference spheroidf
: Flattening coefficient
Output
lon
: Geodetic longitude of the point (radians)lat
: Geodetic latitude of the point (radians)alt
: Altitude of the point above reference spheroid
References
SPICE.reclat
— Methodreclat(rectan)
Convert from rectangular coordinates to latitudinal coordinates.
Arguments
rectan
: Rectangular coordinates of a point
Output
Returns a tuple consisting of:
rad
: Distance of the point from the originlon
: Planetographic longitude of the point (radians)lat
: Planetographic latitude of the point (radians)
References
SPICE.recpgr
— Methodrecpgr(body, rectan, re, f)
Convert rectangular coordinates to planetographic coordinates.
Arguments
body
: Body with which coordinate system is associatedrectan
: Rectangular coordinates of a pointre
: Equatorial radius of the reference spheroidf
: flattening coefficient
Output
lon
: Planetographic longitude of the point (radians).lat
: Planetographic latitude of the point (radians).alt
: Altitude of the point above reference spheroid.
References
SPICE.recrad
— Methodrecrad(rectan)
Convert rectangular coordinates to range, right ascension, and declination.
Arguments
rectan
: Rectangular coordinates of a point
Output
Return the tuple (range, ra, dec)
.
range
: Distance of the point from the originra
: Right ascension in radiansdec
: Declination in radians
References
SPICE.recsph
— Methodrecsph(rectan)
Convert from rectangular coordinates to spherical coordinates.
Arguments
rectan
: Rectangular coordinates of a point
Output
r
: Distance of the point from the origincolat
: Angle of the point from the Z-axis in radianlon
: Longitude of the point in radians
References
SPICE.removc!
— Methodremovc!(set, item)
Remove an item from a character set.
Arguments
set
: A setitem
: Item to be removed
Output
Returns the updated set.
References
SPICE.removd!
— Methodremovd!(set, item)
Remove an item from a double set.
Arguments
set
: A setitem
: Item to be removed
Output
Returns the updated set.
References
SPICE.removi!
— Methodremovi!(set, item)
Remove an item from a character set.
Arguments
set
: A setitem
: Item to be removed
Output
Returns the updated set.
References
SPICE.reordc
— Functionreordc(iorder, array)
Use array[iorder]
instead.
SPICE.reordd
— Functionreordd(iorder, array)
Use array[iorder]
instead.
SPICE.reordi
— Functionreordi(iorder, array)
Use array[iorder]
instead.
SPICE.reordl
— Functionreordl(iorder, array)
Use array[iorder]
instead.
SPICE.repmc
— Functionrepmc(input, marker, value)
Use replace(input, marker=>value)
instead.
SPICE.repmct
— Functionrepmct
Use replace
instead.
SPICE.repmd
— Functionrepmd
Use replace
instead.
SPICE.repmf
— Functionrepmf
Use replace
instead.
SPICE.repmi
— Functionrepmi
Use replace
instead.
SPICE.repmot
— Functionrepmot
Use replace
instead.
SPICE.rotate
— Methodrotate(angle, iaxis)
Calculate the 3x3 rotation matrix generated by a rotation of a specified angle about a specified axis. This rotation is thought of as rotating the coordinate system.
Arguments
angle
: Angle of rotation (radians)iaxis
: Axis of rotation (X=1, Y=2, Z=3)
Output
Returns rotation matrix associated with angle
and iaxis
.
References
SPICE.rotmat
— Methodrotmat(m1, angle, iaxis)
Applies a rotation of angle
radians about axis iaxis
to a matrix m1
. This rotation is thought of as rotating the coordinate system.
Arguments
m1
: Matrix to be rotatedangle
: Angle of rotation (radians)iaxis
: Axis of rotation (X=1, Y=2, Z=3)
Output
Returns the resulting rotated matrix.
References
SPICE.rotvec
— Methodrotvec(v1, angle, iaxis)
Transform a vector to a new coordinate system rotated by angle
radians about axis iaxis
. This transformation rotates v1
by -angle
radians about the specified axis.
Arguments
v1
: Vector whose coordinate system is to be rotatedangle
: Angle of rotation in radiansiaxis
: Axis of rotation (X=1, Y=2, Z=3)
Output
Returns the resulting vector expressed in the new coordinate system.
References
SPICE.rpd
— Functionrpd()
Use deg2rad
instead.
SPICE.rquad
— Methodrquad(a, b, c)
Find the roots of a quadratic equation.
Arguments
a
: Coefficient of quadratic termb
: Coefficient of linear termc
: Constant
Output
root1
: Root built from positive discriminant termroot2
: Root built from negative discriminant term
References
SPICE.saelgv
— Methodsaelgv(vec1, vec2)
Find semi-axis vectors of an ellipse generated by two arbitrary three-dimensional vectors.
Arguments
vec1
,vec2
: Two vectors used to generate an ellipse
Output
smajor
: Semi-major axis of ellipsesminor
: Semi-minor axis of ellipse
References
SPICE.scard!
— Methodscard!(cell::SpiceCell{T}, card) where T
Set the cardinality of a cell.
Arguments
cell
: The cellcard
: Cardinality of (number of elements in) the cell
Output
Returns cell
with its cardinality set to card
.
References
SPICE.scdecd
— Functionscdecd(sc, sclkdp, lenout=128)
Convert double precision encoding of spacecraft clock time into a character representation.
Arguments
sc
: NAIF spacecraft identification codesclkdp
: Encoded representation of a spacecraft clock countlenout
: Maximum allowed length of output SCLK string
Output
Returns the character representation of a clock count.
References
SPICE.sce2c
— Methodsce2c(sc, et)
Convert ephemeris seconds past J2000 (ET) to continuous encoded spacecraft clock ("ticks"). Non-integral tick values may be returned.
Arguments
sc
: NAIF spacecraft ID codeet
: Ephemeris time, seconds past J2000
Output
Returns SCLK, encoded as ticks since spacecraft clock start.
References
SPICE.sce2s
— Functionsce2s(sc, et, lenout=128)
Convert an epoch specified as ephemeris seconds past J2000 (ET) to a character string representation of a spacecraft clock value (SCLK).
Arguments
sc
: NAIF spacecraft identification codeet
: Ephemeris time, specified as seconds past J2000lenout
: Maximum allowed length of output SCLK string
Output
Returns an SCLK string.
References
SPICE.sce2t
— Methodsce2t(sc, et)
Convert ephemeris seconds past J2000 (ET) to integral encoded spacecraft clock ("ticks"). For conversion to fractional ticks, (required for C-kernel production), see the routine sce2c
.
Arguments
sc
: NAIF spacecraft ID codeet
: Ephemeris time, seconds past J2000
Output
Returns SCLK, encoded as ticks since spacecraft clock start.
References
SPICE.scencd
— Methodscencd(sc, sclkch)
Encode character representation of spacecraft clock time into a double precision number.
Arguments
sc
: NAIF spacecraft identification codesclkch
: Character representation of a spacecraft clock
Output
Returns the encoded representation of the clock count.
References
SPICE.scfmt
— Functionscfmt(sc, ticks, lenout=128)
Convert encoded spacecraft clock ticks to character clock format.
Arguments
sc
: NAIF spacecraft identification codeticks
: Encoded representation of a spacecraft clock countlenout
: Maximum allowed length of output string
Output
Returns a character representation of a clock count.
References
SPICE.scpart
— Methodscpart(sc)
Get spacecraft clock partition information from a spacecraft clock kernel file.
Arguments
sc
: NAIF spacecraft identification code
Output
pstart
: Array of partition start timespstop
: Array of partition stop times
References
SPICE.scs2e
— Methodscs2e(sc, sclkch)
Convert a spacecraft clock string to ephemeris seconds past J2000 (ET).
Arguments
sc
: NAIF integer code for a spacecraftsclkch
: An SCLK string
Output
Returns ephemeris time seconds past J2000.
References
SPICE.sct2e
— Methodsct2e(sc, sclkdp)
Convert encoded spacecraft clock ("ticks") to ephemeris seconds past J2000 (ET).
Arguments
sc
: NAIF integer code for a spacecraftsclkdp
: SCLK, encoded as ticks since spacecraft clock start.
Output
Returns ephemeris time seconds past J2000.
References
SPICE.sctiks
— Methodsctiks(sc, clkstr)
Convert a spacecraft clock format string to number of "ticks".
Arguments
sc
: NAIF spacecraft identification codeclkstr
: Character representation of a spacecraft clock
Output
Returns the number of ticks represented by the clock string.
References
SPICE.sdiff
— Methodsdiff(a::T, b::T) where T <: SpiceCell
Compute the symmetric difference of two sets of any data type to form a third set.
Arguments
a
: First input setb
: Second input set
Output
Returns a cell containing the symmetric difference of a
and b
.
References
SPICE.set
— Methodset(a::T, b::T) where T <: SpiceCell
Given a relational operator, compare two sets of any data type.
Arguments
a
: First setop
: Comparison operatorb
: Second set
Output
Returns the result of the comparison: a (op) b
.
References
SPICE.shellc
— Functionshellc(array)
Use sort!(array)
instead.
SPICE.shelld
— Functionshelld(array)
Use sort!(array)
instead.
SPICE.shelli
— Functionshelli(array)
Use sort!(array)
instead.
SPICE.sincpt
— Methodsincpt(method, target, et, fixref, abcorr, obsrvr, dref, dvec)
Given an observer and a direction vector defining a ray, compute the surface intercept of the ray on a target body at a specified epoch, optionally corrected for light time and stellar aberration.
The surface of the target body may be represented by a triaxial ellipsoid or by topographic data provided by DSK files.
Arguments
method
: Computation methodtarget
: Name of target bodyet
: Epoch in TDB seconds past J2000 TDBfixref
: Body-fixed, body-centered target body frameabcorr
: Aberration correction flagobsrvr
: Name of observing bodydref
: Reference frame of ray's direction vectordvec
: Ray's direction vector
Output
Returns a tuple consisting of the following data or nothing
if no intercept was found.
spoint
: Surface intercept point on the target bodytrgepc
: Intercept epochsrfvec
: Vector from observer to intercept point
References
SPICE.size_c
— Methodsize_c(cell::SpiceCell)
Returns the maximum number of elements that cell
can hold.
SPICE.spd
— MethodSPICE.sphcyl
— Methodsphcyl(radius, colat, slon)
Converts from spherical coordinates to cylindrical coordinates.
Arguments
radius
: Distance of point from origincolat
: Polar angle (co-latitude in radians) of pointslon
: Azimuthal angle (longitude) of point (radians)
Output
r
: Distance of point from Z axislon
: Angle (radians) of point from XZ planez
: Height of point above XY plane
References
SPICE.sphlat
— Methodsphlat(r, colat, lons)
Convert from spherical coordinates to latitudinal coordinates.
Arguments
r
: Distance of the point from the origincolat
: Angle of the point from positive z axis (radians)lons
: Angle of the point from the XZ plane (radians)
Output
radius
: Distance of a point from the originlon
: Angle of the point from the XZ plane in radianslat
: Angle of the point from the XY plane in radians
References
SPICE.sphrec
— Methodsphrec(r, colat, lon)
Convert from spherical coordinates to rectangular coordinates.
Arguments
r
: Distance of a point from the origincolat
: Angle of the point from the Z-axis in radianslon
: Angle of the point from the XZ plane in radians
Output
Returns the rectangular coordinates of the point.
References
SPICE.spk14a
— Methodspk14a(handle, ncsets, coeffs, epochs)
Add data to a type 14 SPK segment associated with handle
. See also spk14b
and spk14e
.
Arguments
handle
: The handle of an SPK file open for writingncsets
: The number of coefficient sets and epochscoeffs
: The collection of coefficient setsepochs
: The epochs associated with the coefficient sets
References
SPICE.spk14b
— Methodspk14b(handle, segid, body, center, frame, first, last, chbdeg)
Begin a type 14 SPK segment in the SPK file associated with handle
. See also spk14a
and spk14e
.
Arguments
handle
: The handle of an SPK file open for writingsegid
: The string to use for segment identifierbody
: The NAIF ID code for the body of the segmentcenter
: The center of motion for bodyframe
: The reference frame for this segmentfirst
: The first epoch for which the segment is validlast
: The last epoch for which the segment is validchbdeg
: The degree of the Chebyshev Polynomial used
References
SPICE.spk14e
— Methodspk14e(handle)
End the type 14 SPK segment currently being written to the SPK file associated with handle
. See also spk14a
and spk14b
.
Arguments
handle
: The handle of an SPK file open for writing
Output
Returns the handle of the SPK file.
References
SPICE.spkacs
— Methodspkacs(targ, et, ref, abcorr, obs, starg, lt, dlt)
Return the state (position and velocity) of a target body relative to an observer, optionally corrected for light time and stellar aberration, expressed relative to an inertial reference frame.
Arguments
targ
: Target bodyet
: Observer epochref
: Inertial reference frame of output stateabcorr
: Aberration correction flagobs
: Observer
Output
starg
: State of targetlt
: One way light time between observer and targetdlt
: Derivative of light time with respect to time
References
SPICE.spkapo
— Methodspkapo(targ, et, ref, sobs, abcorr)
Return the position of a target body relative to an observer, optionally corrected for light time and stellar aberration.
Arguments
targ
: Target bodyet
: Observer epochref
: Inertial reference frame of observer's statesobs
: State of observer wrt. solar system barycenterabcorr
: Aberration correction flag
Output
ptarg
: Position of targetlt
: One way light time between observer and target
References
SPICE.spkaps
— Methodspkaps(targ, et, ref, abcorr, stobs, accobs)
Given the state and acceleration of an observer relative to the solar system barycenter, return the state (position and velocity) of a target body relative to the observer, optionally corrected for light time and stellar aberration. All input and output vectors are expressed relative to an inertial reference frame.
Users normally should call the high-level API routines spkezr
or spkez
rather than this routine.
Arguments
targ
: Target body.et
: Observer epoch.ref
: Inertial reference frame of output state.abcorr
: Aberration correction flag.stobs
: State of the observer relative to the SSB.accobs
: Acceleration of the observer relative to the SSB.
Output
starg
: State of target.lt
: One way light time between observer and target.dlt
: Derivative of light time with respect to time.
References
SPICE.spkcls
— Methodspkcls(handle)
Close an open SPK file.
Arguments
handle
: Handle of the SPK file to be closed
Output
Returns the handle of the closed file.
References
SPICE.spkcov!
— Methodspkcov!(cover, spk, idcode)
Find the coverage window for a specified ephemeris object in a specified SPK file.
Arguments
cover
: Window giving coverage inspk
foridcode
spk
: Name of the SPK fileidcode
: ID code of ephemeris object
Output
Returns the extended coverage window.
References
SPICE.spkcpo
— Methodspkcpo(target, et, outref, refloc, abcorr, obspos, obsctr, obsref)
Return the state of a specified target relative to an "observer," where the observer has constant position in a specified reference frame. The observer's position is provided by the calling program rather than by loaded SPK files.
Arguments
target
: Name of target ephemeris objectet
: Observation epochoutref
: Reference frame of output staterefloc
: Output reference frame evaluation locusabcorr
: Aberration correctionobspos
: Observer position relative to center of motionobsctr
: Center of motion of observerobsref
: Frame of observer position
Output
state
: State of target with respect to observerlt
: One way light time between target and observer
References
SPICE.spkcpt
— Methodspkcpt(trgpos, trgctr, trgref, et, outref, refloc, abcorr, obsrvr)
Return the state, relative to a specified observer, of a target having constant position in a specified reference frame. The target's position is provided by the calling program rather than by loaded SPK files.
Arguments
trgpos
: Target position relative to center of motiontrgctr
: Center of motion of targettrgref
: Frame of target positionet
: Observation epochoutref
: Reference frame of output staterefloc
: Output reference frame evaluation locusabcorr
: Aberration correctionobsrvr
: Name of observing ephemeris object
Output
state
: State of target with respect to observerlt
: One way light time between target and observer
References
SPICE.spkcvo
— Methodspkcvo(target, et, outref, refloc, abcorr, obssta, obsepc, obsctr, obsref)
Return the state of a specified target relative to an "observer," where the observer has constant velocity in a specified reference frame. The observer's state is provided by the calling program rather than by loaded SPK files.
Arguments
target
: Name of target ephemeris objectet
: Observation epochoutref
: Reference frame of output staterefloc
: Output reference frame evaluation locusabcorr
: Aberration correctionobssta
: Observer state relative to center of motionobsepc
: Epoch of observer stateobsctr
: Center of motion of observerobsref
: Frame of observer state
Output
state
: State of target with respect to observerlt
: One way light time between target and observer
References
SPICE.spkcvt
— Methodspkcvt(trgsta, trgepc, trgctr, trgref, et, outref, refloc, abcorr, obsrvr)
Return the state, relative to a specified observer, of a target having constant velocity in a specified reference frame. The target's state is provided by the calling program rather than by loaded SPK files.
Arguments
trgsta
: Target state relative to center of motiontrgepc
: Epoch of target statetrgctr
: Center of motion of targettrgref
: Frame of target stateet
: Observation epochoutref
: Reference frame of output staterefloc
: Output reference frame evaluation locusabcorr
: Aberration correctionobsrvr
: Name of observing ephemeris object
Output
state
: State of target with respect to observerlt
: One way light time between target and observer
References
SPICE.spkez
— Methodspkez(targ, et, ref, abcorr, obs)
Return the state (position and velocity) of a target body relative to an observing body, optionally corrected for light time (planetary aberration) and stellar aberration.
Arguments
targ
: Target bodyet
: Observer epochref
: Reference frame of output state vectorabcorr
: Aberration correction flagobs
: Observing body
Output
starg
: State of targetlt
: One way light time between observer and target
References
SPICE.spkezp
— Methodspkezp(targ, et, ref, abcorr, obs)
Return the position of a target body relative to an observing body, optionally corrected for light time (planetary aberration) and stellar aberration.
Arguments
targ
: Target bodyet
: Observer epochref
: Reference frame of output state vectorabcorr
: Aberration correction flagobs
: Observing body
Output
ptarg
: Position of targetlt
: One way light time between observer and target
References
SPICE.spkezr
— Methodspkezr(targ, et, ref, abcorr, obs)
Return the state (position and velocity) of a target body relative to an observing body, optionally corrected for light time (planetary aberration) and stellar aberration.
Arguments
targ
: Target body nameet
: Observer epochref
: Reference frame of output state vectorabcorr
: Aberration correction flagobs
: Observing body name
Output
starg
: State of targetlt
: One way light time between observer and target
References
SPICE.spkgeo
— Methodspkgeo(targ, et, ref, obs)
Compute the geometric state (position and velocity) of a target body relative to an observing body.
Arguments
targ
: Target body.et
: Target epoch.ref
: Target reference frame.obs
: Observing body.
Output
state
: State of target.lt
: Light time.
References
SPICE.spkgps
— Methodspkgps(targ, et, ref, obs)
Compute the geometric position of a target body relative to an observing body.
Arguments
targ
: Target bodyet
: Target epochref
: Target reference frameobs
: Observing body
Output
pos
: Position of targetlt
: Light time
References
SPICE.spklef
— Methodspklef(fname)
Load an ephemeris file for use by the readers. Return that file's handle, to be used by other SPK routines to refer to the file.
Arguments
fname
: Name of the file to be loaded
Output
handle
: Loaded file's handle
References
SPICE.spkltc
— Methodspkltc(targ, et, ref, abcorr, stobs)
Return the state (position and velocity) of a target body relative to an observer, optionally corrected for light time, expressed relative to an inertial reference frame.
Arguments
targ
: Target bodyet
: Observer epochref
: Inertial reference frame of output stateabcorr
: Aberration correction flagstobs
: State of the observer relative to the SSB
Output
starg
: State of targetlt
: One way light time between observer and targetdlt
: Derivative of light time with respect to time
References
SPICE.spkobj!
— Methodspkobj!(ids, spk)
Find the set of ID codes of all objects in a specified SPK file.
Arguments
ids
: A preallocated set of ID codes of objects in SPK filespk
: Name of the SPK file
Output
Returns the set of id codes.
References
SPICE.spkopa
— Methodspkopa(file)
Open an existing SPK file for subsequent write.
Arguments
file
: The name of an existing SPK file
Output
Returns a handle attached to the SPK file opened to append.
References
SPICE.spkopn
— Functionspkopn(name, ifname="", ncomch=0)
Create a new SPK file, returning the handle of the opened file.
Arguments
name
: The name of the new SPK file to be createdifname
: The internal filename for the SPK file (default: "")ncomch
: The number of characters to reserve for comments (default: 0)
Output
Returns the handle of the opened SPK file.
References
SPICE.spkpds
— Methodspkpds(body, center, frame, typ, first, last)
Perform routine error checks and if all checks pass, pack the descriptor for an SPK segment.
Arguments
body
: The NAIF ID code for the body of the segmentcenter
: The center of motion for bodyframe
: The frame for this segmenttype
: The type of SPK segment to createfirst
: The first epoch for which the segment is validlast
: The last epoch for which the segment is valid
Output
Returns an SPK segment descriptor.
References
SPICE.spkpos
— Methodspkpos(targ, et, ref, abcorr, obs)
Return the position of a target body relative to an observing body, optionally corrected for light time (planetary aberration) and stellar aberration.
Arguments
targ
: Target body nameet
: Observer epochref
: Reference frame of output position vectorabcorr
: Aberration correction flagobs
: Observing body name
Output
ptarg
: Position of targetlt
: One way light time between observer and target
References
SPICE.spkpvn
— Methodspkpvn(handle, descr, et)
For a specified SPK segment and time, return the state (position and velocity) of the segment's target body relative to its center of motion.
Arguments
handle
: File handledescr
: Segment descriptoret
: Evaluation epoch
Output
ref
: Segment reference frame ID codestate
: Output state vectorcenter
: Center of state
References
SPICE.spksfs
— Methodspksfs(body, et)
Search through loaded SPK files to find the highest-priority segment applicable to the body and time specified.
Arguments
body
: Body IDet
: Ephemeris time
Output
Returns nothing
if no segment was found or a tuple consisting of:
handle
: Handle of file containing the applicable segmentdescr
: Descriptor of the applicable segmentident
: Identifier of the applicable segment
References
SPICE.spkssb
— Methodspkssb(targ, et, ref)
Return the state (position and velocity) of a target body relative to the solar system barycenter.
Arguments
targ
: Target bodyet
: Target epochref
: Target reference frame
Output
Returns the state of target.
References
SPICE.spksub!
— Methodspksub!(newh, handle, descr, ident, start, stop)
Extract a subset of the data in an SPK segment into a separate segment.
Arguments
newh
: Handle of new segmenthandle
: Handle of source segmentdescr
: Descriptor of source segmentident
: Identifier of source segmentstart
: Beginning (initial epoch) of subsetstop
: End (final epoch) of subset
References
SPICE.spkuds
— Methodspkuds(descr)
Unpack the contents of an SPK segment descriptor.
Arguments
descr
: An SPK segment descriptor
Output
body
: The NAIF ID code for the body of the segmentcenter
: The center of motion for bodyframe
: The ID code for the frame of this segmenttype
: The type of SPK segmentfirst
: The first epoch for which the segment is validlast
: The last epoch for which the segment is validstart
: Beginning DAF address of the segmentstop
: Ending DAF address of the segment
References
SPICE.spkuef
— Methodspkuef(handle)
Unload an ephemeris file so that it will no longer be searched by the readers.
Arguments
handle
: Handle of file to be unloaded
References
SPICE.spkw02
— Methodspkw02(handle, body, center, frame, first, last, segid, intlen, cdata, btime)
Write a type 2 segment to an SPK file.
Arguments
handle
: Handle of an SPK file open for writingbody
: Body code for ephemeris objectcenter
: Body code for the center of motion of the bodyframe
: The reference frame of the statesfirst
: First valid time for which states can be computedlast
: Last valid time for which states can be computedsegid
: Segment identifierintlen
: Length of time covered by logical recordcdata
: Array of Chebyshev coefficientsbtime
: Begin time of first logical record
References
SPICE.spkw03
— Methodspkw03(handle, body, center, frame, first, last, segid, intlen, cdata, btime)
Write a type 3 segment to an SPK file.
Arguments
handle
: Handle of an SPK file open for writingbody
: Body code for ephemeris objectcenter
: Body code for the center of motion of the bodyframe
: The reference frame of the statesfirst
: First valid time for which states can be computedlast
: Last valid time for which states can be computedsegid
: Segment identifierintlen
: Length of time covered by logical recordcdata
: Array of Chebyshev coefficientsbtime
: Begin time of first logical record
References
SPICE.spkw05
— Methodspkw05(handle, body, center, frame, first, last, segid, gm, states, epochs)
Write an SPK segment of type 5 given a time-ordered set of discrete states and epochs, and the gravitational parameter of a central body.
Arguments
handle
: Handle of an SPK file open for writingbody
: Body code for ephemeris objectcenter
: Body code for the center of motion of the bodyframe
: The reference frame of the statesfirst
: First valid time for which states can be computedlast
: Last valid time for which states can be computedsegid
: Segment identifiergm
: Gravitational parameter of central bodystates
: Statesepochs
: Epochs
References
SPICE.spkw08
— Methodspkw08(handle, body, center, frame, first, last, segid, degree, states, epoch1, step)
Write a type 8 segment to an SPK file.
Arguments
handle
: Handle of an SPK file open for writingbody
: Body code for ephemeris objectcenter
: Body code for the center of motion of the bodyframe
: The reference frame of the statesfirst
: First valid time for which states can be computedlast
: Last valid time for which states can be computedsegid
: Segment identifierdegree
: Degree of interpolating polynomialsstates
: Statesepoch1
: Epoch of first state in states arraystep
: Time step separating epochs of states
References
SPICE.spkw09
— Methodspkw09(handle, body, center, frame, first, last, segid, degree, states, epochs)
Write a type 9 segment to an SPK file.
Arguments
handle
: Handle of an SPK file open for writingbody
: Body code for ephemeris objectcenter
: Body code for the center of motion of the bodyframe
: The reference frame of the statesfirst
: First valid time for which states can be computedlast
: Last valid time for which states can be computedsegid
: Segment identifierdegree
: Degree of interpolating polynomialsstates
: Statesepochs
: Epochs
References
SPICE.spkw10
— Methodspkw10(handle, body, center, frame, first, last, segid, consts, elems, epochs)
Write a type 10 segment to an SPK file.
Arguments
handle
: The handle of a DAF file open for writingbody
: The NAIF ID code for the body of the segmentcenter
: The center of motion for bodyframe
: The reference frame for this segmentfirst
: The first epoch for which the segment is validlast
: The last epoch for which the segment is validsegid
: The string to use for segment identifierconsts
: The array of geophysical constants for the segmenelems
: The collection of "two-line" element setsepochs
: The epochs associated with the element sets
References
SPICE.spkw12
— Methodspkw12(handle, body, center, frame, first, last, segid, degree, states, epoch1, step)
Write a type 12 segment to an SPK file.
Arguments
handle
: Handle of an SPK file open for writingbody
: Body code for ephemeris objectcenter
: Body code for the center of motion of the bodyframe
: The reference frame of the statesfirst
: First valid time for which states can be computedlast
: Last valid time for which states can be computedsegid
: Segment identifierdegree
: Degree of interpolating polynomialsstates
: Statesepoch1
: Epoch of first state in states arraystep
: Time step separating epochs of states
References
SPICE.spkw13
— Methodspkw13(handle, body, center, frame, first, last, segid, degree, states, epochs)
Write a type 13 segment to an SPK file.
Arguments
handle
: Handle of an SPK file open for writingbody
: Body code for ephemeris objectcenter
: Body code for the center of motion of the bodyframe
: The reference frame of the statesfirst
: First valid time for which states can be computedlast
: Last valid time for which states can be computedsegid
: Segment identifierdegree
: Degree of interpolating polynomialsstates
: Statesepochs
: Epochs
References
SPICE.spkw15
— Methodspkw15(handle, body, center, frame, first, last, segid,
- epoch, tp, pa, p, ecc, j2flg, pv, gm, j2, radius)
Write a type 15 segment to an SPK file.
Arguments
handle
: Handle of an SPK file open for writingbody
: Body code for ephemeris objectcenter
: Body code for the center of motion of the bodyframe
: The reference frame of the statesfirst
: First valid time for which states can be computedlast
: Last valid time for which states can be computedsegid
: Segment identifierepoch
: Epoch of the periapsetp
: Trajectory pole vectorpa
: Periapsis vectorp
: Semi-latus rectumecc
: Eccentricityj2flg
: J2 processing flagpv
: Central body pole vectorgm
: Central body GMj2
: Central body J2radius
: Equatorial radius of central body
References
SPICE.spkw17
— Methodspkw17(handle, body, center, frame, first, last, segid, epoch, eqel, rapol, decpol)
Write a type 17 segment to an SPK file.
Arguments
handle
: Handle of an SPK file open for writingbody
: Body code for ephemeris objectcenter
: Body code for the center of motion of the bodyframe
: The reference frame of the statesfirst
: First valid time for which states can be computedlast
: Last valid time for which states can be computedsegid
: Segment identifierepoch
: Epoch of elements in seconds past J2000eqel
: Array of equinoctial elementsrapol
: Right Ascension of the pole of the reference planedecpol
: Declination of the pole of the reference plane
References
SPICE.spkw18
— Methodspkw18(handle, subtyp, body, center, frame, first, last, segid, degree, packts, epochs)
Write a type 18 segment to an SPK file.
Arguments
handle
: Handle of an SPK file open for writingsubtyp
: SPK type 18 subtype code, either:S18TP0
or:S18TP1
body
: NAIF code for an ephemeris objectcenter
: NAIF code for center of motion of bodyframe
: Reference frame namefirst
: Start time of interval covered by segmentlast
: End time of interval covered by segmentsegid
: Segment identifierdegree
: Degree of interpolating polynomialspackts
: Time-ordered array of data packets representing geometric states of body- For
:S18TP0
:[x, y, z, dx/dt, dy/dt, dz/dt, vx, vy, vz, dvx/dt, dvy/dt, dvz/dt]
- For
:S18TP1
:[x, y, z, dx/dt, dy/dt, dz/dt]
- For
epochs
: Array of epochs corresponding to states.
References
SPICE.spkw20
— Methodspkw20(handle, body, center, frame, first, last, segid, intlen, n, polydg, cdata, dscale,
- tscale, initjd, initfr)
Write a type 20 segment to an SPK file.
Arguments
handle
: Handle of SPK file open for writingbody
: NAIF code for ephemeris objectcenter
: NAIF code for the center of motion of the bodyframe
: Reference frame namefirst
: Start time of interval covered by segmentlast
: End time of interval covered by segmentsegid
: Segment identifierintlen
: Length of time covered by logical record (days)cdata
: Array of Chebyshev coefficients and positionsdscale
: Distance scale of datatscale
: Time scale of datainitjd
: Integer part of begin time (TDB Julian date) of first recordinitfr
: Fractional part of begin time (TDB Julian date) of first record
References
SPICE.srfc2s
— Methodsrfc2s(code, bodyid)
Translate a surface ID code, together with a body ID code, to the corresponding surface name. If no such name exists, return a string representation of the surface ID code.
Arguments
code
: Integer surface ID code to translate to a stringbodyid
: ID code of body associated with surface
Output
srfstr
: String corresponding to surface ID codeisname
: Logical flag indicating output is a surface name
References
SPICE.srfcss
— Methodsrfcss(code, bodstr)
Translate a surface ID code, together with a body string, to the corresponding surface name. If no such surface name exists, return a string representation of the surface ID code.
Arguments
code
: Integer surface ID code to translate to a stringbodstr
: Name or ID of body associated with surface
Output
srfstr
: String corresponding to surface ID codeisname
: Logical flag indicating output is a surface name
References
SPICE.srfnrm
— Methodsrfnrm(method, target, et, fixref, npts, srfpts)
Map array of surface points on a specified target body to the corresponding unit length outward surface normal vectors.
The surface of the target body may be represented by a triaxial ellipsoid or by topographic data provided by DSK files.
Arguments
method
: Computation methodtarget
: Name of target bodyet
: Epoch in TDB seconds past J2000 TDBfixref
: Body-fixed, body-centered target body framesrfpts
: Array of surface points
Output
Returns an array of outward, unit length normal vectors.
References
SPICE.srfrec
— Methodsrfrec(body, longitude, latitude)
Convert planetocentric latitude and longitude of a surface point on a specified body to rectangular coordinates.
Arguments
body
: NAIF integer code of an extended body.longitude
: Longitude of point in radians.latitude
: Latitude of point in radians.
Output
Returns the rectangular coordinates of the point.
References
SPICE.srfs2c
— Methodsrfs2c(srfstr, bodstr)
Translate a surface string, together with a body string, to the corresponding surface ID code. The input strings may contain names or integer ID codes.
Arguments
srfstr
: Surface name or ID stringbodstr
: Body name or ID string
Output
Returns the surface ID code if it was found or nothing
otherwise.
References
SPICE.srfscc
— Methodsrfscc(srfstr, bodyid)
Translate a surface string, together with a body ID code, to the corresponding surface ID code. The input surface string may contain a name or an integer ID code.
Arguments
srfstr
: Surface name or ID stringbodyid
: Body ID code.
Output
Returns the surface ID code if it was found or nothing
otherwise.
References
SPICE.srfxpt
— Functionsrfxpt
Use sincpt
instead.
SPICE.ssize!
— Methodssize!(cell, size)
Set the size (maximum cardinality) of a cell of any data type.
Arguments
cell
: The cellsize
: Size (maximum cardinality) of the cell
Output
Returns the updated cell.
References
SPICE.stelab
— Methodstelab(pobj, vobs)
Correct the apparent position of an object for stellar aberration.
Arguments
pobj
: Position of an object with respect to the observervobs
: Velocity of the observer with respect to the Solar System barycenter
Output
Returns the apparent position of the object with respect to the observer, corrected for stellar aberration.
References
SPICE.stpool
— Functionstpool(item, nth, contin, lenout=1024)
Retrieve the nth string from the kernel pool variable, where the string may be continued across several components of the kernel pool variable.
Arguments
item
: Name of the kernel pool variablenth
: Index of the full string to retrievecontin
: Character sequence used to indicate continuationlenout
: Available space in output string (default: 1024)
Output
Returns the full string concatenated across continuations if the kernel variable was found or nothing
otherwise.
References
SPICE.str2et
— Methodstr2et(str)
Convert a string representing an epoch to a double precision value representing the number of TDB seconds past the J2000 epoch corresponding to the input epoch.
Arguments
str
: A string representing an epoch
Output
Returns the equivalent value in seconds past J2000, TDB.
References
SPICE.subpnt
— Methodsubpnt(method, target, et, fixref, obsrvr, abcorr)
Compute the rectangular coordinates of the sub-observer point on a target body at a specified epoch, optionally corrected for light time and stellar aberration.
Arguments
method
: Computation methodtarget
: Name of target bodyet
: Epoch in ephemeris seconds past J2000 TDBfixref
: Body-fixed, body-centered target body frameabcorr
: Aberration correctionobsrvr
: Name of observing body
Output
spoint
: Sub-solar point on the target bodytrgepc
: Sub-solar point epochsrfvec
: Vector from observer to sub-solar point
References
SPICE.subpt
— Functionsubpt
Use subpnt
instead.
SPICE.subpt_pl02
— Functionsubpt_pl02
Use subpnt
instead.
SPICE.subslr
— Methodsubslr(method, target, et, fixref, abcorr, obsrvr)
Compute the rectangular coordinates of the sub-solar point on a target body at a specified epoch, optionally corrected for light time and stellar aberration.
Arguments
method
: Computation methodtarget
: Name of target bodyet
: Epoch in ephemeris seconds past J2000 TDBfixref
: Body-fixed, body-centered target body frameabcorr
: Aberration correctionobsrvr
: Name of observing body
Output
spoint
: Sub-solar point on the target bodytrgepc
: Sub-solar point epochsrfvec
: Vector from observer to sub-solar point
References
SPICE.subsol
— Functionsubsol
Use subslr
instead.
SPICE.subsol_pl02
— Functionsubsol_pl02
Use subslr
instead.
SPICE.sumad
— Functionsumad(array)
Use sum(array)
instead.
SPICE.sumai
— Functionsumai(array)
Use sum(array)
instead.
SPICE.surfnm
— Methodsurfnm(a, b, c, point)
Computes the outward-pointing, unit normal vector from a point on the surface of an ellipsoid.
Arguments
a
: Length of the ellisoid semi-axis along the x-axisb
: Length of the ellisoid semi-axis along the y-axisc
: Length of the ellisoid semi-axis along the z-axispoint
: Body-fixed coordinates of a point on the ellipsoid
Output
Return the outward pointing unit normal to ellipsoid at point
References
SPICE.surfpt
— Methodsurfpt(positn, u, a, b, c)
Determine the intersection of a line-of-sight vector with the surface of an ellipsoid.
Arguments
positn
: Position of the observer in body-fixed frameu
: Vector from the observer in some directiona
: Length of the ellipsoid semi-axis along the x-axisb
: Length of the ellipsoid semi-axis along the y-axisc
: Length of the ellipsoid semi-axis along the z-axis
Output
Returns the point on the ellipsoid pointed to by u or nothing
if none was found.
References
SPICE.surfpv
— Methodsurfpv(stvrtx, stdir, a, b, c)
Find the state (position and velocity) of the surface intercept defined by a specified ray, ray velocity, and ellipsoid.
Arguments
stvrtx
: State of ray's vertexstdir
: State of ray's direction vectora
: Length of ellipsoid semi-axis along the x-axisb
: Length of ellipsoid semi-axis along the y-axisc
: Length of ellipsoid semi-axis along the z-axis
Output
Return the state of surface intercept or nothing
if none was found.
References
SPICE.swpool
— Methodswpool(agent, names)
Add a name to the list of agents to notify whenever a member of a list of kernel variables is updated.
Arguments
agent
: The name of an agent to be notified after updatesnames
: Variable names whose update causes the notice
References
SPICE.sxform
— Methodsxform(from, to, et)
Return the state transformation matrix from one frame to another at a specified epoch.
Arguments
from
: Name of the frame to transform fromto
: Name of the frame to transform toet
: Epoch of the state transformation matrix
Output
Returns the state transformation matrix.
References
SPICE.szpool
— Methodszpool(name)
Return the kernel pool size limitations.
Arguments
name
: Name of the parameter to be returned
Output
Returns the value of the parameter specified by name
or nothing
if none was found.
References
SPICE.termpt
— MethodFind terminator points on a target body. The caller specifies half-planes, bounded by the illumination source center-target center vector, in which to search for terminator points.
The terminator can be either umbral or penumbral. The umbral terminator is the boundary of the region on the target surface where no light from the source is visible. The penumbral terminator is the boundary of the region on the target surface where none of the light from the source is blocked by the target itself.
The surface of the target body may be represented either by a triaxial ellipsoid or by topographic data.
Arguments
method
: Computation methodilusrc
: Illumination sourcetarget
: Name of target bodyet
: Epoch in ephemeris seconds past J2000 TDBfixref
: Body-fixed, body-centered target body frameabcorr
: Aberration correctioncorloc
: Aberration correction locusobsrvr
: Name of observing bodyrefvec
: Reference vector for cutting half-planesrolstp
: Roll angular step for cutting half-planesncuts
: Number of cutting planesschstp
: Angular step size for searchingsoltol
: Solution convergence tolerancemaxn
: Maximum number of entries in output arrays
Output
npts
: Counts of terminator points corresponding to cutspoints
: Terminator pointsepochs
: Times associated with terminator pointstrmvcs
: Terminator vectors emanating from the observer
References
SPICE.timdef
— Functiontimdef(action, item, value="")
Set and retrieve the defaults associated with calendar input strings.
Arguments
action
: The kind of action to take, either:SET
or:GET
item
: The default item of interest. The items that may be requested are::CALENDAR
with allowed values:"GREGORIAN"
"JULIAN"
"MIXED"
:SYSTEM
with allowed values:"TDB"
"TDT"
"UTC"
:ZONE
with allowed values (0 <= HR < 13
and0 <= MN < 60
):"EST"
"EDT"
"CST"
"CDT"
"MST"
"MDT"
"PST"
"PDT"
"UTC+$HR"
"UTC-$HR"
"UTC+$HR:$MN"
"UTC-$HR:$MN"
Output
Returns the value associated with the default item.
References
SPICE.timout
— Functiontimout(et, pictur, lenout=128)
This routine converts an input epoch represented in TDB seconds past the TDB epoch of J2000 to a character string formatted to the specifications of a user's format picture.
Arguments
et
: An epoch in seconds past the ephemeris epoch J2000pictur
: A format specification for the output stringlenout
: The length of the output string plus 1 (default: 128)
Output
Returns a string representation of the input epoch.
References
SPICE.tipbod
— Methodtipbod(ref, body, et)
Return a 3x3 matrix that transforms positions in inertial coordinates to positions in body-equator-and-prime-meridian coordinates.
Arguments
ref
: Name of inertial reference frame to transform frombody
: ID code of bodyet
: Epoch of transformation
Output
Returns transformation matrix from intertial position to prime meridian.
References
SPICE.tisbod
— Methodtisbod(ref, body, et)
Return a 6x6 matrix that transforms states in inertial coordinates to states in body-equator-and-prime-meridian coordinates.
Arguments
ref
: Name of inertial reference frame to transform frombody
: ID code of bodyet
: Epoch of transformation
Output
Returns transformation matrix from intertial state to prime meridian.
References
SPICE.tkvrsn
— Functiontkvrsn(item=:TOOLKIT)
Given an item such as the Toolkit or an entry point name, return the latest version string.
References
SPICE.tparse
— Methodtparse(string)
Parse a time string and return seconds past the J2000 epoch on a formal calendar.
Arguments
string
: Input time string in UTC
Output
Returns UTC expressed in seconds since J2000.
References
SPICE.tpictr
— Functiontpictr(sample, lenout=80)
Given a sample time string, create a time format picture suitable for use by the routine timout
.
Arguments
sample
: A sample time stringlenout
: The length for the output picture string (default: 80)
Output
Returns a format picture that describes sample.
References
SPICE.trace
— Functiontrace(matrix)
Use LinearAlgebra.tr(matrix)
instead.
SPICE.tsetyr
— Methodtsetyr(year)
Set the lower bound on the 100 year range.
Arguments
-year
: Lower bound on the 100 year interval of expansion
References
SPICE.twopi
— Functiontwopi()
Use 2π
instead.
SPICE.twovec
— Methodtwovec(axdef, indexa, plndef, indexp)
Find the transformation to the right-handed frame having a given vector as a specified axis and having a second given vector lying in a specified coordinate plane.
Arguments
axdef
: Vector defining a principal axisindexa
: Principal axis number of axdef (X=1, Y=2, Z=3)plndef
: Vector defining (with axdef) a principal planeindexp
: Second axis number (with indexa) of principal plane
Output
Returns output rotation matrix.
References
SPICE.tyear
— MethodSPICE.ucase
— Functionucase(in)
Use uppercase(in)
instead.
SPICE.ucrss
— Functionucrss(v1, v2)
Use LinearAlgebra.normalize(LinearAlgebra.cross(v1, v2))
instead.
SPICE.uddf
— Methoduddf(udfunc, x, dx)
Routine to calculate the first derivative of a caller-specified function using a three-point estimation.
Arguments
udfunc
: A callable that computes the scalar value of interest, e.g.f(x::Float64) -> Float64
x
: Independent variable ofudfunc
dx
: Interval fromx
for derivative calculation
Output
Returns the approximate derivative of udfunc
at x
.
References
SPICE.unitim
— Methodunitim(epoch, insys, outsys)
Transform time from one uniform scale to another.
Arguments
epoch
: An epoch to be convertedinsys
: The time scale associated with the input epochoutsys
: The time scale associated with the function value
The uniform time scales are:
:TAI
:TDT
:TDB
:ET
:JED
:JDTDB
:JDTDT
Output
Returns the time in the system specified by outsys
that is equivalent to the epoch
in the insys
time scale.
References
SPICE.unload
— Methodunload(file)
Unload a SPICE kernel.
Arguments
file
: The file name of a kernel to unload
References
SPICE.unorm
— Functionunorm(v1)
Use (LinearAlgebra.normalize(v1), LinearAlgebra.norm(v1))
instead.
SPICE.unormg
— Functionunormg(v1)
Use (LinearAlgebra.normalize(v1), LinearAlgebra.norm(v1))
instead.
SPICE.utc2et
— Methodutc2et(utcstr)
Convert an input time from Calendar or Julian Date format, UTC, to ephemeris seconds past J2000.
Arguments
utcstr
: Input time string, UTC
Output
Returns the equivalent of utcstr, expressed in ephemeris seconds past J2000.
References
SPICE.vadd
— Functionvadd(v1, v2)
Use v1 .+ v2
instead.
SPICE.vaddg
— Functionvaddg(v1, v2)
Use v1 .+ v2
instead.
SPICE.valid!
— Methodvalid!(set::SpiceCell{T}) where T
Create a valid SPICE set from a SPICE Cell of any data type.
Arguments
set
: Set to be validated
Output
Returns the validated set with ordered elements and duplicates removed.
References
SPICE.vcrss
— Functionvcrss(v1, v2)
Use LinearAlgebra.cross(v1, v2)
instead.
SPICE.vdist
— Functionvdist(v1, v2)
Use LinearAlgebra.norm(v1 .- v2)
instead.
SPICE.vdistg
— Functionvdistg(v1, v2)
Use LinearAlgebra.norm(v1 .- v2)
instead.
SPICE.vdot
— Functionvdot(v1, v2)
Use LinearAlgebra.dot(v1, v2)
instead.
SPICE.vdotg
— Functionvdotg(v1, v2)
Use LinearAlgebra.dot(v1, v2)
instead.
SPICE.vequ
— Functionvequ(v1, v2)
Use v1 .= v2
instead.
SPICE.vequg
— Functionvequg(v1, v2)
Use v1 .= v2
instead.
SPICE.vhat
— Functionvhat(v1)
Use LinearAlgebra.normalize(v1)
instead.
SPICE.vhatg
— Functionvhatg(v1)
Use LinearAlgebra.normalize(v1)
instead.
SPICE.vlcom
— Functionvlcom(a, v1, b, v2)
Use a .* v1 .+ b .* v2
instead.
SPICE.vlcom3
— Functionvlcom3(a, v1, b, v2, c, v3)
Use a .* v1 .+ b .* v2 .+ c .* v3
instead.
SPICE.vlcomg
— Functionvlcomg(a, v1, b, v2)
Use a .* v1 .+ b .* v2
instead.
SPICE.vminug
— Functionvminug(vin)
Use -vin
instead.
SPICE.vminus
— Functionvminus(vin)
Use -vin
instead.
SPICE.vnorm
— Functionvnorm(v1)
Use LinearAlgebra.norm(v1)
instead.
SPICE.vnormg
— Functionvnormg(v1, v2)
Use LinearAlgebra.norm(v1)
instead.
SPICE.vpack
— Functionvpack(x, y, z)
Use [x, y, z]
instead.
SPICE.vperp
— Methodvperp(a, b)
Find the component of a vector that is perpendicular to a second vector.
Arguments
a
: The vector whose orthogonal component is soughtb
: The vector used as the orthogonal reference
Output
Returns the component a
orthogonal to b
.
References
SPICE.vprjp
— Methodvprjp(vin, plane)
Project a vector onto a specified plane, orthogonally.
Arguments
vin
: Vector to be projectedplane
: Plane onto which vin is projected
Output
Returns the vector resulting from the projection.
References
SPICE.vprjpi
— Methodvprjpi(vin, projpl, invpl)
Find the vector in a specified plane that maps to a specified vector in another plane under orthogonal projection.
Arguments
vin
: The projected vectorprojpl
: Plane containingvin
invpl
: Plane containing inverse image ofvin
Output
Returns the inverse projection of vin
or nothing
if vin
could not be calculated.
References
SPICE.vproj
— Methodvproj(a, b)
Finds the projection of one vector onto another vector. All vectors are 3-dimensional.
Arguments
a
: The vector to be projectedb
: The vector onto whicha
is to be projected
Output
Returns the projection of a
onto b
.
References
SPICE.vrel
— Methodvrel(v1, v2)
Return the relative difference between two 3-dimensional vectors.
Arguments
v1
,v2
: Two three-dimensional input vectors
Output
Returns the relative differences between v1
and v2
.
References
SPICE.vrelg
— Methodvrelg(v1, v2)
Return the relative difference between two vectors.
Arguments
v1
,v2
: Input vectors
Output
Returns the relative differences between v1
and v2
.
References
SPICE.vrotv
— Methodvrotv(v, axis, theta)
Rotate a vector about a specified axis vector by a specified angle and return the rotated vector.
Arguments
v
: Vector to be rotatedaxis
: Axis of the rotationtheta
: Angle of rotation (radians)
Output
Result of rotating v
about axis
by theta
.
References
SPICE.vscl
— Functionvscl(s, v1)
Use s .* v1
instead.
SPICE.vsclg
— Functionvsclg(s, v1)
Use s .* v1
instead.
SPICE.vsep
— Methodvsep(v1, v2)
Return the sepative difference between two 3-dimensional vectors.
Arguments
v1
,v2
: Two three-dimensional input vectors
Output
Returns the angle between v1
and v2
in radians.
References
SPICE.vsepg
— Methodvsepg(v1, v2)
Return the sepative difference between two vectors.
Arguments
v1
,v2
: Input vectors
Output
Returns the angle between v1
and v2
in radians.
References
SPICE.vsub
— Functionvsub(v1, v2)
Use v1 .- v2
instead.
SPICE.vsubg
— Functionvsubg(v1, v2)
Use v1 .- v2
instead.
SPICE.vtmv
— Functionvtmv(v1, matrix, v2)
Use v1' * matrix * v2
instead.
SPICE.vtmvg
— Functionvtmvg(v1, matrix, v2)
Use v1' * matrix * v2
instead.
SPICE.vupack
— Functionvupack(v)
Use x, y, z = v
instead.
SPICE.vzero
— Functionvzero(v1)
Use iszero(v1)
instead.
SPICE.vzerog
— Functionvzerog(v1, v2)
Use iszero(v1)
instead.
SPICE.wncard
— Methodwncard(window)
Return the cardinality (number of intervals) of a double precision window.
Arguments
window
: Input window
References
SPICE.wncomd
— Methodwncomd(window, left, right)
Determine the complement of a double precision window with respect to a specified interval.
Arguments
window
: Input windowleft
: Left endpoint of the complement intervalright
: Right endpoint of the complement interval
Output
Returns the complement of window
with respect to [left,right]
.
References
SPICE.wncond!
— Methodwncond!(window, left, right)
Contract each of the intervals of a double precision window.
Arguments
window
: Window to be contractedleft
: Amount added to each left endpointright
: Amount subtracted from each right endpoint
Output
Returns the contracted window.
References
SPICE.wndifd
— Methodwndifd(a, b)
Place the difference of two double precision windows into a third window.
Arguments
a
: Input windowb
: Input window
Output
Returns a window containing the difference of a
and b
.
References
SPICE.wnelmd
— Methodwnelmd(window, point)
Determine whether a point is an element of a double precision window.
Arguments
window
: Input windowpoint
: Input point
Output
Returns true
if point
is an element of window
.
References
SPICE.wnexpd!
— Methodwnexpd(window, left, right)
Expand each of the intervals of a double precision window.
Arguments
left
: Amount subtracted from each left endpointright
: Amount added to each right endpoint
Output
Returns the expanded window.
References
SPICE.wnextd!
— Methodwnextd!(window, side)
Extract the left or right endpoints from a double precision window.
Arguments
window
: Window to be extractedside
: Extract left (:L
) or right (:R
) endpoints
Output
Returns the extracted window.
References
SPICE.wnfetd
— Methodwnfetd(window, n)
Fetch a particular interval from a double precision window.
Arguments
window
: Input windown
: Index of interval to be fetched
Output
Returns a tuple consisting of the left and right endpoints of the n-th interval in the input window.
References
SPICE.wnfild!
— Methodwnfild!(window, small)
Fill small gaps between adjacent intervals of a double precision window.
Arguments
window
: Window to be filledsmall
: Limiting measure of small gaps
Output
Returns the updated window.
References
SPICE.wnfltd!
— Methodwnfild!(window, small)
Filter (remove) small intervals from a double precision window.
Arguments
window
: Window to be filteredsmall
: Limiting measure of small intervals
Output
Returns the updated window.
References
SPICE.wnincd
— Methodwnincd(window, left, right)
Determine whether an interval is included in a double precision window.
Arguments
window
: Input windowleft
: Left endpoint of the input intervalright
: Right endpoint of the input interval
Output
Returns true
when (left, right)
is contained in window
.
References
SPICE.wninsd!
— Methodwninsd!(window, left, right)
Insert an interval into a double precision window.
Arguments
window
: Input windowleft
: Left endpoint of the new intervalright
: Right endpoint of the new interval
Output
Returns the updated windows.
References
SPICE.wnintd
— Methodwnintd(a, b)
Place the intersection of two double precision windows into a third window.
Arguments
a
: Input windowb
: Input window
Output
Returns a window containing the intersection of a
and b
.
References
SPICE.wnreld
— Methodwnreld(a, op, b)
Compare two double precision windows.
Consider using overloaded operators instead, i.e. a == b
, a ⊆ b
, and a ⊊ b
.
Arguments
a
: First windowop
: Comparison operatorb
: Second window
Output
Returns the result of comparison a (op) b
.
References
SPICE.wnsumd
— Methodwnsumd(window)
Summarize the contents of a double precision window.
Arguments
window
: Window to be summarized
Output
Returns a tuple consisting of:
meas
: Total measure of intervals in windowavg
: Average measurestddev
: Standard deviationshortest
: Location of shortest intervallongest
: Location of longest interval
References
SPICE.wnunid
— Methodwnunid(a, b)
Place the union of two double precision windows into a third window.
Arguments
a
: Input windowb
: Input window
Output
Returns a window containing the union of a
and b
.
References
SPICE.wnvald!
— Methodwnvald!(window)
Form a valid double precision window from the contents of a window array.
Arguments
window
: A (possibly uninitialized)SpiceDoubleCell
containing endpoints of (possibly unordered and non-disjoint) intervals.
Output
Returns the validated window.
References
SPICE.xf2eul
— Methodxf2eul(xform, axisa, axisb, axisc)
Convert a state transformation matrix to Euler angles and their derivatives with respect to a specified set of axes.
Arguments
xform
: A state transformation matrixaxisa
: Axis A of the Euler angle factorizationaxisb
: Axis B of the Euler angle factorizationaxisc
: Axis C of the Euler angle factorization
Output
Returns a tuple of an array of Euler angles and their derivatives and a boolean that indicates whether these are a unique representation.
References
SPICE.xf2rav
— Methodxf2rav(xform)
Determines the rotation matrix and angular velocity of the rotation from a state transformation matrix.
Arguments
xform
: State transformation matrix
Output
Returns a tuple of the rotation matrix and the angular velocity vector associated with xform
.
References
SPICE.xfmsta
— Methodxfmsta(input_state, input_coord_sys, output_coord_sys, body)
Transform a state between coordinate systems.
Arguments
input_state
: Input stateinput_coord_sys
: Current (input) coordinate systemoutput_coord_sys
: Desired (output) coordinate systembody
: Name or NAIF ID of body with which coordinates are associated (if applicable)
Output
Returns the converted output state.
References
SPICE.xpose
— Functionxpose(matrix)
Use transpose(matrix)
instead.
SPICE.xpose6
— Functionxpose6(matrix)
Use transpose(matrix)
instead.
SPICE.xposeg
— Functionxposeg(matrix)
Use transpose(matrix)
instead.