Class ShortTermEncounter2DDefinition
 java.lang.Object

 org.orekit.ssa.collision.shorttermencounter.probability.twod.ShortTermEncounter2DDefinition

public class ShortTermEncounter2DDefinition extends Object
Defines the encounter between two collision object at time of closest approach assuming a shortterm encounter model . It uses the givenencounter frame type
to define the encounter.Both the primary and secondary collision object can be at the reference of the encounter frame, it is up to the user to choose.
The "reference" object is the object considered at the reference of the given encounter frame while the "other" object is the one not placed at the reference.
For example, if the user wants the primary to be at the reference of the default encounter frame, they will have to input data in the following manner:
However, if the user wants to put the secondary at the reference and use thefinal ShortTermEncounter2DDefinition encounter = new ShortTermEncounter2DDefinition(primaryOrbitAtTCA, primaryCovariance, primaryRadius, secondaryOrbitAtTCA, secondaryCovariance, secondaryRadius);
Valsecchi encounter frame
, they will have to type :
Note that in the current implementation, the shape of the collision objects is assumed to be a sphere.final ShortTermEncounter2DDefinition encounter = new ShortTermEncounter2DDefinition(secondaryOrbitAtTCA, secondaryCovariance, secondaryRadius, primaryOrbitAtTCA, primaryCovariance, primaryRadius, EncounterLOFType.VALSECCHI_2003);
 Since:
 12.0
 Author:
 Vincent Cucchietti


Constructor Summary
Constructors Constructor Description ShortTermEncounter2DDefinition(Orbit referenceAtTCA, StateCovariance referenceCovariance, double referenceRadius, Orbit otherAtTCA, StateCovariance otherCovariance, double otherRadius)
Constructor.ShortTermEncounter2DDefinition(Orbit referenceAtTCA, StateCovariance referenceCovariance, double referenceRadius, Orbit otherAtTCA, StateCovariance otherCovariance, double otherRadius, EncounterLOFType encounterFrameType, double tcaTolerance)
Constructor.ShortTermEncounter2DDefinition(Orbit referenceAtTCA, StateCovariance referenceCovariance, Orbit otherAtTCA, StateCovariance otherCovariance, double combinedRadius)
Constructor.ShortTermEncounter2DDefinition(Orbit referenceAtTCA, StateCovariance referenceCovariance, Orbit otherAtTCA, StateCovariance otherCovariance, double combinedRadius, EncounterLOFType encounterFrameType, double tcaTolerance)
Constructor.

Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description StateCovariance
computeCombinedCovarianceInEncounterFrame()
Compute the combined covariance expressed in the encounter frame.StateCovariance
computeCombinedCovarianceInReferenceTNW()
Takes both covariance matrices (expressed in their respective RTN local orbital frame) from reference and other collision object with which this instance was created and sum them in the reference collision object TNW local orbital frame.double
computeCoppolaEncounterDuration()
Compute the Encounter duration (s) evaluated using Coppola's formula described in : "COPPOLA, Vincent, et al.double
computeMahalanobisDistance()
Compute the Mahalanobis distance computed with the other collision object projected onto the collision plane (commonly called BPlane) and expressed in the rotated encounter frame (frame in which the combined covariance matrix is diagonalized, seecomputeEncounterPlaneRotationMatrix(double)
for more details).double
computeMahalanobisDistance(double zeroThreshold)
Compute the Mahalanobis distance computed with the other collision object projected onto the collision plane (commonly called BPlane) and expressed in the rotated encounter frame (frame in which the combined covariance matrix is diagonalized, seecomputeEncounterPlaneRotationMatrix(double)
for more details).double
computeMissDistance()
Compute the miss distance at time of closest approach.Vector2D
computeOtherPositionInCollisionPlane()
Compute the other collision objectposition
projected onto the collision plane.Vector2D
computeOtherPositionInRotatedCollisionPlane()
Compute the other collision objectposition
in the rotated collision plane.Vector2D
computeOtherPositionInRotatedCollisionPlane(double zeroThreshold)
Compute the other collision objectposition
in the rotated collision plane.PVCoordinates
computeOtherRelativeToReferencePVInReferenceInertial()
Compute the other collision position and velocity relative to the reference collision object.RealMatrix
computeProjectedAndDiagonalizedCombinedPositionalCovarianceMatrix()
Compute the combined covariance matrix diagonalized and projected onto the collision plane.RealMatrix
computeProjectedCombinedPositionalCovarianceMatrix()
Compute the projected combined covariance matrix onto the collision plane.RealMatrix
computeReferenceInertialToCollisionPlaneProjectionMatrix()
Compute the projection matrix from the reference collision object inertial frame to the collision plane.double
computeSquaredMahalanobisDistance()
Compute the squared Mahalanobis distance computed with the other collision object projected onto the collision plane (commonly called BPlane) and expressed in the rotated encounter frame (frame in which the combined covariance matrix is diagonalized, seecomputeEncounterPlaneRotationMatrix(double)
for more details).double
computeSquaredMahalanobisDistance(double zeroThreshold)
Compute the squared Mahalanobis distance computed with the other collision object projected onto the collision plane (commonly called BPlane) and expressed in the rotated encounter frame (frame in which the combined covariance matrix is diagonalized, seecomputeEncounterPlaneRotationMatrix(double)
for more details).static double
computeSquaredMahalanobisDistance(double xm, double ym, double sigmaX, double sigmaY)
Compute the squared Mahalanobis distance.static double
computeSquaredMahalanobisDistance(Vector2D otherPosition, RealMatrix covarianceMatrix)
Compute the squared Mahalanobis distance.double
getCombinedRadius()
Get combined radius.EncounterLOF
getEncounterFrame()
Get encounter local orbital frame.Orbit
getOtherAtTCA()
Get other's orbit at time of closest approach.StateCovariance
getOtherCovariance()
Get other's covariance.Orbit
getReferenceAtTCA()
Get reference's orbit at time of closest approach.StateCovariance
getReferenceCovariance()
Get reference's covariance.AbsoluteDate
getTca()
Get the Time of Closest Approach.



