柱体内温度分布图 MATLAB

对于下底面和侧面绝热,上底面温度与半径平方成正比的柱体,绘制柱体内温度分布图。

这里给出两种尝试:1、散点图;2、切片云图

 

1. 散点图仿真

首先使用解析算法求的场解值的解析表达,其次求解Bessel函数零点,带入场解表达。对于空间点阵划分,采用每一定半径划分圆周上等数量点,在总方向复制累计。

下面给出散点图的仿真代码,Nt为划分精度,Nt越大空间划分点越多。

% function y = cal117(R,h,Nt,N)
close all; clear all
R = 5;
h = 5;
Nt = 10;

%% 求bessel函数零点
pi0 = besal_pi0(0,Nt);


%% 计算圆柱体分割点坐标,作为u的前三列坐标
m = 100;
cot = 0;
for i = 1 : 20
    [x_,y_,z_] = cylinder((R*i/20),m-1);
    for k = 1 : m
        for j = 0 : 19
            cot = cot + 1;
            u(cot,1) = x_(1,k);
            u(cot,2) = y_(1,k);
            u(cot,3) = h*j/(19);
            u(cot,4) = 0;       %test
        end
    end
end


%% 计算温度值 u第四列为温度值
for i = 1 : cot
    for j = 1 : Nt
        ct(j) = 2*(R^2)*(1-4/(pi0(j)^2))/(pi0(j)*besselj(1,pi0(j))*sinh(pi0(j)*h/R));
        u(i,4) = u(i,4)+ ct(j)*sinh(pi0(j)*u(i,3)/R)*besselj(0,pi0(j)*sqrt(u(i,1)^2+u(i,2)^2)/R);
        if(u(i,1)>10)
            u(i,4)=NaN;
        end
    end
end




%% 图像绘制
[x0,y0,z0] = cylinder(R,100); %画圆柱体轮廓
z0 = h * z0;
plot3(x0(1,:),y0(1,
  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值