Click or drag to resize

SinglePropagateSegmentResults Class

A PropagateSegment can optionally propagate multiple segments with an auto-sequence with stopping conditions. When auto-sequences are run (possibly multiple times), there will be a pattern where the PropagateSegments propagator propagates, then the SegmentPropagator for the stopping conditions auto sequence will run, then the original propagator if the stopping condition is configured to be tripped multiple times. The overall SegmentResults returned will be the PropagateSegmentResults which is a SegmentList. This is the results for those single run of the PropagateSegment that gets run initially and after an auto-sequence finishes.
Inheritance Hierarchy
SystemObject
  AGI.Foundation.SegmentPropagationSegmentResults
    AGI.Foundation.SegmentPropagationSinglePropagateSegmentResults

Namespace:  AGI.Foundation.SegmentPropagation
Assembly:  AGI.Foundation.SegmentPropagation (in AGI.Foundation.SegmentPropagation.dll) Version: 19.5.402.0 (19.5.402.0)
Syntax
public class SinglePropagateSegmentResults : SegmentResults

The SinglePropagateSegmentResults type exposes the following members.

Constructors
Properties
  NameDescription
Public propertyAdapters
Gets the list of adapters needed to transform the states of this results to the next.
(Inherited from SegmentResults.)
Public propertyAdditionalSegmentResults
Gets a list of SegmentResults that this segment may have propagated. For a SegmentList this will be the child segments it propagated. For segments that ran optional segments, they will be included here. This list will not have this instance of the results in it.
(Inherited from SegmentResults.)
Public propertyBackwardsAdapters
Gets the IListT of backwards adapters associated with the ConditionStoppedOn that edited propagation. This will be if there is no auto sequence getting run for the tripped stopping condition.
Public propertyCanceled
Gets or sets a value indicating whether the propagation run was canceled.
(Inherited from SegmentResults.)
Public propertyConditionStoppedOn
Gets or sets the final StoppingCondition that stopped propagation.
Public propertyConfiguration
Gets or sets the segment configuration that was used to propagate the segment that made these results.
(Inherited from SegmentResults.)
Public propertyEntireComputedEphemeris
Gets the entire ephemeris computed by the SegmentPropagator.

This may include ephemeris points that should be ignored when looking at the objects overall trajectory. Examples of why this may not match the EphemerisForOverallTrajectory may be because a later segment had to start at some point before the end of this segment, or because the segment computed additional ephemeris to aid with interpolation. In order to work with the rest of the library, the elements in this list should be in time ascending order even if the segment was propagated backwards.

Even for segments that do not actually propagate elements, the StateForNextSegment should be added to this list.

