24小时热门版块排行榜    

查看: 2575  |  回复: 4

Math露珠

木虫 (知名作家)

[交流] pde求解的MATLAB语言求助 已有3人参与

如下网址上的MATLAB语言,
http://www.matlabsky.com/thread-981-1-1.html
我想按照他的代码写在M文件中,运行一下,但是一直运行不出来。
第四行,他就说我没有定义
??? Input argument "ua" is undefined.
Error in ==> pde at 4
pa=[0;ua(2)];

以下是他的代码。求助大神帮我改一下。谢谢
%% 目标PDE函数
%%syms x t u
function [c,f,s]=pdefun (x,t,u,du);
c=[1;1];
%%dudx=diff(u,'x');
f=[0.024*du(1);0.17*du(2)];
temp=u(1)-u(2);
s=[-1;1].*(exp(5.73*temp)-exp(-11.46*temp));

%% 边界条件函数
function [pa,qa,pb,qb]=pdebc(xa,ua,xb,ub,t)
%a表示下边界,b表示上边界
pa=[0;ua(2)];
qa=[1;0];
pb=[ub(1)-1;0];
qb=[0;1];
%% 初值条件函数
function u0=pdeic(x)
u0=[1;0];
%% 主调函数
clc
x=0:0.05:1;
t=0:0.05:2;
m=0;
sol=pdepe(m,@pdefun,@pdeic,@pdebc,x,t);
figure('numbertitle','off','name','PDE Demo——by Matlabsky')
subplot(211)
surf(x,t,sol(:,:,1))
title('The Solution of u_1')
xlabel('X')
ylabel('T')
zlabel('U')
subplot(212)
surf(x,t,sol(:,:,2))
title('The Solution of u_2')
xlabel('X')
ylabel('T')
zlabel('U')
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wurongjun

专家顾问 (职业作家)


小木虫: 金币+0.5, 给个红包,谢谢回帖
程序没有问题!
可能你对Matlab的调用不清吧!注意函数顺序,下面是M文件及运行结果!
function pdefcqj
%% 主调函数
clc
x=0:0.05:1;
t=0:0.05:2;
m=0;
sol=pdepe(m,@pdefun,@pdeic,@pdebc,x,t);
figure('numbertitle','off','name','PDE Demo——by Matlabsky')
subplot(211)
surf(x,t,sol(:,:,1))
title('The Solution of u_1')
xlabel('X')
ylabel('T')
zlabel('U')
subplot(212)
surf(x,t,sol(:,:,2))
title('The Solution of u_2')
xlabel('X')
ylabel('T')
zlabel('U')
function [c,f,s]=pdefun (x,t,u,du);
c=[1;1];
%%dudx=diff(u,'x');
f=[0.024*du(1);0.17*du(2)];
temp=u(1)-u(2);
s=[-1;1].*(exp(5.73*temp)-exp(-11.46*temp));

%% 边界条件函数
function [pa,qa,pb,qb]=pdebc(xa,ua,xb,ub,t)
%a表示下边界,b表示上边界
pa=[0;ua(2)];
qa=[1;0];
pb=[ub(1)-1;0];
qb=[0;1];
%% 初值条件函数
function u0=pdeic(x)
u0=[1;0];
pde求解的MATLAB语言求助
pdetx.jpg

» 本帖已获得的红花(最新10朵)

善恶到头终有报,人间正道是沧桑.
2楼2017-04-22 08:57:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Math露珠

木虫 (知名作家)

送红花一朵
引用回帖:
2楼: Originally posted by wurongjun at 2017-04-22 08:57:24
程序没有问题!
可能你对Matlab的调用不清吧!注意函数顺序,下面是M文件及运行结果!
function pdefcqj
%% 主调函数
clc
x=0:0.05:1;
t=0:0.05:2;
m=0;
sol=pdepe(m,@pdefun,@pdeic,@pdebc,x,t);
figure('num ...

谢谢大神及时相助,非常感谢!
3楼2017-04-23 16:00:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

1002192186

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
楼主专家,已知第一象限内的分段函数,光滑连续,且已知各自方程,怎么用matlab将这两个方程沿着空间公共曲线运动生成两个曲面

发自小木虫IOS客户端
4楼2017-04-24 11:26:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dxmtm

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
刚接触matlab求解偏微分方程,按照pdepe帮助里的例子写的程序,一运行就崩溃,请求帮忙

function pdex2  
clc
clear
m = 0;  
x = linspace(0,1,20);
t = linspace(0,2,5);     
sol = pdepe(m,@pdex2pde,@pdex2ic,@pdex2bc,x,t);
u = sol(:,:,1);
figure
surf(x,t,u)   
title('Numerical solution computed with 20 mesh points.')
xlabel('Distance x')
ylabel('Time t')
figure  
plot(x,u(end,)
title('Solution at t = 2')
xlabel('Distance x')
ylabel('u(x,2)')
function [c,f,s] = pdex2pde(x,t,u,DuDx)
c = pi^2;
f = DuDx;
s = 0;
function u0 = pdex2ic(x)
u0 = sin(pi*x);
function [pl,ql,pr,qr] = pdex2bc(xl,ul,xr,ur,t)
pl = ul;
ql = 0;  
pr = pi * exp(-t);
qr = 1;
5楼2017-10-23 09:31:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 Math露珠 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见