Class CachedNormalizedSphericalHarmonicsProvider
java.lang.Object
org.orekit.forces.gravity.potential.CachedNormalizedSphericalHarmonicsProvider
- All Implemented Interfaces:
NormalizedSphericalHarmonicsProvider,SphericalHarmonicsProvider,TideSystemProvider
public class CachedNormalizedSphericalHarmonicsProvider
extends Object
implements NormalizedSphericalHarmonicsProvider
Caching wrapper for
NormalizedSphericalHarmonicsProvider.
This wrapper improves efficiency of NormalizedSphericalHarmonicsProvider
by sampling the values at a user defined rate and using interpolation
between samples. This is important with providers that have sub-daily
frequencies and are computing intensive, such as tides fields.
- Since:
- 6.1
- Author:
- Luc Maisonobe
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.orekit.forces.gravity.potential.NormalizedSphericalHarmonicsProvider
NormalizedSphericalHarmonicsProvider.NormalizedSphericalHarmonics -
Constructor Summary
ConstructorsConstructorDescriptionCachedNormalizedSphericalHarmonicsProvider(NormalizedSphericalHarmonicsProvider rawProvider, double step, int nbPoints, int maxSlots, double maxSpan, double newSlotInterval) Simple constructor. -
Method Summary
Modifier and TypeMethodDescriptiondoublegetAe()Get the value of the central body reference radius.intGet the maximal supported degree.intGet the maximal supported order.doublegetMu()Get the central body attraction coefficient.Get the reference date for the harmonics.Get theTideSystemused in the gravity field.onDate(AbsoluteDate date) Get the normalized spherical harmonic coefficients at a specific instance in time.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.orekit.forces.gravity.potential.NormalizedSphericalHarmonicsProvider
getNormalizedC20
-
Constructor Details
-
CachedNormalizedSphericalHarmonicsProvider
public CachedNormalizedSphericalHarmonicsProvider(NormalizedSphericalHarmonicsProvider rawProvider, double step, int nbPoints, int maxSlots, double maxSpan, double newSlotInterval) Simple constructor.- Parameters:
rawProvider- underlying raw providerstep- time step between sample points for interpolationnbPoints- number of points to use for interpolation, must be at least 2maxSlots- maximum number of independent cached time slotsmaxSpan- maximum duration span in seconds of one slot (can be set toDouble.POSITIVE_INFINITYif desired)newSlotInterval- time interval above which a new slot is created instead of extending an existing one
-
-
Method Details
-
getMaxDegree
public int getMaxDegree()Get the maximal supported degree.- Specified by:
getMaxDegreein interfaceSphericalHarmonicsProvider- Returns:
- maximal supported degree
-
getMaxOrder
public int getMaxOrder()Get the maximal supported order.- Specified by:
getMaxOrderin interfaceSphericalHarmonicsProvider- Returns:
- maximal supported order
-
getMu
public double getMu()Get the central body attraction coefficient.- Specified by:
getMuin interfaceSphericalHarmonicsProvider- Returns:
- mu (m³/s²)
-
getAe
public double getAe()Get the value of the central body reference radius.- Specified by:
getAein interfaceSphericalHarmonicsProvider- Returns:
- ae (m)
-
getReferenceDate
Get the reference date for the harmonics.For piecewise models, the latest reference date is returned.
- Specified by:
getReferenceDatein interfaceSphericalHarmonicsProvider- Returns:
- reference date for the harmonics (may be null if no reference date is defined)
-
getTideSystem
Get theTideSystemused in the gravity field.- Specified by:
getTideSystemin interfaceTideSystemProvider- Returns:
- tide system used in the gravity field
-
onDate
Get the normalized spherical harmonic coefficients at a specific instance in time.- Specified by:
onDatein interfaceNormalizedSphericalHarmonicsProvider- Parameters:
date- of evaluation- Returns:
- normalized coefficients on
date.
-