您的当前位置:首页正文

matlab一维稳态传热程序

2021-06-27 来源:客趣旅游网


fun ctio n [n ,temp]=yiwei(l on g,thermc on d,sours,leix ing,nu mber) %通过输入长度,导热系数,源项,传热类型,节点数来计算 %各节点温度

if nargin<3

error('必须输入三个参数以上')

end

if isempty(sours)

S=0;

end

S=sours;

if nargin<4

error('请输入类型')

end

L=long;

k=thermc ond;

if nargin<5

nodes=51;

else

no des=nu mber;

end

m=no des;

n=[1:1: no des];

n=n:

T=[1:1: nodes];

T=T:

p=[1:1: no des];

p=p';

A=zeros(m);

xl=L/( no des-1);

if leix in g==1

Tl=input('请输入左边界温度')

p(1)=Tl;

A(1,1)=1;

Tr=input('请输入右边界温度')

p(m)=Tr;

A(m,m)=1;

elseif leix in g==2

ql=input('请输入左边界热流密度')p(1)=S*xL2/2/k+ql*xl/k;

A(1,1)=-1;

A(1,2)=1;

qr=i nput('请输入右边界热流密度 p(m)=-S*xlA2/2/k+qr*xl/k;

')

A(m,m-1)=-1;

A(m,m)=1;

elseif leix in g==3

hl=input('左边界对流系数') Tfl=input('左边界环境温度') A(1,1)=1+xl*hl/k;

A(1,2)=-1; p(1)=hl*Tfl*xl/k-S*xlA2/(2*k); hr=input('右边界对流系数'); Tfr=input('右边界环境温度'); A(m,m-1)=-1;

A(m,m)=1-hr*xl/k; p(m)=-(hr*Tfr*xl/k+S*x|A2/(2*k));

else

error('类型必须为整数') end

for i=2:1:(m-1)

p(i)=S*xL2/k;

A(i,i)=2;

A(i,i-1)=-1;

A(i,i+1)=-1;

end

T=i nv(A)*p;

temp=T;

n (1)=0;

for j=2:m

n(j)=n (j-1)+xl;

end

plot (n ,T);

hold on

plot( n, T,'r*');

hold off

因篇幅问题不能全部显示,请点此查看更多更全内容