Minimize a function to a desired value

Hello everyone, i need your help :)
I have a function that returns a vector D and a vector of variables L. i want to minimise D starting from an initial vectror L0.
I am using "lsqnonlin". L=lsqnonlin(fun,L0,lb,ub).
it works perfectly, however i want D to be minimised to a certain value that i define. The bounds of the solver are set for L not D.
So my question is: how do i define the value of D to be minimised to?
i hope i was clear enough. i cant give the code since it is a very big one.
Thanks in advance :)

 采纳的回答

"D to be minimised to a certain value" -- so you don't actually want to minimize your function but instead want to find a solution to the system of equations fun(x) = certain_value [or to write it another way, fun(x) - certain_value = 0? In that case, take a look at fsolve instead of lsqnonlin.

2 个评论

it doesn't work because i also need bounds on L. i thought maybe in the options of the solver. is it a good approach?
oh i found it. it was very easy. still use lsqnonlin but the returned value is D=fun(x)-d0. d0 is the "certain value".
thank you very much

请先登录,再进行评论。

更多回答(0 个)

类别

标签

Community Treasure Hunt

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

Start Hunting!

Translated by