eitcom / pyEIT

Python based toolkit for Electrical Impedance Tomography
Other
169 stars 96 forks source link

Discrepancy in the gn Function Implementation in PyEIT Framework #97

Open Ling991028 opened 7 months ago

Ling991028 commented 7 months ago

I am a student researching Electrical Impedance Tomography (EIT). While using the gn function, I encountered an inconsistency. In the paper "pyEIT: A Python-based Framework for Electrical Impedance Tomography," the update equation for x0 is stated as x0 + (J^TJ + lambR)^(-1)J^Tr0. However, in the gn function, it seems to be implemented as x0 - (J^TJ + lambR)^(-1)J^Tr0. After comparing the representations of each symbol, I found no discrepancies, yet there is a difference in the positive/negative sign. Could you kindly explain this inconsistency? I would greatly appreciate any insights or clarification you could provide regarding this matter. Thank you for your time and assistance.

liubenyuan commented 7 months ago

Hi, if r is the residual of $r=(f(x) - f)$, then minimizing a nonlinear least square $\sum ri^2$ equals $x{k+1} = x_{k} - (J^TJ)^{-1}J^Tr$, which is the static EIT imaging in gn.

In original paper, I derived the equation using r=(f - f(x)) for ease of dynamic EIT imaging, which takes the difference of $f{n+1}$ and $f{n}$.

These are surely misleading and I am sorry for this inconvenience. As you dig further, there are many minus signs in the final step of some dynamic imaging algorithms. We may create an PR writing a detailed document (I am currently out of academe for about an year) on these issues.

Thanks for using pyeit.