Why is my function not recognized?

function myEquation (x)
a = 0.4361836;
b = 0.1201676;
c = 0.937298;
r = (e^(-0.5*(x^2)))/(2*pi)
t = 1/(1+(0.3326*x))
phi = 0.5 - r*((a*t)-(b*(t^2))+(c*(t^3)))
fprintf('The value of Φ(x) is: %i', phi)
fprintf('\n')
end
This is my current code. I am trying to use it to solve for the value of phi, and then print it. However, when I try to call it from the Command Window, it just says it is an unrecognized variable or function.

1 个评论

"However, when I try to call it from the Command Window, it just says it is an unrecognized variable or function."
Most likely:
  • you have saved the function as a local function (i.e. after some other code in script or after another function),
  • you have saved the Mfile somewhere that is not on the MATLAB Search Path.

请先登录,再进行评论。

 采纳的回答

myEquation(2)
r = 0.0215
t = 0.6005
phi = 0.4909
The value of Φ(x) is: 4.909191e-01
function myEquation (x)
a = 0.4361836;
b = 0.1201676;
c = 0.937298;
r = exp(-0.5*(x^2))/(2*pi)
t = 1/(1+(0.3326*x))
phi = 0.5 - r*((a*t)-(b*(t^2))+(c*(t^3)))
fprintf('The value of Φ(x) is: %i', phi)
fprintf('\n')
end

3 个评论

r = exp(-0.5*(x^2))/(2*pi) % the variable e is not defined inside the function used to compute exponential
Replace undefined variable e with exp function
How would I call this from the command window?
"How would I call this from the command window?"
Like this:
myEquation(2)
What is probably more important is where you have saved that function:
  • it must be the main function in an Mfile (i.e. it cannot be a local function or a nested function or part of a script),
  • the Mfile must be on the MATLAB Search Path (simplest is to save it in the current directory).

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Startup and Shutdown 的更多信息

产品

版本

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by