How to pass a linear dependence between some parameters into MATLAB non linear solver?

2 ビュー (過去 30 日間)
Alex
Alex 2014 年 3 月 10 日
編集済み: Matt J 2014 年 3 月 10 日
I am fitting a multiparametric model based on a set of differential equations to the experimental data.
I have initial guesses:
par0= [ 1.0, 0.05, 1.0, 0.01, 2*12*1000, 100*4, 300, 2.25, 0, 0.35, 0.43, 0.54, 0.67, 0.8, 0.94];
lb...
ub...
problem=createOptimProblem('lsqcurvefit','objective',@doFit,'x0',par0,'lb',lb,'ub',ub,'xdata',xdata,'ydata',ydata');
ms = MultiStart('TolFun',1e-20,'TolX',1e-20);
par= run(ms,problem,10);
I know that there is a linear dependence between par(10),par(11),par(12),par(13),par(14),par(15), par(16) like sketched in the plot
How to pass this dependence into the solver? Thank you in advance.

採用された回答

Matt J
Matt J 2014 年 3 月 10 日
編集済み: Matt J 2014 年 3 月 10 日
Are you saying par(10:16) lies on a line of known slope? If so, you can eliminate par(11:16) from the problem using the equation
par(11:16)=par(10)+slope*(1:6)
Using the above equation, everything can be written in terms of par(1:10) only.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLeast Squares についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by