How can I evaluate a function in a script in MATLAB?
Afficher commentaires plus anciens
I am trying to write a function as a script file. And then put the variables in the function to get output as an array.
That's I am able to do:
function try
a = [-2 1 7.5];
ans = myfunction(a)
function y = myfunction(x)
y = 1/(x^2 + 1)
end
However, it shows solution not found. I know how to call the function on the command window but on idea how to make it done all in the script file.
Thanks in advance. Bonnie
1 commentaire
Do not use try or ans as variable / function names, as these are both names of important inbuilt functions. For the same reason you should never use size, cell, length, i, j, etc, etc.
Réponses (1)
Image Analyst
le 31 Juil 2016
Modifié(e) : Image Analyst
le 31 Juil 2016
Bonnie, because myfunction ended with an "end", try must also end with an "end". Ends are optional (I don't use them) but if one function in an m files uses it then all function need to use ends.
Also you need to use ./ instead of /, and .^ instead of ^ in your formula since x is an array. Corrected trythis.m is below:
function trythis
a = [-2, 1, 7.5];
answer = myfunction(a)
end
function y = myfunction(x)
y = 1 ./ (x .^ 2 + 1)
end
2 commentaires
Xingyi Dai
le 31 Juil 2016
Walter Roberson
le 31 Juil 2016
Works for me. Store those two functions in trythis.m and then at the command line command
trythis
Catégories
En savoir plus sur Data Import and Analysis 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!