Not enough input arguments

function dy= test(t,y)
dy = zeros(2,1);
dy(1)=t-y(1)./t;
dy(2)=y(1)./t-y(2).*t; (error in this line)
Error using test(line 3) Not enough input arguments
Can somebody help me to find the problem please? Thanks

1 件のコメント

Jan
Jan 2011 年 11 月 29 日
Please format your code as explained in the "Markup help" link on this page.

サインインしてコメントする。

回答 (3 件)

Matt Tearle
Matt Tearle 2011 年 11 月 29 日

1 投票

From your comment to Jan: "then run it"...
If you are running it as a script then it will give this error message because test is a function, requiring t and y to be passed in as arguments. Call it as a function and it should work fine:
>> test(pi,rand(2,1))
ans =
3.1230e+000
-2.9509e+000
Jan
Jan 2011 年 11 月 29 日

0 投票

I guess, that you have a function called "t":
which t
Please post the complete error message in the future. It contains helpful information.

1 件のコメント

Jiao He
Jiao He 2011 年 11 月 29 日
I was trying to solve the following differential equations:
dy1/dt=t-y1/t
dy2/dt=y1/t-2*t
parameters in the equations are time dependent.
I save this function as test.m, then run it, returns :
Error using test(line 3)
Not enough input arguments.

サインインしてコメントする。

Walter Roberson
Walter Roberson 2011 年 11 月 29 日

0 投票

What arguments are you passing to test when you invoke it?

カテゴリ

ヘルプ センター および File ExchangeSymbolic Math Toolbox についてさらに検索

タグ

質問済み:

2011 年 11 月 29 日

Community Treasure Hunt

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

Start Hunting!

Translated by