scale函数是对应scaleCorrection选项么,默认应该是开着的,关掉试试
 C
C
			
		Cp_Zhao
帖子
- 
    
 GAMG 计算发散
- 
    
 OpenFOAM怎么保证Sf是由owner指向neighbour的?盲猜: 构建面是按照单元号从小到大遍历的,面方向为指向单元外侧。故面肯定是由小编号单元先建立的,指向小编号单元外侧(即从owner向neighbour) 
- 
    
 请问有并行debug的工具吗?@cfdngu 收费也没办法,我之前找了一圈也没有找到比这个好用的 
- 
    
 请问有并行debug的工具吗?ArmDDT软件,现在好像叫armforge 
- 
    
 一个 scalar 等于多少个字节?在 OpenFOAM/primitives/Scalar/scalar/scalarFwd.H中://- A typedef for float typedef float floatScalar; //- A typedef for double typedef double doubleScalar; #if defined(WM_SP) typedef floatScalar scalar; typedef floatScalar solveScalar; #elif defined(WM_SPDP) typedef floatScalar scalar; typedef doubleScalar solveScalar; #elif defined(WM_DP) typedef doubleScalar scalar; typedef doubleScalar solveScalar; #else // #error "PRECISION must be set to WM_SP, WM_SPDP or WM_DP" #endif
- 
    
 velocityLaplacian动网格cellMotion是怎么插值到pointMotion的?好像是分内部点(所有面都不是边界)和边界点,内部点根据cell插值(距离倒数分之一),边界点根据face插值。 
- 
    
 velocityLaplacian动网格cellMotion是怎么插值到pointMotion的?文件路径 OpenFOAM-7/src/fvMotionSolver/fvMotionSolvers/velocity/laplacian/velocityLaplacianFvMotionSolver.CFoam::tmp<Foam::pointField> Foam::velocityLaplacianFvMotionSolver::curPoints() const { volPointInterpolation::New(fvMesh_).interpolate //就是这里 ( cellMotionU_, pointMotionU_ ); tmp<pointField> tcurPoints ( fvMesh_.points() + fvMesh_.time().deltaTValue()*pointMotionU_.primitiveField() ); twoDCorrectPoints(tcurPoints.ref()); return tcurPoints; }有没有具体的数学公式,我看了一些书也都没说这些细节的东西。 
- 
    
 CFD国内就业贴我记得微信有个 CFD招聘的公众号做的挺不错的
- 
    
 correctBoundaryConditions里修正面心梯度的公式没看明白自己翻书找到答案了  , ,《The FVM in CFD(OpenFOAM, Matlab)》那本书Page 303有讲到:
  
- 
    
 correctBoundaryConditions里修正面心梯度的公式没看明白代码在 src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrad.C144行:template<class Type> void Foam::fv::gaussGrad<Type>::correctBoundaryConditions ( const GeometricField<Type, fvPatchField, volMesh>& vsf, GeometricField < typename outerProduct<vector, Type>::type, fvPatchField, volMesh >& gGrad ) { typename GeometricField < typename outerProduct<vector, Type>::type, fvPatchField, volMesh >::Boundary& gGradbf = gGrad.boundaryFieldRef(); forAll(vsf.boundaryField(), patchi) { if (!vsf.boundaryField()[patchi].coupled()) { const vectorField n ( vsf.mesh().Sf().boundaryField()[patchi] / vsf.mesh().magSf().boundaryField()[patchi] ); gGradbf[patchi] += n * ( vsf.boundaryField()[patchi].snGrad() - (n & gGradbf[patchi]) ); } } }里面 vsf应该是待求梯度的场吧、然后gGradbf是根据体心梯度插值得到的面心梯度、n是面单位法向、.snGrad()是$\frac{\phi_{f}-\phi_{C}}{d_{Cf}}$ ?
 这个面心梯度的修正公式怎么来的我还是没看懂:gGradbf[patchi] += n * ( vsf.boundaryField()[patchi].snGrad() - (n & gGradbf[patchi]) );
- 
    
 [分享]《Computational Methods for Fluid Dynamics》4th这几天在看有限体积法的书,大佬的论文、《数值传热学》和 《The FVM inCFD OpenFOAM..Matlab》都看了,逛论坛发现都在推荐 《Computational Methods for Fluid Dynamics》这本;去SpringerLink一搜正好今年出了新版,网上资源好像还不多,在这里分享一下: 点击下载
- 
    
 advection 和convection 的区别正好最近也有这个疑问,感谢大佬的回答~ 
- 
    
 blockMesh生成复杂模型@hy1112006 不会吧;我不太记得了,好像是用的https://openfoam.org/的OpenFOAM7,当初因为是租的服务器算,直接用 sudo apt-get install openfoam安装的。
- 
    
 blockMesh生成复杂模型补个图片,tif格式好像不支持  
- 
    
 blockMesh生成复杂模型
- 
    
 banana method是什么意思把文件里某一个选项的值填为 banana(任何一个错误的值都行),让错误信息输出该选项所有的正确可选值
- 
    
 windows 10下可以跑linux!@东岳 现在出了windows termianal,稍微配置下就很好看了~ 
  
- 
    
 阿里ECS进行OpenFOAM的计算流程@Cp_Zhao 找到原因了,创建实例公网带宽记得选按按固定带宽,然后适度调节。 
 虽然贵一点但至少用户体验好一些
- 
    
 阿里ECS进行OpenFOAM的计算流程我试了下,注册了账号充了100,然后到最后一步下载openfoam。。。网速只有几k/s,然后就懵逼了。 
- 
    
 motorbike中SA模型相关设置?结论: - nut根据计算得来,所以设置成type calculated;然后随便给个值都行。
- 不同模型间的公式尽量不混着瞎用,老老实实参考NASA里给的建议和https://turbmodels.larc.nasa.gov/ChangesToOpenFOAM.pdf的说明
- Try not to follow the tutorial values as some (maybe most) of them are not validated per se but more for case file reference only(来自reddit yourstru1y的建议)
 不知是否还有需要纠正的地方,感谢~ 
- nut根据计算得来,所以设置成
