Matlab PDE解算器pdpde-如何正确设置边界条件?

时间:2019-03-19 18:30:36

标签: matlab

我有这样的PDE问题:

Du / Dt = Du / Dx

初始情况:

u(x,0)= x + 1

边界条件:

u(0,t)= t + 1

Du / Dx(10,t)= 1

下面的示例pdex1.m 我写了这样的脚本:

% --------------
m = 0;
x = linspace(0,10,10);
t = linspace(0,10,10);
sol = pdepe(m,@pdex1pde,@pdex1ic,@pdex1bc,x,t);
% --------------------------------------------------------------------------
function [c,f,s] = pdex1pde(x,t,u,DuDx)
c = 1;
f = u;
s = 0;
% --------------------------------------------------------------------------
function u0 = pdex1ic(x)
u0 = x+1;
% --------------------------------------------------------------------------
function [pl,ql,pr,qr] = pdex1bc(xl,ul,xr,ur,t)
pl = -t-1+ul;
ql = 0;
pr = -1+DurDx;
qr = 0;
%-------------------------

此脚本不起作用, 而且我相信问题是由于“ pr = -1 + DurDx;”

在这种情况下,如何正确编码边界条件?

谢谢!

0 个答案:

没有答案