bias_drift uses wrong std value?See original GitHub issue
First, thanks for the amazing tool!
But, I suspect there is a bug here: https://github.com/Aceinna/gnss-ins-sim/blob/2d2ba0fac193afd10b4d7758cc85d14457f17001/gnss_ins_sim/pathgen/pathgen.py#L552
Should it be
b = drift[i] * np.sqrt(1. - np.exp(-2/(fs * corr_time[i])))
or am I missing something?
With this scaling, then the drift[i] describes the standard deviation of the output process. Whereas, the original implementation just describes the standard deviation of the discretized white noise. Which means that the noise process will not be consistent if the sampling frequency is changed.
- Created 2 years ago
Top GitHub Comments
(1 - dt/corr_time)**2is the Taylor expansion of
1 - exp(-2 * dt/corr_time)upto the second order. Also, note that dt/corr_time must be less than or equal to unity to make physical sense. (corr_time > dt or the whole discretization kinda falls a part.)
Thank you for the explanation. It is clear to me now. A pull request will be much appreciated.
I’ll try to answer your comments using the same numbering:
- You are right, this is a typo from my part.
- No, the variance is
dt. See https://en.wikipedia.org/wiki/Euler–Maruyama_method (last sentence in the introduction).
- Follows 2.