Skip to content

Documentation / @interstellar-tools/equations / bodyFixedFromInertialDcmIAU

Function: bodyFixedFromInertialDcmIAU() ​

ts
function bodyFixedFromInertialDcmIAU(
  alphaP: Radians,
  deltaP: Radians,
  W: Radians
): Matrix3x3Type;

Defined in: cartography/body-fixed-from-inertial-dcm-iau.ts:54

Build the IAU-style inertial → body-fixed direction cosine matrix (DCM).

This constructs the 3×3 rotation matrix that transforms a vector expressed in an inertial frame (commonly ICRF/J2000-like) into the body-fixed, planetocentric frame defined by:

  • the body's north pole right ascension (αp),
  • the body's north pole declination (δp),
  • the prime meridian angle (W(t)).

Using the common 3-1-3 sequence:

RBF←ICRF=R3(W)R1(π2−δp)R3(π2+αp)

Notes:

  • All angles are in radians.
  • Matrices are row-major (M[row][col]).
  • The returned matrix can be applied to inertial vectors via applyMatrix3(R, v).

Parameters ​

ParameterTypeDescription
alphaPRadiansRight ascension of the north pole (αp) in radians (finite).
deltaPRadiansDeclination of the north pole (δp) in radians (finite).
WRadiansPrime meridian angle (W(t)) in radians (finite).

Returns ​

Matrix3x3Type

3×3 DCM (RBF←ICRF) (row-major).

Throws ​

If any input is not a finite number.

Example ​

ts
// Given IAU pole and prime meridian angles (radians):
const R = bodyFixedFromInertialDcmIAU(alphaP, deltaP, W);

// Transform an inertial vector into body-fixed:
const vBF = applyMatrix3(R, vICRF);

See ​