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 Comment

"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.

Sign in to comment.

 Accepted Answer

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 Comments

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).

Sign in to comment.

More Answers (0)

Categories

Products

Release

R2023b

Asked:

on 9 Feb 2024

Commented:

on 9 Feb 2024

Community Treasure Hunt

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

Start Hunting!