API

SPICE.SpiceCharCellType
SpiceCharCell(size, length)

Create a SpiceCharCell that can contain up to size strings with length characters.

source
Base.append!Method
append!(cell, collection)

Append all items from collection to the char/double/integer SpiceCell cell.

source
Base.copyMethod
copy(cell::SpiceCell)

Duplicate the SpiceCell cell.

source
Base.diffMethod
diff(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 set
  • b: Second input set

Output

Returns a cell containing the difference of a and b.

References

source
Base.lengthMethod
length(cell)

Returns the cardinality (number of elements) of cell.

source
Base.push!Method
push!(cell, items...)

Insert one or more items at the end of the char/double/integer SpiceCell cell.

source
Base.unionMethod
union(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 set
  • b: Second input set

Output

Returns a cell containing the union of a and b.

References

source
SPICE.axisarMethod
axisar(axis, angle)

Construct a rotation matrix that rotates vectors by a specified angle about a specified axis.

Arguments

  • axis: Rotation axis
  • angle: Rotation angle in radians

Output

Rotation matrix corresponding to axis and angle

References

source
SPICE.badkpvMethod
badkpv(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 routine
  • name: Name of a kernel pool variable
  • comp: Comparison operator
  • size: Expected size of the kernel pool variable
  • divby: A divisor of the size of the kernel pool variable
  • type: 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

source
SPICE.bltfrmMethod
bltfrm(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

source
SPICE.bodc2nMethod
bodc2n(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

source
SPICE.bodc2sMethod
bodc2s(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

source
SPICE.bodfndMethod
bodfnd(body, item)

Determine whether values exist for some item for any body in the kernel pool.

Arguments

  • body: ID code of body
  • item: Item to find ("RADII", "NUTAMPRA", etc.)

Output

Returns true if the item is in the kernel pool and false if it is not.

References

source
SPICE.bodn2cMethod
bodn2c(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

source
SPICE.bods2cMethod
bods2c(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

source
SPICE.bodvcdFunction
bodvcd(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 code
  • item: 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

source
SPICE.bodvrdFunction
bodvrd(bodynm, item)

Fetch from the kernel pool the double precision values of an item associated with a body.

Arguments

  • bodynm: Body name
  • item: 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

source
SPICE.brcktdFunction
brcktd(number, e1, e2)
Deprecated

Use clamp from Julia's standard library instead.

source
SPICE.brcktiFunction
brckti(number, e1, e2)
Deprecated

Use clamp from Julia's standard library instead.

source
SPICE.bschocFunction
bschoc(value, array, order)
Deprecated

Use findfirst(array .== value) instead.

source
SPICE.bschoiFunction
bschoi(value, array, order)
Deprecated

Use findfirst(array .== value) instead.

source
SPICE.bsrchcFunction
bsrchc(value, array)
Deprecated

Use findfirst(array .== value) instead.

source
SPICE.bsrchdFunction
bsrchd(value, array)
Deprecated

Use findfirst(array .== value) instead.

source
SPICE.bsrchiFunction
bsrchi(value, array)
Deprecated

Use findfirst(array .== value) instead.

source
SPICE.cardMethod
card(cell)

Returns the cardinality (number of elements) of cell.

source
SPICE.ccifrmMethod
ccifrm(frclss, clssid)

Return the frame name, frame ID, and center associated with a given frame class and class ID.

Arguments

  • frclss: Class of frame
  • clssid: Class ID of frame

Output

Returns nothing if no frame was found or

  • frcode: ID code of the frame
  • frname: Name of the frame
  • center: ID code of the center of the frame

References

source
SPICE.cgv2elMethod
cgv2el(center, vec1, vec2)

Form an ellipse from a center vector and two generating vectors.

Arguments

  • center: Center vector
  • vec1: Generating vector
  • vec2: Generating vector

Output

Returns the ellipse defined by the input vectors.

References

source
SPICE.chbderMethod
chbder(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 coefficients
  • x2s: Transformation parameters of polynomial
  • x: Value for which the polynomial is to be evaluated
  • nderiv: The number of derivatives to compute

Output

Returns the derivatives of the polynomial.

References

source
SPICE.cidfrmMethod
cidfrm(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 with cent
  • frname: The name of the frame with ID frcode

References

source
SPICE.ckcov!Method
ckcov!(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 file
  • idcode: ID code of object
  • needav: Flag indicating whether angular velocity is needed
  • level: Coverage level: "SEGMENT" OR "INTERVAL"
  • tol: Tolerance in ticks
  • timsys: Time system used to represent coverage
  • cover: Window giving coverage for idcode. Data already present in cover will be combined with coverage found for the object designated by idcode in the file ck.

References

source
SPICE.ckcovMethod
ckcov(ck, idcode, needav, level, tol, timsys)

Find the coverage window for a specified object in a specified CK file.

Arguments

  • ck: Name of CK file
  • idcode: ID code of object
  • needav: Flag indicating whether angular velocity is needed
  • level: Coverage level: "SEGMENT" OR "INTERVAL"
  • tol: Tolerance in ticks
  • timsys: Time system used to represent coverage

Output

Window giving coverage for idcode

References

source
SPICE.ckgpMethod
ckgp(inst, sclkdp, tol, ref)

Get pointing (attitude) for a specified spacecraft clock time.

Arguments

  • inst: NAIF ID of instrument, spacecraft, or structure
  • sclkdp: Encoded spacecraft clock time
  • tol: Time tolerance
  • ref: Reference frame

Outputs

Returns nothing if the requested pointing is not available or

  • cmat: C-matrix pointing data
  • clkout: Output encoded spacecraft clock time

References

source
SPICE.ckgpavMethod
ckgpav(inst, sclkdp, tol, ref)

Get pointing (attitude) and angular velocity for a specified spacecraft clock time.

Arguments

  • inst: NAIF ID of instrument, spacecraft, or structure
  • sclkdp: Encoded spacecraft clock time
  • tol: Time tolerance
  • ref: Reference frame

Outputs

Returns nothing if the requested pointing is not available or

  • cmat: C-matrix pointing data
  • av: Angular velocity vector
  • clkout: Output encoded spacecraft clock time

References

source
SPICE.cklpfMethod
cklpf(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

source
SPICE.ckobj!Method
ckobj!(ck, ids)

Find the set of ID codes of all objects in a specified CK file.

Arguments

  • ck: Name of CK file
  • ids: Set of ID codes of objects in CK file. Data already present in ids will be combined with ID code set found for the file ck.

References

source
SPICE.ckobjMethod
ckobj(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

source
SPICE.ckopnFunction
ckopn(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 opened
  • ifname: 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

source
SPICE.ckupfMethod
ckupf(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

source
SPICE.ckw01Function
ckw01(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 file
  • begtim: The beginning encoded SCLK of the segment
  • endtim: The ending encoded SCLK of the segment
  • inst: The NAIF instrument ID code
  • ref: The reference frame of the segment
  • segid: Segment identifier
  • sclkdp: Encoded SCLK times
  • quats: Quaternions representing instrument pointing
  • avvs: Angular velocity vectors (optional)

References

source
SPICE.ckw02Method
ckw02(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 file
  • begtim: The beginning encoded SCLK of the segment
  • endtim: The ending encoded SCLK of the segment
  • inst: The NAIF instrument ID code
  • ref: The reference frame of the segment
  • segid: Segment identifier
  • start: Encoded SCLK interval start times
  • stop: Encoded SCLK interval stop times
  • quats: Quaternions representing instrument pointing
  • avvs: Angular velocity vectors
  • rates: Number of seconds per tick for each interval

References

source
SPICE.ckw03Function
ckw03(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 file
  • begtim: The beginning encoded SCLK of the segment
  • endtim: The ending encoded SCLK of the segment
  • inst: The NAIF instrument ID code
  • ref: The reference frame of the segment
  • segid: Segment identifier
  • sclkdp: Encoded SCLK times
  • quats: Quaternions representing instrument pointing
  • starts: Encoded SCLK interval start times
  • avvs: Angular velocity vectors (optional)

References

source
SPICE.ckw05Method
ckw05(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 file
  • subtyp: CK type 5 subtype code
  • degree: Degree of interpolating polynomials
  • begtim: The beginning encoded SCLK of the segment
  • endtim: The ending encoded SCLK of the segment
  • inst: The NAIF instrument ID code
  • ref: The reference frame of the segment
  • avflag: True if the segment will contain angular velocity
  • segid: Segment identifier
  • sclkdp: Encoded SCLK times
  • packts: Array of packets
  • rate: Nominal SCLK rate in seconds per tick
  • nints: Number of intervals
  • starts: Encoded SCLK interval start times

References

source
SPICE.cmprssMethod
cmprss(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 compressed
  • n: Maximum consecutive occurrences of delim
  • input: Input string

Output

Returns the compressed string.

References

source
SPICE.cnmfrmFunction
cnmfrm(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

source
SPICE.conicsMethod
conics(elts, et)

Determine the state (position, velocity) of an orbiting body from a set of elliptic, hyperbolic, or parabolic orbital elements.

Arguments

  • elts: Conic elements
  • et: Input time

Output

Returns the state of orbiting body at et.

References

source
SPICE.convrtMethod
convrt(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 units
  • in: The units in which x is measured
  • out: Desired units for the measurement

Output

Returns the measurement in the desired units.

References

source
SPICE.cposMethod
cpos(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 string
  • chars: A collection of characters
  • start: 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

source
SPICE.cposrMethod
cposr(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 string
  • chars: A collection of characters
  • start: 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

source
SPICE.cvpoolMethod
cvpool(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

source
SPICE.cyllatMethod
cyllat(r, lonc, z)

Convert from cylindrical to latitudinal coordinates.

Arguments

  • r: Distance of point from z axis
  • lonc: Cylindrical angle of point from XZ plane (radians)
  • z: Height of point above XY plane

Output

  • radius: Radius
  • lon: Longitude (radians)
  • lat: Latitude (radians)

References

source
SPICE.cylrecMethod
cylrec(r, lon, z)

Convert from cylindrical to rectangular coordinates.

Arguments

  • r: Distance of the point of interest from z axis
  • lon: Cylindrical angle (in radians) of the point of interest from XZ plane
  • z: Height of the point above XY plane

Output

Returns rectangular coordinates of the point of interest.

References

source
SPICE.cylsphMethod
cylsph(r, lonc, z)

Convert from cylindrical to spherical coordinates.

Arguments

  • r: Distance of point from z axis
  • lonc: Angle (radians) of point from XZ plane
  • z: Height of point above XY plane

Output

  • radius: Distance of the point from the origin
  • colat: Polar angle (co-latitude in radians)
  • lon: Azimuthal angle (longitude)

References

source
SPICE.dafacMethod
dafac(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 access
  • buffer: Buffer of comments to put into the comment area

References

source
SPICE.dafclsMethod
dafcls(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

source
SPICE.dafcsMethod
dafcs(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

source
SPICE.dafdcMethod
dafdc(handle)

Delete the entire comment area of a specified DAF file.

Arguments

  • handle: The handle of a binary DAF opened for writing

References

source
SPICE.dafecMethod
dafec(handle; bufsiz=256, lenout=1024)

Extract comments from the comment area of a binary DAF.

Arguments

  • handle: Handle of binary DAF opened with read access
  • bufsiz: 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

source
SPICE.dafgdaMethod
dafgda(handle, start, stop)

Read the double precision data bounded by two addresses within a DAF.

Arguments

  • handle: Handle of a DAF
  • start, stop: Initial, final address within file

Output

Returns the data contained between start and stop.

References

source
SPICE.dafgnFunction
dafgn(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

source
SPICE.dafgsFunction
dafgs(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

source
SPICE.dafgsrMethod

Read a portion of the contents of a summary record in a DAF file.

Arguments

  • handle: Handle of DAF
  • recno: Record number
  • start: First word to read from record
  • stop: Last word to read from record

Output

Returns the contents of the record or nothing if none was found.

References

source
SPICE.dafoprMethod
dafopr(fname)

Open a DAF for subsequent read requests.

Arguments

  • fname: Name of DAF to be opened

Output

Returns the handle assigned to DAF.

References

source
SPICE.dafopwMethod
dafopw(fname)

Open a DAF for subsequent write requests.

Arguments

  • fname: Name of DAF to be opened

Output

Returns the handle assigned to DAF.

References

source
SPICE.dafpsMethod
dafps(dc, ic)

Pack (assemble) an array summary from its double precision and integer components.

Arguments

  • dc: Double precision components
  • ic: Integer components

Output

Returns the array summary.

References

source
SPICE.dafrfrFunction
dafrfr(handle, lenout=128)

Read the contents of the file record of a DAF.

Arguments

  • handle: Handle of an open DAF file
  • lenout: Available room in the output string `ifname' (default: 128)

Output

  • nd: Number of double precision components in summaries
  • ni: Number of integer components in summaries
  • ifname: Internal file name
  • fward: Forward list pointer
  • bward: Backward list pointer
  • free: Free address pointer

References

source
SPICE.dafusMethod
dafus(sum, nd, ni)

Unpack an array summary into its double precision and integer components.

Arguments

  • sum: Array summary
  • nd: Number of double precision components
  • ni: Number of integer components

Output

  • dc: Double precision components
  • ic: Integer components

References

source
SPICE.dasacMethod
dasac(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 access
  • buffer: Buffer of comments to put into the comment area

References

source
SPICE.dasclsMethod
dascls(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

source
SPICE.dasdcMethod
dasdc(handle)

Delete the entire comment area of a specified DAS file.

Arguments

  • handle: The handle of a binary DAS opened for writing

References

source
SPICE.dasecMethod
dasec(handle; bufsiz=256, lenout=1024)

Extract comments from the comment area of a binary DAS.

Arguments

  • handle: Handle of binary DAS opened with read access
  • bufsiz: 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

source
SPICE.dashfnFunction
dashfn(handle, namelen=256)

Return the name of the DAS file associated with a handle.

Arguments

  • handle: Handle of a DAS file
  • namlen: Length of output file name string (default: 256)

Output

Returns the corresponding file name.

References

source
SPICE.dasoprMethod
dasopr(fname)

Open a DAS for subsequent read requests.

Arguments

  • fname: Name of DAS to be opened

Output

Returns the handle assigned to DAS.

References

source
SPICE.dasopwMethod
dasopw(fname)

Open a DAS for subsequent write requests.

Arguments

  • fname: Name of DAS to be opened

Output

Returns the handle assigned to DAS.

References

source
SPICE.dasrfrFunction
dasrfr(handle, idwlen=128, ifnlen=256)

Read the contents of the file record of a DAS.

Arguments

  • handle: DAS file handle
  • idwlen: Length of ID word string (default: 128)
  • ifnlen: Length of internal file name string (default: 256)

Output

  • idword: ID word
  • ifname: DAS internal file name
  • nresvr: Number of reserved records in file
  • nresvc: Number of characters in use in reserved records area
  • ncomr: Number of comment records in file
  • ncomc: Number of characters in use in comment area

References

source
SPICE.dcyldrMethod
dcyldr(x, y, z)

Compute the Jacobian of the transformation from rectangular to cylindrical coordinates.

Arguments

  • x: X-coordinate of point
  • y: Y-coordinate of point
  • z: Z-coordinate of point

Output

Returns the matrix of partial derivatives.

References

source
SPICE.deltetMethod
deltet(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

source
SPICE.dgeodrMethod
dgeodr(x, y, z, re, f)

Compute the Jacobian of the transformation from rectangular to geodetic coordinates.

Arguments

  • x: X-coordinate of point
  • y: Y-coordinate of point
  • z: Z-coordinate of point
  • re: Equatorial radius of the reference spheroid
  • f: Flattening coefficient

Output

Returns the matrix of partial derivatives.

References

source
SPICE.diags2Method
diags2(symmat)

Diagonalize a symmetric 2x2 matrix.

Arguments

  • symmat: A symmetric 2x2 matrix

Output

  • diag: A diagonal matrix similar to symmat
  • rotate: A rotation used as the similarity transformation

References

source
SPICE.dlabbsMethod
dlabbs(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

source
SPICE.dlabfsMethod
dlabfs(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

source
SPICE.dlafnsMethod
dlafns(handle, descr)

Find the segment following a specified segment in a DLA file.

Arguments

  • handle: Handle of open DLA file
  • descr: Descriptor of a DLA segment

Output

Returns the descriptor of the next segment in the DLA file or nothing if none was found.

References

source
SPICE.dlafpsMethod
dlafps(handle, descr)

Find the segment preceding a specified segment in a DLA file.

Arguments

  • handle: Handle of open DLA file
  • descr: Descriptor of a DLA segment

Output

Returns the descriptor of the previous segment in the DLA file or nothing if none was found.

References

source
SPICE.dlatdrMethod
dlatdr(x, y, z)

Compute the Jacobian of the transformation from rectangular to latitudinal coordinates.

Arguments

  • x: X-coordinate of point
  • y: Y-coordinate of point
  • z: Z-coordinate of point

Output

Returns the matrix of partial derivatives.

References

source
SPICE.dp2hxFunction
dp2hx(number, lenout=128)

Convert a double precision number to an equivalent character string using base 16 "scientific notation."

Arguments

  • number: Number to be converted
  • lenout: Available space for output string

Output

Returns the equivalent character string, left justified.

References

source
SPICE.dpgrdrMethod
dpgrdr(x, y, z, re, f)

Compute the Jacobian of the transformation from rectangular to planetographic coordinates.

Arguments

  • body: Body with which coordinate system is associated
  • x: X-coordinate of point
  • y: Y-coordinate of point
  • z: Z-coordinate of point
  • re: Equatorial radius of the reference spheroid
  • f: Flattening coefficient

Output

Returns the matrix of partial derivatives.

References

source
SPICE.dpmaxFunction
dpmax()
Deprecated

Use prevfloat(typemax(Float64)) instead.

source
SPICE.dpminFunction
dpmin()
Deprecated

Use nextfloat(typemin(Float64)) instead.

source
SPICE.drdcylMethod
drdcyl(r, lon, z)

Compute the Jacobian of the transformation from cylindrical to rectangular coordinates.

Arguments

  • r: Distance of a point from the origin
  • lon: Angle of the point from the xz plane in radians
  • z: Height of the point above the xy plane

Output

Returns the matrix of partial derivatives.

References

source
SPICE.drdgeoMethod
drdgeo(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 spheroid
  • re: Equatorial radius of the reference spheroid
  • f: Flattening coefficient

Output

Returns the matrix of partial derivatives.

References

source
SPICE.drdlatMethod
drdlat(radius, lon, lat)

Compute the Jacobian of the transformation from latitudinal to rectangular coordinates.

Arguments

  • radius: Distance of a point from the origin
  • lon: Angle of the point from the XZ plane in radians
  • lat: Angle of the point from the XY plane in radians

Output

Returns the matrix of partial derivatives.

References

source
SPICE.drdpgrMethod
drdpgr(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 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 matrix of partial derivatives.

References

source
SPICE.drdsphMethod
drdsph(r, colat, lon)

Compute the Jacobian of the transformation from latitudinal to rectangular coordinates.

Arguments

  • r: Distance of a point from the origin
  • colat: Angle of the point from the positive z-axis
  • lon: Angle of the point from the xy plane

Output

Returns the matrix of partial derivatives.

References

source
SPICE.dskb02Method
dskb02(handle, dladsc)

Return bookkeeping data from a DSK type 2 segment.

Arguments

  • handle: DSK file handle
  • dladsc: DLA descriptor

Output

  • nv: Number of vertices in model
  • np: Number of plates in model
  • nvxtot: Number of voxels in fine grid
  • vtxbds: Vertex bounds
  • voxsiz: Fine voxel edge length
  • voxori: Fine voxel grid origin
  • vgrext: Fine voxel grid exent
  • cgscal: Coarse voxel grid scale
  • vtxnpl: Size of vertex-plate correspondence list
  • voxnpt: Size of voxel-plate pointer list
  • voxnpl: Size of voxel-plate correspondence list

References

source
SPICE.dskclsFunction
dskcls(handle, optmiz=true)

Close a DSK file.

Arguments

  • handle: Handle assigned to the opened DSK file
  • optmiz: Flag indicating whether to segregate the DSK (default: true)

References

source
SPICE.dskd02Method
dskd02(handle, dladsc, item, start, room)

Fetch double precision data from a type 2 DSK segment.

Arguments

  • handle: DSK file handle
  • dladsc: DLA descriptor
  • item: Keyword identifying item to fetch
  • start: Start index
  • room: Amount of room in output array

Output

Returns an array containing the requested item.

References

source
SPICE.dskgdMethod
dskgd(handle, dladsc)

Return the DSK descriptor from a DSK segment identified by a DAS handle and DLA descriptor.

Arguments

  • handle: Handle of a DSK file
  • dladsc: DLA segment descriptor

Output

Returns the DSK segment descriptor.

References

source
SPICE.dskgtlMethod
dskgtl(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

source
SPICE.dski02Method
dski02(handle, dladsc, item, start, room)

Fetch integer data from a type 2 DSK segment.

Arguments

  • handle: DSK file handle
  • dladsc: DLA descriptor
  • item: Keyword identifying item to fetch
  • start: Start index
  • room: Amount of room in output array

Output

Returns an array containing the requested item.

References

source
SPICE.dskmi2Method
dskmi2(vrtces, plates, finscl, corscl, worksz, voxpsz, voxlsz, makvtl, spaisz)

Make spatial index for a DSK type 2 segment.

Arguments

  • vrtces: Vertices
  • plates: Plates
  • finscl: Fine voxel scale
  • corscl: Coarse voxel scale
  • worksz: Workspace size
  • voxpsz: Voxel-plate pointer array size
  • voxlsz: Voxel-plate list array size
  • makvtl: Vertex-plate list flag
  • spxisz: Spatial index integer component size

Output

  • spaixd: Double precision component of spatial index.
  • spaixi: Integer component of spatial index.

References

source
SPICE.dskn02Method
dskn02(handle, dladsc, plid)

Compute the unit normal vector for a specified plate from a type 2 DSK segment.

Arguments

  • handle: DSK file handle
  • dladsc: DLA descriptor
  • plid: Plate ID

Output

Return the plate's unit normal vector.

References

source
SPICE.dskobj!Method
dskobj!(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 file
  • set or len: Either a preallocated SpiceIntCell or the size of the output set.

Output

Returns the set of ID codes of objects in the DSK file.

References

source
SPICE.dskopnMethod
dskopn(fname, ifname, ncomch)

Open a new DSK file for subsequent write operations.

Arguments

  • fname: Name of a DSK file to be opened
  • ifname: Internal file name
  • ncomch: Number of comment characters to allocate

Output

Returns the handle assigned to the opened DSK file.

References

source
SPICE.dskp02Method
dskp02(handle, dladsc, start, room)

Fetch triangular plates from a type 2 DSK segment.

Arguments

  • handle: DSK file handle
  • dladsc: DLA descriptor
  • start: Start index
  • room: Amount of room in output array

Output

Returns an array of plates.

References

source
SPICE.dskrb2Method
dskrb2(vrtces, plates, corsys, corpar)

Determine range bounds for a set of triangular plates to be stored in a type 2 DSK segment.

Arguments

  • vrtces: Vertices
  • plates: Plates
  • corsys: DSK coordinate system code
  • corpar: DSK coordinate system parameters

Output

  • mncor3: Lower bound on range of third coordinate
  • mxcor3: Upper bound on range of third coordinate

References

source
SPICE.dsksrf!Method
dsksrf!(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 file
  • set or len: Either a preallocated SpiceIntCell or the size of the output set.

Output

Returns the set of ID codes of surfaces in the DSK file.

References

source
SPICE.dskstlMethod
dskstl(keywrd)

Set the value of a specified DSK tolerance or margin parameter.

Arguments

  • keywrd: Code specifying parameter to retrieve
  • dpval: Value of parameter

References

source
SPICE.dskv02Method
dskv02(handle, dladsc, start, room)

Fetch vertices from a type 2 DSK segment.

Arguments

  • handle: DSK file handle
  • dladsc: DLA descriptor
  • start: Start index
  • room: Amount of room in output array

Output

Returns an array of vertices.

References

source
SPICE.dskw02Method
dskw02(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 file
  • center: Central body ID code
  • surfid: Surface ID code
  • dclass: Data class
  • frame: Reference frame
  • corsys: Coordinate system code
  • corpar: Coordinate system parameters
  • mncor1: Minimum value of first coordinate
  • mxcor1: Maximum value of first coordinate
  • mncor2: Minimum value of second coordinate
  • mxcor2: Maximum value of second coordinate
  • mncor3: Minimum value of third coordinate
  • mxcor3: Maximum value of third coordinate
  • first: Coverage start time
  • last: Coverage stop time
  • nv: Number of vertices
  • vrtces: Vertices
  • np: Number of plates
  • plates: Plates
  • spaixd: Double precision component of spatial index
  • spaixi: Integer component of spatial index

References

source
SPICE.dskx02Method
dskx02(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 model
  • dladsc: DLA descriptor of plate model segment
  • vertex: Ray vertex in the body fixed frame
  • raydir: Ray direction in the body fixed frame

Output

Returns nothing if no intercept exists or

  • plid: ID code of the plate intersected by the ray
  • xpt: Intercept

References

source
SPICE.dskxsiFunction
dskxsi(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 flag
  • target: Target body name
  • srflst: Surface ID list
  • et: Epoch, expressed as seconds past J2000 TDB
  • fixref: Name of target body-fixed reference frame
  • vertex: Vertex of ray
  • raydir: Direction vector of ray
  • maxd: Size of DC array (default: 1)
  • maxi: Size of IC array (default: 1)

Output

Returns nothing if no intercept exists or

  • xpt: Intercept point
  • handle: Handle of segment contributing surface data
  • dladsc: DLA descriptor of segment
  • dskdsc: DSK descriptor of segment
  • dc: Double precision component of source info
  • ic: Integer component of source info

References

source
SPICE.dskxvMethod
dskxv(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 flag
  • target: Target body name
  • srflst: Surface ID list
  • et: Epoch, expressed as seconds past J2000 TDB
  • fixref: Name of target body-fixed reference frame
  • nrays: Number of rays
  • vtxarr: Array of vertices of rays
  • dirarr: Array of direction vectors of rays

Output

  • xptarr: Intercept point array
  • fndarr: Found flag array

References

source
SPICE.dskz02Method
dskz02(handle, dladsc)

Return plate model size parameters - plate count and vertex count - for a type 2 DSK segment.

Arguments

  • handle: DSK file handle
  • dladsc: DLA descriptor

Output

  • nv: Number of vertices
  • np: Number of plates

References

source
SPICE.dsphdrMethod
dsphdr(x, y, z)

Compute the Jacobian of the transformation from rectangular to spherical coordinates.

Arguments

  • x: X-coordinate of point
  • y: Y-coordinate of point
  • z: Z-coordinate of point

Output

Returns the matrix of partial derivatives.

References

source
SPICE.dtpoolMethod
dtpool(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 name
  • vartype: 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

source
SPICE.ducrssMethod
ducrss(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 derivative
  • s2: Right hand state for cross product and derivative

Output

Returns the unit vector and derivative of the cross product.

References

source
SPICE.dvcrssMethod
dvcrss(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 derivative
  • s2: Right hand state for cross product and derivative

Output

Returns the cross product and its derivative.

References

source
SPICE.dvdotMethod
dvdot(s1, s2)

Compute the derivative of the dot product of two double precision position vectors.

Arguments

  • s1: First state vector in the dot product
  • s2: Second state vector in the dot product

Output

Returns the derivative of the dot product s1 ⋅ s2.

References

source
SPICE.dvhatMethod
dvhat(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

source
SPICE.dvnormMethod
dvnorm(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

source
SPICE.dvsepMethod
dvsep(s1, s2)

Calculate the time derivative of the separation angle between two input states, s1 and s2.

Arguments

  • s1: State vector of the first body
  • s2: State vector of the second body

Output

Returns the value of the time derivative of the angular separation between s1 and s2.

References

source
SPICE.edlimbMethod
edlimb(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-axis
  • b: Length of ellipsoid semi-axis lying on the y-axis
  • c: Length of ellipsoid semi-axis lying on the z-axis
  • viewpt: Location of viewing point

Output

Returns the limb of the ellipsoid as seen from the viewing point.

References

source
SPICE.edtermMethod
edterm(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 type
  • source: Light source
  • target: Target body
  • et: Observation epoch
  • fixref: Body-fixed frame associated with target
  • abcorr: Aberration correction
  • obsrvr: Observer
  • npts: Number of points in terminator set

Output

  • trgepc: Epoch associated with target center
  • obspos: Position of observer in body-fixed frame
  • trmpts: Terminator point set

References

source
SPICE.ekacecMethod
ekacec(handle, segno, recno, column, cvals, isnull)

Add data to a character column in a specified EK record.

Arguments

  • handle: EK file handle
  • segno: Index of segment containing record
  • recno: Record to which data is to be added
  • column: Column name
  • cvals: Character values to add to column
  • isnull: Flag indicating whether column entry is null

References

source
SPICE.ekacedMethod
ekaced(handle, segno, recno, column, dvals, isnull)

Add data to an double precision column in a specified EK record.

Arguments

  • handle: EK file handle
  • segno: Index of segment containing record
  • recno: Record to which data is to be added
  • column: Column name
  • dvals: Double precision values to add to column
  • isnull: Flag indicating whether column entry is null

References

source
SPICE.ekaceiMethod
ekacei(handle, segno, recno, column, ivals, isnull)

Add data to an integer column in a specified EK record.

Arguments

  • handle: EK file handle
  • segno: Index of segment containing record
  • recno: Record to which data is to be added
  • column: Column name
  • ivals: Integer values to add to column
  • isnull: Flag indicating whether column entry is null

References

source
SPICE.ekaclcMethod
ekaclc(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

source
SPICE.ekacldMethod
ekacld(handle, segno, column, dvals, nlflgs, rcptrs)

Add an entire double precision column to an EK segment.

Arguments

  • handle: EK file handle
  • segno: Number of segment to add column to
  • column: Column name
  • dvals: Double precision values to add to column
  • nlflgs: Array of null flags for column entries
  • rcptrs: Record pointers for segment

References

source
SPICE.ekacliMethod
ekacli(handle, segno, column, ivals, nlflgs, rcptrs)

Add an entire integer column to an EK segment.

Arguments

  • handle: EK file handle
  • segno: Number of segment to add column to
  • column: Column name
  • ivals: Integer values to add to column
  • nlflgs: Array of null flags for column entries
  • rcptrs: Record pointers for segment

References

source
SPICE.ekapprMethod
ekappr(handle, segno)

Append a new, empty record at the end of a specified E-kernel segment.

Arguments

  • handle: File handle
  • segno: Segment number

Output

Returns the number of appended record.

References

source
SPICE.ekbsegMethod
ekbseg(handle, tabnam, cnames, decls)

Start a new segment in an E-kernel.

Arguments

  • handle: File handle
  • tabnam: Table name
  • cnames: Names of columns
  • decls: Declarations of columns

Output

Returns the segment number.

References

source
SPICE.ekccntMethod
ekccnt(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

source
SPICE.ekciiFunction
ekcii(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 column
  • cindex: Index of column whose attributes are to be found
  • lenout: Maximum allowed length of column name (default: 256)

Output

  • column: Name of column
  • attdsc: Column attribute descriptor

References

source
SPICE.ekdelrMethod
ekdelr(handle, segno, recno)

Delete a specified record from a specified E-kernel segment.

Arguments

  • handle: File handle
  • segno: Segment number
  • recno: Record number

References

source
SPICE.ekffldMethod
ekffld(handle, segno, rcptrs)

Complete a fast write operation on a new E-kernel segment.

Arguments

  • handle: File handle
  • segno: Segment number
  • rcptrs: Record pointers

References

source
SPICE.ekfindFunction
ekfind(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

source
SPICE.ekgcFunction
ekgc(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 clause
  • row: Row to fetch from
  • elment: Index of element, within column entry, to fetch
  • lenout: 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

source
SPICE.ekgdMethod
ekgd(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 clause
  • row: Row to fetch from
  • elment: 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

source
SPICE.ekgiMethod
ekgi(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 clause
  • row: Row to fetch from
  • elment: 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

source
SPICE.ekifldMethod
ekifld(handle, tabnam, nrows, cnames, decls)

Initialize a new E-kernel segment to allow fast writing.

Arguments

  • handle: File handle
  • tabnam: Table name
  • nrows: Number of rows in the segment
  • cnames: Names of columns
  • decls: Declarations of columns

Output

  • segno: Segment number
  • rcptrs: Array of record pointers

References

source
SPICE.ekinsrMethod
ekinsr(handle, segno, recno)

Add a new, empty record to a specified E-kernel segment at a specified index.

Arguments

  • handle: File handle
  • segno: Segment number
  • recno: Record number

References

source
SPICE.eklefMethod
eklef(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

source
SPICE.ekneltMethod
eknelt(selidx, row)

Return the number of elements in a specified column entry in the current row.

Arguments

  • selidx: Index of parent column in SELECT clause
  • row: Row containing element

Output

Returns the number of elements in entry in current row.

References

source
SPICE.eknsegMethod
eknseg(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

source
SPICE.ekopnMethod
ekopn(fname, ifname, ncomch)

Open a new E-kernel file and prepare the file for writing.

Arguments

  • fname: Name of EK file
  • ifname: Internal file name
  • ncomch: The number of characters to reserve for comments

Output

Return the handle attached to the new EK file.

References

source
SPICE.ekoprMethod
ekopr(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

source
SPICE.ekopsMethod
ekops()

Open a scratch (temporary) E-kernel file and prepare the file for writing.

Output

Returns the handle attached to the EK file.

References

source
SPICE.ekopwMethod
ekopw(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

source
SPICE.ekpselFunction
ekpsel(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 query
  • msglen: 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 clause
  • xends: End positions of expressions in SELECT clause
  • xtypes: Data types of expressions
  • xclass: Classes of expressions
  • tabs: Names of tables qualifying SELECT columns
  • cols: Names of columns in SELECT clause of query

References

source
SPICE.ekrcecFunction
ekrcec(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 file
  • segno: Index of segment containing record
  • recno: Record from which data is to be read
  • column: Column name
  • lenout: Maximum length of output strings
  • nelts: Maximum number of elements to return (default: 100)

Output

Returns the character values in column entry or missing if they are null.

References

source
SPICE.ekrcedFunction
ekrced(handle, segno, recno, column, nelts=100)

Read data from a double precision column in a specified EK record.

Arguments

  • handle: Handle attached to EK file
  • segno: Index of segment containing record
  • recno: Record from which data is to be read
  • column: Column name
  • nelts: Maximum number of elements to return (default: 100)

Output

Returns the values in column entry.

References

source
SPICE.ekrceiFunction
ekrcei(handle, segno, recno, column, nelts=100)

Read data from an integer column in a specified EK record.

Arguments

  • handle: Handle attached to EK file
  • segno: Index of segment containing record
  • recno: Record from which data is to be read
  • column: Column name
  • nelts: Maximum number of elements to return (default: 100)

Output

Returns the values in column entry.

References

source
SPICE.ekssumMethod
ekssum(handle, segno)

Return summary information for a specified segment in a specified EK.

Arguments

  • handle: Handle of EK
  • segno: Number of segment to be summarized

Output

Returns the EK segment summary.

References

source
SPICE.ektnamFunction
ektnam(n, lenout=256)

Return the name of a specified, loaded table.

Arguments

  • n: Index of table
  • lenout: Maximum table name length (default: 256)

Output

Returns the name of table.

References

source
SPICE.ekucecMethod
ekucec(handle, segno, recno, column, cvals, isnull)

Update a character column entry in a specified EK record.

Arguments

  • handle: EK file handle
  • segno: Index of segment containing record
  • recno: Record to which data is to be updated
  • column: Column name
  • cvals: Character values comprising new column entry
  • isnull: Flag indicating whether column entry is null

References

source
SPICE.ekucedMethod
ekuced(handle, segno, recno, column, dvals, isnull)

Update a double precision column entry in a specified EK record.

Arguments

  • handle: Handle attached to EK file
  • segno: Index of segment containing record
  • recno: Record in which entry is to be updated
  • column: Column name
  • dvals: Double precision values comprising new column entry
  • isnull: Flag indicating whether column entry is null

References

source
SPICE.ekuceiMethod
ekucei(handle, segno, recno, column, dvals, isnull)

Update an integer column entry in a specified EK record.

Arguments

  • handle: Handle attached to EK file
  • segno: Index of segment containing record
  • recno: Record in which entry is to be updated
  • column: Column name
  • ivals: Integer values comprising new column entry
  • isnull: Flag indicating whether column entry is null

References

source
SPICE.ekuefMethod
ekuef(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

source
SPICE.el2cgvMethod

Convert 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

source
SPICE.elemcFunction
elem[c/d/i](item, cell)
Deprecated

Use item in cell instead.

source
SPICE.eqncpvMethod
eqncpv(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 state
  • epoch: Epoch of elements in seconds past J2000
  • eqel: Array of equinoctial elements
  • rapol: Right Ascension of the pole of the reference plane
  • decpol: Declination of the pole of the reference plane

Output

Returns the state of the object described by eqel.

References

source
SPICE.eqstrMethod
eqstr(a, b)

Determine whether two strings are equivalent.

Arguments

  • a, b: Arbitrary character strings

Output

Returns true if a and b are equivalent.

References

source
SPICE.esrchcMethod
esrchc(value, array)

Search for a given value within a character string array.

Arguments

  • value: Key value to be found in array
  • array: Character string array to search

Output

Returns the index of the first equivalent array entry, or -1 if no equivalent element is found.

References

source
SPICE.et2lstFunction
et2lst(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 epoch
  • body: ID-code of the body of interest
  • lon: Longitude of surface point (radians)
  • typ: Type of longitude "PLANETOCENTRIC", etc
  • timlen: 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" clock
  • mn: Minutes past the hour
  • sc: Seconds past the minute
  • time: String giving local time on 24 hour clock
  • ampm: String giving time on A.M./ P.M. scale

References

source
SPICE.et2utcMethod
et2utc(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 J2000
  • format: 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

source
SPICE.etcalFunction
etcal(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 J2000
  • lenout: Length of output string (default: 128)

Output

Returns a standard calendar representation of et.

References

source
SPICE.eul2mMethod
eul2m(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

source
SPICE.eul2xfMethod
eul2xf(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 derivatives
  • axisa: Axis A of the Euler angle factorization
  • axisb: Axis B of the Euler angle factorization
  • axisc: Axis C of the Euler angle factorization

Output

Returns a state transformation matrix.

References

source
SPICE.expoolMethod
expool(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

source
SPICE.fovrayMethod
fovray(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 instrument
  • raydir: Ray's direction vector
  • rframe: Body-fixed, body-centered frame for target body
  • abcorr: Aberration correction flag
  • observer: Name or ID code string of the observer
  • et: Time of the observation (seconds past J2000)

Output

Returns true if the ray is visible.

References

source
SPICE.fovtrgMethod
fovtrg(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

source
SPICE.frameMethod
frame(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 to x on output
  • y: Unit vector in the plane orthogonal to x
  • z: Unit vector given by x × y

References

source
SPICE.frinfoMethod
frinfo(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 frame
  • frclss: The class (type) of the frame
  • clssid: The idcode for the frame within its class

Returns nothing if no frame with id frcode could be found.

References

source
SPICE.frmnamMethod
frmnam(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

source
SPICE.gcpoolMethod
gcpool(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 returned
  • start: 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

source
SPICE.gdpoolMethod
gdpool(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 returned
  • start: 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

source
SPICE.georecMethod
georec(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 spheroid
  • re: Equatorial radius of the reference spheroid
  • f: Flattening coefficient

Output

Returns the rectangular coordinates of point.

References

source
SPICE.getelmMethod
getelm(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 elements
  • lines: A pair of "lines" containing two-line elements

Output

  • epoch: The epoch of the elements in seconds past J2000
  • elems: The elements converted to SPICE units

References

source
SPICE.getfatFunction
getfat(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 examined
  • arclen: Maximum length of output architecture string (default: 10)
  • typlen: Maximum length of output type string (default: 10)

Output

  • arch: The architecture of the kernel file
  • typ: The type of the kernel file

References

source
SPICE.getfovFunction
getfov(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 instrument
  • room: Maximum number of vectors that can be returned (default: 10)
  • shapelen: Space available in the string shape (default: 128)
  • framelen: Space available in the string frame (default: 128)

Output

Returns a tuple consisting of

  • shape: Instrument FOV shape
  • frame: Name of the frame in which FOV vectors are defined
  • bsight: Boresight vector
  • bounds: FOV boundary vectors

References

source
SPICE.gfdistMethod
gfdist(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 body
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • relate: Relational operator
  • refval: Reference value
  • adjust: Adjustment value for absolute extrema searches
  • step: Step size used for locating extrema and roots
  • nintvls: Workspace window interval count
  • cnfine: Window to which the search is confined

Output

Returns a window containing the results.

References

source
SPICE.gfevntMethod
gfevnt(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 step
  • udrefn: Name of the routine that computes a refined time
  • gquant: Type of geometric quantity
  • qpnams: Names of quantity definition parameters
  • qcpars: Array of character quantity definition parameters
  • qdpars: Array of double precision quantity definition parameters
  • qipars: Array of integer quantity definition parameters
  • qlpars: Array of logical quantity definition parameters
  • op: Operator that either looks for an extreme value (max, min, local, absolute) or compares the geometric quantity value and a number
  • refval: Reference value
  • tol: Convergence tolerance in second
  • adjust: Absolute extremum adjustment value
  • rpt: Progress reporter on (true) or off (false)
  • udrepi: Function that initializes progress reporting
  • udrepu: Function that updates the progress report
  • udrepf: Function that finalizes progress reporting
  • nintvls: Workspace window interval coun
  • cnfine: SPICE window to which the search is restricted

Output

Returns a window containing the results.

References

source
SPICE.gffove!Method
gffove!(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 instrument
  • tshape: Type of shape model used for target body
  • raydir: Ray's direction vector
  • target: Name of the target body
  • tframe: Body-fixed, body-centered frame for target body
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • tol: Convergence tolerance in seconds
  • udstep: Name of the routine returns a time step
  • udrefn: Name of the routine that computes a refined time
  • rpt: Progress report flag
  • udrepi: Function that initializes progress reporting
  • udrepu: Function that updates the progress report
  • udrepf: Function that finalizes progress reporting
  • cnfine: SPICE window to which the search is restricted
  • result: Window containing the results

Output

Returns result.

References

source
SPICE.gfilumMethod
gfilum(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 method
  • angtyp: Type of illumination angle
  • target: Name of the target body
  • illmn: Name of the illumination source
  • fixref: Body-fixed, body-centered target body frame
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • spoint: Body-fixed coordinates of a target surface point
  • relate: Relational operator
  • refval: Reference value
  • adjust: Adjustment value for absolute extrema searches
  • step: Step size used for locating extrema and roots
  • nintvls: Workspace window interval count
  • cnfine: Window to which the search is confined

Output

Returns a window containing the results.

References

source
SPICE.gfocce!Method
function 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 occultation
  • front: Name of body occulting the other
  • fshape: Type of shape model used for front body
  • fframe: Body-fixed, body-centered frame for front body
  • back: Name of body occulted by the other
  • bshape: Type of shape model used for back body
  • bframe: Body-fixed, body-centered frame for back body
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • tol: Convergence tolerance in seconds
  • udstep: Name of the routine that returns a time step
  • udrefn: Name of the routine that computes a refined time
  • rpt: Progress report flag
  • udrepi: Function that initializes progress reporting
  • udrepu: Function that updates the progress report
  • udrepf: Function that finalizes progress reporting
  • cnfine: SPICE window to which the search is restricted
  • result: SPICE window containing results

Output

Returns result.

References

source
SPICE.gfocltFunction
gfoclt(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 occultation
  • front: Name of body occulting the other
  • fshape: Type of shape model used for front body
  • fframe: Body-fixed, body-centered frame for front body
  • back: Name of body occulted by the other
  • bshape: Type of shape model used for back body
  • bframe: Body-fixed, body-centered frame for back body
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • step: Step size in seconds for finding occultation events
  • cnfine: Window to which the search is restricted
  • maxwin: Maximum size of the output window (default: 100)

Output

Returns a window containing the results.

References

source
SPICE.gfpaMethod
gfpa(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 body
  • illmn: Name of the illuminating body
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • relate: Relational operator
  • refval: Reference value
  • adjust: Adjustment value for absolute extrema searches
  • step: Step size used for locating extrema and roots
  • nintvls: Workspace window interval count
  • cnfine: Window to which the search is confined

Output

Returns a window containing the results.

References

source
SPICE.gfposcMethod
gfposc(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 body
  • frame: Name of the reference frame for coordinate calculations
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • crdsys: Name of the coordinate system containing coord
  • coord: Name of the coordinate of interest
  • relate: Operator that either looks for an extreme value (max, min, local, absolute) or compares the coordinate value and refval
  • refval: Reference value
  • adjust: Adjustment value for absolute extrema searches
  • step: Step size used for locating extrema and roots
  • nintvls: Workspace window interval count
  • cnfine: Window to which the search is restricted

Output

Returns a window containing the results.

References

source
SPICE.gfrefnMethod
gfrefn(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 change
  • t2: The other value that brackets a state change
  • s1: State at t1
  • s2: State at t2

Output

Returns the new value at which to check for transition.

References

source
SPICE.gfrepiMethod
gfrepi(window, begmss, endmss)

Initialize a search progress report.

Arguments

  • window: A window over which a job is to be performed
  • begmss: Beginning of the text portion of the output message
  • endmss: End of the text portion of the output message

References

source
SPICE.gfrepuMethod
gfrepu(ivbeg, ivend, time)

Tell the progress reporting system how far a search has progressed.

Arguments

  • ivbeg: Start time of work interval
  • ivend: End time of work interval
  • time: Current time being examined in the search process

References

source
SPICE.gfrfovFunction
gfrfov(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 instrument
  • raydir: Ray's direction vector
  • rframe: Reference frame of ray's direction vector
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • step: Step size in seconds for finding FOV events
  • cnfine: SPICE window to which the search is restricted
  • maxwin: Maximum length of the output window (default: 10000)

Output

Returns a window containing the results.

References

source
SPICE.gfrrMethod
gfrr(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 body
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • relate: Relational operator
  • refval: Reference value
  • adjust: Adjustment value for absolute extrema searches
  • step: Step size used for locating extrema and roots
  • nintvls: Workspace window interval count
  • cnfine: Window to which the search is confined

Output

Returns a window containing the results.

References

source
SPICE.gfsepMethod

Determine 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 body
  • shape1: Name of shape model describing the first body
  • frame1: The body-fixed reference frame of the first body
  • targ2: Name of second body
  • shape2: Name of the shape model describing the second body
  • frame2: The body-fixed reference frame of the second body
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • relate: Operator that either looks for an extreme value (max, min, local, absolute) or compares the angular separation value and refval
  • refval: Reference value
  • adjust: Absolute extremum adjustment value
  • step: Step size in seconds for finding angular separation events
  • nintvls: Workspace window interval count
  • cnfine: Window to which the search is restricted

Output

Returns a window containing the results.

References

source
SPICE.gfsntcMethod
gfsntc(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 body
  • fixref: Body fixed frame associated with target
  • method: Name of method type for surface intercept calculation
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • dref: Reference frame of direction vector dvec
  • dvec: Pointing direction vector from obsrvr
  • crdsys: Name of the coordinate system containing COORD
  • coord: Name of the coordinate of interest
  • relate: Operator that either looks for an extreme value (max, min, local, absolute) or compares the coordinate value and refval
  • refval: Reference value
  • adjust: Adjustment value for absolute extrema searches
  • step: Step size used for locating extrema and roots
  • nintvls: Workspace window interval count
  • cnfine: Window to which the search is restricted

Output

Returns a window containing the results.

References

source
SPICE.gfstolMethod
gfstol(value)

Override the default GF convergence value used in the high level GF routines.

Arguments

  • value: Double precision value returned or to store

References

source
SPICE.gfsubcMethod
gfsubc(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 body
  • fixref: Body fixed frame associated with target
  • method: Name of method type for subpoint calculation
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • crdsys: Name of the coordinate system containing coord
  • coord: Name of the coordinate of interest
  • relate: Operator that either looks for an extreme value (max, min, local, absolute) or compares the coordinate value and refval
  • refval: Reference value
  • adjust: Adjustment value for absolute extrema searches
  • step: Step size used for locating extrema and roots
  • nintvls: Workspace window interval count
  • cnfine: Window to which the search is restricted

Output

Returns a window containing the results.

References

source
SPICE.gftfovMethod
gftfov(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 instrument
  • target: Name of the target body
  • tshape: Type of shape model used for target body
  • tframe: Body-fixed, body-centered frame for target body
  • abcorr: Aberration correction flag
  • obsrvr: Name of the observing body
  • step: Step size in seconds for finding FOV events
  • nintvls: Workspace window interval count
  • cnfine: Window to which the search is restricted

Output

Returns a window containing the results.

References

source
SPICE.gfudb!Method
gfudb!(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 an et, e.g. f(et) = ...
  • udfunb: Name of the routine returning the boolean value corresponding to an et, e.g. g(f, et) = ...
  • step: Step size used for locating extrema and roots
  • cnfine: Window to which the search is restricted
  • result: Window containing results

Output

Returns result.

References

source
SPICE.gfuds!Method
gfuds!(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 number
  • refval: Value used as reference for scalar quantity condition
  • adjust: Allowed variation for absolute extremal geometric conditions
  • step: Step size used for locating extrema and roots
  • nintvls: Workspace window interval count
  • cnfine: SPICE window to which the search is restricted
  • result: SPICE window containing results

Output

Returns result.

References

source
SPICE.gipoolMethod
gipool(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 returned
  • start: 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

source
SPICE.gnpoolFunction
gnpool(name, start, room, lenout=128)

Return names of kernel variables matching a specified template.

Arguments

  • name: Template that names should match
  • start: Index of first matching name to retrieve
  • room: The largest number of values to return
  • lenout: Length of strings in output array kvars (default: 128)

Output

Returns lernel pool variables whose names match name.

References

source
SPICE.hrmintMethod
hrmint(xvals, yvals, x)

Evaluate a Hermite interpolating polynomial at a specified abscissa value.

Arguments

  • xvals: Abscissa values
  • yvals: Ordinate and derivative values
  • x: Point at which to interpolate the polynomial

Output

  • f: Interpolated function value at x
  • df: Interpolated function's derivative at x

References

source
SPICE.hx2dpMethod
hx2dp(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

source
SPICE.illumfMethod
illumf(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 method
  • target: Name of target body
  • ilusrc: Name of illumination source
  • et: Epoch in TDB seconds past J2000 TDB
  • fixref: Body-fixed, body-centered target body frame
  • abcorr: Aberration correction flag
  • obsrvr: Name of observing body
  • spoint: Body-fixed coordinates of a target surface point

Output

  • trgepc: Target surface point epoch
  • srfvec: Vector from observer to target surface point
  • phase: Phase angle at the surface point
  • incdnc: Source incidence angle at the surface point
  • emissn: Emission angle at the surface point
  • visibl: Visibility flag (true if visible)
  • lit: Illumination flag (true if illuminated)

References

source
SPICE.illumgMethod
illumg(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

source
SPICE.iluminMethod
ilumin(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 method
  • target: Name of target body
  • 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

source
SPICE.inedplMethod
inedpl(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-axis
  • b: Length of ellipsoid semi-axis lying on the y-axis
  • c: Length of ellipsoid semi-axis lying on the z-axis
  • plane: Plane that intersects ellipsoid

Output

  • ellipse: Intersection ellipse

Returns nothing if no ellipse could be found.

References

source
SPICE.inelplMethod
inelpl(ellips, plane)

Find the intersection of an ellipse and a plane.

Arguments

  • ellips: An ellipse
  • plane: A plane

Output

  • nxpts: Number of intersection points of ellipse and plane
  • xpt1, xpt2: Intersection points

References

source
SPICE.inryplMethod
inrypl(vertex, dir, plane)

Find the intersection of a ray and a plane.

Arguments

  • vertex, dir: Vertex and direction vector of ray
  • plane: A plane

Output

  • nxpts: Number of intersection points of ray and plane
  • xpt1, xpt2: Intersection points

References

source
SPICE.insrtc!Method
insrtc!(set, item)

Insert an item into a character set.

Arguments

  • set: Insertion set
  • item: Item to be inserted

Output

Returns the updated set.

References

source
SPICE.insrtd!Method
insrtd!(set, item)

Insert an item into a double set.

Arguments

  • set: Insertion set
  • item: Item to be inserted

Output

Returns the updated set.

References

source
SPICE.insrti!Method
insrti!(set, item)

Insert an item into an integer set.

Arguments

  • set: Insertion set
  • item: Item to be inserted

Output

Returns the updated set.

References

source
SPICE.interMethod
inter(a, b)

Intersect two sets of any data type to form a third set.

Arguments

  • a: First input set
  • b: Second input set

Output

Returns intersection of a and b.

References

source
SPICE.isrchcFunction
isrchc(value, array)
Deprecated

Use findfirst(array .== value) instead.

source
SPICE.isrchdFunction
isrchd(value, array)
Deprecated

Use findfirst(array .== value) instead.

source
SPICE.isrchiFunction
isrchi(value, array)
Deprecated

Use findfirst(array .== value) instead.

source
SPICE.isrotMethod
isrot(m, ntol, dtol)

Indicate whether a 3x3 matrix is a rotation matrix.

Arguments

  • m: A matrix to be tested
  • ntol: Tolerance for the norms of the columns of m
  • dtol: Tolerance for the determinant of a matrix whose columns are the unitized columns of m

Output

Returns true if m is a rotation matrix.

References

source
SPICE.kclearMethod
kclear()

Clear the KEEPER subsystem: unload all kernels, clear the kernel pool, and re-initialize the subsystem. Existing watches on kernel variables are retained.

References

source
SPICE.kdataFunction
kdata(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 kernels
  • kind: The kind of kernel to which fetches are limited
  • fillen: Available space in output file string
  • srclen: 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 file
  • filtyp: The type of the kernel
  • source: Name of the source file used to load file
  • handle: The handle attached to file

References

source
SPICE.kinfoFunction
kinfo(file, srclen=256)

Arguments

  • file: Name of a kernel to fetch information for
  • srclen: Available space in output source string

Output

Returns nothing if no kernel was found or a tuple consisting of

  • filtyp: The type of the kernel
  • source: Name of the source file used to load file
  • handle: The handle attached to file

References

source
SPICE.kplfrmFunction
kplfrm(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 class
  • size: Size of the output set

Output

Returns the set of ID codes of frames of the specified class.

References

source
SPICE.ktotalMethod
ktotal(kind)

Return the current number of kernels that have been loaded via the KEEPER interface that are of a specified type.

References

source
SPICE.kxtrctFunction
kxtrct(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 interest
  • terms: Set of words, any of which marks the end of text
  • string: String containing a sequence of words

Output

Returns nothing if keywd was found or a tuple consisting of

  • string: The input string with the text of interest removed
  • substr: String from end of keywd to beginning of first terms item found

References

source
SPICE.lastnbFunction
lastnb(str)
Deprecated

Use findprev(!isspace, str, length(str)) instead.

source
SPICE.latcylMethod
latcyl(radius, lon, lat)

Convert from latitudinal coordinates to cylindrical coordinates.

Arguments

  • radius: Distance of a point from the origin
  • lon: Angle of the point from the XZ plane in radians
  • lat: 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 axis
  • lonc: 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

source
SPICE.latrecMethod
latrec(radius, lon, lat)

Convert from latitudinal coordinates to rectangular coordinates.

Arguments

  • radius: Distance of a point from the origin
  • lon: Angle of the point from the XZ plane in radians
  • lat: Angle of the point from the XY plane in radians

Output

Return the rectangular coordinates vector of the point.

References

source
SPICE.latsphMethod
latsph(radius, lon, lat)

Convert from latitudinal coordinates to spherical coordinates.

Arguments

  • radius: Distance of a point from the origin
  • lon: Angle of the point from the XZ plane in radians
  • lat: Angle of the point from the XY plane in radians

Output

Return the tuple (rho, colat, lons).

  • rho: Distance of the point from the origin
  • colat: Angle of the point from positive z axis (radians)
  • lons: Angle of the point from the XZ plane (radians)

References

source
SPICE.latsrfMethod
latsrf(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 method
  • target: Name of target body
  • et: Epoch in TDB seconds past J2000 TDB
  • fixref: Body-fixed, body-centered target body frame
  • lonlat: Array of longitude/latitude coordinate pairs

Output

Returns an array of surface points.

References

source
SPICE.ldpoolMethod

ldpool(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

source
SPICE.lgrindMethod
lgrind(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 pairs
  • yvals: Ordinate values of coordinate pairs
  • x: 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 yvals
  • dp: The derivative at x of the interpolating polynomial described above

References

source
SPICE.limbptMethod
limbpt(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 method
  • target: Name of target body
  • et: Epoch in ephemeris seconds past J2000 TDB
  • fixref: Body-fixed, body-centered target body frame
  • abcorr: Aberration correction
  • corloc: Aberration correction locus
  • obsrvr: Name of observing body
  • refvec: Reference vector for cutting half-planes
  • rolstp: Roll angular step for cutting half-planes
  • ncuts: Number of cutting half-planes
  • schstp: Angular step size for searching
  • soltol: Solution convergence tolerance
  • maxn: Maximum number of entries in output arrays

Output

Returns the tuple (npts, points, epochs, tangts).

  • npts: Counts of limb points corresponding to cuts
  • points: Limb points
  • epochs: Times associated with limb points
  • tangts: Tangent vectors emanating from the observer

References

source
SPICE.lmpoolMethod

lmpool(cvals)

Load the variables contained in an internal buffer into the kernel pool.

Arguments

  • cvals: An array that contains a SPICE text kernel

References

source
SPICE.lparseFunction

lparse(list, delim, nmax)

Deprecated

Use split(list, delim, limit=nmax) instead.

source
SPICE.lparsmFunction

lparsm(list, delims, nmax)

Deprecated

Use split(list, delim, limit=nmax, keepempty=false) instead.

source
SPICE.lparssFunction

lparss(list, delims)

Deprecated

Use Set(split(list, collect(delim))) instead.

source
SPICE.lspcnMethod

lspcn(body, et, abcorr)

Compute L_s, the planetocentric longitude of the sun, as seen from a specified body.

Arguments

  • body: Name of the central body
  • et: Epoch in seconds past J2000 TDB
  • abcorr: Aberration correction

Output

Returns the planetocentric longitude of the sun for the specified body at the specified time in radians.

References

source
SPICE.lstlecFunction
lstlecd(x, array)
Deprecated

Use findfirst(item .<= array) instead.

source
SPICE.lstledFunction
lstle[di](x, array)
Deprecated

Use searchsortedlast(array, x) instead.

source
SPICE.lstltcFunction
lstltcd(x, array)
Deprecated

Use findfirst(item .< array) instead.

source
SPICE.lstltdFunction
lstlt[di](x, array)
Deprecated

Use searchsortedlast(array, x, lt=<=) instead.

source
SPICE.ltimeMethod
ltime(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 observer
  • obs: NAIF ID of some observer
  • dir: Direction the signal travels ( "->" or "<-" )
  • targ: Time between transmit and receipt of the signal

Output

  • ettarg: Epoch of the signal at the target
  • obs: NAIF ID of some observer

References

source
SPICE.lx4decMethod
lx4dec(string, first)

Scan a string from a specified starting position for the end of a decimal number.

Arguments

  • string: Any character string
  • first: 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

source
SPICE.lx4numMethod
lx4num(string, first)

Scan a string from a specified starting position for the end of a number.

Arguments

  • string: Any character string
  • first: 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

source
SPICE.lx4sgnMethod
lx4sgn(string, first)

Scan a string from a specified starting position for the end of a signed integer.

Arguments

  • string: Any character string
  • first: 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

source
SPICE.lx4unsMethod
lx4uns(string, first)

Scan a string from a specified starting position for the end of a unsigned integer.

Arguments

  • string: Any character string
  • first: 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

source
SPICE.lxqstrMethod
lxqstr(string, qchar, first)

Lex (scan) a quoted string.

Arguments

  • string: String to be scanned
  • qchar: Quote delimiter character
  • first: Character position at which to start scanning

Output

  • last: Character position of end of token
  • nchar: Number of characters in token

References

source
SPICE.m2eulMethod
m2eul(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 factored
  • axis3: Number of the third rotation axis
  • axis2: Number of the second rotation axis
  • axis1: Number of the first rotation axis

Output

A tuple consisting of the third, second, and first Euler angles in radians.

References

source
SPICE.m2qMethod
m2q(r)

Find a unit quaternion corresponding to a specified rotation matrix.

Arguments

  • r: A rotation matrix

Output

A unit quaternion representing `r'

References

source
SPICE.matchiMethod
matchi(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 tested
  • templ: Template (with wild cards) to test against string
  • wstr: Wild string token
  • wchr: Wild character token

Output

Returns true if the string matches.

References

source
SPICE.matchwMethod
matchw(string, templ, wstr, wchar)

Determine whether a string is matched by a template containing wild cards.

Arguments

  • string: String to be tested
  • templ: Template (with wild cards) to test against string
  • wstr: Wild string token
  • wchr: Wild character token

Output

Returns true if the string matches.

References

source
SPICE.namfrmMethod
namfrm(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

source
SPICE.ncposMethod
ncpos(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 string
  • chars: A collection of characters
  • start: Position to begin looking for a character not in chars

Output

Returns the index of the first character of str at or following index start that is not in the collection chars.

References

source
SPICE.ncposrMethod
ncposr(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 string
  • chars: A collection of characters
  • start: Position to begin looking for a character not in chars

Output

Returns the index of the last character of str at or before index start that is not in the collection chars.

References

source
SPICE.nearptMethod
nearpt(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 frame
  • a: Length of semi-axis parallel to x-axis
  • b: Length of semi-axis parallel to y-axis
  • c: Length on semi-axis parallel to z-axis

Output

Returns a tuple consisting of npoint and alt.

  • npoint: Point on the ellipsoid closest to positn
  • alt: Altitude of positn above the ellipsoid

References

source
SPICE.npedlnMethod
npedln(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 direction
  • b: Length of semi-axis in the y direction
  • c: Length of semi-axis in the z direction
  • linept: Point on line
  • linedr: Direction vector of line

Output

Returns a tuple consisting of pnear and dist.

  • pnear: Nearest point on ellipsoid to line
  • dist: Distance of ellipsoid from line

References

source
SPICE.npelptMethod
npelpt(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 found
  • ellips: A SPICE ellipse

Output

Returns a tuple consisting of pnear and dist.

  • pnear: Nearest point on ellipse to input point
  • dist: Distance of input point to ellipse

References

source
SPICE.nplnptMethod
nplnpt(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 line
  • linedr: Direction vector of line
  • point: A second point

Output

Returns a tuple consisting of pnear and dist.

  • pnear: Nearest point on the line to point
  • dist: Distance between point and pnear

References

source
SPICE.nvc2plMethod
nvc2pl(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

source
SPICE.nvp2plMethod
nvp2pl(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

source
SPICE.occultMethod
occult(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

source
SPICE.ordcMethod
ordc(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 item
  • item: An item to locate within a set

Output

Returns the ordinal position or nothing if the items does not appear in the set.

References

source
SPICE.orddMethod
ordd(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 item
  • item: An item to locate within a set

Output

Returns the ordinal position or nothing if the items does not appear in the set.

References

source
SPICE.ordiMethod
ordi(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 item
  • item: An item to locate within a set

Output

Returns the ordinal position or nothing if the items does not appear in the set.

References

source
SPICE.osceltMethod
oscelt(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 elements
  • et: Epoch of elements
  • mu: Gravitational parameter (GM) of primary body

Output

Returns the equivalent 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

References

source
SPICE.oscltxMethod
oscltx(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 elements
  • et: Epoch of elements
  • mu: 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

source
SPICE.pckcov!Method
pckcov!(cover, pck, idcode)

Find the coverage window for a specified reference frame in a specified binary PCK file.

Arguments

  • cover: An initalized window SpiceDoubleCell
  • pck: Path of PCK file
  • idcode: Class ID code of PCK reference frame

Output

Returns cover containing coverage in pck for idcode

References

source
SPICE.pckfrm!Method
pckfrm!(ids, pck)

Find the set of reference frame class ID codes of all frames in a specified binary PCK file.

Arguments

  • ids: An initalized SpiceIntCell
  • pck: Path of PCK file

Output

Returns ids containing a set of frame class ID codes of frames in PCK file.

References

source
SPICE.pcklofMethod
pcklof(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

source
SPICE.pckopnMethod
pckopn(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 opened
  • ifname: The internal filename for the PCK
  • ncomch: The number of characters to reserve for comments

Output

Returns the handle of the opened PCK file.

References

source
SPICE.pckuofMethod
pckuof(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

source
SPICE.pckw02Method
pckw02(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

source
SPICE.pcpoolMethod
pcpool(name, vals)

Insert character data into the kernel pool.

Arguments

  • name: The kernel pool name to associate with vals
  • vals: An array of values to insert into the kernel pool

References

source
SPICE.pdpoolMethod
pdpool(name, vals)

Insert double precision data into the kernel pool.

Arguments

  • name: The kernel pool name to associate with vals
  • vals: An array of values to insert into the kernel pool

References

source
SPICE.pgrrecMethod
pgrrec(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

source
SPICE.phaseqMethod
phaseq(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 TDB
  • target: Target body name
  • illmn: Illuminating body name
  • obsrvr: Observer body
  • abcorr: Aberration correction flag

Output

Returns the value of the phase angle.

References

source
SPICE.pipoolMethod
pipool(name, ivals)

Insert integer data into the kernel pool.

Arguments

  • name: The kernel pool name to associate with the values
  • ivals: An array of integers to insert into the pool

References

source
SPICE.pjelplMethod
pjelpl(elin, plane)

Project an ellipse onto a plane, orthogonally.

Arguments

  • elin: An ellipse to be projected
  • plane: A plane onto which elin is to be projected

Output

Returns the ellipse resulting from the projection.

References

source
SPICE.pl2nvcMethod
pl2nvc(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 by plane

References

source
SPICE.pl2nvpMethod
pl2nvp(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 by plane

References

source
SPICE.pl2psvMethod
pl2psv(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

source
SPICE.pltarMethod
pltar(vrtces, plates)

Compute the total area of a collection of triangular plates.

Arguments

  • vrtces: Array of vertices
  • plates: Array of plates

Output

Returns the area.

References

source
SPICE.pltexpMethod
pltexp(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 expanded
  • delta: Fraction by which the plate is to be expanded

Output

Returns the vertices of the expanded plate.

References

source
SPICE.pltnpMethod
pltnp(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 to point
  • dist: Distance between pnear and point

References

source
SPICE.pltnrmMethod
pltnrm(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

source
SPICE.pltvolMethod
pltvol(vrtces, plates)

Compute the volume of a three-dimensional region bounded by a collection of triangular plates.

Arguments

  • vrtces: Array of vertices
  • plates: Array of plates

Output

Returns the volume of the spatial region bounded by the plates.

References

source
SPICE.polydsMethod
polyds(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 evaluated
  • nderiv: Number of derivatives to compute
  • t: Point to evaluate the polynomial and derivatives

Output

Returns the value of the polynomial and the derivatives as an array.

References

source
SPICE.posFunction
pos(str, substr, start)
Deprecated

Use first(findnext(substr, str, start)) instead.

source
SPICE.posrFunction
posr(str, substr, start)
Deprecated

Use first(findprev(substr, str, start)) instead.

source
SPICE.prop2bMethod
prop2b(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

source
SPICE.psv2plMethod
psv2pl(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

source
SPICE.pxformMethod
pxform(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 from
  • to: Name of the frame to transform to
  • et: Epoch of the rotation matrix

Output

Returns the rotation matrix.

References

source
SPICE.pxfrm2Method
pxfrm2(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 from
  • to: Name of the frame to transform to
  • etfrom: Evaluation time of from frame
  • etto: Evaluation time of to frame

Output

Returns a position transformation matrix from frame from to frame to.

References

source
SPICE.q2mMethod
q2m(q)

Find the rotation matrix corresponding to a specified unit quaternion.

Arguments

  • q: A unit quaternion

Output

A rotation matrix corresponding to q.

References

source
SPICE.qdq2avMethod
qdq2av(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' anddq'

References

source
SPICE.qxqMethod
qxq(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' andq2'

References

source
SPICE.radrecMethod
radrec(range, ra, dec)

Convert from range, right ascension, and declination to rectangular coordinates.

Arguments

  • range: Distance of a point from the origin
  • ra: Right ascension of point in radians
  • dec: Declination of point in radians

Output

Returns the rectangular coordinates of the point.

References

source
SPICE.rav2xfMethod
rav2xf(rot, av)

Determine a state transformation matrix from a rotation matrix and the angular velocity of the rotation.

Arguments

  • rot: Rotation matrix
  • av: Angular velocity vector

Output

Returns state transformation matrix associated with rot and av.

References

source
SPICE.raxisaMethod
raxisa(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 rotation
  • angle: Angle through which the rotation is performed

References

source
SPICE.reccylMethod
reccyl(rectan)

Convert from rectangular to cylindrical coordinates.

Arguments

  • rectan: Rectangular coordinates of a point

Output

  • r: Distance of the point from the Z axis
  • lon: Angle (radians) of the point from the XZ plane
  • z: Height of the point above the XY plane

References

source
SPICE.recgeoMethod
recgeo(rectan, re, f)

Convert from rectangular coordinates to geodetic coordinates.

Arguments

  • rectan: Rectangular coordinates of a point
  • re: Equatorial radius of the reference spheroid
  • f: 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

source
SPICE.reclatMethod
reclat(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 origin
  • lon: Planetographic longitude of the point (radians)
  • lat: Planetographic latitude of the point (radians)

References

source
SPICE.recpgrMethod
recpgr(body, rectan, re, f)

Convert rectangular coordinates to planetographic coordinates.

Arguments

  • body: Body with which coordinate system is associated
  • rectan: Rectangular coordinates of a point
  • re: Equatorial radius of the reference spheroid
  • f: 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

source
SPICE.recradMethod
recrad(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 origin
  • ra: Right ascension in radians
  • dec: Declination in radians

References

source
SPICE.recsphMethod
recsph(rectan)

Convert from rectangular coordinates to spherical coordinates.

Arguments

  • rectan: Rectangular coordinates of a point

Output

  • r: Distance of the point from the origin
  • colat: Angle of the point from the Z-axis in radian
  • lon: Longitude of the point in radians

References

source
SPICE.removc!Method
removc!(set, item)

Remove an item from a character set.

Arguments

  • set: A set
  • item: Item to be removed

Output

Returns the updated set.

References

source
SPICE.removi!Method
removi!(set, item)

Remove an item from a character set.

Arguments

  • set: A set
  • item: Item to be removed

Output

Returns the updated set.

References

source
SPICE.repmcFunction
repmc(input, marker, value)
Deprecated

Use replace(input, marker=>value) instead.

source
SPICE.rotateMethod
rotate(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

source
SPICE.rotmatMethod
rotmat(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 rotated
  • angle: Angle of rotation (radians)
  • iaxis: Axis of rotation (X=1, Y=2, Z=3)

Output

Returns the resulting rotated matrix.

References

source
SPICE.rotvecMethod
rotvec(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 rotated
  • angle: Angle of rotation in radians
  • iaxis: Axis of rotation (X=1, Y=2, Z=3)

Output

Returns the resulting vector expressed in the new coordinate system.

References

source
SPICE.rquadMethod
rquad(a, b, c)

Find the roots of a quadratic equation.

Arguments

  • a: Coefficient of quadratic term
  • b: Coefficient of linear term
  • c: Constant

Output

  • root1: Root built from positive discriminant term
  • root2: Root built from negative discriminant term

References

source
SPICE.saelgvMethod
saelgv(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 ellipse
  • sminor: Semi-minor axis of ellipse

References

source
SPICE.scard!Method
scard!(cell::SpiceCell{T}, card) where T

Set the cardinality of a cell.

Arguments

  • cell: The cell
  • card: Cardinality of (number of elements in) the cell

Output

Returns cell with its cardinality set to card.

References

source
SPICE.scdecdFunction
scdecd(sc, sclkdp, lenout=128)

Convert double precision encoding of spacecraft clock time into a character representation.

Arguments

  • sc: NAIF spacecraft identification code
  • sclkdp: Encoded representation of a spacecraft clock count
  • lenout: Maximum allowed length of output SCLK string

Output

Returns the character representation of a clock count.

References

source
SPICE.sce2cMethod
sce2c(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 code
  • et: Ephemeris time, seconds past J2000

Output

Returns SCLK, encoded as ticks since spacecraft clock start.

References

source
SPICE.sce2sFunction
sce2s(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 code
  • et: Ephemeris time, specified as seconds past J2000
  • lenout: Maximum allowed length of output SCLK string

Output

Returns an SCLK string.

References

source
SPICE.sce2tMethod
sce2t(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 code
  • et: Ephemeris time, seconds past J2000

Output

Returns SCLK, encoded as ticks since spacecraft clock start.

References

source
SPICE.scencdMethod
scencd(sc, sclkch)

Encode character representation of spacecraft clock time into a double precision number.

Arguments

  • sc: NAIF spacecraft identification code
  • sclkch: Character representation of a spacecraft clock

Output

Returns the encoded representation of the clock count.

References

source
SPICE.scfmtFunction
scfmt(sc, ticks, lenout=128)

Convert encoded spacecraft clock ticks to character clock format.

Arguments

  • sc: NAIF spacecraft identification code
  • ticks: Encoded representation of a spacecraft clock count
  • lenout: Maximum allowed length of output string

Output

Returns a character representation of a clock count.

References

source
SPICE.scpartMethod
scpart(sc)

Get spacecraft clock partition information from a spacecraft clock kernel file.

Arguments

  • sc: NAIF spacecraft identification code

Output

  • pstart: Array of partition start times
  • pstop: Array of partition stop times

References

source
SPICE.scs2eMethod
scs2e(sc, sclkch)

Convert a spacecraft clock string to ephemeris seconds past J2000 (ET).

Arguments

  • sc: NAIF integer code for a spacecraft
  • sclkch: An SCLK string

Output

Returns ephemeris time seconds past J2000.

References

source
SPICE.sct2eMethod
sct2e(sc, sclkdp)

Convert encoded spacecraft clock ("ticks") to ephemeris seconds past J2000 (ET).

Arguments

  • sc: NAIF integer code for a spacecraft
  • sclkdp: SCLK, encoded as ticks since spacecraft clock start.

Output

Returns ephemeris time seconds past J2000.

References

source
SPICE.sctiksMethod
sctiks(sc, clkstr)

Convert a spacecraft clock format string to number of "ticks".

Arguments

  • sc: NAIF spacecraft identification code
  • clkstr: Character representation of a spacecraft clock

Output

Returns the number of ticks represented by the clock string.

References

source
SPICE.sdiffMethod
sdiff(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 set
  • b: Second input set

Output

Returns a cell containing the symmetric difference of a and b.

References

source
SPICE.setMethod
set(a::T, b::T) where T <: SpiceCell

Given a relational operator, compare two sets of any data type.

Arguments

  • a: First set
  • op: Comparison operator
  • b: Second set

Output

Returns the result of the comparison: a (op) b.

References

source
SPICE.sincptMethod
sincpt(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 method
  • target: Name of target body
  • et: Epoch in TDB seconds past J2000 TDB
  • fixref: Body-fixed, body-centered target body frame
  • abcorr: Aberration correction flag
  • obsrvr: Name of observing body
  • dref: Reference frame of ray's direction vector
  • dvec: 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 body
  • trgepc: Intercept epoch
  • srfvec: Vector from observer to intercept point

References

source
SPICE.size_cMethod
size_c(cell::SpiceCell)

Returns the maximum number of elements that cell can hold.

source
SPICE.sphcylMethod
sphcyl(radius, colat, slon)

Converts from spherical coordinates to cylindrical coordinates.

Arguments

  • radius: Distance of point from origin
  • colat: Polar angle (co-latitude in radians) of point
  • slon: Azimuthal angle (longitude) of point (radians)

Output

  • r: Distance of point from Z axis
  • lon: Angle (radians) of point from XZ plane
  • z: Height of point above XY plane

References

source
SPICE.sphlatMethod
sphlat(r, colat, lons)

Convert from spherical coordinates to latitudinal coordinates.

Arguments

  • r: Distance of the point from the origin
  • colat: 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 origin
  • lon: Angle of the point from the XZ plane in radians
  • lat: Angle of the point from the XY plane in radians

References

source
SPICE.sphrecMethod
sphrec(r, colat, lon)

Convert from spherical coordinates to rectangular coordinates.

Arguments

  • r: Distance of a point from the origin
  • colat: Angle of the point from the Z-axis in radians
  • lon: Angle of the point from the XZ plane in radians

Output

Returns the rectangular coordinates of the point.

References

source
SPICE.spk14aMethod
spk14a(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 writing
  • ncsets: The number of coefficient sets and epochs
  • coeffs: The collection of coefficient sets
  • epochs: The epochs associated with the coefficient sets

References

source
SPICE.spk14bMethod
spk14b(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 writing
  • segid: The string to use for segment identifier
  • body: The NAIF ID code for the body of the segment
  • center: The center of motion for body
  • frame: The reference frame for this segment
  • first: The first epoch for which the segment is valid
  • last: The last epoch for which the segment is valid
  • chbdeg: The degree of the Chebyshev Polynomial used

References

source
SPICE.spk14eMethod
spk14e(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

source
SPICE.spkacsMethod
spkacs(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 body
  • et: Observer epoch
  • ref: Inertial reference frame of output state
  • abcorr: Aberration correction flag
  • obs: Observer

Output

  • starg: State of target
  • lt: One way light time between observer and target
  • dlt: Derivative of light time with respect to time

References

source
SPICE.spkapoMethod
spkapo(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 body
  • et: Observer epoch
  • ref: Inertial reference frame of observer's state
  • sobs: State of observer wrt. solar system barycenter
  • abcorr: Aberration correction flag

Output

  • ptarg: Position of target
  • lt: One way light time between observer and target

References

source
SPICE.spkapsMethod
spkaps(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

source
SPICE.spkclsMethod
spkcls(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

source
SPICE.spkcov!Method
spkcov!(cover, spk, idcode)

Find the coverage window for a specified ephemeris object in a specified SPK file.

Arguments

  • cover: Window giving coverage in spk for idcode
  • spk: Name of the SPK file
  • idcode: ID code of ephemeris object

Output

Returns the extended coverage window.

References

source
SPICE.spkcpoMethod
spkcpo(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 object
  • et: Observation epoch
  • outref: Reference frame of output state
  • refloc: Output reference frame evaluation locus
  • abcorr: Aberration correction
  • obspos: Observer position relative to center of motion
  • obsctr: Center of motion of observer
  • obsref: Frame of observer position

Output

  • state: State of target with respect to observer
  • lt: One way light time between target and observer

References

source
SPICE.spkcptMethod
spkcpt(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 motion
  • trgctr: Center of motion of target
  • trgref: Frame of target position
  • et: Observation epoch
  • outref: Reference frame of output state
  • refloc: Output reference frame evaluation locus
  • abcorr: Aberration correction
  • obsrvr: Name of observing ephemeris object

Output

  • state: State of target with respect to observer
  • lt: One way light time between target and observer

References

source
SPICE.spkcvoMethod
spkcvo(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 object
  • et: Observation epoch
  • outref: Reference frame of output state
  • refloc: Output reference frame evaluation locus
  • abcorr: Aberration correction
  • obssta: Observer state relative to center of motion
  • obsepc: Epoch of observer state
  • obsctr: Center of motion of observer
  • obsref: Frame of observer state

Output

  • state: State of target with respect to observer
  • lt: One way light time between target and observer

References

source
SPICE.spkcvtMethod
spkcvt(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 motion
  • trgepc: Epoch of target state
  • trgctr: Center of motion of target
  • trgref: Frame of target state
  • et: Observation epoch
  • outref: Reference frame of output state
  • refloc: Output reference frame evaluation locus
  • abcorr: Aberration correction
  • obsrvr: Name of observing ephemeris object

Output

  • state: State of target with respect to observer
  • lt: One way light time between target and observer

References

source
SPICE.spkezMethod
spkez(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
  • et: Observer epoch
  • ref: Reference frame of output state vector
  • abcorr: Aberration correction flag
  • obs: Observing body

Output

  • starg: State of target
  • lt: One way light time between observer and target

References

source
SPICE.spkezpMethod
spkezp(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
  • et: Observer epoch
  • ref: Reference frame of output state vector
  • abcorr: Aberration correction flag
  • obs: Observing body

Output

  • ptarg: Position of target
  • lt: One way light time between observer and target

References

source
SPICE.spkezrMethod
spkezr(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 name
  • et: Observer epoch
  • ref: Reference frame of output state vector
  • abcorr: Aberration correction flag
  • obs: Observing body name

Output

  • starg: State of target
  • lt: One way light time between observer and target

References

source
SPICE.spkgeoMethod
spkgeo(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

source
SPICE.spkgpsMethod
spkgps(targ, et, ref, obs)

Compute the geometric position of a target body relative to an observing body.

Arguments

  • targ: Target body
  • et: Target epoch
  • ref: Target reference frame
  • obs: Observing body

Output

  • pos: Position of target
  • lt: Light time

References

source
SPICE.spklefMethod
spklef(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

source
SPICE.spkltcMethod
spkltc(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 body
  • et: Observer epoch
  • ref: Inertial reference frame of output state
  • abcorr: Aberration correction flag
  • stobs: State 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

source
SPICE.spkobj!Method
spkobj!(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 file
  • spk: Name of the SPK file

Output

Returns the set of id codes.

References

source
SPICE.spkopaMethod
spkopa(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

source
SPICE.spkopnFunction
spkopn(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 created
  • ifname: 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

source
SPICE.spkpdsMethod
spkpds(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 segment
  • center: The center of motion for body
  • frame: The frame for this segment
  • type: The type of SPK segment to create
  • first: The first epoch for which the segment is valid
  • last: The last epoch for which the segment is valid

Output

Returns an SPK segment descriptor.

References

source
SPICE.spkposMethod
spkpos(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 name
  • et: Observer epoch
  • ref: Reference frame of output position vector
  • abcorr: Aberration correction flag
  • obs: Observing body name

Output

  • ptarg: Position of target
  • lt: One way light time between observer and target

References

source
SPICE.spkpvnMethod
spkpvn(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 handle
  • descr: Segment descriptor
  • et: Evaluation epoch

Output

  • ref: Segment reference frame ID code
  • state: Output state vector
  • center: Center of state

References

source
SPICE.spksfsMethod
spksfs(body, et)

Search through loaded SPK files to find the highest-priority segment applicable to the body and time specified.

Arguments

  • body: Body ID
  • et: Ephemeris time

Output

Returns nothing if no segment was found or a tuple consisting of:

  • handle: Handle of file containing the applicable segment
  • descr: Descriptor of the applicable segment
  • ident: Identifier of the applicable segment

References

source
SPICE.spkssbMethod
spkssb(targ, et, ref)

Return the state (position and velocity) of a target body relative to the solar system barycenter.

Arguments

  • targ: Target body
  • et: Target epoch
  • ref: Target reference frame

Output

Returns the state of target.

References

source
SPICE.spksub!Method
spksub!(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 segment
  • handle: Handle of source segment
  • descr: Descriptor of source segment
  • ident: Identifier of source segment
  • start: Beginning (initial epoch) of subset
  • stop: End (final epoch) of subset

References

source
SPICE.spkudsMethod
spkuds(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 segment
  • center: The center of motion for body
  • frame: The ID code for the frame of this segment
  • type: The type of SPK segment
  • first: The first epoch for which the segment is valid
  • last: The last epoch for which the segment is valid
  • start: Beginning DAF address of the segment
  • stop: Ending DAF address of the segment

References

source
SPICE.spkuefMethod
spkuef(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

source
SPICE.spkw02Method
spkw02(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 writing
  • body: Body code for ephemeris object
  • center: Body code for the center of motion of the body
  • frame: The reference frame of the states
  • first: First valid time for which states can be computed
  • last: Last valid time for which states can be computed
  • segid: Segment identifier
  • intlen: Length of time covered by logical record
  • cdata: Array of Chebyshev coefficients
  • btime: Begin time of first logical record

References

source
SPICE.spkw03Method
spkw03(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 writing
  • body: Body code for ephemeris object
  • center: Body code for the center of motion of the body
  • frame: The reference frame of the states
  • first: First valid time for which states can be computed
  • last: Last valid time for which states can be computed
  • segid: Segment identifier
  • intlen: Length of time covered by logical record
  • cdata: Array of Chebyshev coefficients
  • btime: Begin time of first logical record

References

source
SPICE.spkw05Method
spkw05(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 writing
  • body: Body code for ephemeris object
  • center: Body code for the center of motion of the body
  • frame: The reference frame of the states
  • first: First valid time for which states can be computed
  • last: Last valid time for which states can be computed
  • segid: Segment identifier
  • gm: Gravitational parameter of central body
  • states: States
  • epochs: Epochs

References

source
SPICE.spkw08Method
spkw08(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 writing
  • body: Body code for ephemeris object
  • center: Body code for the center of motion of the body
  • frame: The reference frame of the states
  • first: First valid time for which states can be computed
  • last: Last valid time for which states can be computed
  • segid: Segment identifier
  • degree: Degree of interpolating polynomials
  • states: States
  • epoch1: Epoch of first state in states array
  • step: Time step separating epochs of states

References

source
SPICE.spkw09Method
spkw09(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 writing
  • body: Body code for ephemeris object
  • center: Body code for the center of motion of the body
  • frame: The reference frame of the states
  • first: First valid time for which states can be computed
  • last: Last valid time for which states can be computed
  • segid: Segment identifier
  • degree: Degree of interpolating polynomials
  • states: States
  • epochs: Epochs

References

source
SPICE.spkw10Method
spkw10(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 writing
  • body: The NAIF ID code for the body of the segment
  • center: The center of motion for body
  • frame: The reference frame for this segment
  • first: The first epoch for which the segment is valid
  • last: The last epoch for which the segment is valid
  • segid: The string to use for segment identifier
  • consts: The array of geophysical constants for the segmen
  • elems: The collection of "two-line" element sets
  • epochs: The epochs associated with the element sets

References

source
SPICE.spkw12Method
spkw12(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 writing
  • body: Body code for ephemeris object
  • center: Body code for the center of motion of the body
  • frame: The reference frame of the states
  • first: First valid time for which states can be computed
  • last: Last valid time for which states can be computed
  • segid: Segment identifier
  • degree: Degree of interpolating polynomials
  • states: States
  • epoch1: Epoch of first state in states array
  • step: Time step separating epochs of states

References

source
SPICE.spkw13Method
spkw13(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 writing
  • body: Body code for ephemeris object
  • center: Body code for the center of motion of the body
  • frame: The reference frame of the states
  • first: First valid time for which states can be computed
  • last: Last valid time for which states can be computed
  • segid: Segment identifier
  • degree: Degree of interpolating polynomials
  • states: States
  • epochs: Epochs

References

source
SPICE.spkw15Method
spkw15(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 writing
  • body: Body code for ephemeris object
  • center: Body code for the center of motion of the body
  • frame: The reference frame of the states
  • first: First valid time for which states can be computed
  • last: Last valid time for which states can be computed
  • segid: Segment identifier
  • epoch: Epoch of the periapse
  • tp: Trajectory pole vector
  • pa: Periapsis vector
  • p: Semi-latus rectum
  • ecc: Eccentricity
  • j2flg: J2 processing flag
  • pv: Central body pole vector
  • gm: Central body GM
  • j2: Central body J2
  • radius: Equatorial radius of central body

References

source
SPICE.spkw17Method
spkw17(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 writing
  • body: Body code for ephemeris object
  • center: Body code for the center of motion of the body
  • frame: The reference frame of the states
  • first: First valid time for which states can be computed
  • last: Last valid time for which states can be computed
  • segid: Segment identifier
  • epoch: Epoch of elements in seconds past J2000
  • eqel: Array of equinoctial elements
  • rapol: Right Ascension of the pole of the reference plane
  • decpol: Declination of the pole of the reference plane

References

source
SPICE.spkw18Method
spkw18(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 writing
  • subtyp: SPK type 18 subtype code, either :S18TP0 or :S18TP1
  • body: NAIF code for an ephemeris object
  • center: NAIF code for center of motion of body
  • frame: Reference frame name
  • first: Start time of interval covered by segment
  • last: End time of interval covered by segment
  • segid: Segment identifier
  • degree: Degree of interpolating polynomials
  • packts: 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]
  • epochs: Array of epochs corresponding to states.

References

source
SPICE.spkw20Method
spkw20(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 writing
  • body: NAIF code for ephemeris object
  • center: NAIF code for the center of motion of the body
  • frame: Reference frame name
  • 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 (days)
  • cdata: Array of Chebyshev coefficients and positions
  • dscale: Distance scale of data
  • tscale: Time scale of data
  • initjd: Integer part of begin time (TDB Julian date) of first record
  • initfr: Fractional part of begin time (TDB Julian date) of first record

References

source
SPICE.srfc2sMethod
srfc2s(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 string
  • bodyid: ID code of body associated with surface

Output

  • srfstr: String corresponding to surface ID code
  • isname: Logical flag indicating output is a surface name

References

source
SPICE.srfcssMethod
srfcss(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 string
  • bodstr: Name or ID of body associated with surface

Output

  • srfstr: String corresponding to surface ID code
  • isname: Logical flag indicating output is a surface name

References

source
SPICE.srfnrmMethod
srfnrm(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 method
  • target: Name of target body
  • et: Epoch in TDB seconds past J2000 TDB
  • fixref: Body-fixed, body-centered target body frame
  • srfpts: Array of surface points

Output

Returns an array of outward, unit length normal vectors.

References

source
SPICE.srfrecMethod
srfrec(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

source
SPICE.srfs2cMethod
srfs2c(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 string
  • bodstr: Body name or ID string

Output

Returns the surface ID code if it was found or nothing otherwise.

References

source
SPICE.srfsccMethod
srfscc(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 string
  • bodyid: Body ID code.

Output

Returns the surface ID code if it was found or nothing otherwise.

References

source
SPICE.ssize!Method
ssize!(cell, size)

Set the size (maximum cardinality) of a cell of any data type.

Arguments

  • cell: The cell
  • size: Size (maximum cardinality) of the cell

Output

Returns the updated cell.

References

source
SPICE.stelabMethod
stelab(pobj, vobs)

Correct the apparent position of an object for stellar aberration.

Arguments

  • pobj: Position of an object with respect to the observer
  • vobs: 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

source
SPICE.stpoolFunction
stpool(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 variable
  • nth: Index of the full string to retrieve
  • contin: Character sequence used to indicate continuation
  • lenout: 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

source
SPICE.str2etMethod
str2et(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

source
SPICE.subpntMethod
subpnt(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 method
  • target: Name of target body
  • et: Epoch in ephemeris seconds past J2000 TDB
  • fixref: Body-fixed, body-centered target body frame
  • abcorr: Aberration correction
  • obsrvr: Name of observing body

Output

  • spoint: Sub-solar point on the target body
  • trgepc: Sub-solar point epoch
  • srfvec: Vector from observer to sub-solar point

References

source
SPICE.subslrMethod
subslr(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 method
  • target: Name of target body
  • et: Epoch in ephemeris seconds past J2000 TDB
  • fixref: Body-fixed, body-centered target body frame
  • abcorr: Aberration correction
  • obsrvr: Name of observing body

Output

  • spoint: Sub-solar point on the target body
  • trgepc: Sub-solar point epoch
  • srfvec: Vector from observer to sub-solar point

References

source
SPICE.surfnmMethod
surfnm(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-axis
  • b: Length of the ellisoid semi-axis along the y-axis
  • c: Length of the ellisoid semi-axis along the z-axis
  • point: Body-fixed coordinates of a point on the ellipsoid

Output

Return the outward pointing unit normal to ellipsoid at point

References

source
SPICE.surfptMethod
surfpt(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 frame
  • u: Vector from the observer in some direction
  • a: Length of the ellipsoid semi-axis along the x-axis
  • b: Length of the ellipsoid semi-axis along the y-axis
  • c: 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

source
SPICE.surfpvMethod
surfpv(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 vertex
  • stdir: State of ray's direction vector
  • a: Length of ellipsoid semi-axis along the x-axis
  • b: Length of ellipsoid semi-axis along the y-axis
  • c: Length of ellipsoid semi-axis along the z-axis

Output

Return the state of surface intercept or nothing if none was found.

References

source
SPICE.swpoolMethod
swpool(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 updates
  • names: Variable names whose update causes the notice

References

source
SPICE.sxformMethod
sxform(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 from
  • to: Name of the frame to transform to
  • et: Epoch of the state transformation matrix

Output

Returns the state transformation matrix.

References

source
SPICE.szpoolMethod
szpool(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

source
SPICE.termptMethod

Find 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 method
  • ilusrc: Illumination source
  • target: Name of target body
  • et: Epoch in ephemeris seconds past J2000 TDB
  • fixref: Body-fixed, body-centered target body frame
  • abcorr: Aberration correction
  • corloc: Aberration correction locus
  • obsrvr: Name of observing body
  • refvec: Reference vector for cutting half-planes
  • rolstp: Roll angular step for cutting half-planes
  • ncuts: Number of cutting planes
  • schstp: Angular step size for searching
  • soltol: Solution convergence tolerance
  • maxn: Maximum number of entries in output arrays

Output

  • npts: Counts of terminator points corresponding to cuts
  • points: Terminator points
  • epochs: Times associated with terminator points
  • trmvcs: Terminator vectors emanating from the observer

References

source
SPICE.timdefFunction
timdef(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 and 0 <= 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

source
SPICE.timoutFunction
timout(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 J2000
  • pictur: A format specification for the output string
  • lenout: The length of the output string plus 1 (default: 128)

Output

Returns a string representation of the input epoch.

References

source
SPICE.tipbodMethod
tipbod(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 from
  • body: ID code of body
  • et: Epoch of transformation

Output

Returns transformation matrix from intertial position to prime meridian.

References

source
SPICE.tisbodMethod
tisbod(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 from
  • body: ID code of body
  • et: Epoch of transformation

Output

Returns transformation matrix from intertial state to prime meridian.

References

source
SPICE.tparseMethod
tparse(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

source
SPICE.tpictrFunction
tpictr(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 string
  • lenout: The length for the output picture string (default: 80)

Output

Returns a format picture that describes sample.

References

source
SPICE.traceFunction
trace(matrix)
Deprecated

Use LinearAlgebra.tr(matrix) instead.

source
SPICE.twovecMethod
twovec(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 axis
  • indexa: Principal axis number of axdef (X=1, Y=2, Z=3)
  • plndef: Vector defining (with axdef) a principal plane
  • indexp: Second axis number (with indexa) of principal plane

Output

Returns output rotation matrix.

References

source
SPICE.ucrssFunction
ucrss(v1, v2)
Deprecated

Use LinearAlgebra.normalize(LinearAlgebra.cross(v1, v2)) instead.

source
SPICE.uddfMethod
uddf(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 of udfunc
  • dx: Interval from x for derivative calculation

Output

Returns the approximate derivative of udfunc at x.

References

source
SPICE.unitimMethod
unitim(epoch, insys, outsys)

Transform time from one uniform scale to another.

Arguments

  • epoch: An epoch to be converted
  • insys: The time scale associated with the input epoch
  • outsys: 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

source
SPICE.unormFunction
unorm(v1)
Deprecated

Use (LinearAlgebra.normalize(v1), LinearAlgebra.norm(v1)) instead.

source
SPICE.unormgFunction
unormg(v1)
Deprecated

Use (LinearAlgebra.normalize(v1), LinearAlgebra.norm(v1)) instead.

source
SPICE.utc2etMethod
utc2et(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

source
SPICE.valid!Method
valid!(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

source
SPICE.vcrssFunction
vcrss(v1, v2)
Deprecated

Use LinearAlgebra.cross(v1, v2) instead.

source
SPICE.vdistFunction
vdist(v1, v2)
Deprecated

Use LinearAlgebra.norm(v1 .- v2) instead.

source
SPICE.vdistgFunction
vdistg(v1, v2)
Deprecated

Use LinearAlgebra.norm(v1 .- v2) instead.

source
SPICE.vdotFunction
vdot(v1, v2)
Deprecated

Use LinearAlgebra.dot(v1, v2) instead.

source
SPICE.vdotgFunction
vdotg(v1, v2)
Deprecated

Use LinearAlgebra.dot(v1, v2) instead.

source
SPICE.vhatFunction
vhat(v1)
Deprecated

Use LinearAlgebra.normalize(v1) instead.

source
SPICE.vhatgFunction
vhatg(v1)
Deprecated

Use LinearAlgebra.normalize(v1) instead.

source
SPICE.vlcomFunction
vlcom(a, v1, b, v2)
Deprecated

Use a .* v1 .+ b .* v2 instead.

source
SPICE.vlcom3Function
vlcom3(a, v1, b, v2, c, v3)
Deprecated

Use a .* v1 .+ b .* v2 .+ c .* v3 instead.

source
SPICE.vlcomgFunction
vlcomg(a, v1, b, v2)
Deprecated

Use a .* v1 .+ b .* v2 instead.

source
SPICE.vnormgFunction
vnormg(v1, v2)
Deprecated

Use LinearAlgebra.norm(v1) instead.

source
SPICE.vperpMethod
vperp(a, b)

Find the component of a vector that is perpendicular to a second vector.

Arguments

  • a: The vector whose orthogonal component is sought
  • b: The vector used as the orthogonal reference

Output

Returns the component a orthogonal to b.

References

source
SPICE.vprjpMethod
vprjp(vin, plane)

Project a vector onto a specified plane, orthogonally.

Arguments

  • vin: Vector to be projected
  • plane: Plane onto which vin is projected

Output

Returns the vector resulting from the projection.

References

source
SPICE.vprjpiMethod
vprjpi(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 vector
  • projpl: Plane containing vin
  • invpl: Plane containing inverse image of vin

Output

Returns the inverse projection of vin or nothing if vin could not be calculated.

References

source
SPICE.vprojMethod
vproj(a, b)

Finds the projection of one vector onto another vector. All vectors are 3-dimensional.

Arguments

  • a: The vector to be projected
  • b: The vector onto which a is to be projected

Output

Returns the projection of a onto b.

References

source
SPICE.vrelMethod
vrel(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

source
SPICE.vrelgMethod
vrelg(v1, v2)

Return the relative difference between two vectors.

Arguments

  • v1, v2: Input vectors

Output

Returns the relative differences between v1 and v2.

References

source
SPICE.vrotvMethod
vrotv(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 rotated
  • axis: Axis of the rotation
  • theta: Angle of rotation (radians)

Output

Result of rotating v about axis by theta.

References

source
SPICE.vsepMethod
vsep(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

source
SPICE.vsepgMethod
vsepg(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

source
SPICE.vtmvFunction
vtmv(v1, matrix, v2)
Deprecated

Use v1' * matrix * v2 instead.

source
SPICE.vtmvgFunction
vtmvg(v1, matrix, v2)
Deprecated

Use v1' * matrix * v2 instead.

source
SPICE.wncomdMethod
wncomd(window, left, right)

Determine the complement of a double precision window with respect to a specified interval.

Arguments

  • window: Input window
  • left: Left endpoint of the complement interval
  • right: Right endpoint of the complement interval

Output

Returns the complement of window with respect to [left,right].

References

source
SPICE.wncond!Method
wncond!(window, left, right)

Contract each of the intervals of a double precision window.

Arguments

  • window: Window to be contracted
  • left: Amount added to each left endpoint
  • right: Amount subtracted from each right endpoint

Output

Returns the contracted window.

References

source
SPICE.wndifdMethod
wndifd(a, b)

Place the difference of two double precision windows into a third window.

Arguments

  • a: Input window
  • b: Input window

Output

Returns a window containing the difference of a and b.

References

source
SPICE.wnelmdMethod
wnelmd(window, point)

Determine whether a point is an element of a double precision window.

Arguments

  • window: Input window
  • point: Input point

Output

Returns true if point is an element of window.

References

source
SPICE.wnexpd!Method
wnexpd(window, left, right)

Expand each of the intervals of a double precision window.

Arguments

  • left: Amount subtracted from each left endpoint
  • right: Amount added to each right endpoint

Output

Returns the expanded window.

References

source
SPICE.wnextd!Method
wnextd!(window, side)

Extract the left or right endpoints from a double precision window.

Arguments

  • window: Window to be extracted
  • side: Extract left (:L) or right (:R) endpoints

Output

Returns the extracted window.

References

source
SPICE.wnfetdMethod
wnfetd(window, n)

Fetch a particular interval from a double precision window.

Arguments

  • window: Input window
  • n: 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

source
SPICE.wnfild!Method
wnfild!(window, small)

Fill small gaps between adjacent intervals of a double precision window.

Arguments

  • window: Window to be filled
  • small: Limiting measure of small gaps

Output

Returns the updated window.

References

source
SPICE.wnfltd!Method
wnfild!(window, small)

Filter (remove) small intervals from a double precision window.

Arguments

  • window: Window to be filtered
  • small: Limiting measure of small intervals

Output

Returns the updated window.

References

source
SPICE.wnincdMethod
wnincd(window, left, right)

Determine whether an interval is included in a double precision window.

Arguments

  • window: Input window
  • left: Left endpoint of the input interval
  • right: Right endpoint of the input interval

Output

Returns true when (left, right) is contained in window.

References

source
SPICE.wninsd!Method
wninsd!(window, left, right)

Insert an interval into a double precision window.

Arguments

  • window: Input window
  • left: Left endpoint of the new interval
  • right: Right endpoint of the new interval

Output

Returns the updated windows.

References

source
SPICE.wnintdMethod
wnintd(a, b)

Place the intersection of two double precision windows into a third window.

Arguments

  • a: Input window
  • b: Input window

Output

Returns a window containing the intersection of a and b.

References

source
SPICE.wnreldMethod
wnreld(a, op, b)

Compare two double precision windows.

Note

Consider using overloaded operators instead, i.e. a == b, a ⊆ b, and a ⊊ b.

Arguments

  • a: First window
  • op: Comparison operator
  • b: Second window

Output

Returns the result of comparison a (op) b.

References

source
SPICE.wnsumdMethod
wnsumd(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 window
  • avg: Average measure
  • stddev: Standard deviation
  • shortest: Location of shortest interval
  • longest: Location of longest interval

References

source
SPICE.wnunidMethod
wnunid(a, b)

Place the union of two double precision windows into a third window.

Arguments

  • a: Input window
  • b: Input window

Output

Returns a window containing the union of a and b.

References

source
SPICE.wnvald!Method
wnvald!(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

source
SPICE.xf2eulMethod
xf2eul(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 matrix
  • axisa: Axis A of the Euler angle factorization
  • axisb: Axis B of the Euler angle factorization
  • axisc: 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

source
SPICE.xf2ravMethod
xf2rav(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

source
SPICE.xfmstaMethod
xfmsta(input_state, input_coord_sys, output_coord_sys, body)

Transform a state between coordinate systems.

Arguments

  • input_state: Input state
  • input_coord_sys: Current (input) coordinate system
  • output_coord_sys: Desired (output) coordinate system
  • body: Name or NAIF ID of body with which coordinates are associated (if applicable)

Output

Returns the converted output state.

References

source