Solving system of Nonlinear Equations

4 visualizaciones (últimos 30 días)
Saumil
Saumil el 22 de Jul. de 2011
Hi,
I might be missing something here: I am making use of the symbolic toolbox to solve the following system of equations. I have 3 equations of this kind:
f1 = Vs1 - Dpt2.*Z - V1;
f2 = Vs2 - Dpt5.*Z - V2;
f3 = Vs3 - Dpt7.*Z - V3;
Z, Vs1, Vs2 and Vs3 are simply integers/fractions
V1, V2, V3 are unknown and sym variables.
Dpt2, Dpt5 and Dpt7 are each functions of V1, V2 and V3. They are of the type: Sum terms of
((besselj(1,V1)).^2) .* ((besselj(0,V2)).^2) .* ((besselj(1,V3)).^2) + ........4 similar terms
and so on.
MATLAB solve() is not able to solve the equation. I have tried using Newton's method roughly by calculating the f1, f2 and f3 at some points and finding the change of f1, f2 and f3 w.r.t. V1, V2 and V3, but the inverse of the jacobian always goes to infinity.
Is there any another method to solve such equations?
Thanks a lot. I would appreciate any input. I can put the actual equations if required. I didn't put them yet because they are too long.

Respuesta aceptada

Yi Cao
Yi Cao el 22 de Jul. de 2011
You can try fsolve.
  1 comentario
Saumil
Saumil el 22 de Jul. de 2011
Thanks! It was tricky to use fsolve for symbolic equations, using subs(), but it seems to have done the trick. Thanks a lot!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Symbolic Math Toolbox en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by