Commit 5b498839 authored by Bryan Cazabonne's avatar Bryan Cazabonne

Jacobian conversion is not an abstract method.

parent 27e76916
Pipeline #922 passed with stage
in 25 minutes and 15 seconds
......@@ -78,20 +78,6 @@ public class TLEJacobiansMapper extends AbstractJacobiansMapper {
}
/** {@inheritDoc} */
@Override
protected double[][] getConversionJacobian(final SpacecraftState state) {
final double[][] identity = new double[STATE_DIMENSION][STATE_DIMENSION];
for (int i = 0; i < STATE_DIMENSION; ++i) {
identity[i][i] = 1.0;
}
return identity;
}
/** {@inheritDoc} */
@Override
public void setInitialJacobians(final SpacecraftState state, final double[][] dY1dY0,
......
......@@ -76,21 +76,6 @@ public abstract class AbstractJacobiansMapper {
// noting by default
}
/** Get the conversion Jacobian between state parameters and parameters used for derivatives.
* <p>
* For DSST and TLE propagators, state parameters and parameters used for derivatives are the same,
* so the Jocabian is simply the identity.
* </p>
* <p>
* For Numerical propagator, parameters used for derivatives are cartesian
* and they can be different from state parameters because the numerical propagator can accept different type
* of orbits.
* </p>
* @param state spacecraft state
* @return conversion Jacobian
*/
protected abstract double[][] getConversionJacobian(SpacecraftState state);
/** Set the Jacobian with respect to state into a one-dimensional additional state array.
* @param state spacecraft state
* @param dY1dY0 Jacobian of current state at time t₁
......
......@@ -73,7 +73,19 @@ public class JacobiansMapper extends AbstractJacobiansMapper {
this.name = name;
}
/** {@inheritDoc} */
/** Get the conversion Jacobian between state parameters and parameters used for derivatives.
* <p>
* For DSST and TLE propagators, state parameters and parameters used for derivatives are the same,
* so the Jocabian is simply the identity.
* </p>
* <p>
* For Numerical propagator, parameters used for derivatives are cartesian
* and they can be different from state parameters because the numerical propagator can accept different type
* of orbits.
* </p>
* @param state spacecraft state
* @return conversion Jacobian
*/
protected double[][] getConversionJacobian(final SpacecraftState state) {
final double[][] dYdC = new double[STATE_DIMENSION][STATE_DIMENSION];
......
......@@ -111,19 +111,6 @@ public class DSSTJacobiansMapper extends AbstractJacobiansMapper {
}
/** {@inheritDoc} */
protected double[][] getConversionJacobian(final SpacecraftState state) {
final double[][] identity = new double[STATE_DIMENSION][STATE_DIMENSION];
for (int i = 0; i < STATE_DIMENSION; ++i) {
identity[i][i] = 1.0;
}
return identity;
}
/** {@inheritDoc} */
public void setInitialJacobians(final SpacecraftState state, final double[][] dY1dY0,
final double[][] dY1dP, final double[] p) {
......
......@@ -241,20 +241,6 @@ public class DSSTPartialDerivativesEquations implements AdditionalEquations {
return new DSSTJacobiansMapper(name, selected, propagator, map, propagationType);
}
/** Get the selected parameters, in Jacobian matrix column order.
* <p>
* The force models parameters for which partial derivatives are desired,
* <em>must</em> have been {@link ParameterDriver#setSelected(boolean) selected}
* before this method is called, so the proper list is returned.
* </p>
* @return selected parameters, in Jacobian matrix column order which
* is lexicographic order
*/
public ParameterDriversList getSelectedParameters() {
freezeParametersSelection();
return selected;
}
/** {@inheritDoc} */
public double[] computeDerivatives(final SpacecraftState s, final double[] pDot) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment