精华内容
下载资源
问答
  • 对流换热方程
    2020-11-28 12:09:31

    系列文章详见:

    飞机结冰的那些事(1)

    飞机结冰的那些事(2) Spring-Ice结冰软件介绍

    Spring-ICE 结冰算法述评-(2)水滴轨迹计算

    Spring-ICE 结冰算法述评-(3)水滴收集量计算

    Spring-ICE 结冰算法述评-(4)番外:简单面元法

    最近看书不少,写字很多。

    心血来潮的看了一些古文,看了一些近现代文章。小时候其实学了不少好文章,只是当时难见它们的好处所在。但用现在的眼光再看,可谓别有风味。

    比如苏轼的文章,他评论贾谊和张良的两篇策论,放在现在看就是标准的议论文模板。开篇点题,再正论反论的小论点辅之以举例举史,最后定调收官。思路非常清晰,加上作者超一流的文字水平,“方今天下,舍我其谁哉”,读起来非常畅快。

    顺着《贾谊论》,又找来贾谊的《治安策》,这次看的是译文。只看这个题目,就不是一般人敢写的。治安策,治国安天下之策也。想想我写个技术报告都颤颤巍巍。带着好奇心就看看这个治国安天下的报告是怎么个写法。看完以后不禁感叹,这分明是一份调研分析报告啊。

    文章细数了当时大汉的内外危机,特别是如何处理诸侯国尾大不掉的问题,这个时候还没到汉武帝时期,贾谊就分析大汉开国以来历次诸侯国叛乱的共性,得出一个结论,啥结论呢?越小的封国越不会造反。顺着这个思路,怎么处理诸侯国问题的答案就很明显了,不是一把撸掉各国,而是增加封国,越多越好,封地越小越好。这个思想不就是后来的“推恩令”嘛。作者的总结洞察能力真是太厉害了

    想想后世的伟人写的很多调研报告,核心都是调研,分析,总结共性和异性,得出结论。这种天才般的洞察力和研究方法,很值得学习。

    《治安策》的精彩之处远不止此,要知道这个文章是写给皇帝的,里面有些和“陛下”交心的话,写的很有意思。大家无聊时候可以读读,顺便想想大家给领导发邮件都是怎么写的,对比下。

    字也写了很多,近两个月,各类报告、稿件写了将近7万字,要是算上代码,则不知何几了。俺明明是一个工程师啊。

    言归正传了。

     

    1 对流换热系数是个啥

     

    我们都知道,换热有三种方式:热对流、热传导和热辐射。对流换热系数,顾名思义就是表征热对流方式中,流体和固体间传热能力的一个值。说是系数,它可不是无量纲的。

    对流换热系数在结冰里能干啥呢?看一看结冰能量方程就会发现,对流换热系数在摩擦、蒸发、升华等各个项里都起作用。一言以蔽之,对流换热系数在结冰里是用来求解能量方程的。

     

    2 对流换热系数怎么算?

     

    我们前面还提到,要调研分析,总结共性和异性。这里我们就来做一做。

    总的来说,对流换热系数的计算可以分成两类办法,一类是简单明了,带有经验性质的。另一类是复杂玄幻,同样带有经验性质的。

                                                                                  简单的

                                                                                 复杂的

    仔细研究就能发现,这个简单的办法,没有复杂的公式嵌套和微积分运算。这个复杂的就是公式套公式,积分又积分

    我们多数人都有这样的幻觉,仿佛越复杂精密的理论出来的结果就会越准。我自己在做这个部分的时候,开始也是如此想。

    但是一旦去使用那个复杂方法就会发现问题很多,很多地方不明确,出来的结果很怪异。看似精密,其实我研究过的文献都没把这个事情讲清楚,甚至连一些关键参数,大家用的还有差别。

    后来我决定,拿LEWICE的换热系数结果和这两个方法比比,看看究竟如何。

    结论是:两个都不准!!要非说谁好一点,还是那个简单方法更好一点。

    我担心我自己写的程序不对,导致结果不好,于是我找到一篇文献(复杂方法的),跟他的换热系数对比了一下,他的曲线跟LEWICE差的也很远。

    如果我们认为NASA LEWICE软件的结果是准的,现在我们掌握的两个办法算的换热系数都不准,怎么让冰型准呢?

    还记得我们前几期谈面元法的时候说过,前面不太精密的地方,最后让结冰模型方程来兜底。这里也是如此。

    最后,俺在Spring-ICE里面,就用的简单的理论计算换热系数。

     

    3 一点思考

        我们刚做研究的时候,都会迷信书本和文献。这个在初学期,是没错的,但是随着研究的深入,你其实在这个问题上,已经和作者处于同一个水平上了。对于疑难之处,就不能听之任之,死抱着所谓文献里的精密理论。这么说吧,很多作者做一套,写是另一套。精密理论写在文章是好看又唬人的。于是乎,大家都跟风,仿佛自己不写这个理论就很落后,拿不出手,久而久之,好看唬人的理论竟然成了真理!!

    这个时候,是不是要静下来,搞搞土方法,搞搞马克思主义中国化,山沟沟里也能出马列主义嘛。

    最后,有需要欢迎通过微信公众号联系我们。

    微信公众号:320科技工作室。

    更多相关内容
  • 通过对导热方程的推导,利用有限体积法,在matlab进行编程模拟,阐述对流传的机理。
  • 对流扩散方程数值求解,时间与空间的离散均采用欧拉向前差分格式
  • 一维纯对流方程代码

    2021-04-21 09:45:18
    初次接触方程的离散与求解,问题虽多,但也是探索新事物的起点。

    一维纯对流方程的求解过程

    问题描述

    在这里插入图片描述

    解析解

    在这里插入图片描述

    数值解

    迎风格式求解

    在这里插入图片描述

    特征线法求解

    在这里插入图片描述
    在这里插入图片描述

    算例工况与计算结果

    在这里插入图片描述

    % Matlab代码
    % This is a  First Order Upwind for Advection Equation 
    clear
    clc
    
    % Set the parameters
    xmin = 0;
    xmax = 2000;
    N = 400;
    dx = (xmax-xmin)/N;
    tmin = 0;
    tmax = 1000;
    dt = 3;
    u = 1;
    sigma = 100;
    x0 = 600;
    
    % Set the initial condition
    x = linspace(xmin, xmax+dx, N+1);
    C0 = exp( -(x-x0).^2/sigma^2*0.5);
    C0(1) = 0; %MATLAB Array index start from 1
    
    Cplus = C0;
    nstep = tmax/dt;
    
    
    for n = 1:nstep
       
        Ctemp  = Cplus;
        % calculate the new value
        for i = 2:N+1
            Cplus(i) = Ctemp(i) - u*dt*(Ctemp(i) - Ctemp(i-1))/dx;
        end
       
    end
       
     % calculate exact solution
    Cexact = exp( -(x-x0-u*tmax).^2/sigma^2*0.5);
    
    % visualization
    figure(1)
    L = plot(x,Cexact,'k-',x,Cplus,'r-','linewidth',1.2);
    legend(L,'解析解','\sigma0=110','location','NorthEast','FontName','宋体');
    xlabel('\itX \rm(m)');
    ylabel('\itC \rm');
    axis([1100 2100 0 1]);
    set(gca,'FontName','Times New Roman','Fontsize',10.5);
    set(get(gca,'xlabel'),'FontName','Times New Roman','Fontsize',10.5);
    set(get(gca,'ylabel'),'FontName','Times New Roman','Fontsize',10.5);
    grid on;
    set(gcf,'PaperUnits','centimeter','PaperPosition',[0 0 16 9]);
    

    敏感性分析

    浓度分布均匀性的影响(不算敏感性,单纯考虑对数值求解精度的影响)

    在这里插入图片描述
    说明不同工况的计算精度是不同的。

    库朗数影响

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    实践中的认知与遇到的错误

    迎风格式的理解

    文章链接
    对流项具有方向性,在对流项主导的运动里,某个点受到上游的影响远大于下游。迎风格式就是逆着对流的方向进行差分,以利用到更多的上游信息。假设从左到右是正方向:那么如果对流从左到右,迎风格式就是构建后差;如果对流从右到左,就是构建前差。正因为风就是一种强对流的运动,迎风格式就是逆着风吹来的方向构建差分格式,这个名字取得很形象。

    作者:yms11yms
    链接:https://www.zhihu.com/question/463324087/answer/1925052835
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    特征线法离散过程分析

    在这里插入图片描述
    方程中所有的物理变量:本一维纯对流方程中物理变量有三个,即物质浓度 C C C,时间 t t t,空间 x x x
    全知物理量信息 A : ( x = x j − 1 , t = t n , C = C j − 1 n ) A:(x=x_{j-1},t=t_n,C=C_{j-1}^{n}) A:(x=xj1,t=tn,C=Cj1n) B : ( x = x j , t = t n , C = C j n ) B:(x=x_{j},t=t_n,C=C_{j}^{n}) B:(x=xj,t=tn,C=Cjn)
    半知物理量信息红色表示未知黑色表示已知):
    在这里插入图片描述
    在这里插入图片描述
    Q点的物质浓度C和空间位置x都是未知的。但是,我们知道时空特征线关系式,我们还知道与Q处于同一时间层的两相邻节点A、B的所有信息。因此:
    利用特征线关系可以求得Q点相对于A或B的空间位置;
    然后对A、B两点采用线性插值得到Q点的物质浓度;
    根据特征线上任意一点的物质浓度相等可得到待求量P点的物质浓度。

    Δ x \Delta{x} Δx d x dx dx的错误理解导致对特征线法的认知错误

    本案例采用特征线法和迎风法分别离散上述一维纯对流方程,得到的离散方程都相同,即:
    C j n + 1 = C j n − u Δ t Δ x ( C j n − C j − 1 n ) C_{j}^{n+1}=C_{j}^{n}-\frac{u\Delta{t}}{\Delta{x}}(C_{j}^{n}-C_{j-1}^{n}) Cjn+1=CjnΔxuΔt(CjnCj1n)

    错误认知内容

    以下内容是2021年5月7日的错误认识
    最初,由于两者的离散方程相同,所以我错误地认为特征线法与迎风法求得的数值解是相同的。特征线法的前提条件是认为 d x d t = u \frac{dx}{dt}=u dtdx=u,所以特征线法的离散方程一定要满足这个条件,即时间和空间的离散是受到限制的。所以,本例一维纯对流方程采用特征线时离散的方程应该为:
    C j n + 1 = C j − 1 n C_{j}^{n+1}=C_{j-1}^{n} Cjn+1=Cj1n 也就是迎风法离散方程后库朗数取1时的离散方程:
    C r = u Δ t Δ x = 1 Cr=\frac{u\Delta{t}}{\Delta{x}}=1 Cr=ΔxuΔt=1

    错误认知产生的原因

    错误地认为 Δ x \Delta{x} Δx d x dx dx是相等的,即认为两者表示的含义相同。实际上,两者有着本质区别: Δ x = x j − x j − 1 \Delta{x}=x_{j}-x_{j-1} Δx=xjxj1是两个空间点之间的距离, Δ x \Delta{x} Δx的取值可以很大,也可以趋近于0。当 Δ x \Delta{x} Δx趋近于0时与 d x dx dx等价。而 d x dx dx表示 x x x的微小增量,微小可以理解为趋近于0。所以,在空间步长 Δ x \Delta{x} Δx取值的任意性下, d x d t = u \frac{dx}{dt}=u dtdx=u不能推理出 Δ x Δ t = u \frac{\Delta{x}}{\Delta{t}}=u ΔtΔx=u。对于本案例采用特征线法的离散过程,我们可以这样理解: Δ t \Delta{t} Δt是一个微小量(即使其取值较大,我们依旧可以假定其为相对微小量),则 Δ t = d t \Delta{t}=dt Δt=dt,所以 d x = u Δ t dx=u\Delta{t} dx=uΔt d x ≤ Δ x dx≤\Delta{x} dxΔx),所以 C j n + 1 有 很 大 的 可 能 性 与 C j − 1 n C_{j}^{n+1}有很大的可能性与C_{j-1}^{n} Cjn+1Cj1n不相等。

    错误认知产生的结果图片与MATLAB代码

    2021年5月7日更新
    在这里插入图片描述

    % 再谈特征线法与迎风法
    clear
    clc
    
    % Set the parameters
    xmin = 0;
    xmax = 2000;
    N = 400;
    dx = (xmax-xmin)/N;
    tmin = 0;
    tmax = 1000;
    dt = 3;%换算成迎风时应该为5,迎风法总的时间步长将用5来换算
    u = 1;
    sigma = 50;
    x0 = 600;
    nstep = tmax/dt;
    
    % Set the initial condition
    x = linspace(xmin, xmax, N+1);
    C0 = exp( -(x-x0).^2/sigma^2*0.5);
    C0(1) = 0; %MATLAB Array index start from 1
    
    Ctz = C0;%给特征线法的变量赋初值
    Cyf = C0;%给迎风法的变量赋初值
    
    % 特征线法求解
    for n = 1:200 %nstep按dt=5换算过来的
       
        Ctemp  = Ctz;
        % calculate the new value
        for i = 2:N+1
            Ctz(i) = Ctemp(i-1);
        end
       
    end
    
       
     % calculate exact solution
    Cexact = exp( -(x-x0-u*tmax).^2/sigma^2*0.5);
    
    % 迎风法求解
    for n = 1:nstep
       
        Ctemp  = Cyf;
        % calculate the new value
        for i = 2:N+1
            Cyf(i) = Ctemp(i) - u*dt*(Ctemp(i) - Ctemp(i-1))/dx;
           
        end
       
    end
    
    % visualization
    L = plot(x,Cexact,'k-',x,Ctz,'r--',x,Cyf,'b-','linewidth',1.2);
    legend(L,'解析解','特征线法','迎风法','location','NorthEast','FontName','宋体');
    xlabel('\itX \rm(m)');
    ylabel('\itC \rm');
    axis([1100 2100 0 1]);
    set(gca,'FontName','Times New Roman','Fontsize',10.5);
    set(get(gca,'xlabel'),'FontName','Times New Roman','Fontsize',10.5);
    set(get(gca,'ylabel'),'FontName','Times New Roman','Fontsize',10.5);
    grid on;
    set(gcf,'PaperUnits','centimeter','PaperPosition',[0 0 16 9]);
    

    离散表达式后续补充……

    Python代码1(失败)

    import numpy as np
    import math
    import matplotlib.pyplot as plt
    
    def LinearConv(nx):
    	x = np.linspace(0,6,nx)
    	Lx = 6 #x为x方向的总长度
    	dx = Lx/(nx-1) #dx为空间网格步长,nx为节点数
    	nt = 20 #总的时间步长
    	Courant = 0.8 #Courant数
    	u = 1 #假设对流为常数
    	dt = Courant*dx/u #时间步长
    
    	#未知参数设定
    	x_0 = 3 #初始浓度分布中心
    	sigma_0 = 1 #偏差
    
    
    	#初始条件和边界条件
    	C[0:len(nx)] = math.exp(-(x - x_0)**2/(sigma_0)**2*0.5) #初始条件C(x,0)的表达式
    	C[0] = 0
    	#将初始图像画出来
    	plt.plot(x,C,'r',linewidth=3,label='init')
    
    	#计算20个时间步后的图像
    	Cn = math.exp((x - x_0)^2/(sigma_0)^2*(-0.5))
    	for n in range(nt):
    		Cn = C.copy() #后面的计算会改变C,所以将C拷贝到Cn
    		for i in range(1,nx):
    			C[i] = Cn[i] - u * dt / dx *(Cn[i] - Cn[i-1])
    
    	plt.plot(x,u,'b',linewidth = 3,label = 'current')
    	plt.xlabel('distance')
    	plt.ylabel('concentration')
    	plt.legend()
    	plt.show()
    
    LinearConv(601)
    

    遇到报错信息1:TypeError with ufunc bitwise_xor

    具体报错信息:TypeError: ufunc ‘bitwise_xor’ not supported for the input types,and the inputs could not be safely coerced to any supported types according to the casting rule ‘‘safe’’ .

    解决办法:Python中平方的表示不能用【∧ 2 2 2】,正确的语法是【 ∗ ∗ 2 **2 2】。
    TypeError with ufunc bitwise_xor解决办法来源

    遇到的报错信息2:TypeError: only length-1 arrays can be converted to Python scalars

    暂未找到解决办法

    Python代码2

    遇到的报错信息2暂时无法解决,通过联想到XY曲线绘制时的一一对应关系,退而求其次初步成功。
    Python绘制指数函数(解决办法来源)

    import numpy as np
    import math
    import matplotlib.pyplot as plt
    
    
    X = np.linspace(0,6,61)
    x_0 = 3
    sigma_0 = 1
    dx = 0.1
    nt = 20
    u = 0.5
    dt = 0.08
    
    def phi_func(x):
        phi = math.exp(-(x - x_0)**2/(sigma_0)**2*0.5)
        return phi
      
    Phi = [phi_func(x) for x in X] #因为解决不了数组元素一一对应的问题,才出此下策
    C = Phi
    C[0] = 0
    plt.plot(X,Phi,'r',linewidth=3,label='init')
    
    Cn = Phi
    for n in range(nt):
        Cn = C #list没有copy
        for i in range(1,61):
            C[i] = Cn[i]-u*dt/dx*(Cn[i]-Cn[i-1])
    
    plt.plot(X,C,'b',linewidth=3,label='current')
    plt.xlabel('distance')
    plt.ylabel('concetration')
    plt.legend()
    plt.show()
    

    效果图如下:
    在这里插入图片描述
    起初对解析曲线的绘制存在误解,理解成对空间和时间都要离散。突然才发现,数值计算得到的就是给定时间的最后结果,因此解析解也仅需要最后时刻即可,即时间在解析函数中是一个固定值。不过,把解析函数随时间变化的动态图做出来也是值得考虑的。
    Python绘制函数曲线(绘制解析解时的解决办法来源)

    Python代码3

    import numpy as np
    import math
    import matplotlib.pyplot as plt
    X = np.linspace(0,2000,401)
    x_0 = 500
    sigma_0 = 100
    dx = 5
    nt = 401#总的时间步长
    u = 0.3
    dt = 5
    
    def phi_func(x):
        phi = math.exp(-(x - x_0)**2/(sigma_0)**2*0.5)
        return phi
      
    Phi = [phi_func(x) for x in X] #因为解决不了数组元素一一对应的问题,才出此下策
    C = Phi
    C[0] = 0
    plt.plot(X,C,'r',linewidth=3,label='init')
    
    #Cn = Phi
    for n in range(nt):
        Cn = C #list没有copy属性,所以直接整个赋值即可
        for i in range(1,401):
            C[i] = Cn[i]-u*dt/dx*(Cn[i]-Cn[i-1])
    
    plt.plot(X,C,'b',linewidth=3,label='current')
    #怎么对受x和t影响的C进行显示呢?
    C = []
    for x in X:
        Cn = math.exp(-(x - x_0-u*(nt-1)*dt)**2/(sigma_0)**2*0.5)
        C.append(Cn)
        
    plt.plot(X,C,'k',linewidth=3,label='theory resolution ')
        
    plt.xlabel('distance')
    plt.ylabel('concetration')
    #plt.xlim(0, 2000)
    
    plt.legend()
    plt.show()
    

    遇到的问题一:波形错位

    蓝色波形应该与黑色波形相位一致,但是两者却是错开的。
    在这里插入图片描述

    Python代码4

    为什么迭代步与预计的时间步有一定关系偏差才能得到原本正确的解,此处的关系偏差已经不能从物理意义上去理解。
    Python中

    import numpy as np
    import math
    import matplotlib.pyplot as plt
    
    
    X = np.linspace(0,2000,401)
    x_0 = 500
    sigma_0 = 150
    dx = 5
    nt = 601#总的时间步长
    u = 0.3
    dt = 5
    
    def phi_func(x):
        phi = math.exp(-(x - x_0)**2/(sigma_0)**2*0.5)
        return phi
      
    Phi = [phi_func(x) for x in X] #因为解决不了数组元素一一对应的问题,才出此下策
    C = Phi
    C[0] = 0
    plt.plot(X,C,'r',linewidth=3,label='init')
    
    #Cn = Phi
    steps = int(nt-(nt-1)*u)#range()函数内部只能是整型,u是float所以导致整个表达式为float,因此强制转换类型
    for n in range(steps):#为什么迭代步为nt-(nt-1)*u才对,如nt=201,则迭代步为141
        
        Cn = C #list没有copy属性,所以直接整个赋值即可
        
        for i in range(1,401):
            C[i] = Cn[i]-u*dt/dx*(Cn[i]-Cn[i-1])
    
    plt.plot(X,C,'b',linewidth=3,label='current')
    #怎么对受x和t影响的C进行显示呢?
    C = []
    for x in X:
        Cn = math.exp(-(x - x_0-u*(nt-1)*dt)**2/(sigma_0)**2*0.5)
        C.append(Cn)
        
    plt.plot(X,C,'k',linewidth=3,label='theory resolution ')
        
    plt.xlabel('distance')
    plt.ylabel('concetration')
    #plt.xlim(0, 2000)
    
    plt.legend()
    plt.show() #显示出图像
    

    在这里插入图片描述

    MATLAB代码(成功)

    MATLAB帮助来源

    % This is a demo of First Order Upwind for Advection Equation 
    clear
    clc
    
    % Set the parameters
    xmin       = 0;
    xmax       = 2000;
    N          = 400;
    dx         = (xmax-xmin)/N;
    tmin       = 0;
    tmax       = 2000;
    dt         = 5;
    u          = 0.3;
    sigma = 50;
    x0 = 500;
    
    % Set the initial condition
    x          = linspace(xmin, xmax+dx, N+1);
    C0         = exp( -(x-x0).^2/sigma^2*0.5);
    C0(1) = 0; %MATLAB Array index start from 1
    %utemp      = u0;
    Cplus      = C0;
    nstep      = tmax/dt;
    t          = 0;
    
    for n      = 1:nstep
       
        Ctemp  = Cplus;
        % calculate the new value
        for i        = 2:N+1
            Cplus(i) = Ctemp(i) - u*dt*(Ctemp(i) - Ctemp(i-1))/dx;
        end
       
    end
       
     % calculate exact solution
    Cexact  = exp( -(x-x0-u*tmax).^2/sigma^2);
    
    % visualization
    plot(x,Cexact,'k-','linewidth',3)
    hold on
    plot(x,Ctemp,'r-','linewidth',3);
    xlabel('distance');
    ylabel('concetration');
    hold off
    

    在这里插入图片描述
    MATLAB代码改进版,对图片进行了一点修饰。

    % This is a  First Order Upwind for Advection Equation 
    clear
    clc
    
    % Set the parameters
    xmin = 0;
    xmax = 2000;
    N = 400;
    dx = (xmax-xmin)/N;
    tmin = 0;
    tmax = 1000;
    dt = 3;
    u = 1;
    sigma = 110;
    x0 = 600;
    
    % Set the initial condition
    x = linspace(xmin, xmax+dx, N+1);
    C0 = exp( -(x-x0).^2/sigma^2*0.5);
    C0(1) = 0; %MATLAB Array index start from 1
    
    Cplus = C0;
    nstep = tmax/dt;
    
    
    for n = 1:nstep
       
        Ctemp  = Cplus;
        % calculate the new value
        for i = 2:N+1
            Cplus(i) = Ctemp(i) - u*dt*(Ctemp(i) - Ctemp(i-1))/dx;
        end
       
    end
       
     % calculate exact solution
    Cexact = exp( -(x-x0-u*tmax).^2/sigma^2*0.5);
    
    % visualization
    figure(1)
    L = plot(x,Cexact,'k-',x,Cplus,'r-','linewidth',1.2);
    legend(L,'解析解','\sigma0=110','location','NorthEast','FontName','宋体');
    xlabel('\itX \rm(m)');
    ylabel('\itC \rm');
    axis([1100 2100 0 1]);
    set(gca,'FontName','Times New Roman','Fontsize',10.5);
    set(get(gca,'xlabel'),'FontName','Times New Roman','Fontsize',10.5);
    set(get(gca,'ylabel'),'FontName','Times New Roman','Fontsize',10.5);
    grid on;
    set(gcf,'PaperUnits','centimeter','PaperPosition',[0 0 16 9]);
    

    为什么想到用Matlab?是因为我用Python绘制时不知道如何绘制解析解的图像,真是个青菜啊。

    Matlab报错信息1:矩阵求幂的维度不正确

    解决办法:请检查并确保矩阵为方阵并且幂为标量。要执行按元素矩阵求幂,请使用 【.^】。比较搞笑的是,系统都提示我了,我竟然还花了一定时间才找到问题所在。

    一维常系数对流方程(Python编写思路主要来源)

    展开全文
  • 对圆形微通道换热特性进行了数值仿真,结果表明,受尺寸效应的影响,管径越小,平均对流换热系数越大。微通道的换热能力比宏观经典通道强,表明在相同面积上做多个微通道比一个宏观大通道的换热效果好。
  • 本文研究流体在正方形截面微小弯曲管道中作充分发展流动和恒热流壁条件下的换热问题,导出了求解该问题的基本方程式,
  • 元计算技术人员为大家介绍热传导方程换热边界
  • 提出了一种考虑轴向热传导、速度滑移、温度跳跃和入口效应...对圆形微通道换热特性进行了数值仿真,结果表明,轴向热传导和入口效应增加了入口处的局部努塞尔数,速度滑移系数越小,局部努塞尔努塞尔数的渐进值越大。
  • 【物理应用】井筒多相流matlab源码
  • 为研究核电站非能动安全壳冷却系统换热器内含不凝性气体的蒸汽在水平管内强制对流冷凝换热特性,基于Peterson扩散层模型,结合传热传质方程推导,对冷凝换热过程各环节分别进行建模,并同时考虑抽吸效应、液膜非均匀...
  • 边界条件微分方程,MATLAB实现,信号处理课程使用!!
  • 针对方管内空气混合对流时的流固耦合换热问题,提出将壁面导热作为边界条件进行处理的壁面导热与流动耦合简化计算方法,推导了计算公式,并采用SI MPLER算法进行了数值模拟.算法忽略壁面沿厚度方向的导热,假设管壁温度...
  • 传导和热对流

    千次阅读 2020-10-28 16:55:25
    热量传递的三种基本方式:传导,热对流辐射。 基本概念: 传导:通常也称为导热,是物体内部或相互接触的物体表面之间,由于分子、原子及电子等微观粒子的运动而产生的热量传递现象。导热依赖两个基本...

    热量传递的三种基本方式:热传导,热对流和热辐射。

    基本概念:

    热传导:通常也称为导热,是物体内部或相互接触的物体表面之间,由于分子、原子及电子等微观粒子的热运动而产生的热量传递现象。导热依赖两个基本条件:一是必须有温差,二是必须直接接触(不同物体)或是物体内部传递。导热既可以发生在固体内部,也可以发生在静止的液体和气体中。通常情况下仅讨论固体的导热。液体或气体只有在静止的时候(没有了液体或气体分子的宏观运动)才有导热发生,比如当流体流过固体表面时形成的附着于固体表面的静止的边界层底层中,流体的热量传递方式才是导热。在气体中,导热的机理是气体分子不规则热运动时的相互碰撞而传递能量。在导电的固体中,自由电子的运动是主要的导热方式;在非导电固体中,热量的传递则主要是通过晶格的振动(也称作弹性波)进行。液体的导热机理比较复杂。

    热对流:是指由于流体的宏观运动,致使不同温度的流体相对位移而产生的热量传递现象。对流只能发生于流体中,且一定伴随着流体分子的不规则热运动产生的导热。当流体流过一个固体表面时,由于流体具有黏性,因此附着于固体表面的很薄的一层流体为静止的,在离开固体表面的法向上,流体的速度逐渐增加到来流速度,这一层厚度很薄、速度很小的流体称为边界层。在边界层内,流体与固体表面之间的热量传递是边界层外层的热对流和附着于固体表面的静止的边界层底层的流体导热两种基本传热方式共同作用的结果,这种传热现象在传热学中称为对流换热。对流换热按流动的起因不同(流动的驱动力不同)分为自然对流和强迫对流两种。自然对流是由于温差引起的流体不同部分的密度不同而自然产生上下运动的对流换热。因此,有温差不一定能发生自然对流,还应考虑表面的相对位置是否能形成因温度差导致的密度差引起的流体运动。当固体表面的温度高于环境的空气温度时,该表面上方的空气受热后密度变小,自由上升,从而发生自燃对流换热。在表面下方,紧挨表面的空气受热后密度变小,由于受到阻挡积聚在表面底下,难以产生空气的自由运动,从而没有自然对流换热的发生。如果该表面的温度低于环境空气的温度,则上方的空气受冷,密度变大,积聚在上表面,阻碍了空气的自由运动,没有自然对流。而表面的下方,空气受冷后自由下沉,则可以发生自燃对流换热。其强迫对流则是流体在外力的推动作用下流动所引起的对流换热。强迫对流换热程度比自然对流换热剧烈得多,在工业应用上绝大部分都是强迫对流换热。当流体发生相变的时候,对流换热则分别称为沸腾换热和凝结换热。沸腾和凝结换热的程度因涉及汽化或凝结潜热的释放而很剧烈,通常液体的对流换热比气体的对流换热强烈。

     

     

    展开全文
  • 这个问题最初由 Ostrach 解决,“关于平行于产生体力方向的平板的层流自由对流传递的分析”,NACA Tech。 代表No 1111, 1953。控制方程的推导可以在 Deen 的书中找到。 请访问此链接以使用 Mathematica 进行...
  • 数值分析了形状因子对填充有Al2O3-纳米流体的二维空腔中自然对流换热和流体流动的影响。 开发了一个模型,以解释考虑体积分数φ的纳米流体的行为。 Navier-Stokes方程通过交替使用隐式方法(方法ADI)对各种瑞利数...
  • 随着冷却气体流量的增加,壁面温度和局部对流换热系数都大大下降。在注入率为 1左右时,发汗冷却段的壁面温度相对值降到了20左右,局部对流换热系数相对值降到了 50以下。所得到的计算结果与已有关系式符合得很好:注入...
  • 通过对同轴环行空间和二维倾斜空腔内的对流换热问题的计算对该数值方法在传热问题中的应用进行验证 。对比结果表明,计算结果与精确解和STAR-CD的结果在一定 Re数和网格数时是很接近的,可以满足一定的精度要求,说明该...
  • 基于有限容积法推导了该方程的离散代数方程组,针对恒定热流强度、恒定温度、对流换热和绝热这四种不同边界条件,分别讨论了热传导代数方程的离散系数和源项。通过MATLAB编程,分析了一维具有均匀厚度无限大板和二维...
  • 外包层表面的对流换热系数对温度分布影响较大,增大对流换热系数,可以有效地降低光纤激光器的热效应;外包层光纤半径的大小对光纤激光器的温度分布也有影响。所得的结果为设计实现千瓦级光纤激光器提供了参考。
  • 采用光线踪迹/节点分析法研究了在漫反射、...在对流、辐射换热边界条件下,采用控制容积法求解瞬态能量方程,获得了复合层内的稳态、瞬态温度场和热流密度,与Galerkin法的计算结果比较,表明该文的计算方法正确,精度高。
  • 以某化工厂造粒塔为研究对象,通过对造粒塔中颗粒的运动进行受力分析,建立了颗粒运动速率方程,并结合单颗粒与气流间的Ranz和MarShall传热关联式建立了颗粒的对流换热模型。以此模型为基础,对颗粒的运动和温度变化...
  • 分析板材在层冷过程中的传热,建立以热辐射和冷却水对流换热方程为边界条件的偏微分热传导模型,并基于泛函变分原理进行离散求解,获得各离散时间节点上的温度。为进一步提高该温度模型计算精度,在宝钢Gleeble热模拟...
  • 提出利用稳态方程求解长杆状发热物体在圆形腔体内做轴向运动时产生湍流对流和传热问题,可以节约计算成本。对3种工况进行了数值模拟,得到整个计算域的流场与温度场。模拟的结果与经典经验公式基本吻合。对比了3种工况...
  • 二维稳态导热微分方程的数值求解matlab程序,包含温度边界、热流边界、对流换热边界三种情况。《传热学》、《数值传热学》、《工程热力学》等课程上级作业。
  • 本文为COMSOL案例《水杯中的自然对流》仿真经验分享,全文干货,值得收藏!

    ✅作者简介:大家好我是Xlong,一枚正在学习COMSOL、Python的工科研究僧
    📃个人主页: Xlong的个人博客主页
    🔥系列专栏:COMSOL学习
    💖如果觉得博主的文章还不错的话,请👍支持一下博主哦🤞

    案例链接:

    http://cn.comsol.com/model/free-convection-in-a-water-glass-195http://cn.comsol.com/model/free-convection-in-a-water-glass-195

    一、重要图表(仿真运行30min)

    1.流经玻璃杯顶面 (实线)、侧壁 (点虚线)和底面 (虚线)的热通量

     图1 流经玻璃杯顶面 (实线)、侧壁 (点虚线)和底面 (虚线)的热通量

            从图1可以看出绝大部分热量通过下底面传入玻璃杯中的水,这是因为玻璃杯与周围环境的换热系数小

    2.等间隔时间的温度分布(range(0,5min,30min))

     

     

            图2 等间距时间间隔的水温度分布
          
            流体在玻璃杯底部受热后,局部密度减小,从而引起玻璃杯内的流动。图2 显示等间
    距时间间隔的温度分布

    3.速度场的流线可视化效果

     

     

             图3 速度场的流线可视化效果
            浮力驱动的流动在玻璃杯中产生回流区。在速度场的流线图中,这些回流区清晰可见。图3 显示与上图相同输出时步的流线。

     二、建模操作

    1.选二维轴对称、非等温流动中的层流、一般研究中的瞬态。

    2.首先进行全局定义、全局定义里的参数在后面都可以任意调用。

    3.创建选择功能:比如选择了域2,单击创建选择,在选择名称文本框中重命名为“水”,这样在下一次就可以直接选择“水”,而不需要选域2。这一功能在有多个相同的域需要被重复添加的情况下运用十分方便。

    4.由于存在大量二次流,因此需要减小容差。

    5.单击显示默认求解器→展开解1节点→单击瞬态求解器→点击以展开绝对容差栏→从容差方法列表中选择手动→绝对容差文本框中键入“2.5e-5”

    三、总结归纳

    1.玻璃杯中水的自然对流,是化工设备中经常被忽略的一种现象。但是,在发酵过程、铸造以及生化反应器等特定情况下,这种现象相当重要。自然对流还可能是小型反应器中的主要传输方式。

    2.本案例中的玻璃杯由于旋转对称,所以可以采用二维轴对称几何来对整个系统进行建模。这样可以大大节省计算资源,同时也不会影响计算结果。如下图所示。

    3.初始条件:玻璃杯和水温都是5℃,周围空气和桌子保持恒温25℃,玻璃杯壁厚度有限,具有特定热导率。

    4.边界条件:假设桌子表面与杯底是理想接触(热阻为0),则杯底温度也是25℃。在顶面和侧壁表面,使用对流热通量边界条件,热量传递由玻璃杯与周围环境间的温差驱动:

    q=h(T_{ext}-T)

    其中,q是热通量,h是对流换热系数。

    5.对于流场:在内部边界(玻璃杯与玻璃杯附近的水之间)采用无滑移条件,在旋转轴上应用轴对称条件,在开放表面应用滑移条件

            ①无滑移边界条件:流体在壁面处的速度(或相对速度)为零

            ②滑移边界条件:流体在壁面处的速度(或相对速度)不为零

    6.此示例中的仿真运行了2min,博主试了一下30min,运算结果见一、重要图表。

    7.将流量设为不可压缩来确保质量守恒,然后锁定封闭腔体中的压力以获得模型。使用布辛涅斯克近似来包含浮力。

           布辛涅斯克近似(Boussinesq approximation) :   描述流体运动最基本的方程即纳维-斯托克斯方程(简称N-S方程),然而其复杂性和非线性,只能通过数值方法求解,同时还需要针对不同流体的情况,对N-S方程做一定的简化,这样才能既保证结果的准确性,又保证效率。最常用的假设就是布辛涅司克近似(Boussinesq approximation)。

            在自然对流中,除了动量方程中的浮力项中的密度温度的函数外,其他所有求解方程中的密度Boussinesq 假设均认为为常数,这一近似称为布辛涅司克近似。

            布辛涅司克近似适用于密度变化不大的流体运动,而对于自然界中绝大多数流体,这种假设是适用的。

    8.{\color{Red} }r_{ref}矢量是什么?

     9.流体离散化:

    10. 压力点约束:

            流体模型中,所说的压力一般指压力差而非绝对压力,为了提高流体模型计算的收敛性,需要引入一个压力参考点来提高收敛性,这个参考点的位置可以是任意的。所以在很多仿真案例中,可以看到设定一个入口速度,一个出口压力为零。事实上,如果外界压力为一个大气压,流道内的真实压力值就得在计算结果上加上一个大气压。如果没有定义压力边界,这意味着全域中没有合适的能够作为压力降计算的基准点。从某种意义上来讲,这种计算应该是有无穷多解的,因为你可以得到很多组合适的相对压力降满足条件的结果。这样一来,求解器会很不容易得到收敛解。所以在这种情况下,有时候我们就添加一个压力约束点,把它作为一个基准点来进行仿真,得到一个特解。

    11.对于层流,当瑞利数小于10^{4}时,热传导的热量远多于对流。

    12、二次流

            流体力学中,二次流的概念如下定义:假如沿一边界的流动因受到横向压力的作用,产生了平行于边界的偏移,则靠近边界的流体层由于速度较小,就比离边界较远的流体层偏移得厉害,这就导致了叠加于主流之上的二次流。

     13.结果工具栏的更多派生值,里面有用于计算结果再处理的一些功能,比如平均值积分最大值最小值

    持续更新中......

    原创不易,各位看官请随手点下Follow和Star,感谢!!!

    展开全文
  • 傅里叶定律(热传导定律) q= -λ ∂T/∂t 表示单位时间内通过单位面积的热量的大小,时温度...第三类边界条件:已知边界气流温度及对流换热系数 非稳态热传导方程:左边体现温度随时间变化,右边体现了物体内...
  • 目录-管壳式换热器的分析与计算

    千次阅读 2018-08-24 13:11:27
    1 绪论 1.1 研究热交换器的重要性 1.2 各种型式的间壁式换热器 1.3 管壳式换热器的分类 1.4 管壳式换热器的标准和表示法 ...2.5 管内,管外对流换热系数的计算 3 流动计算 3.1 流动空间的选择 3.2 流速和允许...
  • 分层已适当地并入控制方程式中,以便可以揭示和适当报告其影响。 使用相似性变换,将描述模型的控制性偏微分方程式转换并参数化为非线性常微分方程式系统。 通过采用最佳同伦分析方法(OHAM)获得近似的解析解。 ...
  • 我们已经成功地尝试在Ψ-ω公式框架内求解全MHD模型的方程,目的是评估一种新的高阶方案的性能,以预测更好的流量控制参数值。 特别是对于MHD流量,磁场和电导率是控制参数。 在这项工作中,将我们高效的高阶精确...
  • 基于固体导热微分方程、对流换热方程、辐射换热方程建立NXAIR型开关柜电缆室的热传导、对流及辐射的多物理场耦合数学模型。同时,基于Navier-Stokes方程建立了电缆室内空气流场模型,考察空气流动的散热效果。以上...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 523
精华内容 209
热门标签
关键字:

对流换热方程