最近在用openfoam进行燃烧化学反应模拟,想要做出文献中类似的每个反应的热释率对总热释率的占比。
研究了一下openfoam中热释率的计算方法,按照我的理解,openfoam中热释率Qdot是通过每个组分的反应速率乘以化学焓累加得到。不知道有大佬指导如何输出每个反应reaction的热释率?
江山不如凉竹
帖子
-
openfoam如何输出化学反应计算中每个反应的热释率 -
openfoam如何输出组分方程的扩散项@李东岳 李老师您好,我的想法的是输出这个方程的扩散项,也即我图中标红线的。您有什么好的思路吗
-
openfoam如何输出组分方程的扩散项大家好,我目前想针对一个修改的sprayfoam求解器去输出组分方程的扩散项 fvm::laplacian(DEff, Yi),但是水平有限,目前还未能成功,所以想请教一下大家。
-
openfoam化学反应模拟如何导出组分的反应源项我用openfoam进行化学反应模拟,如何在计算结束之后,导出组分的化学反应源项,比如RR_C7H16。如果不行,有什么办法可以在求解器中定义出组分的化学反应源项,运行再输出?
-
openfoam如何减小大规模并行计算输出文件占据的存储@李东岳 谢谢李老师的建议,因为我是做燃烧模拟,需要分析中间的某几个着火和火焰发展的时刻,但是我并不能精确的预知CFD计算的点火时刻,所以我需要保存相对多的时刻。 我观察到我的每个时刻的文件里面,每个化学机理的组分Y都会有一个相应的Y_0 并且还会输出并且还会输出ddt0(rho,Y)这些,其实我并不需要这些,但是我并不知道这些是如何产生的,以及如何可以不输出这些量。如果可以不输出这些量,那么输出的文件就会小很多,不知道您对这个问题有好的建议吗?
-
openfoam如何减小大规模并行计算输出文件占据的存储@heike256 感谢您的建议。我是在超算上并行计算,因此30T的存储确实有点难接受,毕竟课题组还要很多人也需要存储空间。 因为要捕捉到关键的非稳态的过程,所以保存的时刻较多。实际后处理的时候,我仅仅需要几个时刻的数据。并且由于我是做燃烧模拟,每个时刻的文件之所以那么大也是由于化学机理的组分很多。因此我的想法就是计算的时候先压缩,然后从超算上只传输我我想要的某几个时刻的某几个场,这样,后处理文件就小很多。您刚刚提到大的数据不建议压缩,不知道您是之前遇到过什么问题吗?
另外不知道您是否知道,为什么每个时刻的文件里面,每个组分Y都会有一个相应的Y_0 并且还会输出并且还会输出
ddt0(rho,Y)这些,其实我并不需要这些,但是我并不知道这些是如何产生的,以及如何可以不输出这些量。
-
openfoam如何减小大规模并行计算输出文件占据的存储最近计划在openfoam平台上进行数亿网格规模的并行计算,由于需要捕捉非稳态的过程,因此需要保存相对多的时刻的数据,这就导致总耗费的存储较大,预计30T。 我自己也思考了一些办法。首先采用二进制的文件保存格式,本以为相对于十进制的结果占据的存储会小很多,实际我测试了一下,二进制文件能达到0.54倍十进制文件。另外我还尝试了采用压缩文件的方式,但是发现压缩文件也仅达到了0.43倍的未压缩文件。不知有大佬知道如何能够有效的减小openfoam输出文件的大小? 或者我上述采用的两种方式是否还有改进的空间。
-
Pressure-enthalpy (p-h) diagram 绘制请问有谁知道类似下面这种压力焓图如何绘制吗?哪里可以获得数据,或者是否有专业的软件可以绘制
-
openfoam中隐式方程的求解方法@李东岳不知道您有什么好的建议吗
-
openfoam中隐式方程的求解方法感谢李老师的回复。方程跟代码是完全一致的,我自己推导过。G是mt,Gf是mflash. 代码中的A和B是有相应的具体表达式,带进去之后会得到我写的这个公式。李老师你说方程可以显性也可以隐性具体是什么意思呢? 我其实就是不清楚怎么算的,但是总的给审稿人一个说法,这是我需要的。
-
openfoam中隐式方程的求解方法最近投稿一篇喷雾蒸发的论文,审稿人对于我蒸发速率的计算公式提出疑问,Equation (14) is implicit; how is this evaluated in practice? 公式如下图
审稿人的意思是方程是隐式的,openfoam实际是如何计算的。我这个公式也是openfoam蒸发模型的代码中写的
不知道有大佬知道,openfoam对于隐式方程实际是如何计算的? -
openfoam每个时刻文件夹里如何不输出带_0尾缀的量最近进行千万级网格计算,发现由于每个时刻的各个除了本身外,还输出了本身_0这种,考虑到占据太多存储,想请教有人知道如何不让openfoam输出带_0尾缀的量。
-
颗粒的平均量和脉动量的统计请教一下,有什么办法可以获得openfoam中颗粒的平均速度,直径等量 以及RMS的信息,或者怎么后处理可以得到?
-
不同of版本的sprayfoam中锥角注入模型的计算差异大家好,最近使用openfoam5.x版本的sprayfoam计算冷态喷雾,使用的注入模型是coneNozzleInjection,发现一个奇怪的事情,就是我喷嘴直径如果从0.2mm增大到2mm,那么计算的流场会偏斜。
我尝试在openfoam8上面计算相同的算例,喷嘴直径设置为2mm,但是发现流场就不会偏斜。虽然说openfoam8中锥角注入模型名称改成了coneInjection,我并没有仔细对比这两者的具体细节,但是从设置来看,两者的基本计算原理是一致的。
后面我试过用openfoam2.3.1中的coneNozzleInjection计算,发现同样也会遇到这个问题,0.2mm不偏斜,2mm会偏斜。
所以想请教一下,为什么当coneNozzleInjection设置的直径较大是,流场会偏斜?以及openfoam8的coneInjection和openfoam5.x的coneNozzleInjection计算为什么会存在这种差异?
-
openfoam输出颗粒位置处的流场信息请教一下,因为需要做颗粒和颗粒位置所在流场信息(比如气相组分场)的后处理,所以想请教一下openfoam有什么办法可以输出每一个颗粒所在位置处的流场信息吗?
-
openfoam输出某个截面的points个数与网格结果不一致@学流体的小明 非常感谢,这个问题后面我自己解决了,解决的方法跟您的几乎一样,确实可以通过这种方式得到云图。
-
openfoam输出某个截面的points个数与网格结果不一致@李东岳 应该是我没有表述清楚,我是想说points个数和按照画网格的节点数计算的不一致,我这里都是正交的网格,所以理论上,两个方向上的网格节点数相乘应该是要等于points个数,不知道我的理解对不对。
-
openfoam输出某个截面的points个数与网格结果不一致大家好,我最近在做考虑颗粒优先富集的维诺图,如下所示
然后需要将气相场的数据同样做出来,两张图合并在一起。类似于文献中的图
因为使用的是matlab作图,所以先在openfoam中输出中心截面(x=0 y-z)的量以及相应的二维坐标,然后导入到matlab里面作图。但是发现一个问题,就是openfoam输出的这个面上的points是25026个
这个个数一方面和我网格数计算的不一样,按照我这个截面的网格点数,应该是145x180=26100个,另一方面,points是25026个不能形成两个较大的数相乘,最多到6x4171。后面我干脆用paraview里面输出截面数据的功能,结果输出的文件里,同样里面的点的个数是25026个。
对于这个问题,我不懂的是,如果我在matlab里面作图,我必须要使得数据转成nxm的一个矩阵,然后nxm=points,然后做二维云图,但是这个我在openfoam里输出的结果感觉不太能支持这样作图
不知道有没有懂这方面的大佬,能解答一下,为什么输出的面上的points个数和按照网格点计算的结果不一样? -
如何获取sprayFoam计算结果中颗粒位置信息@Tens 哇,感谢!老师您分享的方法确实有用,用foamToEnsight -ascii转化格式,能得到笛卡尔坐标系下的坐标
-
如何获取sprayFoam计算结果中颗粒位置信息大家好,我用sprayfoam计算了一个液氨冷态喷雾,目前想做一些后处理,但是需要输入颗粒的坐标位置。我认为的颗粒位置信息是在时刻结果文件夹下的lagrangian/sprayCloud里面的position0。
但是打开该文件发现里面三列的数据不太正确,就是数值都很小,特别是第三列我推测是Z方向,我的流向是Z方向,按理说数值应该很大,我的计算域是70x70x85mm。关键我看了position0所有的数值都很小,这似乎不太合理。
我也把颗粒转成VTK格式导入到了paraview中查看过,是很正常的,并没有什么不对。(左侧是实验图像,右侧是我计算的喷雾)
所以我想难道颗粒的位置信息并不是在position0文件夹里?不知道有没有了解这个问题的大佬,帮忙解惑一下,感谢!