Ionosphere free LC

In reality they are present, but not a the MultiplexedMeasurement level.

Because you can have different modifiers for measurements in a same multiplexed measurement, the modifiers are not associated to the multiplexed measurement but to the measurements inside the multiplexed measurement. That’s why if you call multiplexedMeasurement.getModifiers() you have an empty list.

For instance, considering a Range and a Phase measurement at a given epoch, you will build your MultiplexedMeasurement with the two previous. As you don’t want to consider a PhaseAmbiguityModifier for the Range measurement, that’s why the modifiers are not at the MultiplexedMeasurement level but at the measurement level (i.e. here the PhaseAmbiguityModifier is associated with the Phase measurement).

If you look at the MultiplexedMeasurement class

    for (int i = 0; i < observedMeasurements.size(); ++i) {

        // filter states involved in the current measurement
        ...

        // perform evaluation
        final EstimatedMeasurement<?> eI = observedMeasurements.get(i).estimate(iteration, evaluation, filteredStates);
        estimatedMeasurements.add(eI);

        // extract results
        ...

        // extract states
        ...

    }

You can see that, for each observed measurement inside the multiplexed measurement, the corresponding .estimate(...) method is called. Therefore, the observed measurement modifiers are applied.

Best regards,
Bryan

1 Like