public abstract class AbstractFrames extends Object implements Frames
Frames
that creates frames when they are
first used and uses synchronization to ensure that each frame is only created once.LazyLoadedFrames
,
Frames.getEOPHistory(IERSConventions, boolean)
Constructor and Description |
---|
AbstractFrames(TimeScales timeScales,
Supplier<Frame> icrfSupplier)
Simple constructor.
|
Modifier and Type | Method and Description |
---|---|
FactoryManagedFrame |
getCIRF(IERSConventions conventions,
boolean simpleEOP)
Get the CIRF2000 reference frame.
|
Frame |
getEcliptic(IERSConventions conventions)
Get the ecliptic frame.
|
FactoryManagedFrame |
getEME2000()
Get the unique EME2000 frame.
|
Frame |
getFrame(Predefined factoryKey)
Get one of the predefined frames.
|
Frame |
getGCRF()
Get the unique GCRF frame.
|
FactoryManagedFrame |
getGTOD(boolean applyEOPCorr)
Get the GTOD reference frame.
|
FactoryManagedFrame |
getGTOD(IERSConventions conventions,
boolean simpleEOP)
Get the GTOD reference frame.
|
Frame |
getICRF()
Get the unique ICRF frame.
|
FactoryManagedFrame |
getITRF(IERSConventions conventions,
boolean simpleEOP)
Get an unspecified International Terrestrial Reference Frame.
|
VersionedITRF |
getITRF(ITRFVersion version,
IERSConventions conventions,
boolean simpleEOP)
Get an specific International Terrestrial Reference Frame.
|
FactoryManagedFrame |
getITRFEquinox(IERSConventions conventions,
boolean simpleEOP)
Get the equinox-based ITRF reference frame.
|
FactoryManagedFrame |
getMOD(boolean applyEOPCorr)
Get the MOD reference frame.
|
FactoryManagedFrame |
getMOD(IERSConventions conventions)
Get the MOD reference frame.
|
FactoryManagedFrame |
getPZ9011(IERSConventions convention,
boolean simpleEOP)
Get the PZ-90.11 (Parametry Zemly – 1990.11) reference frame.
|
FactoryManagedFrame |
getTEME()
Get the TEME reference frame.
|
protected TimeScales |
getTimeScales()
Get the time scales.
|
FactoryManagedFrame |
getTIRF(IERSConventions conventions)
Get the TIRF reference frame, ignoring tidal effects.
|
FactoryManagedFrame |
getTIRF(IERSConventions conventions,
boolean simpleEOP)
Get the TIRF reference frame.
|
FactoryManagedFrame |
getTOD(boolean applyEOPCorr)
Get the TOD reference frame.
|
FactoryManagedFrame |
getTOD(IERSConventions conventions,
boolean simpleEOP)
Get the TOD reference frame.
|
FactoryManagedFrame |
getVeis1950()
Get the VEIS 1950 reference frame.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getEOPHistory, of, of
public AbstractFrames(TimeScales timeScales, Supplier<Frame> icrfSupplier)
timeScales
- to use when creating frames.icrfSupplier
- used to implement getICRF()
;public Frame getFrame(Predefined factoryKey)
Frames
public Frame getGCRF()
Frames
The GCRF frame is the root frame in the frame tree.
public Frame getICRF()
Frames
The ICRF frame is centered at solar system barycenter and aligned with GCRF.
public Frame getEcliptic(IERSConventions conventions)
Frames
MOD
.
This implementation agrees with the JPL 406 ephemerides to within 0.5 arc seconds.
getEcliptic
in interface Frames
conventions
- IERS conventions to applypublic FactoryManagedFrame getEME2000()
Frames
The EME2000 frame is also called the J2000 frame. The former denomination is preferred in Orekit.
getEME2000
in interface Frames
public FactoryManagedFrame getITRF(IERSConventions conventions, boolean simpleEOP)
Frames
The frame returned uses the Earth Orientation Parameters
blindly. So if for example one loads only EOP 14 C04 files to retrieve
the parameters, the frame will be an ITRFVersion.ITRF_2014
. However,
if parameters are loaded from different files types, or even for file
types that changed their reference (like Bulletin A switching from
ITRFVersion.ITRF_2008
to ITRFVersion.ITRF_2014
starting
with Vol. XXXI No. 013 published on 2018-03-29), then the ITRF returned
by this method will jump from one version to another version.
IF a specific version of ITRF is needed, then Frames.getITRF(ITRFVersion,
IERSConventions, boolean)
should be used instead.
getITRF
in interface Frames
conventions
- IERS conventions to applysimpleEOP
- if true, tidal effects are ignored when interpolating EOPFrames.getITRF(ITRFVersion, IERSConventions, boolean)
public FactoryManagedFrame getTIRF(IERSConventions conventions)
Frames
public VersionedITRF getITRF(ITRFVersion version, IERSConventions conventions, boolean simpleEOP)
Frames
Note that if a specific version of ITRF is required, then simpleEOP
should most probably be set to false
, as ignoring tidal effects
has an effect of the same order of magnitude as the differences between
the various ITRF versions
.
public FactoryManagedFrame getTIRF(IERSConventions conventions, boolean simpleEOP)
Frames
public FactoryManagedFrame getCIRF(IERSConventions conventions, boolean simpleEOP)
Frames
public FactoryManagedFrame getVeis1950()
Frames
Its parent frame is the GTOD frame with IERS 1996 conventions without EOP corrections.
getVeis1950
in interface Frames
public FactoryManagedFrame getITRFEquinox(IERSConventions conventions, boolean simpleEOP)
Frames
getITRFEquinox
in interface Frames
conventions
- IERS conventions to applysimpleEOP
- if true, tidal effects are ignored when interpolating EOPpublic FactoryManagedFrame getGTOD(boolean applyEOPCorr)
Frames
The applyEOPCorr parameter is available mainly for testing purposes or for
consistency with legacy software that don't handle EOP correction parameters.
Beware that setting this parameter to false
leads to crude accuracy
(order of magnitudes for errors might be above 250m in LEO and 1400m in GEO).
For this reason, setting this parameter to false is restricted to IERS 1996
conventions, and hence the IERS conventions
cannot be freely chosen here.
public FactoryManagedFrame getGTOD(IERSConventions conventions, boolean simpleEOP)
Frames
public FactoryManagedFrame getTOD(boolean applyEOPCorr)
Frames
The applyEOPCorr parameter is available mainly for testing purposes or for
consistency with legacy software that don't handle EOP correction parameters.
Beware that setting this parameter to false
leads to crude accuracy
(order of magnitudes for errors might be above 1m in LEO and 10m in GEO).
For this reason, setting this parameter to false is restricted to IERS 1996
conventions, and hence the IERS conventions
cannot be freely chosen here.
public FactoryManagedFrame getTOD(IERSConventions conventions, boolean simpleEOP)
Frames
public FactoryManagedFrame getMOD(boolean applyEOPCorr)
Frames
The applyEOPCorr parameter is available mainly for testing purposes or for
consistency with legacy software that don't handle EOP correction parameters.
Beware that setting this parameter to false
leads to crude accuracy
(order of magnitudes for errors might be above 1m in LEO and 10m in GEO).
For this reason, setting this parameter to false is restricted to IERS 1996
conventions, and hence the IERS conventions
cannot be freely chosen here.
public FactoryManagedFrame getMOD(IERSConventions conventions)
Frames
public FactoryManagedFrame getTEME()
Frames
The TEME frame is used for the SGP4 model in TLE propagation. This frame has no official definition and there are some ambiguities about whether it should be used as "of date" or "of epoch". This frame should therefore be used only for TLE propagation and not for anything else, as recommended by the CCSDS Orbit Data Message blue book.
public FactoryManagedFrame getPZ9011(IERSConventions convention, boolean simpleEOP)
Frames
The PZ-90.11 reference system was updated on all operational GLONASS satellites starting from 3:00 pm on December 31, 2013.
The transition between parent frame (ITRF-2008) and PZ-90.11 frame is performed using a seven parameters Helmert transformation.
From To ΔX(m) ΔY(m) ΔZ(m) RX(mas) RY(mas) RZ(mas) Epoch ITRF-2008 PZ-90.11 +0.003 +0.001 -0.000 +0.019 -0.042 +0.002 2010
getPZ9011
in interface Frames
convention
- IERS conventions to applysimpleEOP
- if true, tidal effects are ignored when interpolating EOPprotected TimeScales getTimeScales()
Copyright © 2002-2020 CS Group. All rights reserved.