2016年离散相参数设置超级详细版
2017-01-15 by:CAE仿真在线 来源:互联网
2016年离散相参数设置超级详细版
一、耦合和非耦合
离散相计算分为两种,耦合和非耦合,也就是市面说的双项耦合(耦合)和单项耦合(非耦合)。这种说法其实是不准确的,还是按照fluent 官方文件的用法叫做Uncoupledvs. Coupled DPM 耦合和非耦合
1非耦合 Uncoupled DPM
这种最简单,它的意思是你的连续相(也就是流场)计算可以是steady(定常/稳态流场)也可以是unsteady(非定常/瞬态/transient)。这两种连续相的流场中离散相计算都可以用非耦合粒子计算。非耦合的意思是什么呢?就是你先要把连续相流场计算好了之后,就是计算收敛之后。进行数据后处理时候。把离散相打开,按照下面的图流程去操作,前提是流场已经收敛了,
图一 打开离散相为On 这一步大家都会吧
图二 因为是非耦合 这一步只需要设置 红方框里面的这些选项即可 上面的其他都不要设置
图三省略 就是设置上图的
设置好了之后直接去后处理就行了,后处理时候fluent会默认帮你算了DPM,是,当你显示轨迹的时候,fluent里面会显示类似下图的文字。。。
到这里非耦合计算就讲完了。非耦合计算原理是不考虑离散相对连续相的影响,就是离散相的动量、质量、温度等信息不会反馈给流场,因为你流场事先已经计算收敛了,不能变了,当你开DPM时候,就是通过流场的信息计算DPM了。他是流场产生DPM场的概念。
2 耦合计算Coupled DPM
耦合计算相对复杂,不过也是大家做科研都需要用的,我想上面的那种非耦合基本没人用。耦合计算就是DPM和Fluid流场计算是同时进行的。但是一个重要误区是,网上说这种计算是计算流场前先把DPM设置参数都设置好再算,其实是错误的,因为Fluent 官方文件是说先把流场计算有个初始结果后再开DPM共同计算然后进入最后的收敛状态。顺序就是先计算流场计算收敛,然后开DPM,然后再继续计算到共同收敛。
首先你把连续相流场计算收敛了。然后按下图开DPM设置
图一 打开离散相为On 这一步大家都会吧
图二 开DPM 这时候红色方框里面的是必须设置选项!!!
图三还是设置Injection 就是粒子的速度 数量 等信息。
到这里已经设置完耦合计算的参数,这时候就可以计算了,耦合计算的原理就是流场计算一会,离散相计算一会,这两次的数据有交换,离散相对连续相的动量 mass 温度等信息都会改变,流场计算也会改变离散相粒子的物理信息。
二、steady和unsteady 粒子追踪
离散相粒子的追踪方式有两种,是steady追踪和unsteady追踪。也就是市面上说的稳态追踪(steady)和非稳态追踪(unsteady)。这个市面上解释的还算靠谱,我简要说下
1 steady追踪
Steady追踪离散相从射入口起始位置开始计算,他是根据你设置的连续相流场迭代步间隔开始计算一次。等到计算结束,离散相也终止了计算,但是你要保证整个计算结束后离散相的轨迹计算已经推进到流场的末端才行。
即必须选择 Interactionwith ContinuousPhase 选项,并指定大于0的 Number of Continuous Phase Iterations Per DPMIteration 值。颗粒轨迹追踪方式为,每隔此连续相迭代步数, DPM 求解器对每个颗粒进行一轮包含一步或多步的轨迹计算。每一步, DPM 求解器计算颗粒从当前状态(位置、速度、尺寸、温度等)起在积分时间(即一个颗粒时间步长)内的运动轨迹以及动量、质量和能量损益,并得到更新的颗粒状态。同时,在每一个颗粒时间步喷射一次颗粒。一轮轨迹计算得到的分散相颗粒的动量、质量和能量损益将在下一个连续相迭代步计入连续相源项。积分时间步长和每一轮的步数由用户给定。这样,随着连续相迭代的进行,颗粒将逐轮、逐步地向前推进。
2 unsteady 追踪
如图所示,unsteady追踪就是开下图的红方框设置。
如图所示,unsteady追踪就是图的红方框设置。
设置完上面后你还需要设置颗粒释放 start time 和stoptime
初学者很容易忽略start time 和stoptime 的设置!!一定要切记设置!
离散相-Fluent 学术交流企鹅群: 离散相-DPM-fluent
306206332
纯学术讨论杜绝广告 杜绝收费
解释:
1、流体相(连续相)每次迭代20步,开始进行离散相的计算
2、Particletime steps为0.001s代表,颗粒相每0.001s追踪一次,但是,在开始计算阶段,粒子一边释放一边追踪,释放完成后也在追踪
3、Numberof time steps代表每次追踪的步数,当然,开始阶段是在不断释放颗粒,你会看到颗粒数不断增加。
4、starttime代表开始释放粒子的时刻,认为应在在流体流完整个流道再开始注射,流体流过模型的长度L除以速度V,即Start=L/V合适。
我再次解释一下,unsteady追踪参数的原理,想必大家还是不太清楚,市面上的解释会让家看的头大!
主要是这几个参数的关系:
A
这个参数代表连续相迭代20步开始执行离散相的非稳态追踪,至于离散相是怎么具体计算的追踪的,要看参数B和C
=======================================
B
Particle Time step size代表粒子从start time(见下面参数C)开始注入流场,每隔0.05s注射一次,比如start time=0.001s, 每次注射224个粒子的话,那么0.001s开始注入第一个224个粒子,0.051s注入第二个224个粒子,0.101s注入第三个224个粒子,是隔着时间步不断注入粒子的过程,每次注射后的粒子都在计算,都在向前推进,都在向前运动。
举例如下:
如果Number of Time steps 设置为1 ,那么开始执行计算n个迭代步步后可以看到粒子如下,当前迭代步是1940,红框总追踪到13440个粒子,那么下一个时间步继续看下图。
那么下一个时间步继续看下图。
那么下一个时间步继续看下图。
那么这个图和上个图的区别大家看到了吗,当前迭代步是1960步,上张图是1940,经过了20个迭代步,这个20就是参数最上面提到的参数A。现在红框粒子数量变成了13664个。
13664-13440=224个,因为每次入口都是注入224个粒子,224是我设置的入口粒子group注入,group注入方式是根据入口截面网格密度而定的颗粒数量。
那么现在继续举例,将上面的参数,Number of Time steps 设置为5,注意了,这次变为5了。
现在红色方框大家看到了,每经过20个连续流场的迭代步后,颗粒一次性注入5次,每次224个,数量不断叠加增大。每次注射的同时,先前注射的粒子一直在进行着向前推进的运动计算。
现在解释Particle Time step size=0.05s的意思。大家明白了吗?其实很容易理解了,拿上面的粒子看,我们每20步释放一次颗粒,只要颗粒释放了就在计算推进轨迹,新加入的新计算,先前的一直在计算。那么这个0.05s的时间间隔是什么意思呢?就是每20个迭代步颗粒前进0.05s,而先前注入的粒子前进了当前总迭代步数除以20个0.05s,比如上图,当前迭代步是1980步,那么start time=0.001s开始注入的粒子前进了1980/20*0.05s=4.95s了。后面的粒子分别前进了4.90s 4.85s 4.80s ……0.05s,是这样的规律,但是粒子跑完整个流场有个总的时间跨度,所以需要设置下面的参数C start time 和stop time.
======================================================
C
现在介绍参数C。strat time就是颗粒开始释放的时间,是人为规定的。你随便定义就好。还是拿上面粒子20迭代步举例。比如设置start time 为0.001s, 那么,你设置好DPM第一次执行计算时候,流场迭代了20步后,粒子开始释放,这个第一次释放的时刻就是0.001s,同理,如果你设置start time 为1s,你设置好DPM第一次执行计算时候,流场迭代了20步后,粒子开始释放,这个第一次释放的时刻就是1s。所以start time是一个参考值,不具有意义,意义是stop time和start time的时间差。现在我们解释这个时间差具体迭代总步数的关系。还是上图的粒子。如果start time 设置为0.001s,stop time 设置为0.5s,那么时间差是0.5s-0.001s=0.499s. 这个时间跨度是0.499s,我们的粒子是每隔20隔迭代步释放一次,为了保证我们最初的粒子是走完了整个流场,那么你需要多少个20隔迭代步数呢?答案很明显了。那就是0.499s/0.05s*20大约等于200.那么下图的红方框的总迭代步数至少大于200.
到此,就讲完了上面三个参数ABC和总计算的迭代步数的关系。
这里需要提醒大家一下的是,粒子跑完整个流场大约需要多长时间呢?这个需要你自己估计。比如你的模型是一个圆管从一端注入粒子,粒子注入速度是1m/S,圆管长度是1m,那么你的粒子大约1s就可以跑完整个流场。这时候你的stop time和start time的时间差值至少要大于1s才能保证跑完全程,比如你可以设置strat time =0s,stop time=1.5s ,这时候差值是1.5s>1s 就可以保证跑完全程了。这时候如果迭代步设置为20步间隔进行一次离散相注入的话,如果Particle Time step size设置为0.05s间隔的话,那么总的迭代步数至少是1.5s/0.05*20大约600步,迭代步下图红框你至少要大于600。
到此,这些参数的介绍就完毕了。
下面补充一下,你怎么知道粒子是否真的跑够了stop time呢?就是说如果stop time 设置的是0.5s,我们怎么确认start time 时刻注入的粒子跑够了0.5s呢?其实很简单,当你看到下图红方框,粒子追踪总个数不再变化就说明跑完了,因为你没注入一次粒子就会增加一次,当粒子总数量不再变化时候,就说明粒子运动时间够了stop time,这时候就不再注入粒子了,这时候就意味这粒子轨迹还在计算,但是不再新注入新颗粒了。等待计算结束后处理即可。
转自:http://blog.sina.com.cn/s/blog_6e7b586b0102wdnh.html
相关标签搜索:2016年离散相参数设置超级详细版 Fluent培训 Fluent流体培训 Fluent软件培训 fluent技术教程 fluent在线视频教程 fluent资料下载 fluent分析理论 fluent化学反应 fluent软件下载 UDF编程代做 Fluent、CFX流体分析 HFSS电磁分析