Parameter that depends on a State Variable
1 ビュー (過去 30 日間)
Hello, I have the following main code
global a1 b1 c1 P0 Sr2
a1=0.01; b1= 4.13; c1=1.250; Sr2=24.83683
and the myodefun function is
global Ptr Sr2 a1 b1 c1
fun = @ff1; % function
x0 = 2; % initial point
V1 = fzero(fun,x0);
And the other ff1 function is
function y = ff1(V)
global a1 b1 c1 P0 Ptr
y = a1*exp(c1*V)+b1*log(c1*V)-P0-Ptr;
As you can see that V1 depends on the calculations of the state variable x. When I run the code, I get the following error:
Not enough input arguments.
Error in myodefun (line 5)
Error in Out (line 6)
I can not find where the problem is! Even though I did it several time before for different problems! I do not know what it means by not enough input arguments.
Thanks in advance.
James Tursa 2016 年 10 月 11 日
編集済み: James Tursa 2016 年 10 月 11 日
In this line:
The 1st argument to ode45 is myodefun, which is a call to the function myodefun without any arguments. So when you get into myodefun and hit the line with the x, x was not passed in hence the error. To fix this, pass in a function handle to myodefun:
その他の回答 (0 件)
Find more on Programming Utilities in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!