Constructor Detail

ShortTermEncounter2DDefinition
public ShortTermEncounter2DDefinition(Orbit referenceAtTCA, StateCovariance referenceCovariance, double referenceRadius, Orbit otherAtTCA, StateCovariance otherCovariance, double otherRadius)
Constructor. Parameters:
referenceAtTCA
 reference collision object orbit at time of closest approachreferenceCovariance
 reference collision object covariance matrix in its respective RTN framereferenceRadius
 reference collision's equivalent sphere radiusotherAtTCA
 other collision object orbit at time of closest approachotherCovariance
 other collision object covariance matrix in its respective RTN frameotherRadius
 other collision's equivalent sphere radius Throws:
OrekitException
 If both collision object spacecraft state don't have the same definition date.

ShortTermEncounter2DDefinition
public ShortTermEncounter2DDefinition(Orbit referenceAtTCA, StateCovariance referenceCovariance, Orbit otherAtTCA, StateCovariance otherCovariance, double combinedRadius)
Constructor. Parameters:
referenceAtTCA
 reference collision object orbit at time of closest approachreferenceCovariance
 reference collision object covariance matrix in its respective RTN frameotherAtTCA
 other collision object orbit at time of closest approachotherCovariance
 other collision object covariance matrix in its respective RTN framecombinedRadius
 combined radius (m) Throws:
OrekitException
 If both collision object spacecraft state don't have the same definition date.

ShortTermEncounter2DDefinition
public ShortTermEncounter2DDefinition(Orbit referenceAtTCA, StateCovariance referenceCovariance, double referenceRadius, Orbit otherAtTCA, StateCovariance otherCovariance, double otherRadius, EncounterLOFType encounterFrameType, double tcaTolerance)
Constructor. Parameters:
referenceAtTCA
 reference collision object orbit at time of closest approachreferenceCovariance
 reference collision object covariance matrix in its respective RTN framereferenceRadius
 reference collision's equivalent sphere radiusotherAtTCA
 other collision object orbit at time of closest approachotherCovariance
 other collision object covariance matrix in its respective RTN frameotherRadius
 other collision's equivalent sphere radiusencounterFrameType
 type of encounter frame to usetcaTolerance
 tolerance on reference and other times of closest approach difference Throws:
OrekitException
 If both collision object spacecraft state don't have the same definition date.

