Undefined Function or Variable but the variable is in fact Defined

So clearly k is defined, but Matlab keeps telling me it is not defined. What is going on?
>> k=1
k =
1
>> f_n
f_n =
@(r,n)sqrt(pi/(2*k*r))*besseli(n+.5,k*r)
>> f_n(1,1)
Undefined function or variable 'k'.
Error in @(r,n)sqrt(pi/(2*k*r))*besseli(n+.5,k*r)

 Accepted Answer

The function was defined before k. When the anonymous function is created, it grabs a static snapshot of the workspace and does not update. To incorporate k, just rerun the command to create the function handle.

More Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!