Click or drag to resize

SpecializedOrbitSolverCreateRepeatGroundTraceSunSynchronousOrbitUsingApproximateRevsPerDay Method

Creates a circular orbit that exactly repeats its ground trace after a specified number of revolutions under the influence of J2 perturbations. Its right ascension of the ascending node drifts under J2 perturbations at the same rate as the central body's orbit around the Sun (Sun-synchronous). The combination of the two effects enables this orbit to revisit its exact original ascending node longitude at exactly the same local solar time (and therefore the same lighting conditions) after the specified number of revolutions is completed.

Namespace:  AGI.Foundation.Propagators
Assembly:  AGI.Foundation.Models (in AGI.Foundation.Models.dll) Version: 24.3.420.0 (24.3.420.0)
Syntax
public static J2Propagator CreateRepeatGroundTraceSunSynchronousOrbitUsingApproximateRevsPerDay(
	JulianDate guessOrbitEpoch,
	ReferenceFrame inertialFrame,
	ReferenceFrame fixedFrame,
	double approximateRevsPerDay,
	Duration ascendingNodeLocalTime,
	int numberRevsToRepeat,
	double ascendingNodeLongitude,
	double gravitationalParameter,
	double j2UnnormalizedValue,
	double referenceDistance,
	double planetaryMeanMotion,
	bool isObliquityLessThan90Degrees
)

Parameters

guessOrbitEpoch
Type: AGI.Foundation.TimeJulianDate
An initial guess for the epoch associated with the initial conditions of the propagated orbit.
inertialFrame
Type: AGI.Foundation.GeometryReferenceFrame
An inertial ReferenceFrame centered at the central body.
fixedFrame
Type: AGI.Foundation.GeometryReferenceFrame
A fixed ReferenceFrame centered at the central body.
approximateRevsPerDay
Type: SystemDouble
The approximate number of revolutions per day. The method iterates to find the closest exact match.
ascendingNodeLocalTime
Type: AGI.Foundation.TimeDuration
The local solar time of the ascending node in central body seconds past central body midnight.
numberRevsToRepeat
Type: SystemInt32
The number of revolutions until the ground trace exactly repeats.
ascendingNodeLongitude
Type: SystemDouble
The longitude of the ascending node in the fixedFrame of the central body.
gravitationalParameter
Type: SystemDouble
The gravitational parameter of the central body.
j2UnnormalizedValue
Type: SystemDouble
The non-normalized J2 parameter of the central body.
referenceDistance
Type: SystemDouble
The equatorial radius of the central body that also serves as a reference distance for the J2 parameter.
planetaryMeanMotion
Type: SystemDouble
The mean motion of the central body about the Sun. (The central body must be orbiting the Sun.)
isObliquityLessThan90Degrees
Type: SystemBoolean
Sets the orbit to be retrograde if true (for Earth and other planets with posigrade rotations but retrograde Sun-synchronous orbits) or posigrade if false (for Uranus with a retrograde rotation but a posigrade Sun-synchronous orbit). Venus also has a retrograde rotation, but does not have strong enough J2 perturbations to support Sun-synchronous orbits.

Return Value

Type: J2Propagator
A J2Propagator object that is initialized at its ascending node with the desired local solar time of ascending node, orbital elements, and gravity field. Usually, its epoch will be different from the input guess epoch unless the longitude of the node, the local solar time at ascending node, and the input guess epoch are consistent with each other by design or chance.
Exceptions
ExceptionCondition
ArgumentNullException Thrown when inertialFrame or fixedFrame is .
ArgumentOutOfRangeException Thrown when approximateRevsPerDay is zero or negative, when numberRevsToRepeat is zero or negative, or when planetaryMeanMotion is less than or equal to zero.
ArithmeticException Thrown when calculated rotation rate is zero due to incorrect inertial or fixed frame input, or when a Sun-synchronous orbit does not exist for the given input conditions.
See Also