Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
问题已解决~因为变量不能从字典中正确读取,修改读取语句后可以正常运行
@bestucan 好的哈!谢谢版主!我仔细看看您发的网址
@bestucan 好的哈,谢谢教授回复!不过您说“但是经过相邻面的速度也反了”,速度的方向是(绝对)唯一的吧,就是说该是多少就是多少。感觉还是从高斯定理出发,法向量永远取外侧为正
@OItoCFD 在 新写的程序单核计算无问题,但无法并行计算? 中说:
mpi并行那些需要考虑吗?
一般不需要考虑
除非你的surface场进行一些特殊的插值
第31页(页码13)最上面那段是不是你要的
https://www.jianguoyun.com/p/DYNwnmQQsLv2BRiS3fED
@Yongbo 你说的两种方式是对的,我验证均通过编译了。东岳老师应该是笔误了
@cresendo 好的好的,我去试试,谢谢!!
@李东岳 不好意思啊 东岳老师,我表述的不是很清楚,我说的exe想说的是编译成application.就是下图中的EXE。谢谢老师回复!47afd1597f7c6cb232f1079f897a298.png
最近在做一个多组分求解器,如题,OF中如何实现单组分到多组分的混合呢?看到一个帖子: https://www.cfd-china.com/topic/2183/openfoam多组分返回热物性?_=1619261653942 我想我也遇到了和楼主相同的问题:比如说我想求解多组分的定压比热Cp,而OpenFOAM中给出了单组分定压比热Cp的函数,但是多组分的Cp是通过一定的混合规则来求解的,OpenFOAM中从单组分到多组分的这个过程是怎么实现的呢?或者说OpenFOAM中的混合规则如何进行的?望了解的铁子指点一下,谢谢!
@cccrrryyy 后来查了一下GAMA可以算非对称矩阵。忘了当时怎么设置的了,现在改成我记得的边界条件GAMG可以算几步,但是算着算着就报错了,应该是发散报错。我现在感觉可能当时是一开始计算就发散了。。
@cfd_上弦月 谢谢回复,有道理,但因为是非均匀网格,即越靠近壁面越密集,我其实想要获取上图中绿色区域内每个网格的高度,(假设长度都是一致的),用于高度方向的积分运算。
你可以加载两个case.foam,然后显示不同的颜色?
最后一张图是X方向的受力,也就是船的阻力。 谢谢回复:146: ,如您所言,setFields确实有问题,我设置的值正好等于流体域边界值,当时没有检查其实边界处的相分数没有完全赋值。将setFields中的box范围改成稍大于流体域就可以正常求解了。我本来还以为是数值振荡这么严重呢,都想离散格式精度调低看看了。现在看来,还是物理模型导致的振荡才更严重。:136:
@wangfei9088 非常感谢:xinxin3:
@浪迹天大 谢谢您,您的总结让我受益良多。
从 ESI 把这个功能偷过来了,现在在 OF-7下能用了。但是限制比较大,需要完全均一的网格。 https://github.com/ZhangYanTJU/functionObjects 这是我做的结果:energySpectrum.png
都是关于并行计算的包。openmpi和metis都可以手动下载安装,你试试?
@wangfei9088 谢谢大佬,已经解决啦,需要paraFoam -builtin 才能够显示组分,之后plot over line之后可以得到需要的数据。
@白礼耕 好的,谢谢您
@tidedrinker 非常谢谢你的回复,长知识了 我试着两个算例就ddt的选择不一样算了一下, 选择LocalEular的时候controlDict没有设置MaxCo,maxAlphaCo ,maxDeltaT 可以顺利收敛算到最后, 选择Eular的时候,显示库朗数,需要有maxAlphaCo,增加了这个设置(值取了15)之后,算到41秒库朗数太大了崩了(exited on signal 8 (Floating point exception).)这个时候应该就需要时间步长较小。 然后看到了这个帖子 https://www.cfd-china.com/topic/412/关于时间离散euler与localeuler离散 才知道用了LocalEular的算是LTSinterFoam的意思,求解稳态问题,所以表明DTCHull这个算例因为属于稳态所以就用了LocalEular时间离散,而另一个DTCHullMoving就不是稳态问题了所以就用了Eular。 早期的OpenFOAM版本还有LTSInterFoam,https://github.com/OpenFOAM/OpenFOAM-2.0.x/tree/master/tutorials/multiphase/LTSInterFoam
学OF时间长了就越明白OF编程的这种独特,刚开始入门知道用的是C++我还找了以前学C++的书出来重刷,但是后来发现OF虽然也是基于C++但是自己很有自己的特点,所以如果C++不好的入门者也不用担心,耐心点慢慢看OF的码有不懂的就网上搜一搜别人的解析还是能理解的。
@tidedrinker 谢谢大佬!
@bestucan 谢谢您的回复!改成其他边界条件后,顶部网格就没有加密了,确实是cyclic的原因。
各CFDer:
最近做了些高精度高分辨率格式的工作,用Shu-Osher、double Mach reflection和 Rayleigh-Taylor做了下验证。
还有其他的一些比较好的算例可以请教一下吗,感谢!
祝好
自挖自填。再次感谢@浪迹天大 和@马乔 两位大佬的解释,原来这是一种c++ 特性——递归模板模式,也就是 派生类继承自模板类,同时把自己作为参数传递给模板类。这样做的目的其实很明确,从基类对象的角度来看,派生类对象其实就是本身,这样的话只需要用一个static_cast就可以把基类转化成派生类,从而实现基类对象对派生对象的访问。
https://askubuntu.com/questions/1143840/downgrade-openmpi-v2-1-1-to-v2-0-2
https://github.com/open-mpi/ompi/issues/6300
有空测试下
of8中 在cloudfunction中有一个叫viodfraction的cloudfunction,会输出theta field
非常感谢!我之前把连续相的直径调小,效果好点,但是还是不理想。我一会儿试一下,把Sct调小,看看有变化没。
@maoyanjun_dut ,您好,我想问下,您的OPENFOAM-v1706最后是怎么编译成功的,我现在在UBUNTU18.04上编译的时候,总是出现6a15fbd6-bb8d-4190-b2cf-b79d66e89092-image.png
这个问题,是需要改原先安装包的文件配置吗?谢谢您,麻烦您了
@五好青年 在 pisoFoam不能用动网格的问题 中说:
为啥pisoFoam不能用动网格呢(特别想用pisoFoam)
用pimpleFoam,你那样设置完全就是pisoFoam,一样的:144:
cfd-online.com/Forums/openfoam-pre-processing/116270-boundary-conditions-internal-faces.html
这篇叙述的挺详细的
自挖自填,确实两者是不一样的,因为通信边界的值是相邻进程发送过来的格心值,并不是我理解的格心插值到面心。
@Joann 你好,方便交流一下吗,我看了你的几个帖子,我和你用的工具基本差不多,我邮箱2424885197@qq.com
@冠竹 嗯嗯好哒 感谢感谢~我先操作一下
求助:如果我需要将热膨胀系数编译进类rhoThermo中,我需要怎么操作。仅仅在rhoThermo文件中添加该项会出错,可能是这是一个基类,在运行时会影响其他子类,请问这个该怎么处理呢?
网格数太大跑不动啊,做个5000网格的?
testCase.tar.xz
2年之后,终于手头有了服务器可以调试酸梨,简单调试了一下..
2021-04-20 11-25-21屏幕截图.png
Fluent,STAR-CCM+的并行计算,只需要在提交算例时,选择相应的核数,就能直接并行。而且停止计算,就直接有结果出来。完全没看到分块和重组的过程。
我倒是觉得,会不会是商软后台全都默默的搞定了?
@lhzhu 在 dugksFoam - 求解离散速度Boltzmann模型方程的求解器 中说:
OpenFOAM自带一个求解Boltzmann方程的求解器是dsmcFOAM
您好,请问下,OpenFOAM自带的dsmcFOAM(求解Boltzmann方程求解器)。请问这个求解器在哪个OF版本的哪个路径呢,我找了好几个版本,都没找到这个自带的求解器,感谢
@Tong 好的,真知灼见。大概理解了下,您强调的是充分利用物理性质来构造预条件。。确实偏数学。。“针对体系结构和并行的优化可能不同”,的确如此。感觉如果是做优化的话,还是要针对特定的硬件架构去做实现层面的优化,想要在数学(算法)层面优化太难了。。。
@李东岳 奥奥好的,谢谢岳哥!
@李东岳 好的,谢谢岳哥回复!
没太清楚您是什么意思。。。形成边界同时又不分割成region?能在解释下吗?
@Micro RTS这个帖子该热闹起来,哈哈哈
@wwzhao 在 程序在并行的时候出现下面的错误,单核运行没有错误 中说:
Info
教授您好!请问Info是不是只有主进程才会输出呢?为什么其他进程就不输出了呢?好像如果是cout的话就是每个进程都会输出,想请教一下您为什么info只有主进程输出,不胜感激!谢谢!
老师您好,您现在是不是已经深入解读过processorFvPatch边界条件了,我现在也非常关注processorFvPatch边界条件的实现和机制,您能推荐一些资料吗,感恩!
好的谢谢大佬!我按照您说的好好查一下,之前确实一直没有关注过Time类,没想到Time类中还会涉及到输入输出,主动查找controlDict中的关键字,我一直都是从IOobject类中去查找运行时加载库的相关功能,一直没有找到,所以才觉得有些“黑科技”。再次感谢!
@wangfei9088 好的,非常感谢大佬!
已解决,这个定义是在creatField.H中定义,但是我的问题的根源出在OF自带的粘弹性模型,这个已经解决了
出口压力用totalPressure
操作符重载一下啊,基本操作,很常见的。 PS,我发现你发的帖子很多我早期学习的时候都研究过和实现过代码,难道这就是是做粒子宿?命:143: