problem solving nonlinear equation system with fsolve

2 views (last 30 days)
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!

Accepted Answer

Torsten
Torsten on 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.

More Answers (1)

Alex Sha
Alex Sha on 22 Apr 2019
here are solutions:
x1: 1.80929329243556
x2: 1.67586180846898
x3: 1.19942316545143

Community Treasure Hunt

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

Start Hunting!