Forcing fsolve to be positive

ire = fsolve(@(re) Pgls(P,BV0,FROE,B,re),re0);
is their a way to force fsolve to return a positive ire?

 Accepted Answer

Torsten
Torsten on 23 Jun 2016
Insert re^2 instead of re in your equation. When fsolve has finished, take the square root of the value returned.
Best wishes
Torsten.

More Answers (1)

Matt J
Matt J on 23 Jun 2016
Edited: Matt J on 23 Jun 2016
Instead of fsolve, use lsqnonlin, which lets you put bounds on the solution,
ire = lsqnonlin(@(re) Pgls(P,BV0,FROE,B,re),re0,0);

Tags

Asked:

on 23 Jun 2016

Edited:

on 23 Jun 2016

Community Treasure Hunt

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

Start Hunting!