Dear @bcazabonne,

thank you for your reply. I chose some feasible values for the covariance matrix and I don’t get the same error anymore. Of course I knew that an idendity matrix wasn’t physically “acceptable”, but I really didn’t think this would have caused a singular problem…

However, today I noticed another thing that I am still not able to understand. Starting from the result of the *SequentialBatchLSEstimator.estimate()* method I tried to check the Jacobian with *SequentialBatchLSEstimator.getOptimum().getJacobian()* and I found something I didn’t expect to find. The derivatives of my measurements with respect to the satellite state, satellite clock drift and satellite clock offset are of the form

```
dM/dy = [n_1, n_2, n_3, 0, 0, 0, c*t, c ]
```

where *n_1*, *n_2* and *n_3* are constant for all of the measurements, *c* is the speed of light and *t* is the time passed from the initial date to the actual measurement date. More precisely, in my case

```
dM/dy = [0.33, -0.84 , 0.43, 0, 0, 0, c*t, c ]
```

and this is what I give to *EstimatedMeasurement.setEstimatedValue()* and *EstimatedMeasurement.setParameterDerivatives()* in my measurement class, which is a simple extension of Orekit’s *AbstractMeasurement* (actually it is

very similar to *Range*). Considering 10 measurements collected every 4044 s, the method *SequentialBatchLSEstimator.getOptimum().getJacobian()* returns the following

```
{0.4755015197,-1.2009672502,0.6102395393,0.0,-0.0,0.0,0.0,418.2372460938}
{0.6885141067,-1.2741452065,1.4968398907,0.0,-0.0,0.0,1691351.423203125,418.2372460938}
{1.4482117258,-1.3651391222,3.0698064736,0.0,-0.0,0.0,3382702.84640625,418.2372460938}
{2.2355194583,-1.4036030628,4.5605973138,0.0,-0.0,0.0,5074054.269609375,418.2372460938}
{2.9323087851,-1.3929640368,5.8700864932,0.0,-0.0,0.0,6765405.6928125,418.2372460938}
{3.5424232447,-1.3384796292,7.0031671399,0.0,-0.0,0.0,8456757.116015624,418.2372460938}
{4.0823846724,-1.2438025861,7.9767102184,0.0,-0.0,0.0,10148108.53921875,418.2372460938}
{4.5663647276,-1.111608235,8.8066231628,0.0,-0.0,0.0,11839459.962421875,418.2372460938}
{5.0050786337,-0.9439763353,9.5061888554,0.0,-0.0,0.0,13530811.385625,418.2372460938}
{5.4065255275,-0.7425892402,10.0862897392,0.0,-0.0,0.0,15222162.808828125,418.2372460938}
```

and it is evident that the first three components increase as the number of measurements increases. I read on the documentation that this is a weighted Jacobian, but should I really expect something like this? Notice that the “sigma” I associated to the measurements is always the same.

Am I missing something obvious maybe? Or can it be a sort of normalization performed internally since the elements of my derivatives array are very different? I have both c and number lower than 1…

Thank you so much!!!

Samuele