Solving Non-Linear Equations
Mostrar comentarios más antiguos
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 comentario
Roger Stafford
el 20 de Oct. de 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.
Respuesta aceptada
Más respuestas (0)
Categorías
Más información sobre Systems of Nonlinear Equations en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!