CSPICE_DRDGEO computes the Jacobian of the transformation from
geodetic to rectangular coordinates.
lon geodetic longitude of point (radians).
[1,n] = size(lon); double = class(lon)
lat geodetic latitude of point (radians).
[1,n] = size(lat); double = class(lat)
alt Altitude of point above the reference spheroid. Units of `alt'
must match those of `re'.
[1,n] = size(alt); double = class(alt)
re equatorial radius of a reference spheroid. This spheroid is a
volume of revolution: its horizontal cross sections are circular.
The shape of the spheroid is defined by an equatorial radius `re'
and a polar radius `rp'. Units of 're' must match those of 'alt'.
[1,1] = size(re); double = class(re)
f the flattening coefficient
[1,1] = size(f); double = class(f)
f = (re-rp) / re
where rp is the polar radius of the spheroid. (More importantly
rp = re*(1-f).) The units of `rp' match those of `re'.
jacobi = cspice_drdgeo( lon, lat, alt, re, f)
jacobi the matrix of partial derivatives of the conversion between
geodetic and rectangular coordinates. It has the form
If [1,1] = size(lon) then [3,3] = size(jacobi)
If [1,n] = size(lon) then [3,3,n] = size(jacobi)
double = class(jacobi)
| dx/dlon dx/dlat dx/dalt |
| dy/dlon dy/dlat dy/dalt |
| dz/dlon dz/dlat dz/dalt |
evaluated at the input values of lon, lat and alt.
The formulae for computing x, y, and z from
geodetic coordinates are given below.
x = [alt + re/g(lat,f)]*cos(lon)*cos(lat)
y = [alt + re/g(lat,f)]*sin(lon)*cos(lat)
z = [alt + re*(1-f) /g(lat,f)]* sin(lat)
re is the polar radius of the reference spheroid.
f is the flattening factor (the polar radius is
obtained by multiplying the equatorial radius by 1-f).
g( lat, f ) is given by
2 2 2
sqrt ( cos (lat) + (1-f) * sin (lat) )
It is often convenient to describe the motion of an object in
the geodetic coordinate system. However, when performing
vector computations its hard to beat rectangular coordinates.
To transform states given with respect to geodetic coordinates
to states with respect to rectangular coordinates, one makes use
of the Jacobian of the transformation between the two systems.
Given a state in geodetic coordinates
( lon, lat, alt, dlon, dlat, dalt )
the velocity in rectangular coordinates is given by the matrix
t | t
(dx, dy, dz) = jacobi| * (dlon, dlat, dalt)
This routine computes the matrix
For important details concerning this module's function, please refer to
the CSPICE routine drdgeo_c.
-Mice Version 1.0.0, 12-MAR-2012, EDW (JPL), SCK (JPL)
Jacobian of rectangular w.r.t. geodetic coordinates