(Inherited from SegmentResults.)
Public propertyEphemerisForOverallTrajectory
Gets the ephemeris that should be used to represent the objects trajectory. This list of ephemeris points should be entirely contained in the EntireComputedEphemeris.
(Inherited from SegmentResults.)
Public propertyFinalPropagatedState
Gets the final state that was propagated by the SegmentPropagator in time from the overall trajectory.
(Inherited from SegmentResults.)
Public propertyFirstPropagatedState
Gets the first state that was propagated by this segment. Often this will be at the same time as the InitialState, but adapted into this segments defined-in objects, but some segments define what their time and state is.
(Inherited from SegmentResults.)
Public propertyIdentifiers
Gets the identifiers of all of the elements propagated by the segment.
(Inherited from SegmentResults.)
Public propertyInitialState
Gets or sets the initial state that the SegmentPropagator was propagated from. If any processing was done to the initial state passed into the PropagateSegment(SegmentListResults, SegmentConfiguration, ITrackCalculationProgress) method (such as applying adapters or initializing a different state with the passed in initial state) that modified state should be set here instead of the passed in state.
(Inherited from SegmentResults.)
Public propertyIsThreadSafe
Gets a value indicating whether the methods on this instance are safe to call from multiple threads simultaneously.
(Inherited from SegmentResults.)
Public propertyOverrideSegmentListEphemeris
Gets or sets a value indicating whether the SegmentPropagator that created these results requires the parent SegmentListResults to update its EphemerisForOverallTrajectory. This must be if this segment needed to start at some point other than at the end of the previous SegmentPropagator. Otherwise leave this as .
(Inherited from SegmentResults.)
Public propertyParentResults
Gets or sets the results of the SegmentListResults that contains the SegmentPropagator that created these results. This gets set automatically by the SegmentListPropagator that propagated the SegmentPropagator that made these results. It will be if the SegmentPropagator that created this was not propagated in a SegmentListPropagator.
(Inherited from SegmentResults.)
Public propertyPropagationDirection
Gets what direction propagation initially occurred. For a SegmentList, this should be the direction of the first SegmentPropagator it is propagating.
(Inherited from SegmentResults.)
Public propertyPropagator
Gets the SegmentPropagator that was used to make this set of results.
(Inherited from SegmentResults.)
Public propertySegmentCompletelyOverriddenByOverlappingSegment
Gets or sets a value indicating whether a SegmentPropagator after the one that made these results stepped back so far that the EphemerisForOverallTrajectory is empty. So if you have four propagators, and the fourth propagator needs to back up all the way to the first propagator, this property should be set to for the second and third set of results.
(Inherited from SegmentResults.)
Public propertySegmentIdentifier
Gets the SegmentDefinition that made the SegmentPropagator that created these results.
(Inherited from SegmentResults.)
Public propertySegmentOverrideStartsIn
Gets or sets the segment that the SegmentPropagator that created this set of results starts in if this segment needs to start before the end of the previous segment. This is only needed if another segment overlaps with this one.
(Inherited from SegmentResults.)
Public propertyStateForNextSegment
Gets a copy of the state to be passed to the next SegmentPropagator. This is determined automatically by the StateForNextSegmentBehavior and the EphemerisForOverallTrajectory.
(Inherited from SegmentResults.)
Public propertyStateForNextSegmentBehavior
Gets which state the SegmentPropagator will pass to the next segment.
(Inherited from SegmentResults.)
Public propertyStopAllPropagation
Gets or sets a value indicating whether all propagation must stop and whatever results have been computed should be returned.
(Inherited from SegmentResults.)
Public propertyStoppablePropagatorResults
Gets the results of the wrapped StoppablePropagator.
Public propertyStoppedOnMaximumDuration
Gets a value indicating whether the propagation stopped due to the MaximumDuration being exceeded.
Public propertyStopPropagationForCurrentSegmentList
Gets or sets a value indicating whether the current SegmentListPropagator was told to stop propagating its SegmentPropagators but that propagation of anything after this propagator should continue.
(Inherited from SegmentResults.)
Public propertyTimeIntervalOfEntireComputedEphemeris (Inherited from SegmentResults.)
Public propertyTimeIntervalOfEphemerisForOverallTrajectory (Inherited from SegmentResults.)
Public propertyValueOfStoppingCondition
Gets the value of the final StoppingCondition that stopped propagation.
Top
Methods
  NameDescription
Public methodAddEphemerisPoint
Adds the state to the EntireComputedEphemeris and EphemerisForOverallTrajectory and checks that all of the elements in the state are included in the Identifiers. This will add the state such that all of the states are in time ascending order.
(Inherited from SegmentResults.)
Public methodClone
Clones this object using the specified context.
(Overrides SegmentResultsClone(CopyContext).)
Public methodCropEphemerisForOverallTrajectory
This method will clear the EphemerisForOverallTrajectory and fill it in with the ephemeris from the EntireComputedEphemeris that is in the interval. SegmentPropagators that propagate multiple segments may need to override this to properly crop its child segments (and it is likely that some segments will have an empty EphemerisForOverallTrajectory). This should not need to perform any adaptation of the states involved; simply adjust the states in the EphemerisForOverallTrajectory. For SegmentResults that are made up of multiple segments, this must be called on each individual segment before being called on the overall results.
(Inherited from SegmentResults.)
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetAdapter
Gets the adapter for the specified element.
(Inherited from SegmentResults.)
Public methodGetDateMotionCollectionOfOverallTrajectory(String, ReferenceFrame)
Gets a DateMotionCollectionT of the element in the specified ReferenceFrame from the EphemerisForOverallTrajectory. This method assumes that you are asking for an entry that is of type Cartesian and that the element in the state is of that type. The state type stored must be ITimeBasedState.
(Inherited from SegmentResults.)
Public methodGetDateMotionCollectionOfOverallTrajectoryT(String) (Inherited from SegmentResults.)
Public methodGetElementDefinedIn
Gets the Object that the element was defined in. Generally this is an Axes or ReferenceFrame. If this returns then either the element has no defined-in object, or the element was not propagated by the segment that made the results.
(Inherited from SegmentResults.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetMotionCollectionT(String) (Inherited from SegmentResults.)
Public methodGetResultsOfSegment
This method will do a recursive search through the SegmentResults and return the first results that correspond with the segment, or if the requested segment's results are not found.
(Inherited from SegmentResults.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodIndexOfStateWithDateFromEntireComputedEphemeris
Gets the indexes of states within EntireComputedEphemeris at the specified date.
(Inherited from SegmentResults.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodSetElementDefinedIn
Sets the defined-in object (ReferenceFrame, Axes...), for the specified element.
(Inherited from SegmentResults.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
See Also