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

Find more on Environment and Settings in Help Center and File Exchange

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!