Fitting impedance of simple randles circuit to Fourier transform formula

17 views (last 30 days)
Frizstyler Friz
Frizstyler Friz on 19 Apr 2021
Answered: Frizstyler Friz on 23 Apr 2021
I have this simple circuit that i want to find parameters of,
and its real-world magnitude frequency response derived from impedance spectroscopy.
(magnitude frequency response.Frequency is 10-10000Hz with 10Hz step.)
Now, i have derived the fourier transform of this impedance:
Whose magnitude i found:
However trying to fit this last equation with matlab CFTOOL gives nonsense. What am i doing wrong??

Answers (2)

David Goodmanson
David Goodmanson on 19 Apr 2021
Hi F^2
I believe you are trying to fit an incorrect magnitude, which can of course lead to nonsense. The correct expression is
absZ = sqrt( ((r1+r2)^2 + r1^2*r2^2*w^2*c^2)/(1 + r2^2*w^2*c^2) );
If you plug some numbers into your expression and compare to
absZ = abs((r1+r2 +i*w*c*r1*r2)/(1+i*w*c*r2)) (a)
there is going to be disagreement.
When using fctool, is there any reason you can't do this an easier way and just fit (a) above?
  1 Comment
Frizstyler Friz
Frizstyler Friz on 19 Apr 2021
Well, i had used a sketchy formula indeed. Anyway, tried your formulas and the same result comes out. I changed the frequencies to rad/s ,too.
Here i supply the measurements too in excel sheet, if anyone's interested i'd highly appreciate.

Sign in to comment.


Frizstyler Friz
Frizstyler Friz on 23 Apr 2021
The problem was solved by tweaking the fitting options. Constraining the lower limits and startpoint values was important. Scaling the capacitor with 1e-7 or less in front worked. I also reduced function termination tolerance to 1e-10, seems to affect the fit somewhat?

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by