Package org.orekit.files.iirv
Class IIRVMessage
- java.lang.Object
-
- org.orekit.files.iirv.IIRVMessage
-
public class IIRVMessage extends Object
Container for Improved Interrange Vector (IIRV) messages, implemented as a list of sequentialIIRVVectorinstances.The IIRV message consists of a series of sequential
IIRVVectors that each contains ephemeris state data at a particular epoch. The message body is defined as:ttuuuuuuuqjjGIIRVarrrr<<≡≡
vs1ciiiibbnnndoyhhmmsssssccc<<≡≡
sxxxxxxxxxxxxsyyyyyyyyyyyyszzzzzzzzzzzzccc<<==
sxxxxxxxxxxxxsyyyyyyyyyyyyszzzzzzzzzzzzccc<<==
mmmmmmmmaaaaakkkksrrrrrrrccc<<==
ITERM oooo<<==Line No. / Characters / Value / Type / Description / Class 1 tt2 characters Constant Message Type (Operations Data Message) MessageTypeTermuuuuuuu0000000 to 9999999 Integer Message ID MessageIDTermq1 character String Message Source MessageSourceTermjj- 10 = Nominal
- 15 = In-flight Update
String Message class (10=nominal) MessageClassTermGIIRV"GIIRV" Constant Message ID MessageStartConstantTerma- ASCII space = GSFC
- Z = WLP
- E = ETR
- L = JPL
- W = WTR
- J = JSC
- P = PMR
- A = CSTC
- K = KMR
- C = CNES
String Origin identification OriginIdentificationTermrrrr- GSFC = NASA Goddard Space Flight Center
- WLP = Wallops Island tracking radars
- ETR = NASA/USFC Eastern Test Range
- JPL = NASA Jet Propulsion Laboratory
- WTR = NASA/USFC Western Test Range
- JSC = NASA Johnson Space Center
- PMR = Navy Pacific Missile Range
- CSTC = Air Force Satellite Control Facility
- KMR = Army Kwajalein Missile Range
- CNES = French Space Agency National
Centre for Space Studies (CNES) - MANY = Message originated from more
than one of the above stations
String Destination routing indicator RoutingIndicatorTerm<<"\r\r" Constant Carriage returns n/a == "\n\n" Constant Line feeds n/a 2 v- 1 = Free flight (routine on-orbit)
- 2 = Forced (special orbit update)
- 3 = Spare
- 4 = Maneuver ignition
- 5 = Maneuver cutoff
- 6 = Reentry
- 7 = Powered flight
- 8 = Stationary
- 9 = Spare
Integer Vector type VectorTypeTerms- 1 = Nominal/planning
- 2 = Real-time
- 3 = Off-line
- 4 = Off-line/mean
Integer Source of data DataSourceTerm1"1" = interrange message Constant Transfer type TransferTypeConstantTermc- 1 = Geocentric True-of-Date Rotating
- 2 = Geocentric mean of 1950.0 (B1950.0)
- 3 = Heliocentric B1950.0
- 4 = Reserved for JPL use (non-GSFC)
- 5 = Reserved for JPL use (non-GSFC)
- 6 = Geocentric mean of 2000.0 (J2000.0)
- 7 = Heliocentric J2000.0
Integer Coordinate system CoordinateSystemTermiiii0000-9999 Integer Support Identification Code (SIC) SupportIdCodeTermbb00-99 Integer Vehicle Identification Code (VIC) VehicleIdCodeTermnnn000-999 Integer Sequence number SequenceNumberTermdoy001-366 Integer Day of year DayOfYearTermhhmmsssss000000000 - 235959999 Integer Vector epoch (in UTC)
HH:mm:ss.SSSVectorEpochTermccc000-999 Integer Checksum for line 2 CheckSumTerm<<"\r\r" Constant Carriage returns n/a == "\n\n" Constant Line feeds n/a 3 s- " " (ASCII Space) = positive
- "-" = Negative
Integer Positive/negative sign n/a xxxxxxxxxxxx0 - 9999999999999 Integer X component of position (m) PositionVectorComponentTermyyyyyyyyyyyy0 - 9999999999999 Integer Y component of position (m) PositionVectorComponentTermzzzzzzzzzzzz0 - 9999999999999 Integer Z component of position (m) PositionVectorComponentTermccc000-999 Integer Checksum for line 3 CheckSumTerm<<"\r\r" Constant Carriage returns n/a == "\n\n" Constant Line feeds n/a 4 s- " " (ASCII Space) = positive
- "-" = Negative
Integer Positive/negative sign n/a xxxxxxxxxxxx0 - 9999999999.999 Double X component of velocity (m/s) VelocityVectorComponentTermyyyyyyyyyyyy0 - 9999999999.999 Double Y component of velocity (m/s) VelocityVectorComponentTermzzzzzzzzzzzz0 - 9999999999.999 Double Z component of velocity (m/s) VelocityVectorComponentTermccc000-999 Integer Checksum for line 4 CheckSumTerm<<"\r\r" Constant Carriage returns n/a == "\n\n" Constant Line feeds n/a 5 mmmmmmmm0 - 99999999.9 Double Spacecraft mass (kg) MassTermaaaaa0 - 999.99 Double Average cross-sectional area (m^2) CrossSectionalAreaTermkkkk0 - 99.99 Double Drag coefficient (dimensionless) DragCoefficientTermsrrrrrrr-99.99999 to 99.99999 Double Solar reflectivity coefficient (dimensionless) SolarReflectivityCoefficientTermccc000-999 Integer Checksum for line 5 CheckSumTerm<<"\r\r" Constant Carriage returns n/a == "\n\n" Constant Line feeds n/a 6 ITERM"ITERM" Constant End of message MessageEndConstantTermITERMASCII Space Constant Spare (blank) character SpareConstantTermoooo"GCQU" or "GAQD" String Originator routing indicator OriginatorRoutingIndicatorTerm<<"\r\r" Constant Carriage returns n/a == "\n\n" Constant Line feeds n/a 7-12 Second IIRVVectorin message13-18 Third IIRVVectorin message... nth IIRVVectorin message- Since:
- 13.0
- Author:
- Nick LaFarge
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classIIRVMessage.IncludeMessageMetadataOptions for how message metadata appears in the IIRV message file.
-
Constructor Summary
Constructors Constructor Description IIRVMessage()Constructor that initializes to an empty list of vectors.IIRVMessage(List<IIRVVector> vectors)Constructor from a list of IIRVIIRVVectors that monotonically increase in bothSequenceNumberTermand time (DayOfYearTermandVectorEpochTerm).IIRVMessage(IIRVMessage other)Copy constructor.IIRVMessage(IIRVVector... vectors)Constructor from a list of IIRVIIRVVectors that monotonically increase in bothSequenceNumberTermand time (DayOfYearTermandVectorEpochTerm).
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(IIRVVector v)Adds anIIRVVectorto the message (seeArrayList.add(Object)).booleanequals(Object o)IIRVVectorget(int i)Gets theIIRVVectorlocated at a given index in the message.StringgetSatelliteID()Returns the satellite ID (set to the value of theVehicleIdCodeTerm).List<IIRVVector>getVectors()Gets the list of sequentialIIRVVectorinstances contained within the overall IIRV message.ArrayList<String>getVectorStrings(IIRVMessage.IncludeMessageMetadata includeMessageMetadataSetting)Converts theIIRVVectors contained in the message file into a list of their String representations.inthashCode()booleanisEmpty()Returns true if no vectors exist in the message.intsize()Returns the number of IIRV vectors contained in the message.StringtoMessageString(IIRVMessage.IncludeMessageMetadata includeMessageMetadataSetting)Converts theIIRVVectors contained in the message file into a single String, where no deliminator included between each vector (the vectors already have trailing line carriage and line returns).
-
-
-
Constructor Detail
-
IIRVMessage
public IIRVMessage()
Constructor that initializes to an empty list of vectors.
-
IIRVMessage
public IIRVMessage(List<IIRVVector> vectors)
Constructor from a list of IIRVIIRVVectors that monotonically increase in bothSequenceNumberTermand time (DayOfYearTermandVectorEpochTerm).- Parameters:
vectors- list of sequentialIIRVVectors.
-
IIRVMessage
public IIRVMessage(IIRVVector... vectors)
Constructor from a list of IIRVIIRVVectors that monotonically increase in bothSequenceNumberTermand time (DayOfYearTermandVectorEpochTerm).- Parameters:
vectors- list of sequential IIRV vectors.
-
IIRVMessage
public IIRVMessage(IIRVMessage other)
Copy constructor.- Parameters:
other- otherIIRVMessageinstance.
-
-
Method Detail
-
add
public void add(IIRVVector v)
Adds anIIRVVectorto the message (seeArrayList.add(Object)).- Parameters:
v- IIRV vector to add to the message
-
get
public IIRVVector get(int i)
Gets theIIRVVectorlocated at a given index in the message.- Parameters:
i- index of the element to return- Returns:
- element at the given index
- See Also:
ArrayList.get(int)
-
size
public int size()
Returns the number of IIRV vectors contained in the message.- Returns:
- number of IIRV vectors contained in the message
- See Also:
ArrayList.size()
-
isEmpty
public boolean isEmpty()
Returns true if no vectors exist in the message.- Returns:
- true if no vectors exist in the message
- See Also:
ArrayList.isEmpty()
-
getVectorStrings
public ArrayList<String> getVectorStrings(IIRVMessage.IncludeMessageMetadata includeMessageMetadataSetting)
Converts theIIRVVectors contained in the message file into a list of their String representations.- Parameters:
includeMessageMetadataSetting- Setting for when message metadata terms appear in the created IIRV message- Returns:
- list of
IIRVVectorstrings for each vector the message - See Also:
IIRVVector.toIIRVString(boolean)
-
toMessageString
public String toMessageString(IIRVMessage.IncludeMessageMetadata includeMessageMetadataSetting)
Converts theIIRVVectors contained in the message file into a single String, where no deliminator included between each vector (the vectors already have trailing line carriage and line returns).- Parameters:
includeMessageMetadataSetting- Setting for when message metadata terms appear in the created IIRV message- Returns:
- String containing all
IIRVVectors for the IIRV message - See Also:
IIRVVector.toIIRVString(boolean)
-
getVectors
public List<IIRVVector> getVectors()
Gets the list of sequentialIIRVVectorinstances contained within the overall IIRV message.- Returns:
- list of sequential
IIRVVectorinstances contained within the overall IIRV message.
-
getSatelliteID
public String getSatelliteID()
Returns the satellite ID (set to the value of theVehicleIdCodeTerm).- Returns:
- the satellite ID
- See Also:
VehicleIdCodeTerm
-
-