求一个一维瞬态热传导的有限元matlab代码,应用第一类边界条件的

求一个一维瞬态热传导的有限元matlab代码,应用第一类边界条件的,第1张

如何用有限元分析法求解销派一维瞬态热传导问亏猛贺题?

该问题可以根据下列思路来考虑求解:

第一步,明确具体的一维瞬态热传导问题的方程知禅,以及初始条件;

第二步,网格生成。在给定区域内生成网格,即利用网格将应该区域剖分成若干个小区域,网格质量的高低直接影响到方程计算精度;

第三步,协调元。构造有限维的函数空间来近似代替无限维的空间。如空间为有限元离散空间应使用非协调元(克鲁兹-拉维亚特三角元);

第四步,离散格式。即对时间采用差分法来近似;

第五步,构造线性方程组;

第六步,求解线性方程组并进行误差分析。

第七步,根据上述方法编程,即可得到计算结果。

function main

%热传导方程的差分解法

lda=0.000015%lad即为a^2

l=50

h=0.05%空间步长

alpha=0.5

tao=alpha*h^2/lda%时间步长

N=l/h%空间步数

M=100%时间步数,由于斗森你条件没有限制,所以我随便取了个值

for i=1:N+1

u(1,i)=fai((i-1)*h)

end

for k=1:M

u(k,1)=g1(k*tao)

u(k,N+1)=g2(k*tao)

end

for k=1:M

for i=2:N

u(k+1,i)=alpha*u(k,i+1)+(1-2*alpha)*u(k,i)+alpha*u(k,i-1)

end

plot([0:h:l],u(k+1,:))

hold on pause(0.05)

end

function u=fai(x)

u=100

function u=g1(x)

u=0

function u=g2(x)

u=0

就这个拉,你试试看行不,不行的话空搜亩在联漏巧系我吧!!

这样就可以了

a=str2num(get(handles.edit1,'string'))

再裤握次输入的话 注意如宽纯姿果输入是数组必须如下输入[1 2 34 5 67 8 9]

那就将a重新转换慎绝为字符串

使用num2str函数


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12557729.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存