%% 二维常系数瞬态导热计算,时间显示格式
clc
clear
(资料图片)
%% 初始参数--------------
rou = 100;%内能密度
c = 1000;%比热容
k = 10;%热流密度系数
s = 10;%热源强度
%% 划分网格--------------
%空间网格
LENGTH_x = 3; %总长度3m
nx = 5; %距离网格数
dx = LENGTH_x/nx;%距离步长
LENGTH_y = 2;
ny = 5;
dy = LENGTH_y/ny;
%时间网格
dt = 100;%时间步长100s
nt = 2;%时间网格数,步数
t = dt*nt;%总计算时间
%% 初始赋值--------------
%创建温度储存矩阵矩阵
T = zeros(ny+2,nx+2,nt);
%边界温度℃
T_above = 4;
T_down = 2;
T_Left = 3;
T_Right = 5;
%边界温度赋值
for i=1:nt
T(1,:,i) = T_above;
T(end,:,i) = T_down;
T(:,1,i) = T_Left;
T(:,end,i) = T_Right;
T(1,1,i) = 0;
T(1,end,i) = 0;
T(end,end,i) = 0;
T(end,1,i) = 0;
end
%初始时刻温度赋值,假设为1℃
T(2:(end-1),2:(end-1),1) = 3;
%% 计算参数--------------
for time = 2:nt
% w左、e右、n上、s下
%内部节点
ae0_in = k*dy/dx;
aw0_in = k*dy/dx;
an0_in = k*dx/dy;
as0_in = k*dx/dy;
ap0_in = rou*c*dx*dy/dt-ae0_in-aw0_in-an0_in-as0_in;
ap1_in = ae0_in+aw0_in+an0_in+as0_in+ap0_in;
b = s*dx*dy;
for i = 3:ny
for j = 3:nx
T(i,j,time) = (ae0_in*T(i,j+1,time-1) + aw0_in*T(i,j-1,time-1) + ...
an0_in*T(i-1,j,time-1) + as0_in*T(i+1,j,time-1) + ...
ap0_in*T(i,j,time-1) + b)/ap1_in;
end
end
%左侧单边界节点
ae0_outl_1 = k*dy/dx;
aw0_outl_1 = k*dy/(dx/2);
an0_outl_1 = k*dx/dy;
as0_outl_1 = k*dx/dy;
ap0_outl_1 = rou*c*dx*dy/dt-ae0_outl_1-aw0_outl_1-an0_outl_1-as0_outl_1;
ap1_outl_1 = ae0_outl_1+aw0_outl_1+an0_outl_1+as0_outl_1+ap0_outl_1;
b = s*dx*dy;
for i = 3:ny
T(i,2,time) = (ae0_outl_1*T(i,3,time-1) + aw0_outl_1*T(i,1,time-1) + ...
an0_outl_1*T(i-1,2,time-1) + as0_outl_1*T(i+1,2,time-1) + ...
ap0_outl_1*T(i,2,time-1) + b)/ap1_outl_1;
end
%右侧单边界节点
ae0_outR_1 = k*dy/(dx/2);
aw0_outR_1 = k*dy/dx;
an0_outR_1 = k*dx/dy;
as0_outR_1 = k*dx/dy;
ap0_outR_1 = rou*c*dx*dy/dt-ae0_outR_1-aw0_outR_1-an0_outR_1-as0_outR_1;
ap1_outR_1 = ae0_outR_1+aw0_outR_1+an0_outR_1+as0_outR_1+ap0_outR_1;
b = s*dx*dy;
for i = 3:ny
T(i,end-1,time) = (ae0_outR_1*T(i,end,time-1) + aw0_outR_1*T(i,end-2,time-1) + ...
an0_outR_1*T(i-1,end-1,time-1) + as0_outR_1*T(i+1,end-1,time-1) + ...
ap0_outR_1*T(i,end-1,time-1) + b)/ap1_outR_1;
end
%上侧单边界节点
ae0_outa_1 = k*dy/dx;
aw0_outa_1 = k*dy/dx;
an0_outa_1 = k*dx/(dy/2);
as0_outa_1 = k*dx/dy;
ap0_outa_1 = rou*c*dx*dy/dt-ae0_outa_1-aw0_outa_1-an0_outa_1-as0_outa_1;
ap1_outa_1 = ae0_outa_1+aw0_outa_1+an0_outa_1+as0_outa_1+ap0_outa_1;
b = s*dx*dy;
for j = 3:nx
T(2,j,time) = (ae0_outa_1*T(2,j+1,time-1) + aw0_outa_1*T(2,j-1,time-1) + ...
an0_outa_1*T(1,j,time-1) + as0_outa_1*T(3,j,time-1) + ...
ap0_outa_1*T(2,j,time-1) + b)/ap1_outa_1;
end
%下侧单边界节点
ae0_outd_1 = k*dy/dx;
aw0_outd_1 = k*dy/dx;
an0_outd_1 = k*dx/dy;
as0_outd_1 = k*dx/(dy/2);
ap0_outd_1 = rou*c*dx*dy/dt-ae0_outd_1-aw0_outd_1-an0_outd_1-as0_outd_1;
ap1_outd_1 = ae0_outd_1+aw0_outd_1+an0_outd_1+as0_outd_1+ap0_outd_1;
b = s*dx*dy;
for j = 3:nx
T(end-1,j,time) = (ae0_outd_1*T(end-1,j+1,time-1) + aw0_outd_1*T(end-1,j-1,time-1) + ...
an0_outd_1*T(end-2,j,time-1) + as0_outd_1*T(end,j,time-1) + ...
ap0_outd_1*T(end-1,j,time-1) + b)/ap1_outd_1;
end
%左上角两边界节点
ae0_outwn_2 = k*dy/(dx);
aw0_outwn_2 = k*dy/(dx/2);
an0_outwn_2 = k*dx/(dy/2);
as0_outwn_2 = k*dx/(dy);
ap0_outwn_2 = rou*c*dx*dy/dt-ae0_outwn_2-aw0_outwn_2-an0_outwn_2-as0_outwn_2;
ap1_outwn_2 = ae0_outwn_2+aw0_outwn_2+an0_outwn_2+as0_outwn_2+ap0_outwn_2;
b = s*dx*dy;
T(2,2,time) = (ae0_outwn_2*T(2,3,time-1) + aw0_outwn_2*T(2,1,time-1) + ...
an0_outwn_2*T(1,2,time-1) + as0_outwn_2*T(3,2,time-1) + ...
ap0_outwn_2*T(2,2,time-1) + b)/ap1_outwn_2;
%左下角两边界节点
ae0_outws_2 = k*dy/(dx);
aw0_outws_2 = k*dy/(dx/2);
an0_outws_2 = k*dx/(dy);
as0_outws_2 = k*dx/(dy/2);
ap0_outws_2 = rou*c*dx*dy/dt-ae0_outws_2-aw0_outws_2-an0_outws_2-as0_outws_2;
ap1_outws_2 = ae0_outws_2+aw0_outws_2+an0_outws_2+as0_outws_2+ap0_outws_2;
b = s*dx*dy;
T(end-1,2,time) = (ae0_outws_2*T(end-1,3,time-1) + aw0_outws_2*T(end-1,1,time-1) + ...
an0_outws_2*T(end-2,2,time-1) + as0_outws_2*T(end,2,time-1) + ...
ap0_outws_2*T(end-1,2,time-1) + b)/ap1_outws_2;
%右上角两边界节点
ae0_outne_2 = k*dy/(dx/2);
aw0_outne_2 = k*dy/(dx);
an0_outne_2 = k*dx/(dy/2);
as0_outne_2 = k*dx/(dy);
ap0_outne_2 = rou*c*dx*dy/dt-ae0_outne_2-aw0_outne_2-an0_outne_2-as0_outne_2;
ap1_outne_2 = ae0_outne_2+aw0_outne_2+an0_outne_2+as0_outne_2+ap0_outne_2;
b = s*dx*dy;
T(2,end-1,time) = (ae0_outne_2*T(2,end,time-1) + aw0_outne_2*T(2,end-2,time-1) + ...
an0_outne_2*T(1,end-1,time-1) + as0_outne_2*T(3,end-1,time-1) + ...
ap0_outne_2*T(2,end-1,time-1) + b)/ap1_outne_2;
%右下角两边界节点
ae0_outes_2 = k*dy/(dx/2);
aw0_outes_2 = k*dy/(dx);
an0_outes_2 = k*dx/(dy);
as0_outes_2 = k*dx/(dy/2);
ap0_outes_2 = rou*c*dx*dy/dt-ae0_outes_2-aw0_outes_2-an0_outes_2-as0_outes_2;
ap1_outes_2 = ae0_outes_2+aw0_outes_2+an0_outes_2+as0_outes_2+ap0_outes_2;
b = s*dx*dy;
T(end-1,end-1,time) = (ae0_outes_2*T(end-1,end,time-1) + aw0_outes_2*T(end-1,end-2,time-1) + ...
an0_outes_2*T(end-2,end-1,time-1) + as0_outes_2*T(end,end-1,time-1) + ...
ap0_outes_2*T(end-1,end-1,time-1) + b)/ap1_outes_2;
end
下一篇:最后一页
X 关闭
-
金山办公跌超4%,沪深300成长ETF(562310)走低,机构建议后续配置成长风格基金丨ETF观察
今日(7月7日)上午,大盘延续调整,三大指数集体走低。受大盘影响,成
-
国内储能集成商第一名,赚钱也难
文|王方玉编辑|苏建勋国内储能系统出货量排名第一的系统集成商——海博
-
Threads在首日表现亮眼,吸引3000万注册用户
【ITBEAR科技资讯】7月7日消息,Meta旗下的社交媒体平台Threads在推出
-
福建莆田口岸上半年液化天然气进口同比增长15%
2023年07月05日15:56:28来源:中新网福建(吴志林孟)从印度尼西亚出发、
-
汾阳市对农村不动产登记工作做进一步安排部署
7月5日,汾阳市农村不动产登记工作推进会召开,进一步深化农村土地制度
-
昆明市首批中学生涯教育基地学校成立
昆明信息港讯(昆明日报记者张丽亚)日前,昆明市中学生涯教育教学研讨
-
脑机接口智联万物 数字生命掀起技术新浪潮
7月6日,在2023世界人工智能大会“脑机智能数字生命”分论坛上,关于脑
-
全部自研 多项脑机接口科研新成果发布
7月6日下午,在2023年世界人工智能大会“脑机智能与数字生命”主题论坛
-
RTX 4060 Ti 16GB 显卡将于 7 月 18 日上市,售价 3899 元
RTX4060Ti16GB显卡将于7月18日上市,售价3899元,显卡,芯片,英伟达,晶体管,rtx,16gb
-
cpui5型号性能排名(i5十四代CPU排行榜)
1,Intel酷睿i511400F,2,Intel酷睿i510400F,3,Intel酷睿i510400,4

