1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.orekit.propagation.conversion;
18
19 import org.hipparchus.ode.AbstractIntegrator;
20 import org.orekit.orbits.CartesianOrbit;
21 import org.orekit.orbits.Orbit;
22 import org.orekit.orbits.OrbitType;
23 import org.orekit.orbits.PositionAngleType;
24 import org.orekit.utils.AbsolutePVCoordinates;
25
26
27
28
29
30
31
32
33 public abstract class AbstractIntegratorBuilder<T extends AbstractIntegrator> implements ODEIntegratorBuilder {
34
35 @Override
36 public abstract T buildIntegrator(Orbit orbit, OrbitType orbitType, PositionAngleType angleType);
37
38 @Override
39 public T buildIntegrator(final Orbit orbit, final OrbitType orbitType) {
40 return buildIntegrator(orbit, orbitType, PositionAngleType.MEAN);
41 }
42
43 @Override
44 public T buildIntegrator(final AbsolutePVCoordinates absolutePVCoordinates) {
45 final double arbitraryMu = 1.;
46 final CartesianOrbit cartesianOrbit = new CartesianOrbit(absolutePVCoordinates.getPVCoordinates(),
47 absolutePVCoordinates.getFrame(), arbitraryMu);
48 return buildIntegrator(cartesianOrbit, OrbitType.CARTESIAN);
49 }
50 }