Dear all,
I’m having trouble using the tesseral forces with DSST.
Here is a code sample:
GravityFieldFactory.addPotentialCoefficientsReader(EGMFormatReader('EGM2008_to2190_TideFree.*',
False))
normalized_provider = GravityFieldFactory.getNormalizedProvider(self._harmonics_degree, self._harmonics_order)
unnormalized_provider = GravityFieldFactory.getUnnormalizedProvider(normalized_provider)
zonal = DSSTZonal(unnormalized_provider)
orekit_itrf = utils.toOrekitFrame('itrf')
tesseral = DSSTTesseral(orekit_itrf, Constants.WGS84_EARTH_ANGULAR_VELOCITY, unnormalized_provider)
Note: toOrekitFrame
is just a method that returns a Frame
from a name (string).
The zonal forces seem to work fine, however as soon as I add the tesseral terms, I get this during propagation:
orekit.JavaError: <super: <class 'JavaError'>, <JavaError object>>
E Java stacktrace:
E java.lang.ArrayIndexOutOfBoundsException: -1
E at org.orekit.propagation.semianalytical.dsst.forces.DSSTTesseral.computeNSum(DSSTTesseral.java:858)
E at org.orekit.propagation.semianalytical.dsst.forces.DSSTTesseral.access$1100(DSSTTesseral.java:84)
E at org.orekit.propagation.semianalytical.dsst.forces.DSSTTesseral$FourierCjSjCoefficients.buildFourierCoefficients(DSSTTesseral.java:1264)
E at org.orekit.propagation.semianalytical.dsst.forces.DSSTTesseral$FourierCjSjCoefficients.generateCoefficients(DSSTTesseral.java:1220)
E at org.orekit.propagation.semianalytical.dsst.forces.DSSTTesseral.updateShortPeriodTerms(DSSTTesseral.java:561)
E at org.orekit.propagation.semianalytical.dsst.DSSTPropagator.computeMeanOrbit(DSSTPropagator.java:843)
E at org.orekit.propagation.semianalytical.dsst.DSSTPropagator.computeMeanState(DSSTPropagator.java:676)
E at org.orekit.propagation.semianalytical.dsst.DSSTPropagator.computeMeanState(DSSTPropagator.java:647)
E at org.orekit.propagation.semianalytical.dsst.DSSTPropagator.getInitialIntegrationState(DSSTPropagator.java:914)
E at org.orekit.propagation.integration.AbstractIntegratedPropagator.integrateDynamics(AbstractIntegratedPropagator.java:470)
E at org.orekit.propagation.integration.AbstractIntegratedPropagator.propagate(AbstractIntegratedPropagator.java:425)
E at org.orekit.propagation.integration.AbstractIntegratedPropagator.propagate(AbstractIntegratedPropagator.java:385)
Moreover, I would say that the normalized provider is fine because I can successfully use a HolmesFeatherstoneAttractionModel
initialized with it.
Cheers,
Romain.