diff --git a/src/test/java/org/orekit/estimation/leastsquares/OrbitDeterminationTest.java b/src/test/java/org/orekit/estimation/leastsquares/OrbitDeterminationTest.java index e911c9f1e8736a1c6195789a6157a4f043ab4530..97b110553ab329b4af850719091ff2c312af63a6 100644 --- a/src/test/java/org/orekit/estimation/leastsquares/OrbitDeterminationTest.java +++ b/src/test/java/org/orekit/estimation/leastsquares/OrbitDeterminationTest.java @@ -228,12 +228,12 @@ public class OrbitDeterminationTest { GravityFieldFactory.addPotentialCoefficientsReader(new ICGEMFormatReader("eigen-6s-truncated", true)); //orbit determination run. - ResultOD odGNSS = run(input, true); + ResultOD odGNSS = run(input, false); //test //definition of the accuracy for the test - final double distanceAccuracy = 11.2; - final double velocityAccuracy = 3.9e-3; + final double distanceAccuracy = 11.5; + final double velocityAccuracy = 4.0e-3; //test on the convergence final int numberOfIte = 3; @@ -252,7 +252,7 @@ public class OrbitDeterminationTest { //test on statistic for the range residuals final long nbRange = 4009; - final double[] RefStatRange = { -2.555, 2.830, 0.0, 0.750 }; + final double[] RefStatRange = { -2.706, 2.566, 0.0, 0.738 }; Assert.assertEquals(nbRange, odGNSS.getRangeStat().getN()); Assert.assertEquals(RefStatRange[0], odGNSS.getRangeStat().getMin(), 0.1); Assert.assertEquals(RefStatRange[1], odGNSS.getRangeStat().getMax(), 0.1); diff --git a/src/test/resources/orbit-determination/GNSS/od_test_GPS07.in b/src/test/resources/orbit-determination/GNSS/od_test_GPS07.in index e2462eea388bcf7c9d5ca18b0be046d30274dc87..b35da65854b43a7e73b3cb9e3bbfc3bd47b9f915 100644 --- a/src/test/resources/orbit-determination/GNSS/od_test_GPS07.in +++ b/src/test/resources/orbit-determination/GNSS/od_test_GPS07.in @@ -129,10 +129,10 @@ ground.station.latitude [0] = 41.868362882 ground.station.longitude [0] = -119.015669632 ground.station.altitude [0] = 1458.088101 ground.station.position.estimated [0] = false -ground.station.clock.offset [0] = 7.0e-9 +ground.station.clock.offset [0] = 9.3e-9 ground.station.clock.offset.min [0] = -0.001 ground.station.clock.offset.max [0] = +0.001 -ground.station.clock.offset.estimated [0] = true +ground.station.clock.offset.estimated [0] = false ground.station.range.sigma [0] = 1.0 ground.station.range.bias [0] = 0.0 ground.station.range.bias.min [0] = -1000.0 @@ -168,7 +168,7 @@ ground.station.position.estimated [1] = false ground.station.clock.offset [1] = 0.0 ground.station.clock.offset.min [1] = -0.001 ground.station.clock.offset.max [1] = +0.001 -ground.station.clock.offset.estimated [1] = true +ground.station.clock.offset.estimated [1] = false ground.station.range.sigma [1] = 1.0 ground.station.range.bias [1] = 0.0 ground.station.range.bias.min [1] = -1000.0 @@ -201,10 +201,10 @@ ground.station.latitude [2] = 41.868362882 ground.station.longitude [2] = -119.015669632 ground.station.altitude [2] = 1458.088101 ground.station.position.estimated [2] = false -ground.station.clock.offset [2] = 5.0e-8 +ground.station.clock.offset [2] = -3.5e-8 ground.station.clock.offset.min [2] = -0.001 ground.station.clock.offset.max [2] = +0.001 -ground.station.clock.offset.estimated [2] = true +ground.station.clock.offset.estimated [2] = false ground.station.range.sigma [2] = 1.0 ground.station.range.bias [2] = 0.0 ground.station.range.bias.min [2] = -1000.0 @@ -237,10 +237,10 @@ ground.station.latitude [3] = 47.653972656 ground.station.longitude [3] = -122.309458826 ground.station.altitude [3] = 44.666105 ground.station.position.estimated [3] = false -ground.station.clock.offset [3] = 3.0e-8 +ground.station.clock.offset [3] = 6.1e-9 ground.station.clock.offset.min [3] = -0.001 ground.station.clock.offset.max [3] = +0.001 -ground.station.clock.offset.estimated [3] = true +ground.station.clock.offset.estimated [3] = false ground.station.range.sigma [3] = 1.0 ground.station.range.bias [3] = 0.0 ground.station.range.bias.min [3] = -1000.0 @@ -276,7 +276,7 @@ ground.station.position.estimated [4] = false ground.station.clock.offset [4] = 0.0 ground.station.clock.offset.min [4] = -0.001 ground.station.clock.offset.max [4] = +0.001 -ground.station.clock.offset.estimated [4] = true +ground.station.clock.offset.estimated [4] = false ground.station.range.sigma [4] = 1.0 ground.station.range.bias [4] = 0.0 ground.station.range.bias.min [4] = -1000.0 @@ -309,10 +309,10 @@ ground.station.latitude [5] = 47.653972656 ground.station.longitude [5] = -122.309458826 ground.station.altitude [5] = 44.666105 ground.station.position.estimated [5] = false -ground.station.clock.offset [5] = 6.0e-8 +ground.station.clock.offset [5] = -4.2e-8 ground.station.clock.offset.min [5] = -0.001 ground.station.clock.offset.max [5] = +0.001 -ground.station.clock.offset.estimated [5] = true +ground.station.clock.offset.estimated [5] = false ground.station.range.sigma [5] = 1.0 ground.station.range.bias [5] = 0.0 ground.station.range.bias.min [5] = -1000.0 @@ -345,10 +345,10 @@ ground.station.latitude [6] = 29.868112727 ground.station.longitude [6] = -89.673232869 ground.station.altitude [6] = -14.853146 ground.station.position.estimated [6] = false -ground.station.clock.offset [6] = 2.0e-8 +ground.station.clock.offset [6] = -8.5e-10 ground.station.clock.offset.min [6] = -0.001 ground.station.clock.offset.max [6] = +0.001 -ground.station.clock.offset.estimated [6] = true +ground.station.clock.offset.estimated [6] = false ground.station.range.sigma [6] = 1.0 ground.station.range.bias [6] = 0.0 ground.station.range.bias.min [6] = -1000.0 @@ -381,10 +381,10 @@ ground.station.latitude [7] = 29.868112727 ground.station.longitude [7] = -89.673232869 ground.station.altitude [7] = -14.853146 ground.station.position.estimated [7] = false -ground.station.clock.offset [7] = 1.0e-8 +ground.station.clock.offset [7] = 5.0e-9 ground.station.clock.offset.min [7] = -0.001 ground.station.clock.offset.max [7] = +0.001 -ground.station.clock.offset.estimated [7] = true +ground.station.clock.offset.estimated [7] = false ground.station.range.sigma [7] = 1.0 ground.station.range.bias [7] = 0.0 ground.station.range.bias.min [7] = -1000.0 @@ -417,10 +417,10 @@ ground.station.latitude [8] = 29.868112727 ground.station.longitude [8] = -89.673232869 ground.station.altitude [8] = -14.853146 ground.station.position.estimated [8] = false -ground.station.clock.offset [8] = 1.0e-8 +ground.station.clock.offset [8] = 5.2e-9 ground.station.clock.offset.min [8] = -0.001 ground.station.clock.offset.max [8] = +0.001 -ground.station.clock.offset.estimated [8] = true +ground.station.clock.offset.estimated [8] = false ground.station.range.sigma [8] = 1.0 ground.station.range.bias [8] = 0.0 ground.station.range.bias.min [8] = -1000.0 @@ -453,10 +453,10 @@ ground.station.latitude [9] = 42.520093759 ground.station.longitude [9] = -83.756648765 ground.station.altitude [9] = 262.449442 ground.station.position.estimated [9] = false -ground.station.clock.offset [9] = 1.0e-8 +ground.station.clock.offset [9] = 1.1e-10 ground.station.clock.offset.min [9] = -0.001 ground.station.clock.offset.max [9] = +0.001 -ground.station.clock.offset.estimated [9] = true +ground.station.clock.offset.estimated [9] = false ground.station.range.sigma [9] = 1.0 ground.station.range.bias [9] = 0.0 ground.station.range.bias.min [9] = -1000.0 @@ -492,7 +492,7 @@ ground.station.position.estimated [10] = false ground.station.clock.offset [10] = 0.0 ground.station.clock.offset.min [10] = -0.001 ground.station.clock.offset.max [10] = +0.001 -ground.station.clock.offset.estimated [10] = true +ground.station.clock.offset.estimated [10] = false ground.station.range.sigma [10] = 1.0 ground.station.range.bias [10] = 0.0 ground.station.range.bias.min [10] = -1000.0 @@ -525,10 +525,10 @@ ground.station.latitude [11] = 42.520093759 ground.station.longitude [11] = -83.756648765 ground.station.altitude [11] = 262.449442 ground.station.position.estimated [11] = false -ground.station.clock.offset [11] = 4.0e-8 +ground.station.clock.offset [11] = -2.4e-8 ground.station.clock.offset.min [11] = -0.001 ground.station.clock.offset.max [11] = +0.001 -ground.station.clock.offset.estimated [11] = true +ground.station.clock.offset.estimated [11] = false ground.station.range.sigma [11] = 1.0 ground.station.range.bias [11] = 0.0 ground.station.range.bias.min [11] = -1000.0 @@ -561,10 +561,10 @@ ground.station.latitude [12] = 35.107490239 ground.station.longitude [12] = -114.604973036 ground.station.altitude [12] = 152.410214 ground.station.position.estimated [12] = false -ground.station.clock.offset [12] = 1.0e-8 +ground.station.clock.offset [12] = 4.7e-9 ground.station.clock.offset.min [12] = -0.001 ground.station.clock.offset.max [12] = +0.001 -ground.station.clock.offset.estimated [12] = true +ground.station.clock.offset.estimated [12] = false ground.station.range.sigma [12] = 1.0 ground.station.range.bias [12] = 0.0 ground.station.range.bias.min [12] = -1000.0 @@ -600,7 +600,7 @@ ground.station.position.estimated [13] = false ground.station.clock.offset [13] = 0.0 ground.station.clock.offset.min [13] = -0.001 ground.station.clock.offset.max [13] = +0.001 -ground.station.clock.offset.estimated [13] = true +ground.station.clock.offset.estimated [13] = false ground.station.range.sigma [13] = 1.0 ground.station.range.bias [13] = 0.0 ground.station.range.bias.min [13] = -1000.0 @@ -633,10 +633,10 @@ ground.station.latitude [14] = 35.107490239 ground.station.longitude [14] = -114.604973036 ground.station.altitude [14] = 152.410214 ground.station.position.estimated [14] = false -ground.station.clock.offset [14] = 2.0e-8 +ground.station.clock.offset [14] = -2.7e-9 ground.station.clock.offset.min [14] = -0.001 ground.station.clock.offset.max [14] = +0.001 -ground.station.clock.offset.estimated [14] = true +ground.station.clock.offset.estimated [14] = false ground.station.range.sigma [14] = 1.0 ground.station.range.bias [14] = 0.0 ground.station.range.bias.min [14] = -1000.0 @@ -688,7 +688,7 @@ PV.measurements.velocity.sigma = 0.01 # parameter x and sx is the associated scale factor # scaling factor for orbital parameters normalization (m) # if not specified, the value set for propagator.position.error will be copied -estimator.orbital.parameters.position.scale = 100.0 +estimator.orbital.parameters.position.scale = 100 # we can use either a Levenberg-Marquardt or a Gauss-Newton # optimization engine. Default is Levenberg-Marquardt @@ -715,8 +715,8 @@ estimator.Levenberg.Marquardt.initial.step.bound.factor = 1.0e6 # for example), then the threshold should not be too small. A value # of 10⁻³ is often quite accurate. estimator.normalized.parameters.convergence.threshold = 1.0e-3 -estimator.max.iterations = 50 -estimator.max.evaluations = 75 +estimator.max.iterations = 20 +estimator.max.evaluations = 25 # id of satellite in the Rinex files (only used if some measurements.files are Rinex 2 or 3) satellite.id.in.rinex.files = G07