新手求问冲击波管喷出的低马赫数supersonic的 边界条件问题
-
@李东岳 感谢回复🙏 这个是tube的mesh https://pan.baidu.com/s/1miBVoeO
这个tube只是为了简便练习下用的 实际想做有个小的3mm长的inlet然后测冲击波从tube里刚喷出那段时间的密度计测,这个是模型的mesh https://pan.baidu.com/s/1cLIYzO谢谢李老师
-
你提供的算例无法运行,报错文件缺失:
dyfluid@dyfluid:~/桌面/tubecase/10$ ./Allrun Cloning resolved case from . Running blockMesh on /home/dyfluid/桌面/tubecase/10/resolved Running decomposePar on /home/dyfluid/桌面/tubecase/10/resolved --> FOAM FATAL ERROR: Cannot open file "system/decomposeParDict" From function int main(int, char**) in file foamDictionary.C at line 427. FOAM exiting Running sonicFoam in parallel on /home/dyfluid/桌面/tubecase/10/resolved using processes Cloning modelled case from . Running blockMesh on /home/dyfluid/桌面/tubecase/10/modelled Running decomposePar on /home/dyfluid/桌面/tubecase/10/modelled --> FOAM FATAL ERROR: Cannot open file "system/decomposeParDict" From function int main(int, char**) in file foamDictionary.C at line 427. FOAM exiting Running sonicFoam in parallel on /home/dyfluid/桌面/tubecase/10/modelled using processes line 0: warning: Cannot find or open file "resolved/postProcessing/probes/0/p" line 0: warning: Cannot find or open file "modelled/postProcessing/probes/0/p" line 0: No data in plot dyfluid@dyfluid:~/桌面/tubecase/10$
-
@李东岳 在 新手求问冲击波管喷出的低马赫数supersonic的 边界条件问题 中说:
Allrun
李老师,
感谢回复🙏
发的文件夹里面的Allrun,Allclean文件是之前tutorial里复制粘贴过来的,忘了给删掉所以不能用,我用的是Gmesh进行网格划分已经划分过了不需要再用blockMesh了,
另外算这个例子的时候感觉运算量没那么大就没有分cpu去算,所以没有设置decomposeParDict。我现在已经给您加上decomposerParDict文件了如果您想用的话改一下里面的cpu个数就行了,如果不用的话直接在终端输入sonicFoam应该就ok。
另外,我用的版本是openFoam Plus的mac版的,如果用什么格式不对的话,按照tutorial里的复制一下报错的地方应该就行。
下面是case的dropbox链接,
这个是sonicFoam https://www.dropbox.com/s/2t2rc8k3vnl9fqp/sonicFoam.zip?dl=0这个是rhoCentralFoam
https://www.dropbox.com/s/vzgr1r84fvxk1ts/rhoCentralFoam.zip?dl=0这两个例子离散格式和用的求解器不一样,这些求解器和离散格式 的意思还没有完全搞懂。。不知道是不是这里出的问题。求老师给看一下,什么样的离散格式和求解器才适合这个例子。
Ryo
-
@李东岳
谢谢李老师。还是跟之前一样的错误。。tube里面的气体不往前面流动。
这个是把网格换成六面体的case
sonicFoam
https://www.dropbox.com/s/bb0a0lmzb67h8o1/sonicFoam 3.zip?dl=0rhoCentralFoam
https://www.dropbox.com/s/m5ayc8xkdd9ffi4/rhoCentralFoam.zip?dl=0Ryo
-
感谢李老师回复!
用snappyHexMesh画六面体网格后发现问题解决了!!
但是还有个问题为什么画的网格感觉好多小的瑕疵。。。。而且这还是完全没有细化也没有添加layers的情况。。
还想请老师帮忙看下snappyHexMeshDic。
这个是snappyHexMeshDic:
https://www.dropbox.com/s/ehr4vknk6injnvr/snappyHexMeshDict?dl=0这个是case
https://www.dropbox.com/s/xzhhygrywtj3g2r/1.zip?dl=0Ryo
-
@李东岳 在 新手求问冲击波管喷出的低马赫数supersonic的 边界条件问题 中说:
volScalar
感谢回复
这个代码的意思是修改求解器重新建立一个可单独计算密度的场吗,如果是的话 还需不需要在ControlDic里加rho function。
然后代码是不是要放在 applications/solvers/compressible/sonicFoam/createFields.H里面?不知道是不是我用的Mac系统,找了一下午找不到createFields.H这个文件。。applications文件夹也没有找到。这些文件是不是隐藏在docker里面,怎么打开这些隐藏文件?
麻烦老师了🙏Ryo
-
@李东岳
李老师,现在发现openfoam Mac版的applications文件夹好像只存在于docker模拟的虚拟机里面在Mac上找不到。用vim在docker状态下找到createfields.H文件了,用vim打开后发现里面已经有一个rho的场存在,代码和您写的是一样的。
是不是要像速度场那样 加上IOobject::MUST_READ,IObject::AUTO_WRITE这些代码才行,现在还没有完全理解这些代码的含义。比如 "Reading field U\n" << endl里面的这个n和endl是什么意思。。网上找了很久也没有发现答案。希望老师能解答一下🙏