Hello,
I can’t connect yet on Orekit gitlab so that’s why I’m posting here.
I noticed that AbstractOneWayGNSSMeasurement is adding the local clock parameter drivers in the list, but its base class AbstractOnBoardMeasurement do it already. The result is a parameter vector of 6 which contains twice each driver parameter of the clock.
public AbstractOneWayGNSSMeasurement(final PVCoordinatesProvider remotePV,
final QuadraticClockModel remoteClock,
final AbsoluteDate date,
final double range, final double sigma,
final double baseWeight, final ObservableSatellite local) {
// Call super constructor
super(date, range, sigma, baseWeight, Collections.singletonList(local));
// The local satellite clock offset affects the measurement
addParameterDriver(local.getClockOffsetDriver());
addParameterDriver(local.getClockDriftDriver());
addParameterDriver(local.getClockAccelerationDriver());
// Initialise fields
this.remotePV = remotePV;
this.remoteClock = remoteClock;
}
public AbstractOnBoardMeasurement(final AbsoluteDate date, final double observed,
final double sigma, final double baseWeight,
final List<ObservableSatellite> satellites) {
// Call to super constructor
super(date, observed, sigma, baseWeight, satellites);
// Add parameter drivers
satellites.forEach(s -> {
addParameterDriver(s.getClockOffsetDriver());
addParameterDriver(s.getClockDriftDriver());
addParameterDriver(s.getClockAccelerationDriver());
});
}