Fix MATLAB Code Error: Input Argument "S" is Undefined

  • #1
49
0
I get the following error with my MATLAB code. Can anyone help me fix it? I don't see what is wrong.

----------------------------------------------------------------

? Input argument "S" is undefined.

Error in ==> RCPrototype at 11
Wpay = Tmax/((CDA0/S)/CL + cd/CL + CL/(pi*AR)) - Wfuse;

-----------------------------------------------------------------

MATLAB CODE:

function [WpayMax, constraint] = RCPrototype(AR, S, lambda)

Wfuse = 2.5;
Tmax = 0.70;
CDA0 = 0.004;
cd = 0.028;
CL = 1.0;
tau = 0.11;
eps = 0.03;

Wpay = Tmax/((CDA0/S)/CL + cd/CL + CL/(pi*AR)) - Wfuse;
WpayMax = max(abs(Wpay));
constraint = 0.018*((Wfuse + Wpay)/(E*tau*(tau^2+eps^2)))*(1+lambda)^3*(1+2*lambda)*(AR^3);

[WpayMax, constraint] = RCPrototype(0.5,0.5,0.5);

end
 
  • #2
has S been defined prior to calling the function?? if not, then it isn't defined within the function itself.
 
  • #3
Try calling the function from another M-file. I'm guessing you're trying to directly run the function file.

Also, what are "E" and "lambda" defined as in your function?
 
  • #4
You're calling the function from within the function:

Code:
constraint = 0.018*((Wfuse + Wpay ...

[B][WpayMax, constraint] = RCPrototype(0.5,0.5,0.5);[/B]

end

You need to put that outside the function body.
 

Suggested for: Fix MATLAB Code Error: Input Argument "S" is Undefined

Replies
4
Views
927
Replies
2
Views
1K
Replies
1
Views
2K
Replies
4
Views
495
Replies
6
Views
738
Replies
5
Views
416
Replies
1
Views
957
Replies
5
Views
1K
Back
Top