ShortTermEncounter2DDefinition
public ShortTermEncounter2DDefinition(Orbit referenceAtTCA, StateCovariance referenceCovariance, Orbit otherAtTCA, StateCovariance otherCovariance, double combinedRadius, EncounterLOFType encounterFrameType, double tcaTolerance)
Constructor. Parameters:
referenceAtTCA
 reference collision object orbit at time of closest approachreferenceCovariance
 reference collision object covariance matrix in its respective RTN frameotherAtTCA
 other collision object orbit at time of closest approachotherCovariance
 other collision object covariance matrix in its respective RTN framecombinedRadius
 combined radius (m)encounterFrameType
 type of encounter frame to usetcaTolerance
 tolerance on reference and other times of closest approach difference Throws:
OrekitException
 If both collision object spacecraft state don't have the same definition date.


Method Detail

computeSquaredMahalanobisDistance
public static double computeSquaredMahalanobisDistance(double xm, double ym, double sigmaX, double sigmaY)
Compute the squared Mahalanobis distance. Parameters:
xm
 other collision object projected xm position onto the collision plane in the rotated encounter frameym
 other collision object projected ym position onto the collision plane in the rotated encounter framesigmaX
 square root of the xaxis eigen value of the diagonalized combined covariance matrix projected onto the collision planesigmaY
 square root of the yaxis eigen value of the diagonalized combined covariance matrix projected onto the collision plane Returns:
 squared Mahalanobis distance

computeSquaredMahalanobisDistance
public static double computeSquaredMahalanobisDistance(Vector2D otherPosition, RealMatrix covarianceMatrix)
Compute the squared Mahalanobis distance. Parameters:
otherPosition
 other collision object projected position onto the collision plane in the rotated encounter framecovarianceMatrix
 combined covariance matrix projected onto the collision plane and diagonalized Returns:
 squared Mahalanobis distance

computeOtherRelativeToReferencePVInReferenceInertial
public PVCoordinates computeOtherRelativeToReferencePVInReferenceInertial()
Compute the other collision position and velocity relative to the reference collision object. Expressed in the reference collision object inertial frame. Returns:
 other collision position and velocity relative to the reference collision object, expressed in the reference collision object inertial frame.

computeReferenceInertialToCollisionPlaneProjectionMatrix
public RealMatrix computeReferenceInertialToCollisionPlaneProjectionMatrix()
Compute the projection matrix from the reference collision object inertial frame to the collision plane.Note that this matrix will only rotate from the reference collision object inertial frame to the encounter frame and project onto the collision plane, this is only a rotation.
 Returns:
 projection matrix from the reference collision object inertial frame to the collision plane

computeProjectedAndDiagonalizedCombinedPositionalCovarianceMatrix
public RealMatrix computeProjectedAndDiagonalizedCombinedPositionalCovarianceMatrix()
Compute the combined covariance matrix diagonalized and projected onto the collision plane.Diagonalize projected positional covariance matrix in a specific manner to have σ_{xx}^{2} ≤ σ_{yy}^{2}.
 Returns:
 combined covariance matrix diagonalized and projected onto the collision plane

computeProjectedCombinedPositionalCovarianceMatrix
public RealMatrix computeProjectedCombinedPositionalCovarianceMatrix()
Compute the projected combined covariance matrix onto the collision plane. Returns:
 projected combined covariance matrix onto the collision plane

computeCombinedCovarianceInEncounterFrame
public StateCovariance computeCombinedCovarianceInEncounterFrame()
Compute the combined covariance expressed in the encounter frame. Returns:
 combined covariance expressed in the encounter frame

computeOtherPositionInCollisionPlane
public Vector2D computeOtherPositionInCollisionPlane()
Compute the other collision objectposition
projected onto the collision plane. Returns:
 other collision object position projected onto the collision plane

computeOtherPositionInRotatedCollisionPlane
public Vector2D computeOtherPositionInRotatedCollisionPlane()
Compute the other collision objectposition
in the rotated collision plane.Uses a default zero threshold of 1e15.
The coordinates are often noted xm and ym in probability of collision related papers.
The mentioned rotation concerns the rotation that diagonalize the combined covariance matrix inside the collision plane.
 Returns:
 other collision object position in the rotated collision plane

computeOtherPositionInRotatedCollisionPlane
public Vector2D computeOtherPositionInRotatedCollisionPlane(double zeroThreshold)
Compute the other collision objectposition
in the rotated collision plane.The coordinates are often noted xm and ym in probability of collision related papers.
The mentioned rotation concerns the rotation that diagonalize the combined covariance matrix inside the collision plane.
 Parameters:
