Class AbstractShortTermEncounter2DPOCMethod
- java.lang.Object
-
- org.orekit.ssa.collision.shorttermencounter.probability.twod.AbstractShortTermEncounter2DPOCMethod
-
- All Implemented Interfaces:
ShortTermEncounter2DPOCMethod
- Direct Known Subclasses:
AbstractAlfriend1999
,AbstractShortTermEncounter1DNumerical2DPOCMethod
,Alfano2005
,Chan1997
,Laas2015
public abstract class AbstractShortTermEncounter2DPOCMethod extends Object implements ShortTermEncounter2DPOCMethod
This abstract class serves as a foundation to create 2D probability of collision computing method assuming a short term encounter model.All the methods extending this class will at least assume the followings :
- Short term encounter leading to a linear relative motion.
- Spherical collision object.
- Uncorrelated positional covariance.
- Gaussian distribution of the position uncertainties.
- Deterministic velocity i.e. no velocity uncertainties.
Consequently and if we consider Earth, methods implementing this interface are recommended for collision happening in Low/Medium Earth Orbit (LEO and MEO) but are not recommended for collision happening in Geostationary Earth Orbit (GEO).
- Since:
- 12.0
- Author:
- Vincent Cucchietti
-
-
Field Summary
Fields Modifier and Type Field Description static double
DEFAULT_TCA_DIFFERENCE_TOLERANCE
Default time of closest approach difference tolerance.-
Fields inherited from interface org.orekit.ssa.collision.shorttermencounter.probability.twod.ShortTermEncounter2DPOCMethod
DEFAULT_ZERO_THRESHOLD
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractShortTermEncounter2DPOCMethod(String name)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ProbabilityOfCollision
compute(Cdm cdm, double combinedRadius)
Compute the probability of collision using a Conjunction Data Message (CDM).<T extends CalculusFieldElement<T>>
FieldProbabilityOfCollision<T>compute(Cdm cdm, T combinedRadius, double zeroThreshold)
Compute the probability of collision using a Conjunction Data Message (CDM).<T extends CalculusFieldElement<T>>
FieldProbabilityOfCollision<T>compute(FieldOrbit<T> primaryAtTCA, FieldStateCovariance<T> primaryCovariance, FieldOrbit<T> secondaryAtTCA, FieldStateCovariance<T> secondaryCovariance, T combinedRadius, double zeroThreshold)
Compute the probability of collision using parameters necessary for creating acollision definition
instance.ProbabilityOfCollision
compute(Orbit primaryAtTCA, StateCovariance primaryCovariance, Orbit secondaryAtTCA, StateCovariance secondaryCovariance, double combinedRadius, double zeroThreshold)
Compute the probability of collision using parameters necessary for creating acollision definition
instance.<T extends CalculusFieldElement<T>>
FieldProbabilityOfCollision<T>compute(FieldShortTermEncounter2DDefinition<T> encounter, double zeroThreshold)
Compute the probability of collision using given collision definition.ProbabilityOfCollision
compute(ShortTermEncounter2DDefinition encounter, double zeroThreshold)
Compute the probability of collision using given collision definition.String
getName()
Get name of the method.protected Orbit
getObjectOrbitFromCdm(CdmRelativeMetadata cdmRelativeMetadata, CdmData cdmData, CdmMetadata cdmMetadata, DataContext cdmDataContext)
Extract collision object spacecraft state from givenConjunction Data Message
data.protected StateCovariance
getObjectStateCovarianceFromCdm(CdmRelativeMetadata cdmRelativeMetadata, CdmData cdmData)
Get collision object state covariance from givenConjunction Data Message
data.boolean
isAMaximumProbabilityOfCollisionMethod()
Get flag that defines if the method is a maximum probability of collision computing method.
-
-
-
Field Detail
-
DEFAULT_TCA_DIFFERENCE_TOLERANCE
public static final double DEFAULT_TCA_DIFFERENCE_TOLERANCE
Default time of closest approach difference tolerance.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
AbstractShortTermEncounter2DPOCMethod
protected AbstractShortTermEncounter2DPOCMethod(String name)
Constructor.- Parameters:
name
- name of the method
-
-
Method Detail
-
compute
public ProbabilityOfCollision compute(Cdm cdm, double combinedRadius)
Compute the probability of collision using a Conjunction Data Message (CDM).- Specified by:
compute
in interfaceShortTermEncounter2DPOCMethod
- Parameters:
cdm
- conjunction data message inputcombinedRadius
- combined radius (m)- Returns:
- probability of collision
-
compute
public <T extends CalculusFieldElement<T>> FieldProbabilityOfCollision<T> compute(Cdm cdm, T combinedRadius, double zeroThreshold)
Compute the probability of collision using a Conjunction Data Message (CDM).- Specified by:
compute
in interfaceShortTermEncounter2DPOCMethod
- Type Parameters:
T
- type of the field elements- Parameters:
cdm
- conjunction data message inputcombinedRadius
- combined radius (m)zeroThreshold
- threshold below which values are considered equal to zero- Returns:
- probability of collision
-
compute
public ProbabilityOfCollision compute(Orbit primaryAtTCA, StateCovariance primaryCovariance, Orbit secondaryAtTCA, StateCovariance secondaryCovariance, double combinedRadius, double zeroThreshold)
Compute the probability of collision using parameters necessary for creating acollision definition
instance.- Specified by:
compute
in interfaceShortTermEncounter2DPOCMethod
- Parameters:
primaryAtTCA
- primary collision object spacecraft state at time of closest approachprimaryCovariance
- primary collision object covariancesecondaryAtTCA
- secondary collision object spacecraft state at time of closest approachsecondaryCovariance
- secondary collision object covariancecombinedRadius
- combined radius (m)zeroThreshold
- threshold below which values are considered equal to zero- Returns:
- probability of collision
-
compute
public <T extends CalculusFieldElement<T>> FieldProbabilityOfCollision<T> compute(FieldOrbit<T> primaryAtTCA, FieldStateCovariance<T> primaryCovariance, FieldOrbit<T> secondaryAtTCA, FieldStateCovariance<T> secondaryCovariance, T combinedRadius, double zeroThreshold)
Compute the probability of collision using parameters necessary for creating acollision definition
instance.- Specified by:
compute
in interfaceShortTermEncounter2DPOCMethod
- Type Parameters:
T
- type of the field elements- Parameters:
primaryAtTCA
- primary collision object spacecraft state at time of closest approachprimaryCovariance
- primary collision object covariancesecondaryAtTCA
- secondary collision object spacecraft state at time of closest approachsecondaryCovariance
- secondary collision object covariancecombinedRadius
- combined radius (m)zeroThreshold
- threshold below which values are considered equal to zero- Returns:
- probability of collision
-
compute
public ProbabilityOfCollision compute(ShortTermEncounter2DDefinition encounter, double zeroThreshold)
Compute the probability of collision using given collision definition.- Specified by:
compute
in interfaceShortTermEncounter2DPOCMethod
- Parameters:
encounter
- encounter definition between a primary and a secondary collision objectzeroThreshold
- threshold below which values are considered equal to zero- Returns:
- probability of collision
-
compute
public <T extends CalculusFieldElement<T>> FieldProbabilityOfCollision<T> compute(FieldShortTermEncounter2DDefinition<T> encounter, double zeroThreshold)
Compute the probability of collision using given collision definition.- Specified by:
compute
in interfaceShortTermEncounter2DPOCMethod
- Type Parameters:
T
- type of the field elements- Parameters:
encounter
- encounter definition between a primary and a secondary collision objectzeroThreshold
- threshold below which values are considered equal to zero- Returns:
- probability of collision
-
getName
public String getName()
Get name of the method.- Specified by:
getName
in interfaceShortTermEncounter2DPOCMethod
- Returns:
- name of the method
-
isAMaximumProbabilityOfCollisionMethod
public boolean isAMaximumProbabilityOfCollisionMethod()
Get flag that defines if the method is a maximum probability of collision computing method.- Specified by:
isAMaximumProbabilityOfCollisionMethod
in interfaceShortTermEncounter2DPOCMethod
- Returns:
- flag that defines if the method is a maximum probability of collision computing method
-
getObjectOrbitFromCdm
protected Orbit getObjectOrbitFromCdm(CdmRelativeMetadata cdmRelativeMetadata, CdmData cdmData, CdmMetadata cdmMetadata, DataContext cdmDataContext)
Extract collision object spacecraft state from givenConjunction Data Message
data.- Parameters:
cdmRelativeMetadata
- conjunction data message relative metadatacdmData
- collision object conjunction data message datacdmMetadata
- collision object conjunction data message metadatacdmDataContext
- conjunction data message data context- Returns:
- basic collision object spacecraft state from conjunction data message
-
getObjectStateCovarianceFromCdm
protected StateCovariance getObjectStateCovarianceFromCdm(CdmRelativeMetadata cdmRelativeMetadata, CdmData cdmData)
Get collision object state covariance from givenConjunction Data Message
data.- Parameters:
cdmRelativeMetadata
- conjunction data message relative metadatacdmData
- collision object conjunction data message data- Returns:
- collision object state covariance
-
-