Search in sources :

Example 6 with MarshallSolarActivityFutureEstimation

use of org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation in project Orekit by CS-SI.

the class MarshallSolarActivityFutureEstimationTest method testKpStrong.

@Test
public void testKpStrong() throws OrekitException {
    MarshallSolarActivityFutureEstimation msafe = loadMsafe(MarshallSolarActivityFutureEstimation.StrengthLevel.STRONG);
    Assert.assertEquals(2 + 1.0 / 3.0, msafe.get24HoursKp(new AbsoluteDate("2010-10-01", utc)), 0.2);
    Assert.assertEquals(3.0, msafe.get24HoursKp(new AbsoluteDate("2011-05-01", utc)), 0.1);
    // this one should get exactly to an element of the AP_ARRAY: ap = 7.0
    Assert.assertEquals(2.0, msafe.get24HoursKp(new AbsoluteDate("2010-08-01", utc)), 0.3);
    Assert.assertEquals(msafe.getThreeHourlyKP(new AbsoluteDate("2010-08-01", utc)), msafe.get24HoursKp(new AbsoluteDate("2010-08-01", utc)), 1.0e-14);
}
Also used : MarshallSolarActivityFutureEstimation(org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation) AbsoluteDate(org.orekit.time.AbsoluteDate) Test(org.junit.Test)

Example 7 with MarshallSolarActivityFutureEstimation

use of org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation in project Orekit by CS-SI.

the class MarshallSolarActivityFutureEstimationTest method loadMsafe.

private MarshallSolarActivityFutureEstimation loadMsafe(MarshallSolarActivityFutureEstimation.StrengthLevel strength) throws OrekitException {
    MarshallSolarActivityFutureEstimation msafe = new MarshallSolarActivityFutureEstimation("(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\p{Digit}\\p{Digit}\\p{Digit}\\p{Digit}F10\\.(?:txt|TXT)", strength);
    DataProvidersManager manager = DataProvidersManager.getInstance();
    manager.feed(msafe.getSupportedNames(), msafe);
    return msafe;
}
Also used : MarshallSolarActivityFutureEstimation(org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation) DataProvidersManager(org.orekit.data.DataProvidersManager)

Example 8 with MarshallSolarActivityFutureEstimation

use of org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation in project Orekit by CS-SI.

the class MarshallSolarActivityFutureEstimationTest method testFutureOutOfRange.

@Test(expected = OrekitException.class)
public void testFutureOutOfRange() throws OrekitException {
    MarshallSolarActivityFutureEstimation msafe = loadMsafe(MarshallSolarActivityFutureEstimation.StrengthLevel.WEAK);
    msafe.get24HoursKp(new AbsoluteDate("2060-10-01", utc));
}
Also used : MarshallSolarActivityFutureEstimation(org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation) AbsoluteDate(org.orekit.time.AbsoluteDate) Test(org.junit.Test)

Example 9 with MarshallSolarActivityFutureEstimation

use of org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation in project Orekit by CS-SI.

the class MarshallSolarActivityFutureEstimationTest method testFluxAverage.

@Test
public void testFluxAverage() throws OrekitException {
    MarshallSolarActivityFutureEstimation msafe = loadMsafe(MarshallSolarActivityFutureEstimation.StrengthLevel.AVERAGE);
    Assert.assertEquals(87.6, msafe.getMeanFlux(new AbsoluteDate("2010-10-01", utc)), 1.0e-10);
    Assert.assertEquals(88.7, msafe.getMeanFlux(new AbsoluteDate("2010-10-16T12:00:00", utc)), 1.0e-10);
    Assert.assertEquals(89.8, msafe.getMeanFlux(new AbsoluteDate("2010-11-01", utc)), 1.0e-10);
    Assert.assertEquals(msafe.getInstantFlux(new AbsoluteDate("2010-11-01", utc)), msafe.getMeanFlux(new AbsoluteDate("2010-11-01", utc)), 1.0e-10);
    Assert.assertEquals(MarshallSolarActivityFutureEstimation.StrengthLevel.AVERAGE, msafe.getStrengthLevel());
}
Also used : MarshallSolarActivityFutureEstimation(org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation) AbsoluteDate(org.orekit.time.AbsoluteDate) Test(org.junit.Test)

Example 10 with MarshallSolarActivityFutureEstimation

use of org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation in project Orekit by CS-SI.

the class MarshallSolarActivityFutureEstimationTest method testKpAverage.

@Test
public void testKpAverage() throws OrekitException {
    MarshallSolarActivityFutureEstimation msafe = loadMsafe(MarshallSolarActivityFutureEstimation.StrengthLevel.AVERAGE);
    Assert.assertEquals(2 - 1.0 / 3.0, msafe.get24HoursKp(new AbsoluteDate("2010-10-01", utc)), 0.1);
    Assert.assertEquals(2 + 1.0 / 3.0, msafe.get24HoursKp(new AbsoluteDate("2011-05-01", utc)), 0.1);
    Assert.assertEquals(2.0 - 1.0 / 3.0, msafe.get24HoursKp(new AbsoluteDate("2010-08-01", utc)), 0.1);
    Assert.assertEquals(msafe.getThreeHourlyKP(new AbsoluteDate("2010-08-01", utc)), msafe.get24HoursKp(new AbsoluteDate("2010-08-01", utc)), 1.0e-14);
}
Also used : MarshallSolarActivityFutureEstimation(org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation) AbsoluteDate(org.orekit.time.AbsoluteDate) Test(org.junit.Test)

Aggregations

MarshallSolarActivityFutureEstimation (org.orekit.forces.drag.atmosphere.data.MarshallSolarActivityFutureEstimation)20 Test (org.junit.Test)13 AbsoluteDate (org.orekit.time.AbsoluteDate)11 DataProvidersManager (org.orekit.data.DataProvidersManager)6 DragForce (org.orekit.forces.drag.DragForce)5 IsotropicDrag (org.orekit.forces.drag.IsotropicDrag)5 DTM2000 (org.orekit.forces.drag.atmosphere.DTM2000)5 HolmesFeatherstoneAttractionModel (org.orekit.forces.gravity.HolmesFeatherstoneAttractionModel)5 ThirdBodyAttraction (org.orekit.forces.gravity.ThirdBodyAttraction)5 IsotropicRadiationSingleCoefficient (org.orekit.forces.radiation.IsotropicRadiationSingleCoefficient)5 SolarRadiationPressure (org.orekit.forces.radiation.SolarRadiationPressure)5 ArrayList (java.util.ArrayList)3 List (java.util.List)3 Vector3D (org.hipparchus.geometry.euclidean.threed.Vector3D)3 CelestialBody (org.orekit.bodies.CelestialBody)3 GeodeticPoint (org.orekit.bodies.GeodeticPoint)3 PolynomialParametricAcceleration (org.orekit.forces.PolynomialParametricAcceleration)3 Atmosphere (org.orekit.forces.drag.atmosphere.Atmosphere)3 OceanTides (org.orekit.forces.gravity.OceanTides)3 Relativity (org.orekit.forces.gravity.Relativity)3