登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
时域有限差分法 FDTD
>
一维热传导方程Matlab求助
发帖
回复
4506
阅读
3
回复
[
求助
]
一维热传导方程Matlab求助
离线
lwfz
UID :7619
注册:
2008-01-15
登录:
2022-08-21
发帖:
1081
等级:
积极交流六级
0楼
发表于: 2009-09-12 10:17:44
小弟初学FDTD 现在想用Matlab 编写一个一维热传导方程的程序,哪位高手能帮忙一下。。。谢谢
nKJ7K8)
_eeX]xSSl
du/dt=d^2/dx^2;
~W2&z]xD
u(0,t)=0; u(1,t)=0;
bh6wI%8H
u(x,0)= x for 0<=x<=0.5; u(x,0)=1-x, for 0.5=<x<=1;
YhK/pt43C
^* v{t?u
对众多高手可能很简单, ..
'# 2J?f'
}uj'BO2?
未注册仅能浏览
部分内容
,查看
全部内容及附件
请先
登录
或
注册
共
条评分
离线
会飞的猪
UID :41952
注册:
2009-09-18
登录:
2009-09-28
发帖:
6
等级:
旁观者
1楼
发表于: 2009-09-18 15:06:37
我也是新手,好好的学习。。。
共
条评分
离线
gwzhao
方恨少
UID :17098
注册:
2008-08-24
登录:
2019-01-09
发帖:
1374
等级:
荣誉管理员
2楼
发表于: 2009-09-18 18:20:44
简单点的吧。
_>I5Ud8(-
d(u)/dx = u(n) - u(n-1) / dx
/+YWp>6LU
d^2(u) / dx^2 = (u(n) + u(n-2) - 2 * u(n-1)) / dx^2
@RW%EXKt
所以du/dt = (u(n)|t+1 - u(n)|t ) / dt
9b6h!(
hI0l2OE
所以递推公式: u(n) = u(n) + dt / dx^2 * (u(n) + u(n-2) - 2*u(n-1))
K6oLSr+EAK
J$[Vm%56
如果是编程的话,大概就是这样:
LLiX%XOh
p10->BBg
int numGrid = 100;
^`THV
int xStart = 0;
uyIA]OtyN
int xStop = 1;
g^FH[(P[G
x[1:numGrid] =[0:numGrid-1] / numGrid * (xStop - xStart) ;
P])O\<)J
/*** 初始化U
***/
>{Q2S
*****
M-hnBt
int dt = 0.01;
fJKOuFK
int timeCout = 10000;
]vMft?
int curtime = 0;
,H8Pmn?
`N+ P,
for curtime = 0 to timeCount
t[Q\T0E
...
_nUuiB>
end
{;r5]wimb
`'`XB0vb
肚子饿了,写不动了,很简单的。
共
条评分
逆流而上
离线
lwfz
UID :7619
注册:
2008-01-15
登录:
2022-08-21
发帖:
1081
等级:
积极交流六级
3楼
发表于: 2009-10-25 10:39:07
回 2楼(gwzhao) 的帖子
版主太强悍了,
IIzdCa{l
谢谢了
共
1
条评分
gwzhao
rf币
+5
谢谢夸奖。
2009-10-25
发帖
回复