解如下偏微分方程
以上公式的Latex代码
\begin{cases}
\frac{\partial u}{\partial t}=a\frac{\partial ^2u}{\partial x^2}\,\,,0<x<1,t>0\\
u\left( x,0 \right) =4x\left( 1-x \right) \,\,,0\leqslant x\leqslant 1\\
u\left( 0,t \right) =u\left( 1,t \right) =0 ,t\geqslant 0\\
\end{cases}
MATLAB代码如下
Nt=10;
Nx=10;
a=0.025;
t0=0;
t1=1;
x0=0;
x1=1;
hx=(x1-x0)/Nx;
ht=(t1-t0)/Nt;
T=zeros(Nt+1,Nx+1);%存储每个点的结果
t=t0:ht:t1;
x=x0:hx:x1;
T(1,:)=4.*x.*(1-x);
r=Nt/Nx^2;%网格比
for j=2:Nt+1
for k=2:Nx
T(j,k)=a*r*(T(j-1,k-1)+T(j-1,k+1))+(1-2*a*r)*T(j-1,k);
end
end
imagesc(x,t,T)
colorbar; % 显示颜色条
结果如下
最后画图时如果用mesh(x,t,T),会显示一个三维彩色网格图如下
通过转动也可以显示出x-T或t-T二维图
如果想要实心的格子,就用surf(x,t,T),效果如下