Solving system of Nonlinear Equations

1 vue (au cours des 30 derniers jours)
Saumil
Saumil le 22 Juil 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.

Réponse acceptée

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

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Symbolic Math Toolbox dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by