本人使用ode45计算一个矩阵微分方程(见附图)的解,但是求解速度过慢,有什么解决办法没? 捕获.JPG 返回小木虫查看更多
如果速度过慢,那很有可能不决定于方程 而在于你的程序,没有你的程序,谁也不可能解决问题
对的,看看程序吧
用计时器看看哪里耗时间
主要程序就是: dx = @(t,xy)[xy(ID(2,ELE001)+1:ID(2,ELE001)*2); inv(M0)*(-K0*xy(1:ID(2,ELE001))-C0*xy(ID(2,ELE001)+1:ID(2,ELE001)*2))]; [t,xy]=ode45(dx,[0:0.005:0.01],xy0); 其中M0,C0和K0都是一千多阶的矩阵,
如果速度过慢,那很有可能不决定于方程
而在于你的程序,没有你的程序,谁也不可能解决问题
对的,看看程序吧
用计时器看看哪里耗时间
主要程序就是:
dx = @(t,xy)[xy(ID(2,ELE001)+1:ID(2,ELE001)*2); inv(M0)*(-K0*xy(1:ID(2,ELE001))-C0*xy(ID(2,ELE001)+1:ID(2,ELE001)*2))];
[t,xy]=ode45(dx,[0:0.005:0.01],xy0);
其中M0,C0和K0都是一千多阶的矩阵,