Click or drag to resize

SegmentListPropagatorPropagateTo Method

Propagates a segment to the time or independent variable specified in the dateToPropagateTo. This method is needed to assist the case when segments might overlap. If a later segment realizes that it needs to find a different final state from this SegmentPropagator, this method should be used to find that new final state.

Consider calling PropagateToAssumingTimeBasedStates(JulianDate, SegmentResults, SegmentListResults) instead of this method directly.

Namespace:  AGI.Foundation.SegmentPropagation
Assembly:  AGI.Foundation.Models (in AGI.Foundation.Models.dll) Version: 21.2.409.0 (21.2.409.0)
public override ITimeBasedState PropagateTo(
	SegmentResults results,
	JulianDate dateToPropagateTo


Type: AGI.Foundation.SegmentPropagationSegmentResults
The results previously computed by this SegmentPropagator. When used with a SegmentListPropagator, the results of the actual nested SegmentPropagator should be passed in.
Type: AGI.Foundation.TimeJulianDate
The date of the returned state.

Return Value

Type: ITimeBasedState
The state at dateToPropagateTo.

For segments that happen instantaneously then this should just return the state computed (although generally this method should never need to be called on such segments since there is no "when" to propagate to, you can pull the state from the results directly). For a segment that produces an ephemeris, this should find the state right before the offset's independent variable and take one step to that independent variable. If the segment returns two states at the same time, PropagationDirection should be checked, and if propagation is Increasing the final state should be returned, or the initial state if propagation is backwards.

See Also