problem solving nonlinear equation system with fsolve

2 vues (au cours des 30 derniers jours)
Peter Uwsen
Peter Uwsen le 4 Mar 2019
Hi,
I'm trying to solve the following equation system
P = 1;
lambda = 1;
Maugis = @(X) [lambda*X(1)^2/2*(sqrt(X(3)^2-1)+(X(3)^2-2)*atan(sqrt(X(3)^2-1)))
+4/3*lambda^2*X(1)*(sqrt(X(3)^2-1)*atan(sqrt(X(3)^2-1))-X(3)+1)-1;
X(1)^2-4/3*X(1)*lambda*sqrt(X(3)^2-1)-X(2);
X(1)^3-lambda*X(1)^2*(sqrt(X(3)^2-1)+X(3)^2*atan(sqrt(X(3)^2-1)))-P];
X0 = [1;1;1];
sol = fsolve(Maugis,X0);
but did not succeed using fsolve:
Warning: Trust-region-dogleg algorithm of FSOLVE cannot handle non-square systems; using Levenberg-Marquardt algorithm
instead.
> In fsolve (line 298)
In solve_equs (line 8)
No solution found.
fsolve stopped because the last step was ineffective. However, the vector of function
values is not near zero, as measured by the default value of the function tolerance.
<stopping criteria details>
I'm happy for any help!

Réponse acceptée

Torsten
Torsten le 4 Mar 2019
Try
Maugis = @(X) [lambda*X(1)^2/2*(sqrt(X(3)^2-1)+(X(3)^2-2)*atan(sqrt(X(3)^2-1)))+4/3*lambda^2*X(1)*(sqrt(X(3)^2-1)*atan(sqrt(X(3)^2-1))-X(3)+1)-1;...
X(1)^2-4/3*X(1)*lambda*sqrt(X(3)^2-1)-X(2);...
X(1)^3-lambda*X(1)^2*(sqrt(X(3)^2-1)+X(3)^2*atan(sqrt(X(3)^2-1)))-P];
Best wishes
Torsten.

Plus de réponses (1)

Alex Sha
Alex Sha le 22 Avr 2019
here are solutions:
x1: 1.80929329243556
x2: 1.67586180846898
x3: 1.19942316545143

Catégories

En savoir plus sur Systems of Nonlinear Equations 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