@coolhhh 好的,谢谢!我再试试看
VamosZhi
帖子
-
如何重新读取已有的时间步里的场 -
如何重新读取已有的时间步里的场@coolhhh 嗯嗯,确实奇怪,我这边是控制每迭代特定时间步读入一次:
各种方法都尝试过了。输出log文件:
比如我自定义的ddtp还是0,我试了p,也是一样的。 -
如何重新读取已有的时间步里的场@coolhhh 嗯嗯,刚刚试了,不行。这样子的话,p的值就为0了,再read()一下还是0,读不进来。
我在想,能不能借鉴从constant/transportProperties中读取nu的方法:dimensionedScalar nu ( "nu", dimViscosity, transportProperties.lookup("nu") );
这样子是可以实时更新的。但是不知道如何在runTime.timeName()中lookup场的值,这个代码怎么写还没搞明白,一直报错。
这样写是报错的:p = dimensionedScalar("p", p.dimensions(), runTime.timeName().lookup("p")); log文件: interPhaseChangeFoam_justPp.C:120:72: error: ‘class Foam::word’ has no member named ‘lookup’ p = dimensionedScalar("p", p.dimensions(), runTime.timeName().lookup("p")
-
如何重新读取已有的时间步里的场@coolhhh 谢谢!这确实是一个可行的办法,我看了那个帖子,可以通过删除后重新赋值来解决。我试了一下,直接敲代码“delete p”,“delete U”啥的是不行的,不知道其对应的对象是怎么表示的(像那条帖子一样)。我上网搜了一下,还没搜到。不知道您有什么想法
-
如何重新读取已有的时间步里的场@李东岳 嗯嗯对的,是这个意思。李老师您看看有什么解决办法
-
如何重新读取已有的时间步里的场@李东岳 李老师,controlDict读取的也是latestTime (比如是t1), 然后他读取了t1时间步的场,比如一个force source term ‘f’。现在我在solver里想定义,每运行ndeltaT的时间步时,从新的(t1+ndeltaT)time文件中读取新的 ‘f’场, ‘f’场的值事先准备好了,放在(t1+ndeltaT,t1+2ndeltaT,t1+3n*deltaT,.......)里面。问题是,读了t1时间步的场后,后面的怎么都读不进去,仍然保持t1时候的值不变,不管是设置了“MUST_READ_IF_MODIFIED”,或者强制‘f.read()’。
volScalarField f ( IOobject ( "f", runTime.timeName(), mesh, IOobject::MUST_READ_IF_MODIFIED, IOobject::NO_WRITE ), mesh );
-
如何重新读取已有的时间步里的场在一个自定义solver里,需要在特定的时间步时,重新读取当前时间步文件夹里的场(可以是速度场或者压力场),我使用了:
volScalarField p ( IOobject ( "p", runTime.timeName(), mesh, IOobject::MUST_READ_IF_MODIFIED, IOobject::NO_WRITE ), mesh );
但实际上MUST_READ_IF_MODIFIED是不起作用的,直接在solver里写“p.read()” 也是不管用的,值并没有发生变化,还是一开始初始时间步从time文件中读取的值。在CFDonline上我看到了解释:
https://www.cfd-online.com/Forums/openfoam-programming-development/122189-runtime-modification-volscalarfield.html
和IOobject有关系。但是不知道大家有没有更简单的办法。谢谢 -
借助localPoints实现网格运动控制的问题不知道楼主还看不看得到,我是想把翼型3维主动变形和overset结合起来。但现在第一步,用codefixedvalue来定义displacement边界,就出现了不收敛问题,不知道能否分享下您当时这部分的codes,我学习一下。
-
sixDoFRigidBodyMotion问题求助不知道楼主还看不看得到,我是想把翼型3维主动变形和overset结合起来。但现在第一步,用codefixedvalue来定义displacement边界,就出现了不收敛问题,不知道能否分享下您当时这部分的codes,我学习一下。
-
interPhaseChangeDyMFoam 计算水下螺旋桨propeller:叶尖涡空化 不明显@李东岳 李老师好像对这个比较懂哈哈
-
interPhaseChangeDyMFoam 计算水下螺旋桨propeller:叶尖涡空化 不明显各位老板好:
在openfoam里面基于interPhaseChangeDyMFoam计算船用螺旋桨的空化问题。想要得到类似实验结果和其他人计算结果的非常清晰的空化尾流:
进口速度,旋转速度,根据cavitation number计算得到的vapor pressure是正确的。但是我的结果就是随着计算的进行,空化contour变得不明显,尤其到了计算后期:
我的网格:
我用的是SchnerrSauer模型,该部分我设的参数如下:
我了解到这些空话模型里面很多参数也是经验参数,不知道各位大佬有什么意见?就是想获得很清晰的空化轨迹。感谢!!!项目卡在这里4个多月了 -
snappyhexmesh结构边缘抓取问题请问在snappyhex中如何调整参数准确解析结构的边缘,比如下图圆柱端的直角边,以及翼型的尾缘。
结构抓取的就非常的难看。我看其他网站也有类似的介绍。
但是好像改了参数效果还是不好。各位有什么建议?目测应该不是继续加密的问题。 -
Re100层流VIV涡激振动振幅不对U#4.92Re100_v0.0001.zip 各位好,我现在想验证一篇论文,Re100, reduced order velocity 4.92,两个振动自由度上刚度相同,无机械阻尼。几篇论文显示最大相对振幅只有0.6。但是经过转换后,放在openfoam里面计算,我的相对振幅总是奔着3到4去了。我试了overset网格,多种不同参数组合(但保证无量纲参数一样),改时间步长,都不行。各位知道是什么原因吗?在这个简单的验证上拖了10天了。。如果帮助,不甚感激。case得压缩包以及论文附在后面。
-
OF4.1这行代码释义,动网格问题您好,您现在还有做SIXDOF得问题吗?有的话我们可以交流一下,谢谢啦
-
overset来处理6dof的网格变形问题@wwzhao
老师,我之前一直有个小问题没有解决。我在SIXDOF里面定义的时候,要求了输出motion state。angularMomentum (0 0 0); g (0 0 0);//-9.81 rho rhoInf; rhoInf 1;//2375.9;//840;//77.2;//1.924; report on; reportToFile on; solver { type symplectic;//GrankNicolson;Newmark; }
但是只有总有LOG文件里面有,没有输出单独的文件。请问有什么方法,单独把MOTION state输出吗?像我时间步长小,周期大,文件太大了,log文件没有办法处理。我用的V1712
-
overset来处理6dof的网格变形问题@wwzhao
嗯嗯,我想用它先算一个初始场,再放到overpimple里面算。没事,我自己再查查哪里有问题哈 -
overset来处理6dof的网格变形问题@wwzhao
Re100-fr1.0-simple.zip
老师您好,您能看一下我这个oversimplefoam哪里设置的不对吗?
感觉就是一直计算不了,识别不出oversetpatch, 我条件以及参数的设置就是按照tutorial里面那个改的。谢谢!
-
overset来处理6dof的网格变形问题@wwzhao 老师,我问一下,TOPOSET 和 setfields 在OVERSET 定时的作用是什么?我把TOPOSET 和 setfields删掉的时候,好像计算时并不能识别出oversetpatch的重叠网格
-
OpenFOAM重叠网格@netbuger 哥,目前我还没有到后处理的那一步,到了跟你继续交流!
-
overset来处理6dof的网格变形问题@wwzhao 好了老师,问题男孩又来了。我想先用Oversimplefoam算一个基本场,用的tutorial里面那个基础。但是算的时候发现,只在oversetpatch的区域里面进行计算,如图。
我开始以为的U,P这些边界条件没有overset的设置
加进去后发现反而一点都不算了。。如图。。