Unable to run a simple 'fsolve' example.

Hi,
While running the root2d example file provided with the 'fsolve' document, MATLAB is throwing the following error:
Unrecognized function or variable 'eml_allow_mx_inputs'.
Error in fsolve
The code for root2d file is below and the m-file is placed in the MATLAB directory:
function F = root2d(x)
F(1) = exp(-exp(-(x(1)+x(2)))) - x(2)*(1+x(1)^2);
F(2) = x(1)*cos(x(2)) + x(2)*sin(x(1)) - 0.5;
end
I am running the following syntax to solve 'root2d':
fun = @root2d;
x0 = [0,0];
x = fsolve(fun,x0)

2 Commenti

Experiment with
restoredefaultpath; rehash toolboxcache
If that solves the problem then
savepath
Thanks Walter. This syntax would come-in handy to fix any future path-related issues.

Accedi per commentare.

 Risposta accettata

My guess is that you accidentally added the toolbox/optim/eml directory under matlabroot to the MATLAB search path. If it is on the path, remove it from the path.
contains(path, "toolbox/optim/eml")
ans = logical
0
When you run the following command it should not list the fsolve.m file in toolbox/optim/eml. It should list the one in toolbox/optim/optim.
which -all fsolve
/MATLAB/toolbox/optim/optim/fsolve.m
The version of the file in toolbox/optim/eml is only used by MATLAB Coder when you generate C or C++ code from a function that calls fsolve.

1 Commento

Shiv Tewari
Shiv Tewari il 11 Apr 2023
Modificato: Shiv Tewari il 11 Apr 2023
Thanks Steven.
I saw that MATLAB was using the p-file for solving 'root2d,' I didn't know that MATLAB uses the m-file for solving the non-linear equation. As you suggested, I removed the path to the p-file and that did the trick.
I wonder how the path to the p-file got added to my MATLAB, because I didn't have this issue while using 'fsolve' ealier.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Get Started with MATLAB in Centro assistenza e File Exchange

Prodotti

Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by