function F = Main(x) ↑ Error: Function definition not supported in this context. Create functions in code file.

1 view (last 30 days)
function F = Main(x)
F(1) = x(1)^2 - 2 * x(2)^1 - 1;
F(2) = -3 * x(1)^2 + x(2)^2 + 2;
F(3) = x(1)^3 + x(2) ^ 3 - 2;
[x,fval] = fsolve(Main,[0, 0 , 0],options)
options=optimset('Display','iter')

Answers (2)

Zhonghua Sun
Zhonghua Sun on 21 Dec 2019
From the above, it seems that the function of fsolve() is not defined before referenced.

Walter Roberson
Walter Roberson on 21 Dec 2019
function F = Main(x)
F(1) = x(1)^2 - 2 * x(2)^1 - 1;
F(2) = -3 * x(1)^2 + x(2)^2 + 2;
F(3) = x(1)^3 + x(2) ^ 3 - 2;
You need to store the above 4 lines in a file named Main.m
[x,fval] = fsolve(Main,[0, 0 , 0],options)
options=optimset('Display','iter')
You need to store the code
options = optimset('Display','iter');
[x,fval] = fsolve(Main,[0, 0 , 0],options)
in a different file, not named Main.m . Then you would execute that file.

Categories

Find more on Get Started with Optimization Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!