1

For a complex system where symbolic computation of the jacobian is challenging, is estimating the jacobian via finite difference a viable option?

To be explicit I'm mostly interested in playing around with IMU currently and some of the theory surrounding IMU error propagation and Lie algebra is a bit more than I want to get into currently(though I'm reading a paper and plan on asking some questions on it). I'm considering evolving the system model using perturbations and applying numerical differentiation to estimate the Jacobian as a way to cheat having to learn some of the theory.

FourierFlux
  • 834
  • 6
  • 12

1 Answers1

2

is estimating the jacobian via finite difference a viable option?

This will depend a lot on your data, requirements and sample rate.

The transfer function of time continuous differentiator is $-j\omega$. That's clearly not bandlimited (it's more of the opposite), so it can't be sampled without significant aliasing.

The transfer function of a one-sample difference $y[n] = x[n]-x[n-1]$ is

$$H(\omega) = 1-e^{-j\omega T} = -j\sin(\omega T/2) \frac{e^{-j\omega T/2}}{2} $$

This only matches roughly at low frequencies (where $\sin(x) \approx x$) and even then it has this annoying half sample delay added on top.

Numerical differentiation is tricky: https://en.wikipedia.org/wiki/Numerical_differentiation

Hilmar
  • 44,604
  • 1
  • 32
  • 63