solve differential equation with matrix

2 ビュー (過去 30 日間)
Luigi Stragapede
Luigi Stragapede 2020 年 7 月 17 日
コメント済み: Bjorn Gustavsson 2020 年 7 月 17 日
How can I solve the following differential equation with MATRIX?
where T is the unknown:
P is known (I know P4, P5 and P6):
R^-1=G is known (I know all its terms):
C is known (I know all its terms):

回答 (1 件)

Bjorn Gustavsson
Bjorn Gustavsson 2020 年 7 月 17 日
Yes your system of ODEs are on the form (with singular mass-matrix, C) that ode23t and ode15s can handle, at least according to the help and documentation.
HTH
  4 件のコメント
Luigi Stragapede
Luigi Stragapede 2020 年 7 月 17 日
I tried to write:
function dTdt = fcn_dTdt(t,T,G,P,C) %I have put G (not R) and C
dTdt =C^(-1)*(P-G*T);
end
[t_out,T_out] = ode15s(fcn_dTdt(t,T,G,P,C),t, T0);
but I received this error:
Error: File: programma_totale_6nodi_1A.m Line: 504 Column: 5
Function definitions are not permitted in this context.
Maybe because this computation is inside a for loop.
Bjorn Gustavsson
Bjorn Gustavsson 2020 年 7 月 17 日
Start by looking at the odeexamples - that gui lets you run and inspect a good number of examples with different combinations of the ODE-integrators' capabilities. You can also look at the source code of them, which should illustrate how to write the code.
In this example you should save the first code-snippet to a .m-file with the name fcn_dTdt.m and then put the setup and ode15s call either in a script or on the command-line.

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

カテゴリ

Help Center および File ExchangeOrdinary Differential Equations についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by