Solving Non-Linear Equations
Afficher commentaires plus anciens
I have a problem trying to solve a set of 2 non-linear equations. Here is what I have...
R = (20+0.534*1)/(I^0.88) I = 696/(0.696+R)
I wrote a function for these 2 equations to get them in the form F(x) = 0:
function F = myfun(x) F = [20+0.534*1 - x(1)*(x(2)^0.88); 696-0.696*x(1)-x(1)*x(2)]; end
Then, I wrote:
x0 = [2;3]; options = optimoptions('fsolve','Display','iter'); [x,fval]=fsolve(@myfun,x0,options)
Here is the error:
Error using feval Undefined function 'myfun' for input arguments of type 'double'.
Error in fsolve (line 219) fuser = feval(funfcn{3},x,varargin{:});
Caused by: Failure in initial user-supplied objective function evaluation. FSOLVE cannot continue.
What seems to be the problem here?
Alex
1 commentaire
Roger Stafford
le 20 Oct 2014
Your equations and F are not in agreement. In
20+0.534*1 - x(1)*(x(2)^0.88
x(1) is R and x(2) is I, but in
696-0.696*x(1)-x(1)*x(2)
x(1) is I and x(2) is R.
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Systems of Nonlinear Equations dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!