AGI STK Objects 11Send comments on this topic.
IAgVePropagatorJ4Perturbation Interface

Description

J4 Perturbation propagator interface.

Public Methods

Public Method PropagatePropagates the satellite's path using the specified time interval.

Public Properties

Public Property EphemerisIntervalThe propagator's ephemeris interval.
Public Property InitialStateGet the initial state.
Public Property StartTimeThis property is deprecated. Use EphemerisInterval to configure the propagation interval. Start time. Uses DateFomat Dimension.
Public Property StepStep size. Uses Time Dimension.
Public Property StopTimeThis property is deprecated. Use EphemerisInterval to configure the propagation interval. Stop time. Uses DateFormat Dimension.
Public Property UseScenarioAnalysisTimeThis property is deprecated. Use the new Timeline API components to configure the propagator's analysis time. Whether the scenario analysis start/stop times shall be used.

Interfaces

Implemented Interface
IAgVePropagator

CoClasses that Implement IAgVePropagatorJ4Perturbation

Example

Configure the J4 Perturbation propagator to a circular orbit
[C#]
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorJ4Perturbation);
IAgVePropagatorJ4Perturbation prop = satellite.Propagator as IAgVePropagatorJ4Perturbation;

IAgOrbitStateClassical keplerian = prop.InitialState.Representation.ConvertTo(AgEOrbitStateType.eOrbitStateClassical) as IAgOrbitStateClassical;

keplerian.SizeShapeType = AgEClassicalSizeShape.eSizeShapeAltitude;
IAgClassicalSizeShapeAltitude size = keplerian.SizeShape as IAgClassicalSizeShapeAltitude;

size.ApogeeAltitude = altitude;
size.PerigeeAltitude = altitude;

keplerian.Orientation.Inclination = incl;
keplerian.Orientation.ArgOfPerigee = 0;
keplerian.Orientation.AscNodeType = AgEOrientationAscNode.eAscNodeRAAN;
(keplerian.Orientation.AscNode as IAgOrientationAscNodeRAAN).Value = 0;

keplerian.LocationType = AgEClassicalLocation.eLocationTrueAnomaly;
(keplerian.Location as IAgClassicalLocationTrueAnomaly).Value = 0;

prop.InitialState.Representation.Assign(keplerian);
prop.Propagate();
Configure the J4 Perturbation propagator to a critically inclined orbit
[C#]
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorJ4Perturbation);
IAgVePropagatorJ4Perturbation prop = satellite.Propagator as IAgVePropagatorJ4Perturbation;

IAgOrbitStateClassical keplerian = prop.InitialState.Representation.ConvertTo(AgEOrbitStateType.eOrbitStateClassical) as IAgOrbitStateClassical;

keplerian.SizeShapeType = AgEClassicalSizeShape.eSizeShapeAltitude;
IAgClassicalSizeShapeAltitude size = keplerian.SizeShape as IAgClassicalSizeShapeAltitude;

size.ApogeeAltitude = apogeeAlt;
size.PerigeeAltitude = perigeeAlt;

keplerian.Orientation.Inclination = 63.434949;
keplerian.Orientation.ArgOfPerigee = 270.000000;
keplerian.Orientation.AscNodeType = AgEOrientationAscNode.eAscNodeLAN;
(keplerian.Orientation.AscNode as IAgOrientationAscNodeLAN).Value = ascNodeLon;

keplerian.LocationType = AgEClassicalLocation.eLocationTrueAnomaly;
(keplerian.Location as IAgClassicalLocationTrueAnomaly).Value = 90.000000;

prop.InitialState.Representation.Assign(keplerian);
prop.Propagate();
Configure the J4 Perturbation propagator to a circular orbit
[Visual Basic .NET]
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorJ4Perturbation)
Dim prop As IAgVePropagatorJ4Perturbation = TryCast(satellite.Propagator, IAgVePropagatorJ4Perturbation)

Dim keplerian As IAgOrbitStateClassical = TryCast(prop.InitialState.Representation.ConvertTo(AgEOrbitStateType.eOrbitStateClassical), IAgOrbitStateClassical)

keplerian.SizeShapeType = AgEClassicalSizeShape.eSizeShapeAltitude
Dim size As IAgClassicalSizeShapeAltitude = TryCast(keplerian.SizeShape, IAgClassicalSizeShapeAltitude)

size.ApogeeAltitude = altitude
size.PerigeeAltitude = altitude

keplerian.Orientation.Inclination = incl
keplerian.Orientation.ArgOfPerigee = 0
keplerian.Orientation.AscNodeType = AgEOrientationAscNode.eAscNodeRAAN
TryCast(keplerian.Orientation.AscNode, IAgOrientationAscNodeRAAN).Value = 0

keplerian.LocationType = AgEClassicalLocation.eLocationTrueAnomaly
TryCast(keplerian.Location, IAgClassicalLocationTrueAnomaly).Value = 0

prop.InitialState.Representation.Assign(keplerian)
prop.Propagate()
Configure the J4 Perturbation propagator to a critically inclined orbit
[Visual Basic .NET]
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorJ4Perturbation)
Dim prop As IAgVePropagatorJ4Perturbation = TryCast(satellite.Propagator, IAgVePropagatorJ4Perturbation)

Dim keplerian As IAgOrbitStateClassical = TryCast(prop.InitialState.Representation.ConvertTo(AgEOrbitStateType.eOrbitStateClassical), IAgOrbitStateClassical)

keplerian.SizeShapeType = AgEClassicalSizeShape.eSizeShapeAltitude
Dim size As IAgClassicalSizeShapeAltitude = TryCast(keplerian.SizeShape, IAgClassicalSizeShapeAltitude)

size.ApogeeAltitude = apogeeAlt
size.PerigeeAltitude = perigeeAlt

keplerian.Orientation.Inclination = 63.434949
keplerian.Orientation.ArgOfPerigee = 270
keplerian.Orientation.AscNodeType = AgEOrientationAscNode.eAscNodeLAN
TryCast(keplerian.Orientation.AscNode, IAgOrientationAscNodeLAN).Value = ascNodeLon

keplerian.LocationType = AgEClassicalLocation.eLocationTrueAnomaly
TryCast(keplerian.Location, IAgClassicalLocationTrueAnomaly).Value = 90

prop.InitialState.Representation.Assign(keplerian)
prop.Propagate()
Set satellite propagator to J4 and assign cartesian position
[Python]
# IAgSatellite satellite: Satellite object
satellite.SetPropagatorType(2) # ePropagatorJ4Perturbation
propagator = satellite.Propagator
propagator.InitialState.Representation.AssignCartesian(11,6678.14,0,0,0,6.78953,3.68641) # eCoordinateSystemICRF
propagator.Propagate()

Set satellite propagator to J4 and assign cartesian position
[MATLAB]
% IAgSatellite satellite: Satellite object
satellite.SetPropagatorType('ePropagatorJ4Perturbation');
propagator = satellite.Propagator;
propagator.InitialState.Representation.AssignCartesian('eCoordinateSystemICRF',6678.14,0,0,0,6.78953,3.68641)
propagator.Propagate;

© 2019 Analytical Graphics, Inc. All Rights Reserved.