Measurement Generation - Sigma input for Theoritical orbit

Hi guys,

I begin to be painful with my questions I know I’m really sorry, but there something I cannot understand with the Measurements generation (both manual method, ie, theoritical orbit, data noise & manual generation of the Measurements objects AND the method proposed by @yzokras with EventBasedScheduler in this exemple https://github.com/GorgiAstro/orbit-determination-examples/blob/022bae63bef6263972ab85b6bc81eaa0b3e6b4ee/00-generate-measurements-and-tle.ipynb ).

The question is :
When I’m generating measurements from the theoritical orbit (without noise), why do I have to put real sigma values in the constructor of the measurement ?

RangeBuilder(noise_sources[‘noise_source_range’],
GroundStation(topocentric_frame),
True, # two-way
sigma_range,
1.0, # Base weight
observable_satellite)

Given that the range value presented here is perfect for theoritical orbit, I thought that the associated error should be 0 (or 1e-6 because of the decomposition of the Jacobean matrix), but, I just noticed that if I put 1e-6 everywhere, my IOD and BLS are convergering to a wrong orbit.

Thank you in advance for the clarification.

PS : I take advantage of this post to ask another question, why the AngularAzEl object do not need the information TwoWay as an input ? This measurement is also depending of the drift during the time needed by the signal to go to the Radar/Telescope, isn’t it ?

The reason is that the builder will… build a measurement, and the measurements stores the sigma so it can be used later by orbit determination as a normalizing parameter.

Thank you again @luc for your help but this time I’m not sure to understand the answer.

I’m aware that the a value of sigma is necessary to build a measurement. The thing I cannot understand is why should I put the real value of sigma_range of my Groundstation if I’m using real positions. I tought I had to put the sigma value used to generate the range, but with real position, the sigma value should be close to zero ?
Also, I do not understand why if I put to small values for the generation of the measurement, the estimator will converge to the wrong orbit.
Finally, in a first time, I used constant values of sigma (range, range_rate, az & el). If I put those values as an input of the perfect Measurement, the Batch is converging perfectly to the real orbit. BUT,
after that I used varying values of sigma for each measurement, funtion of the range (sigma_az = f(range) ), this time, also with perfect Measurements, the batch is not converging perfectly to the real orbit.