0
$\begingroup$

Which method can be used to optimize parameters of a model, to fit experimental data?

Concrete: Following parameters and calculation model:

Fixed parameters:

P0 = 101325;
Pr = 0.71;
η = 1.838*10^-5;
κ = 1.4;
ρ0 = 1.19;
c0 = (κ*P0/ρ0)^0.5;
Z0 = ρ0*c0;
f = Range[400, 10000]; 
ω = 2*Pi*f;
d := 15*10^-3;

Adjustable parameters. Accuracy should be 0.01, except σ (0.1). Range/Boundary conditions are in brackets.

ϕ -> [0.5 - 1];
σ -> [5000, 140000];
α -> [1, 4];
λ -> [1*10^-6 , 1*10^-4];
λ' -> [1*10^-6 , 1*10^-4];
kop -> [1*10^-11 , 1*10^-9];

Calculation model with formulas:

H = (λ^2*σ^2*ϕ^2)/(4*α^2*η*ρ0); 
g = Sqrt[1 + (I*ω)/H]; 
nup = η/(Pr*ρ0); 
Mp = (8*kop)/(λ^2*ϕ); 
wtl = (nup*ϕ)/kop; 
gp = Sqrt[1 + (I*Mp*ω)/(2*wtl)]; 
Reff = α*(1 + (g*(σ*ϕ))/(I*α*ρ0*ω)); 
Keff = κ/(κ - (κ - 1)/(1 - (I*gp*wtl)/ω));
kw = ω*Sqrt[Reff/Keff];
Zc = Sqrt[Reff*Keff];
Zs = -I*Zc*Cot[kw*d];
r = (Zs - 1)/(Zs + 1);
(*Target value a (absorption over frequency f *)
a = 1 - Abs[r]^2;

I want to import data like this: (Must the frequency steps be the same as the setps of the range of defined variable f?)

Absorption(y-axis) over frequency (x-axis)

My target is now, to get the adjustable parameters for the best fit to a given plot/imported-data.

Please give concrete answers. Best would be a concrete solution inculdung an optimization model with implemented boundaries. Explanation or suggestions are also welcome.

$\endgroup$
  • 1
    $\begingroup$ Have you taken a look atFit, FindFit and NonlinearModelFit? $\endgroup$ – Mauricio Fernández Aug 11 '17 at 10:57
  • $\begingroup$ Yes i tried, see edit of the question. $\endgroup$ – JoeK Aug 13 '17 at 12:02
  • $\begingroup$ Rather than edit the question you opened up a duplicate question (although the duplicate is more informative). So you might want to consider editing this question to look like the newest question so that the good comment by @MauricioLobos that you've used doesn't get lost. Also, based on your newer question, I don't think there's much additional advice we can give without the data (or a subset of the data). And it might be that your function just doesn't bend the same way as the data. $\endgroup$ – JimB Aug 13 '17 at 21:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.