public class AngularVelocitiesPolynomialProfile extends StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg> implements AttitudeProfile
An attitude angular velocities profile sequence, whose x-y-z components are represented with polynomial functions.
LEG_NATURE
Constructor and Description |
---|
AngularVelocitiesPolynomialProfile(List<AngularVelocitiesPolynomialProfileLeg> polynomials)
Create a polynomial, angular velocity attitude profiles sequence.
|
AngularVelocitiesPolynomialProfile(List<AngularVelocitiesPolynomialProfileLeg> polynomials,
String nature)
Create a polynomial, angular velocity attitude profiles sequence.
|
AngularVelocitiesPolynomialProfile(String nature)
Create an empty polynomial angular velocity attitude profiles sequence.
|
Modifier and Type | Method and Description |
---|---|
AngularVelocitiesPolynomialProfile |
copy(AbsoluteDateInterval newInterval)
Creates a new legs sequence from this one.
|
AngularVelocitiesPolynomialProfile |
copy(AbsoluteDateInterval newInterval,
boolean strict)
Creates a new legs sequence from this one.
|
Attitude |
getAttitude(PVCoordinatesProvider pvProv,
AbsoluteDate date,
Frame frame)
Compute the attitude corresponding to an orbital state.
|
String |
getNature()
Returns the nature of the leg.
|
AbsoluteDateInterval |
getTimeInterval()
Returns the time interval of the legs sequence.
|
Map<AbsoluteDateInterval,double[]> |
getXCoefficients() |
Map<AbsoluteDateInterval,double[]> |
getYCoefficients() |
Map<AbsoluteDateInterval,double[]> |
getZCoefficients() |
AngularVelocitiesPolynomialProfile |
head(AbsoluteDate toT)
Returns a new sequence from the beginning to the given element.
|
AngularVelocitiesPolynomialProfile |
head(AbsoluteDate toT,
boolean strict)
Returns a new sequence from the beginning to the given element.
|
void |
setSpinDerivativesComputation(boolean computeSpinDerivatives)
Method to activate spin derivative computation.
|
AngularVelocitiesPolynomialProfile |
sub(AbsoluteDate fromT,
AbsoluteDate toT)
Returns a new sequence extracted.
|
AngularVelocitiesPolynomialProfile |
sub(AbsoluteDate fromT,
AbsoluteDate toT,
boolean strict)
Returns a new sequence extracted.
|
AngularVelocitiesPolynomialProfile |
sub(AbsoluteDateInterval interval)
Returns a new sequence extracted.
|
AngularVelocitiesPolynomialProfile |
sub(AbsoluteDateInterval interval,
boolean strict)
Returns a new sequence extracted.
|
AngularVelocitiesPolynomialProfile |
tail(AbsoluteDate fromT)
Returns a new sequence from the given element to the end of the sequence.
|
AngularVelocitiesPolynomialProfile |
tail(AbsoluteDate fromT,
boolean strict)
Returns a new sequence from the given element to the end of the sequence.
|
String |
toPrettyString()
Returns a nice
String representation. |
isSpinDerivativesComputation
add, addAll, clear, copy, current, first, first, getSet, head, isEmpty, isEmpty, iterator, last, last, next, previous, remove, removeAll, retainAll, simultaneous, simultaneous, size, sub, tail, toArray, toArray, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
computeSpinByFD, computeSpinDerivativeByFD
getAttitude
contains, containsAll
equals, hashCode, parallelStream, removeIf, spliterator, stream
public AngularVelocitiesPolynomialProfile(String nature)
nature
- Nature of the sequencepublic AngularVelocitiesPolynomialProfile(List<AngularVelocitiesPolynomialProfileLeg> polynomials)
polynomials
- the list of polynomial attitude profile segmentspublic AngularVelocitiesPolynomialProfile(List<AngularVelocitiesPolynomialProfileLeg> polynomials, String nature)
polynomials
- the list of polynomial attitude profile segmentsnature
- Nature of the sequencepublic Attitude getAttitude(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame) throws PatriusException
getAttitude
in interface AttitudeProvider
getAttitude
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
pvProv
- local position-velocity provider around current datedate
- current dateframe
- reference frame from which attitude is computedPatriusException
- if attitude cannot be computed for provided datepublic void setSpinDerivativesComputation(boolean computeSpinDerivatives)
setSpinDerivativesComputation
in interface AttitudeProvider
setSpinDerivativesComputation
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
computeSpinDerivatives
- true if spin derivatives should be computedpublic Map<AbsoluteDateInterval,double[]> getXCoefficients()
public Map<AbsoluteDateInterval,double[]> getYCoefficients()
public Map<AbsoluteDateInterval,double[]> getZCoefficients()
public String getNature()
public AngularVelocitiesPolynomialProfile copy(AbsoluteDateInterval newInterval)
copy
in interface AttitudeLeg
copy
in interface AttitudeProfile
copy
in interface Leg
copy
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
copy
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
newInterval
- The time interval of the legs sequence to createLegsSequence
valid on provided interval. Boundaries are not included in
the new sequence.public AngularVelocitiesPolynomialProfile copy(AbsoluteDateInterval newInterval, boolean strict)
copy
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
copy
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
newInterval
- The time interval of the legs sequence to createstrict
- true if boundaries shall not be included in the new sequence, false otherwise.LegsSequence
valid on provided intervalpublic String toPrettyString()
String
representation.toPrettyString
in interface Leg
toPrettyString
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
toPrettyString
in interface TimeSequence<AngularVelocitiesPolynomialProfileLeg>
toPrettyString
in class StrictLegsSequence<AngularVelocitiesPolynomialProfileLeg>
String
representation.public AbsoluteDateInterval getTimeInterval()
Null is returned if the sequence is empty.
Warning: in case of sequences with holes, the sequence in the returned interval will not contain continuous data.
Sequence is supposed to be continuous.getTimeInterval
in interface Leg
getTimeInterval
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
getTimeInterval
in class StrictLegsSequence<AngularVelocitiesPolynomialProfileLeg>
public AngularVelocitiesPolynomialProfile sub(AbsoluteDate fromT, AbsoluteDate toT, boolean strict)
sub
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
sub
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
fromT
- Any element of this sequence.toT
- Any element of this sequence.strict
- true if boundaries shall not be included in the extracted sequence, false otherwise.Sequence
object including all elements from the given one fromT
to the given one.
Elements exactly on the interval boundaries are included only if strict
=
false.public AngularVelocitiesPolynomialProfile sub(AbsoluteDate fromT, AbsoluteDate toT)
sub
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
sub
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
fromT
- Any element of this sequence.toT
- Any element of this sequence.Sequence
object including all elements from the given one fromT
to the given one toT
(both included).public AngularVelocitiesPolynomialProfile sub(AbsoluteDateInterval interval, boolean strict)
sub
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
sub
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
interval
- interval.strict
- true if boundaries shall not be included in the extracted sequence, false otherwise.Sequence
object including all elements included in the interval
.
Elements exactly on the interval boundaries are included only if strict
=
false.public AngularVelocitiesPolynomialProfile sub(AbsoluteDateInterval interval)
sub
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
sub
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
interval
- interval.Sequence
object including all elements included in the interval
.
Elements exactly on the interval boundaries are included.public AngularVelocitiesPolynomialProfile head(AbsoluteDate toT, boolean strict)
head
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
head
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
toT
- Any element of this sequence.strict
- true if boundary shall not be included in the extracted sequence, false otherwise.Sequence
object including all elements from the “beginning” to the
given one (included only
if strict
= false).public AngularVelocitiesPolynomialProfile head(AbsoluteDate toT)
head
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
head
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
toT
- Any element of this sequence.Sequence
object including all elements from the “beginning” to the
given one (included).public AngularVelocitiesPolynomialProfile tail(AbsoluteDate fromT, boolean strict)
tail
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
tail
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
fromT
- Any element of this sequence.strict
- true if boundary shall not be included in the extracted sequence, false otherwise.Sequence
object including all elements from the given one (included
only
if strict
= false) to the “end” of the sequence.public AngularVelocitiesPolynomialProfile tail(AbsoluteDate fromT)
tail
in interface LegsSequence<AngularVelocitiesPolynomialProfileLeg>
tail
in class StrictAttitudeLegsSequence<AngularVelocitiesPolynomialProfileLeg>
fromT
- Any element of this sequence.Sequence
object including all elements from the given one (included) to
the “end” of the
sequence.Copyright © 2023 CNES. All rights reserved.