"Undefined function" error when using multiple anonymous functions

1 次查看(过去 30 天)
I'm writing a script that defines several anonymous functions, many of which reference other functions. However, one particular function always returns an "undefined function" for one of its nested functions each time I call it.
b = 3.048; % wing span, meters
B = .2286; % ball diameter, m
t = .0762; % extra fuselage material, m
a_w = @(AR,f_w)((b^2)./AR)-(c(AR).*f_w); % planform area (fuse accounted for)
c = @(AR) (10*b)./(9*AR); % chord length
>> c(5:12)
ans =
0.6773 0.5644 0.4838 0.4233 0.3763 0.3387 0.3079 0.2822
>> a_w(5:12,B+t)
Undefined function or variable 'c'.
Error in LiveEditorEvaluationHelperESectionEval>@(AR,f_w)((b^2)./AR)-(c(AR).*f_w)
As you can see above, if I call c by itself, it functions normally. When I call a_w, however, it returns an undefined function error for c.
I feel like I've got to be missing something obvious. Any help would be greatly appreciated!

采纳的回答

madhan ravi
madhan ravi 2019-9-14
编辑:madhan ravi 2019-9-14
Define c anonymous function before a_w and everything will be fine.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

产品


版本

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by