In my research, I need to invert a Fisher matrix in order to get a covariance matrix for me to do parameter estimation. Unfortunately, the values of Fisher matrix vary by many orders of magnitude, and the numerical errors are significant (see image at end).
I first attempted this in python using scipy.linalg.inv, and it is not giving stable enough results. Do you guys have any recommendations to proceed?
Edit: Some context for the comment. I am trying to find parameter uncertainties $\theta^i$ given measurement $h(f,\theta^i)$. The fisher matrix is defined as $$ \Gamma_{ij} = \left( \frac{\partial h}{\partial \theta^i} | \frac{\partial h}{\partial \theta^j}\right) = 2 \int_0^\infty S_n(f)^{-1} \left(\frac{\partial h^\star}{\partial \theta^i} \frac{\partial h}{\partial \theta^j} + \frac{\partial h}{\partial \theta^i} \frac{\partial h^\star}{\partial \theta^i} \right) df \, . $$ Then the parameter uncertainties are $$ \langle \Delta \theta^i \Delta \theta^j\rangle = \left( \Gamma^{-1} \right)^{ij} \, . $$ So my numerical issues are occuring when I try and find $\left( \Gamma^{-1} \right)^{ij}$.