Module: IERS::TerrestrialRotation

Defined in:
lib/iers/terrestrial_rotation.rb

Class Method Summary collapse

Class Method Details

.at(input = nil, jd: nil, mjd: nil, interpolation: nil) ⇒ Array<Array<Float>>

Compute R(ERA) × W, the rotation from ITRS to TIRS (IERS Conventions 2010, eq. 5.1), combining the Earth Rotation Angle and polar motion matrices.

Parameters:

  • input (Time, Date, DateTime, nil) (defaults to: nil)
  • jd (Float, nil) (defaults to: nil)

    Julian Date

  • mjd (Float, nil) (defaults to: nil)

    Modified Julian Date

  • interpolation (Symbol, nil) (defaults to: nil)

    +:lagrange+ or +:linear+

Returns:

  • (Array<Array<Float>>)

    3×3 rotation matrix (row-major)

Raises:



17
18
19
20
21
22
23
24
25
# File 'lib/iers/terrestrial_rotation.rb', line 17

def at(input = nil, jd: nil, mjd: nil, interpolation: nil)
  query_mjd = TimeScale.to_mjd(input, jd: jd, mjd: mjd)
  era = EarthRotationAngle.at(mjd: query_mjd, interpolation: interpolation)
  w = PolarMotion.rotation_matrix_at(
    mjd: query_mjd, interpolation: interpolation
  )

  multiply(r3_matrix(era), w)
end