Package gaiasky.util.gaia
Class Nsl37
java.lang.Object
gaiasky.util.gaia.BaseAttitudeDataServer<Attitude>
gaiasky.util.gaia.AnalyticalAttitudeDataServer
gaiasky.util.gaia.Nsl37
Improved analytical representation of the Gaia Nominal Scanning Law (NSL).
Based on GAIA-CA-TN-OCA-FM-037-2.
-
Field Summary
Fields inherited from class gaiasky.util.gaia.AnalyticalAttitudeDataServer
ARCSEC_PER_S_TO_DEG_PER_DAY, FOUR_PI, nslSun, OBLIQUITY_DEG, OBLIQUITY_RAD, PI, PI_HALF, targetScanPeriod, TWO_PI, X_AXIS, Y_AXIS, Z_AXIS
Fields inherited from class gaiasky.util.gaia.BaseAttitudeDataServer
initialized, initialRequestedTimeContext, nativeTimeContext, withUncertaintiesCorrelations
-
Constructor Summary
ConstructorDescriptionNsl37()
Creates a new instance of the Nominal Scanning Law with default values from the GPDB -
Method Summary
Modifier and TypeMethodDescriptiongetAttitudeNative(double julianDate)
Calculate the scanning law at a given time.protected Attitude
getAttitudeNative(long tNow)
Evaluate the attitude in the native time system of the serverdouble
double
double
double
double
double
int
double
modFourPi(double angle)
Returns the argument modulo 4*pi [rad]void
Initializes quantities that only depend on the initial parameters.Methods inherited from class gaiasky.util.gaia.AnalyticalAttitudeDataServer
getNominalSunVector, getNuRef, getOmegaRef, getRefTime, getTargetPrecessionRate, getTargetScanPeriod, getTargetScanRate, getXiRef, inGap, setDefault, setNuRef, setOmegaRef, setRefTime, setTargetPrecessionRate, setTargetScanPeriod, setTargetScanRate, setXiRef
Methods inherited from class gaiasky.util.gaia.BaseAttitudeDataServer
getAttitude, getAttitude, isInitialized, setInitialized
-
Constructor Details
-
Nsl37
public Nsl37()Creates a new instance of the Nominal Scanning Law with default values from the GPDB
-
-
Method Details
-
getAttitudeNative
Calculate the scanning law at a given time. See GAIA-CA-TN-OCA-FM-037-2- Parameters:
julianDate
- The julian date- Returns:
- The attidue object
-
getAttitudeNative
Description copied from class:BaseAttitudeDataServer
Evaluate the attitude in the native time system of the server- Specified by:
getAttitudeNative
in classBaseAttitudeDataServer<Attitude>
- Parameters:
tNow
- The time elapsed in nanoseconds since epoch J2010- Returns:
- The attitude object
-
recomputeConstants
public void recomputeConstants()Initializes quantities that only depend on the initial parameters. Must be called whenever the scanning law parameters have been changed. -
modFourPi
public double modFourPi(double angle)Returns the argument modulo 4*pi [rad]- Parameters:
angle
- angle [rad]- Returns:
- angle modulo 4*PI
-
getNuFull
public double getNuFull()- Returns:
- full precession angle [rad]
-
getNuMod4Pi
public double getNuMod4Pi()- Returns:
- precession angle modulo 2 Pi
-
getOmegaFull
public double getOmegaFull()- Returns:
- full spin angle [rad]
-
getOmegaRevs
public int getOmegaRevs()- Returns:
- number of revolutions around the spin axis
-
getOmegaMod4Pi
public double getOmegaMod4Pi()- Returns:
- spin angle modulo 4 Pi
-
getLSunRef
public double getLSunRef()- Returns:
- longitude of sun [rad]
-
getOmegaDot1
public double getOmegaDot1()- Returns:
- time derivative of spin angle
-