How to get positive kla(mass transfer coefficient) by solving ODE's using ode 15s and lsqonlin function?
2 次查看(过去 30 天)
显示 更早的评论
[klaFit, resnorm, residual,~,optOut,lambda,J] = lsqnonlin(residualFun,...
0.5,[ ],[ ],lsqOpts);
The kla value after iterating returns a negative value from lsqonlin function. Could some one explain this or help getting a positive value?
0 个评论
回答(1 个)
Kumar Pallav
2021-9-27
From my understanding, 'lsqnonlin' solves nonlinear least-squares (nonlinear data-fitting) problems.
x = lsqnonlin(fun,x0) starts at the point x0 and finds a minimum of the sum of squares of the functions described in fun.
Here, you have given the initial point as 0.5, and the solution you get is negative, that means, your function (residualFun) sum of squares is minimized at that negative value.
You can try the following format so that the solution is always in the range lb ≤ x ≤ ub,
x = lsqnonlin(fun,x0,lb,ub,options)
where 'lb' and 'ub' are lower and upper bounds respectively.
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!