Cole Cole Fitting to data
Mostrar comentarios más antiguos
I am having an experimental data and I want to do cole cole fitting using the equation
εr(ω) = ε' r(ω) - jε'' r(ω) = εro + Δεr/1 + (jωτ)^1-α +σs/jωε0
I am trying to do this with curve fitting toolbox, but not able to do it.
Then I want to find coefficientf from the equation.
I have attached csv file and code i was using this:
fid = fopen('Ist.csv');
out = textscan(fid,'%f %f %f', 'Headerlines', 1, 'delimiter',',');
fclose(fid);
%date = datevec(out{1});
col1 = out{1}
col2 = out{2}
Matlab form of equation:
output = e + d./((1-(j.*omega.*t).^(1-a)))+s./(j.*omega.*es);
16 comentarios
John D'Errico
el 2 de Sept. de 2021
Editada: John D'Errico
el 2 de Sept. de 2021
It looks like as I was writing this comment, you did attach two csv files, but the rest of my comment still applies.
Can we assume that e and d are unknowns? omega? a? s? How about j? Is es one unknown, or a product of two unknowns? After all, s and e both appear to be possibly uknowns. So what is es?
Is t the independent variable, represented by what? out(1)? Or something else?
Jasmine Boparai
el 2 de Sept. de 2021
Editada: Jasmine Boparai
el 2 de Sept. de 2021
Star Strider
el 2 de Sept. de 2021
What variables are the data, what variables are known, and what variables (parameters) are to be estimated?
Is ‘j’ a variable or the imaginary operator?
.
Jasmine Boparai
el 2 de Sept. de 2021
Editada: Jasmine Boparai
el 2 de Sept. de 2021
Star Strider
el 2 de Sept. de 2021
What variables are the data to be fitted? Independent variable? Dependent variable?
Apparently ‘es’ now has a value assigned to it. What value is assigned to ω?
.
Jasmine Boparai
el 2 de Sept. de 2021
Editada: Jasmine Boparai
el 2 de Sept. de 2021
Star Strider
el 2 de Sept. de 2021
Fitting real data to a complex model is not possible.
Jasmine Boparai
el 2 de Sept. de 2021
Star Strider
el 2 de Sept. de 2021
I tried with abs, not real, and could not get it to fit.
Jasmine Boparai
el 2 de Sept. de 2021
Alex Sha
el 3 de Sept. de 2021
if taking equation as:
output = real(e + d./((1-(j.*omega.*t).^(1-a)))+s./(j.*omega.*es))
result:
Root of Mean Square Error (RMSE): 0.301453065843602
Sum of Squared Residual: 90.9648248574138
Correlation Coef. (R): 0.999593118288108
R-Square: 0.999186402128943
Parameter Best Estimate
-------------------- -------------
ero 8.667518205328
d 42.2642835242029
t -8.6912938387384E-11
a -0.493793750300934
s -1270059.74250092
parameter s can be any value, others keep stable values;

while if taking equation as:
output = abs(e + d./((1-(j.*omega.*t).^(1-a)))+s./(j.*omega.*es))
result (stable and unique):
Root of Mean Square Error (RMSE): 0.164575686925224
Sum of Squared Residual: 27.1122418836362
Correlation Coef. (R): 0.999878747426502
R-Square: 0.99975750955519
Parameter Best Estimate
-------------------- -------------
ero 7.32134313693091
d 43.9926893787809
t 9.44768896632764E-11
a -0.364142224570391
s 0.659065621688692

Jasmine Boparai
el 3 de Sept. de 2021
Star Strider
el 3 de Sept. de 2021
That uses different software, not MATLAB, to estimate the parameters. The code would therefore not be at all helpful unless you also have that software.
Jasmine Boparai
el 3 de Sept. de 2021
Jasmine Boparai
el 3 de Sept. de 2021
Star Strider
el 3 de Sept. de 2021
I have no idea.
I have no idea what your data are, the rationale behind the model you are fitting, or anything else.
All I know is that I cannot get either GlobalSearch or ga to fit it.
Respuesta aceptada
Más respuestas (1)
Maha
el 12 de Nov. de 2022
0 votos
can i get the script code working on matlab to solve the same prob debye eq
Categorías
Más información sobre Get Started with Curve Fitting Toolbox en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

