function_handle with value:
@(x,y)'(9*14^(1/2)*exp(-(2*x)/9)*sin((14^(1/2)*x)/9))/7)'
>> [x,y]=ode45(f,[0,25],0)
Insufficient number of outputs from right hand side of equal sign to satisfy assignment.
this is my ode45 code
[x,y] = ode45(odefun,xspan,y0)
[x,y] = ode45(odefun,xspan,y0,options)
[x,y,xe,ye,ie] = ode45(odefun,xspan,y0,options)
sol = ode45(___)

1 件のコメント

James Tursa
James Tursa 2020 年 11 月 18 日
Please post your complete code, not just snippets.

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

 採用された回答

Star Strider
Star Strider 2020 年 11 月 18 日

0 投票

Delete the single quotation marks.
This runs without error:
f = @(x,y) (9*14^(1/2)*exp(-(2*x)/9)*sin((14^(1/2)*x)/9))/7;
[x,y]= ode45(f,[0,25],0)
figure
plot(x, y)
grid
.

2 件のコメント

Marissa Farrell
Marissa Farrell 2020 年 11 月 18 日
i still get this:
>> f = @(x,y) (9*14^(1/2)*exp(-(2*x)/9)*sin((14^(1/2)*x)/9))/7;
[x,y]= ode45(f,[0,25],0)
figure
plot(x, y)
grid
Insufficient number of outputs from right hand side of equal sign to satisfy assignment.
Star Strider
Star Strider 2020 年 11 月 18 日
It ran for me without error in a script I use for MATLAB Answers problems.
Use it in a script (instead of your Command Window) and it should work.

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

その他の回答 (1 件)

Steven Lord
Steven Lord 2020 年 11 月 19 日

1 投票

I'm guessing you've defined a variable named ode45 that's preventing you from calling the ode45 function included in MATLAB. To check this, use the which function.
which -all ode45
If you see "ode45 is a variable" in the text displayed by that line of code you will need to rename or delete that variable before you will be able to call the ode45 function.

カテゴリ

タグ

質問済み:

2020 年 11 月 18 日

回答済み:

2020 年 11 月 19 日

Community Treasure Hunt

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

Start Hunting!

Translated by