运行这段在MATLAB中写的迎风法解双曲型PDE时稳定闪退

标签: 问题反馈——计算问题

Dicer 2023-04-26 23:37:43

h=0.01;
r=0.5;
tao=r*h;
x=0:h:5;
t=0:tao:10;
length_t=length(t);
length_x=length(x);
U=zeros(length_t,length_x);
length_in=length_x-1;
A=diag((1-r)*ones(length_in,1))+r*diag(ones(length_in-1,1),-1);
[X,T]=meshgrid(x,t);
F=2*T.*sin(X)+T.^2.*cos(X);
for i=2:length(t)
    U(i,2:end)=A*U(i-1,2:end)'+tao*F(i,2:end)';
end
U_acc=T.^2.*sin(X);
figure(1)
subplot(1,2,1)
mesh(x,t,U)
title("解曲面")
subplot(1,2,2)
mesh(x,t,U_acc-U)
title("误差曲面")

发现是FOR循环内的矩阵转置处出现了问题,但是无法清晰定位具体发生了什么导致的问题,希望开发组能解决。

430 1 0 收藏 回复

回复

北太天元客服 2023-04-27 #1

您好,我们这边复现了一下没有发现问题,建议您在官网下载最新版本的软件试试,有问题再反馈给我们,谢谢支持!

回复

重置 提交