cyclicAMI一算就挂。。
-
大家好。。最近在计算一个水翼的流场。。此前设置的计算域如下图所示,计算起来没问题;但这两天认为计算域的侧面不应是symmetry堆成边界条件,而应该设成周期性会好一些。然后在算例文件中用cyclicAMI设置周期性边界条件后就出问题了,两条边的网格吻合应该没问题,但是一算就挂。。下面贴出boundary文件和Log,大家知道这是什么原因吗?
boundary
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 4.1 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class polyBoundaryMesh; location "constant/polyMesh"; object boundary; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 6 ( INLET { type patch; nFaces 7076; startFace 8338533; } OUTLET { type patch; nFaces 22156; startFace 8345609; } TOPANDDOWN { type wall; inGroups 1(wall); nFaces 36424; startFace 8367765; } WING { type wall; inGroups 1(wall); nFaces 9744; startFace 8404189; } FRONT { type cyclicAMI; inGroups 1(cyclicAMI); nFaces 24139; startFace 8413933; matchTolerance 0.001; transform translational; separationVector (0 0 -0.102); neighbourPatch BACK; } BACK { type cyclicAMI; inGroups 1(cyclicAMI); nFaces 24139; startFace 8438072; matchTolerance 0.001; transform translational; separationVector (0 0 0.102); neighbourPatch FRONT; } ) // ************************************************************************* //
log
/*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 4.1 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ Build : 4.1 Exec : simpleFoam Date : Sep 13 2018 Time : 11:43:26 Host : "Lzh_HP_Z420_Workstation" PID : 13508 Case : /home/lzh/20180824Waveydro/SST nProcs : 1 sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster allowSystemOperations : Allowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create mesh for time = 0 SIMPLE: convergence criteria field p tolerance 1e-06 field U tolerance 1e-06 field "(k|epsilon|omega|f|v2)" tolerance 1e-06 Reading field p AMI: Creating addressing and weights between 24139 source faces and 24139 target faces AMI: Patch source sum(weights) min/max/average = 0, 1, 0.998589 AMI: Patch target sum(weights) min/max/average = 0, 1, 0.997104 Reading field U Reading/calculating face flux field phi Selecting incompressible transport model Newtonian Selecting turbulence model type RAS Selecting RAS turbulence model kOmegaSST Selecting patchDistMethod meshWave bounding k, min: 0 max: 0.0068 average: 0.0068 bounding omega, min: 0 max: 6.668 average: 6.668 kOmegaSSTCoeffs { alphaK1 0.85; alphaK2 1; alphaOmega1 0.5; alphaOmega2 0.856; gamma1 0.555556; gamma2 0.44; beta1 0.075; beta2 0.0828; betaStar 0.09; a1 0.31; b1 1; c1 10; F3 false; } No MRF models present No finite volume options present Starting time loop surfaceRegion flowRatePatch: total faces = 22156 total area = 0.0306 Time = 1 smoothSolver: Solving for Ux, Initial residual = 0.999998, Final residual = 0.0462183, No Iterations 3 smoothSolver: Solving for Uy, Initial residual = 1, Final residual = 0.0664053, No Iterations 3 smoothSolver: Solving for Uz, Initial residual = 1, Final residual = 0.0408965, No Iterations 4 #0 Foam::error::printStack(Foam::Ostream&) at ??:? #1 Foam::sigFpe::sigHandler(int) at ??:? #2 ? in "/lib/x86_64-linux-gnu/libc.so.6" #3 Foam::divide(Foam::Field<double>&, double const&, Foam::UList<double> const&) at ??:? #4 ? at ??:? #5 Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::operator/<Foam::fvPatchField, Foam::volMesh>(Foam::dimensioned<double> const&, Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > const&) at ??:? #6 ? at simpleFoam.C:? #7 ? at ??:? #8 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6" #9 ? at ??:?
-
@东岳 openfoam显示不是完全吻合,用cyclic会出问题,加大tolerance也不管用,反而tolerance调得越大,显示的不匹配度越高
-
@东岳icem,数量200多万,不过问题貌似已成功解决 谢谢东岳前辈,捣鼓了一下午,正准备在下面分享一下我的经验
-
问题貌似已成功解决。。捣鼓一下午,先在icem Global Mesh Parameters 里设置periodicity,然后转化到openfoam网格,使用cyclic边界条件,发现单核运行已经可以了;但是并行计算出现了问题,不能计算。于是在decomposeParDict文件中使用preservePatches工具,使对应的两个周期面在执行decomposePar时可以被分在一个域,设置完后,计算畅通无阻
-
@lllwonderliquid 楼主您好!我用pointwise绘制网格导入openfoam,加上setSet操作,也可以计算周期边界,这个操作可能和icem中设置periodicity是等价的。 不过,不知道楼主有没有考虑过加密壁面的网格进行计算?网格一加密,我调openfoam时,就会出现问题,算不起来。
-
-
-
-