[发明专利]一种用湍流方程丰富火焰模拟细节的方法有效
申请号: | 201310612150.3 | 申请日: | 2013-11-26 |
公开(公告)号: | CN103839287A | 公开(公告)日: | 2014-06-04 |
发明(设计)人: | 周忠;高宏昌;伍朝辉;吴威 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06T15/10 | 分类号: | G06T15/10 |
代理公司: | 北京科迪生专利代理有限责任公司 11251 | 代理人: | 杨学明;孟卜娟 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 湍流 方程 丰富 火焰 模拟 细节 方法 | ||
1.一种用湍流方程丰富火焰模拟细节的方法,是通过求解湍流方程得到湍动能,再结合随机速度场,对火焰的速度场进行扰动,得到具有高频湍流特征的速度场,然后驱动火焰的密度场运动,得到具有湍流细节的火焰。该方法的特征在如下步骤:
(1)使用CUDA加速求解Navier-Stokes方程,得到火焰的速度场、密度场和温度场,从而得到火焰的主体形态;
(2)使用粒子方法对标准k-e湍流方程进行简化,然后使用第(1)步求得的速度场驱动粒子运动,并利用CUDA加速求解简化后的方程,到粒子的湍动能和能量耗散率;
(3)生成具有窄带特征的随机纹理场,再由窄带随机纹理场生成随机速度场,根据粒子位置采样得到粒子所在处的速度;
(4)根据第(2)步得到的采样速度和第(1)步中的湍动能合成粒子的扰动速度,在该粒子的邻域内以高斯衰减的权重扰动粒子邻域内的网格节点处的速度,使网格节点的速度有了更多的高频细节特征,然后以该速度驱动火焰密度场、温度场的运动;
(5)对粒子进行分组,从前往后分别绘制每一组粒子,并利用CUDA和OpenGL的缓冲区映射,加速渲染,得到具有湍流细节的火焰面片。
2.根据权利要求1所述的一种用湍流方程丰富火焰模拟细节的方法,其特征在于:所述步骤(2)中使用粒子方法简化标准k-e湍流方程并加速求解的方法如下:
(2.1)标准k-e湍流方程为:
其中,k是湍动能,ε是能量耗散率,u是速度,νT是粘性系数,C1、C2、σ1、σ2是常数,P是能量产生项,计算公式为:
将标准k-e湍流方程用粒子方法简化为:
(2.2)在OpenGL中定义顶点缓冲区,存储粒子的速度、位置、颜色和纹理坐标,利用CUDA和OpenGL的缓冲区映射,在CUDA中读取该缓冲区,根据(2.1)中的简化后的公式计算湍动能k和能量耗散率ε。
3.根据权利要求1所述的一种用湍流方程丰富火焰模拟细节的方法,其特征在于:所述步骤(3)中由窄带随机纹理场生成随机速度场的方法为:
(3.1)创建一张由随机噪声点组成的随机纹理场R;
(3.2)对这张图片向下采样,得到尺寸减半的纹理场R↓;
(3.2)再将纹理场R↓向上采样,得到原尺寸大小的纹理场R↓↑;
(3.3)将原始纹理场R减去经过采样处理的纹理场R↓↑,得到具有窄带性质的随机纹理场;
(3.4)由随机纹理场R↓↑旋度求得随机速度场:
其中是随机纹理场R↓↑中位置处的值,
4.根据权利要求1所述的一种用湍流方程丰富火焰模拟细节的方法,其特征在于:所述步骤(4)中由随机速度场和湍动能扰动网格节点的速度场,得到具有高频湍流速度场的方法为:
(4.1)为了补偿缺失的高频特征,在随机速度场中采样多个频段的速 度,进行叠加得到具有更多丰富细节的速度场:
其中k是频率大小,k∈[kmin,kmax],x为采样位置,w即(3.4)中的是随机纹理场R↓↑中位置x处的值;
(4.2)在邻域内扰动网格节点的速度,其中该粒子所能影响的邻域为:
||x-xp||≤r
其中,r是邻域半径,xp是粒子位置;粒子对邻域内的网格节点的影响权重随着距离的增大而进行高斯衰减:
其中α是可调节参数;这样位于邻域内的网格节点速度被扰动后的值为:
u'(x)=u(x)+ω(x-xp)y
其中,u'(x)是网格节点x处的扰动后的速度值,u(x)是网格节点x处的原始速度值,y是(4.1)中采样得到的扰动速度;然后,再利用扰动后的具有高频湍流特征的速度场,驱动密度场和温度场的运动。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310612150.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:对等值面进行采样并生成高质量三角网格的方法
- 下一篇:氨基膜塑料造粒装置