Imported variable is not transferred to fzero- function
Afficher commentaires plus anciens
function y = fzero_optimset(~,~)
x = -5:.01:5;
disp('Please enter a value for variable a!')
a = input('a = ');
y = 1./(1+x.^2) + a * x - 1/2;
plot(x,y);
grid on;
hold on;
x0 = fzero('1./(1+x.^2) + a * x - 1/2',-1,optimset,.1);
plot(x0,0,'x');
end
1 commentaire
Matt J
le 2 Sep 2021
@Florian Roeder's comment moved here
In line 3 of my code, user is prompted to enter a value for variable a.
When I run the code, function "y=1./(1+x.^2)+a*x-1/2" is evaluated correctly. Figure is correct as well.
When function reaches line "x0 = fzero('1./(1+x.^2) + a * x - 1/2',-1,optimset,.1);" , MATLAB shows following error message:
FZERO cannot continue because user-supplied expression ==>
1./(1+x.^2) + a * x - 1/2 failed with the error below.
Error in inline expression ==> 1./(1+x.^2) + a * x - 1/2
Undefined function or variable 'a'.
Error in fzero_optimset (line 20)
x0 = fzero('1./(1+x.^2) + a * x - 1/2',-1,optimset,.1);
How can I handle this problem? I don´t know how to change the code.
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Optimization dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!