Hi,

Very new to this and I’ve been trying to implement a simple exponential drag model with the numerical propagator, but the perturbations seem to not affect the results at all- the SMA and eccentricity remain the same over the propagation which shouldn’t be the case. Am I doing something gravely wrong here?

code as follows:

a = 6878.0e3

e = 0.01

i = radians(53.0)

ohm = radians(290.5)

w = radians(110.0)

theta = radians(250.0)

utc = TimeScalesFactory.getUTC()

epochDate = AbsoluteDate(2022, 2, 28, 23, 59, 42.0, utc)

#RE= Constants.WGS84_EARTH_EQUATORIAL_RADIUS

frame = FramesFactory.getITRF(IERSConventions.IERS_2010, True);

earthShape = OneAxisEllipsoid(Constants.WGS84_EARTH_EQUATORIAL_RADIUS, Constants.WGS84_EARTH_FLATTENING, frame);

rho0= 1.585e-12

h0= 450e3

H=60.828e3

atmosphere = SimpleExponentialAtmosphere(earthShape,rho0,h0,H)

cd = 2.2

A = 1.0e-4

mass =300.0

isotropic_drag = IsotropicDrag(A, cd)

drag_force = DragForce(atmosphere, isotropic_drag)

initialDate = epochDate

finalDate = AbsoluteDate(2023, 2, 28, 23, 59, 42.0,utc)

initialOrbit = KeplerianOrbit(a, # Semimajor Axis (m)

e, # Eccentricity

i, # Inclination (radians)

w, # Perigee argument (radians)

ohm, # Right ascension of ascending node (radians)

theta, # Anomaly (rad/s)

PositionAngleType.TRUE,

FramesFactory.getGCRF(),

epochDate,

Constants.WGS84_EARTH_MU)

ss= SpacecraftState(initialOrbit, mass)

stepSize = 30.0

integrator = ClassicalRungeKuttaIntegrator(stepSize)

propagator = NumericalPropagator(integrator)

propagator.addForceModel(drag_force)

propagator.setInitialState(ss)

endstate = propagator.propagate(initialDate,finalDate)

any assistance woudl be greatly appreciated!