Fitting an custom equasion where i only want to optimize specific parameters
1 回表示 (過去 30 日間)
古いコメントを表示
I want to optimize the fit of my custom equasion. However I only want to change 3 spezific parameters, but the funktion has multiple parameters.
My funktion looks something like this:
1000000*sigk*h1*g1*(c3+(1-((H./100).^c4))/(c5*(1+(Dwir/100)))).*f1)
with sigk, h1, g1, Dwir = skalar
H is a vektor 1x365
f1 has previously been calculated using:
f1 = zeros(1,length(t));
for m = 1:5 %Schleife verschiedene Kelvinelemente
f1 = f1+n(1,m)*(1-exp(-a(1,m)*(t.^b_f1-tau^b_f1))); %Zeitfunktion, Vektor
end
I want to fit the parameters c3,c4 and c5
I have a Vektor "Data" with data from an experiment.
Can you explain to me how I can use the Curve Fitting app or if that is even possible? thank you.
0 件のコメント
回答 (1 件)
Star Strider
2024 年 3 月 3 日
You would need to supply pre-determined values for ‘sigk’, ‘h1’, ‘g1’, and ‘Dwir’ if you have them (you have already calculated ‘f1’), so substitute them into your function and then estimate ‘c3', ‘c4’and ‘c5’.
I assume ‘Data’ and ‘H’ are the same size, so you could then use your function to estimate the desired parameters.
The function is nonlilnear in the chosen parameters ‘c3', ‘c4’and ‘c5’, so you would need to use a nonnlinear parameter estimation function. There are several available in MATLAB.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Mathematics and Optimization についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!