Class NslSun

java.lang.Object
gaiasky.util.coord.NslSun

public class NslSun extends Object
  • Constructor Details

    • NslSun

      public NslSun()
      Constructor
  • Method Details

    • setTime

      public void setTime(double julianDate)
      Calculate all fields for a given julian date.
      Parameters:
      julianDate - The julian date.
    • setTime

      public void setTime(long tNs)
      Calculate all fields for a given time

      Author: F. Mignard

      Parameters:
      tNs - time in [ns] since the time origin
    • getSolarLongitude

      public double getSolarLongitude()
      Returns:
      solar longitude in [rad]
    • getSolarLongitudeMod4Pi

      public double getSolarLongitudeMod4Pi()
      Returns:
      solar longitude in [rad], modulo 4*PI
    • getSolarLongitudeDot

      public double getSolarLongitudeDot()
      Returns:
      time derivative of solar longitude in [rad/day]
    • getSolarDirection

      public Vector3d getSolarDirection(Vector3d out)
      Parameters:
      out - The output vector.
      Returns:
      The output vector containing the solar direction as a unit 3-vector in BCRS.
    • heliotropicToQuaternion

      public QuaternionDouble heliotropicToQuaternion(long t, double xi, double nu, double Omega)
      Method to convert heliotropic angles to quaternion
      Parameters:
      t - time [ns]
      xi - revolving angle (solar aspect angle) [rad]
      nu - revolving phase [rad]
      Omega - spin phase [rad]
      Returns:
      attitude quaternion
    • angleBase

      public double angleBase(double x, int nRev)
      Puts an angle in the base interval [ 0, nRev*2*PI )
      Parameters:
      x - angle [rad]
      nRev - number of revolutions in base interval
      Returns:
      angle in base interval [rad]