zeroThreshold
 threshold below which values are considered equal to zero Returns:
 other collision object position in the rotated collision plane

computeCoppolaEncounterDuration
public double computeCoppolaEncounterDuration()
Compute the Encounter duration (s) evaluated using Coppola's formula described in : "COPPOLA, Vincent, et al. Evaluating the short encounter assumption of the probability of collision formula. 2012."This method is to be used to check the validity of the shortterm encounter model. The user is expected to compare the computed duration with the orbital period from both objects and draw its own conclusions.
It uses γ = 1e16 as the resolution of a double is nearly 1e16 so γ smaller than that are not meaningful to compute.
 Returns:
 encounter duration (s) evaluated using Coppola's formula

computeMissDistance
public double computeMissDistance()
Compute the miss distance at time of closest approach. Returns:
 miss distance

computeMahalanobisDistance
public double computeMahalanobisDistance()
Compute the Mahalanobis distance computed with the other collision object projected onto the collision plane (commonly called BPlane) and expressed in the rotated encounter frame (frame in which the combined covariance matrix is diagonalized, seecomputeEncounterPlaneRotationMatrix(double)
for more details).Uses a default zero threshold of 1e15 for the computation of the diagonalizing of the projected covariance matrix.
 Returns:
 Mahalanobis distance between the reference and other collision object
 See Also:
 Mahalanobis distance

computeMahalanobisDistance
public double computeMahalanobisDistance(double zeroThreshold)
Compute the Mahalanobis distance computed with the other collision object projected onto the collision plane (commonly called BPlane) and expressed in the rotated encounter frame (frame in which the combined covariance matrix is diagonalized, seecomputeEncounterPlaneRotationMatrix(double)
for more details). Parameters:
zeroThreshold
 threshold below which values are considered equal to zero Returns:
 Mahalanobis distance between the reference and other collision object
 See Also:
 Mahalanobis distance

computeSquaredMahalanobisDistance
public double computeSquaredMahalanobisDistance()
Compute the squared Mahalanobis distance computed with the other collision object projected onto the collision plane (commonly called BPlane) and expressed in the rotated encounter frame (frame in which the combined covariance matrix is diagonalized, seecomputeEncounterPlaneRotationMatrix(double)
for more details).Uses a default zero threshold of 1e15 for the computation of the diagonalizing of the projected covariance matrix.
 Returns:
 squared Mahalanobis distance between the reference and other collision object
 See Also:
 Mahalanobis distance

computeSquaredMahalanobisDistance
public double computeSquaredMahalanobisDistance(double zeroThreshold)
Compute the squared Mahalanobis distance computed with the other collision object projected onto the collision plane (commonly called BPlane) and expressed in the rotated encounter frame (frame in which the combined covariance matrix is diagonalized, seecomputeEncounterPlaneRotationMatrix(double)
for more details). Parameters:
zeroThreshold
 threshold below which values are considered equal to zero Returns:
 squared Mahalanobis distance between the reference and other collision object
 See Also:
 Mahalanobis distance

computeCombinedCovarianceInReferenceTNW
public StateCovariance computeCombinedCovarianceInReferenceTNW()
Takes both covariance matrices (expressed in their respective RTN local orbital frame) from reference and other collision object with which this instance was created and sum them in the reference collision object TNW local orbital frame. Returns:
 combined covariance matrix expressed in the reference collision object TNW local orbital frame

getTca
public AbsoluteDate getTca()
Get the Time of Closest Approach.Commonly called TCA.
 Returns:
 time of closest approach

getReferenceAtTCA
public Orbit getReferenceAtTCA()
Get reference's orbit at time of closest approach. Returns:
 reference's orbit at time of closest approach

getOtherAtTCA
public Orbit getOtherAtTCA()
Get other's orbit at time of closest approach. Returns:
 other's orbit at time of closest approach

getReferenceCovariance
public StateCovariance getReferenceCovariance()
Get reference's covariance. Returns:
 reference's covariance

getOtherCovariance
public StateCovariance getOtherCovariance()
Get other's covariance. Returns:
 other's covariance

getCombinedRadius
public double getCombinedRadius()
Get combined radius. Returns:
 combined radius (m)

getEncounterFrame
public EncounterLOF getEncounterFrame()
Get encounter local orbital frame. Returns:
 encounter local orbital frame

