public class CachedNormalizedSphericalHarmonicsProvider extends Object implements NormalizedSphericalHarmonicsProvider
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.
NormalizedSphericalHarmonicsProvider
,
SolidTides
,
TimeStampedCache
NormalizedSphericalHarmonicsProvider.NormalizedSphericalHarmonics
Constructor and Description |
---|
CachedNormalizedSphericalHarmonicsProvider(NormalizedSphericalHarmonicsProvider rawProvider,
double step,
int nbPoints,
int maxSlots,
double maxSpan,
double newSlotInterval)
Simple constructor.
|
Modifier and Type | Method and Description |
---|---|
double |
getAe()
Get the value of the central body reference radius.
|
int |
getMaxDegree()
Get the maximal supported degree.
|
int |
getMaxOrder()
Get the maximal supported order.
|
double |
getMu()
Get the central body attraction coefficient.
|
double |
getOffset(AbsoluteDate date)
Get the offset from
reference date for the harmonics. |
AbsoluteDate |
getReferenceDate()
Get the reference date for the harmonics.
|
TideSystem |
getTideSystem()
Get the
TideSystem used in the gravity field. |
NormalizedSphericalHarmonicsProvider.NormalizedSphericalHarmonics |
onDate(AbsoluteDate date)
Get the normalized spherical harmonic coefficients at a specific instance in time.
|
public CachedNormalizedSphericalHarmonicsProvider(NormalizedSphericalHarmonicsProvider rawProvider, double step, int nbPoints, int maxSlots, double maxSpan, double newSlotInterval)
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 to Double.POSITIVE_INFINITY
if desired)newSlotInterval
- time interval above which a new slot is created
instead of extending an existing onepublic int getMaxDegree()
getMaxDegree
in interface SphericalHarmonicsProvider
public int getMaxOrder()
getMaxOrder
in interface SphericalHarmonicsProvider
public double getMu()
getMu
in interface SphericalHarmonicsProvider
public double getAe()
getAe
in interface SphericalHarmonicsProvider
public AbsoluteDate getReferenceDate()
getReferenceDate
in interface SphericalHarmonicsProvider
public double getOffset(AbsoluteDate date)
reference date
for the harmonics.getOffset
in interface SphericalHarmonicsProvider
date
- current dateSphericalHarmonicsProvider.getReferenceDate()
returns null)public TideSystem getTideSystem()
TideSystem
used in the gravity field.getTideSystem
in interface TideSystemProvider
public NormalizedSphericalHarmonicsProvider.NormalizedSphericalHarmonics onDate(AbsoluteDate date) throws TimeStampedCacheException
onDate
in interface NormalizedSphericalHarmonicsProvider
date
- of evaluationdate
.TimeStampedCacheException
Copyright © 2002-2017 CS Systèmes d'information. All rights reserved.