OpenFOAM的插值能够用并行计算吗?



  • 在OpenFOAM的pisoFoam代码改写里面用到了的cellPoint插值方法,在并行计算的时候报如下错误:

    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
    Create time
    
    Create mesh for time = 0
    
    
    PISO: Operating solver in PISO mode
    
    Reading field p
    
    Reading field U
    
    Reading field IBForce
    
    Reading/calculating face flux field phi
    
    Selecting incompressible transport model Newtonian
    Selecting turbulence model type RAS
    Selecting RAS turbulence model realizableKE
    RAS
    {
        RASModel        realizableKE;
        turbulence      on;
        printCoeffs     on;
        A0              4;
        C2              1.9;
        sigmak          1;
        sigmaEps        1.2;
    }
    
    No MRF models present
    
    No finite volume options present
    
    Starting time loop
    
    
    Create IB points
    
    Time = 0.005
    
    Courant Number mean: 9.97566e-05 max: 0.0448352
    DILUPBiCGStab:  Solving for Ux, Initial residual = 1, Final residual = 2.34051e-09, No Iterations 1
    DILUPBiCGStab:  Solving for Uy, Initial residual = 1, Final residual = 5.12408e-08, No Iterations 1
    [0] #0  [1] #0  [2] #0  Foam::error::printStack(Foam::Ostream&)Foam::error::printStack(Foam::Ostream&)Foam::error::printStack(Foam::Ostream&)[3] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
     at ??:?
     at ??:?
     at ??:?
    [2] #1  Foam::sigSegv::sigHandler(int)[1] #1  Foam::sigSegv::sigHandler(int)[0] #1  Foam::sigSegv::sigHandler(int)[3] #1  Foam::sigSegv::sigHandler(int) at ??:?
    [0] #2  ? at ??:?
    [3] #2  ? at ??:?
    [2] #2  ? at ??:?
    [1] #2  ?[DESKTOP-898LF9E:02873] 3 more processes have sent help message help-btl-vader.txt / cma-permission-denied
    [DESKTOP-898LF9E:02873] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages
     in /lib/x86_64-linux-gnu/libc.so.6
    [0] #3  Foam::polyMeshTetDecomposition::cellTetIndices(Foam::polyMesh const&, long) in /lib/x86_64-linux-gnu/libc.so.6
    [3] #3  Foam::polyMeshTetDecomposition::cellTetIndices(Foam::polyMesh const&, long) in /lib/x86_64-linux-gnu/libc.so.6
    [2] #3  Foam::polyMeshTetDecomposition::cellTetIndices(Foam::polyMesh const&, long) in /lib/x86_64-linux-gnu/libc.so.6
    [1] #3  Foam::polyMeshTetDecomposition::cellTetIndices(Foam::polyMesh const&, long) at ??:?
    [0] #4  Foam::cellPointWeight::findTetrahedron(Foam::polyMesh const&, Foam::Vector<double> const&, long) at ??:?
    [3] #4  Foam::cellPointWeight::findTetrahedron(Foam::polyMesh const&, Foam::Vector<double> const&, long) at ??:?
    [2] #4  Foam::cellPointWeight::findTetrahedron(Foam::polyMesh const&, Foam::Vector<double> const&, long) at ??:?
    [1] #4  Foam::cellPointWeight::findTetrahedron(Foam::polyMesh const&, Foam::Vector<double> const&, long) at ??:?
     at ??:?
    [0] #5  [3] #5   at ??:?
    [1] #5   at ??:?
    [2] #5  ???? in ~/OpenFOAM/samuel-v1806/platforms/linux64GccDPInt64Opt/bin/pisoIBMFoamIPL
    [3] #6  __libc_start_main in ~/OpenFOAM/samuel-v1806/platforms/linux64GccDPInt64Opt/bin/pisoIBMFoamIPL
    [1] #6  __libc_start_main in ~/OpenFOAM/samuel-v1806/platforms/linux64GccDPInt64Opt/bin/pisoIBMFoamIPL
    [2] #6  __libc_start_main in ~/OpenFOAM/samuel-v1806/platforms/linux64GccDPInt64Opt/bin/pisoIBMFoamIPL
    [0] #6  __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6
    [3] #7   in /lib/x86_64-linux-gnu/libc.so.6
    [1] #7   in /lib/x86_64-linux-gnu/libc.so.6
    [2] #7   in /lib/x86_64-linux-gnu/libc.so.6
    [0] #7  ???? in ~/OpenFOAM/samuel-v1806/platforms/linux64GccDPInt64Opt/bin/pisoIBMFoamIPL
    [DESKTOP-898LF9E:02881] *** Process received signal ***
    [DESKTOP-898LF9E:02881] Signal: Segmentation fault (11)
    [DESKTOP-898LF9E:02881] Signal code:  (-6)
    [DESKTOP-898LF9E:02881] Failing at address: 0x3e800000b41
    [DESKTOP-898LF9E:02881] [ 0] /lib/x86_64-linux-gnu/libc.so.6(+0x3ef20)[0x7f438443ef20]
    [DESKTOP-898LF9E:02881] [ 1] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7f438443ee97]
    [DESKTOP-898LF9E:02881] [ 2] /lib/x86_64-linux-gnu/libc.so.6(+0x3ef20)[0x7f438443ef20]
    [DESKTOP-898LF9E:02881] [ 3] /home/samuel/OpenFOAM/OpenFOAM-v1806/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so(_ZN4Foam24polyMeshTetDecomposition14cellTetIndicesERKNS_8polyMeshEl+0x88)[0x7f43859d5e58]
    [DESKTOP-898LF9E:02881] [ 4] /home/samuel/OpenFOAM/OpenFOAM-v1806/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so(_ZN4Foam15cellPointWeight15findTetrahedronERKNS_8polyMeshERKNS_6VectorIdEEl+0x65)[0x7f43880a5d75]
    [DESKTOP-898LF9E:02881] [ 5] pisoIBMFoamIPL(+0x38faa)[0x7f438a838faa]
    [DESKTOP-898LF9E:02881] [ 6] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7f4384421b97]
    [DESKTOP-898LF9E:02881] [ 7] pisoIBMFoamIPL(+0x3ebca)[0x7f438a83ebca]
    [DESKTOP-898LF9E:02881] *** End of error message ***
    [DESKTOP-898LF9E:02878] *** Process received signal ***
    [DESKTOP-898LF9E:02878] Signal: Segmentation fault (11)
    [DESKTOP-898LF9E:02878] Signal code:  (-6)
    [DESKTOP-898LF9E:02878] Failing at address: 0x3e800000b3e
    [DESKTOP-898LF9E:02878] [ 0] /lib/x86_64-linux-gnu/libc.so.6(+0x3ef20)[0x7f586703ef20]
    [DESKTOP-898LF9E:02878] [ 1] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7f586703ee97]
    [DESKTOP-898LF9E:02878] [ 2] /lib/x86_64-linux-gnu/libc.so.6(+0x3ef20)[0x7f586703ef20]
    [DESKTOP-898LF9E:02878] [ 3] /home/samuel/OpenFOAM/OpenFOAM-v1806/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so(_ZN4Foam24polyMeshTetDecomposition14cellTetIndicesERKNS_8polyMeshEl+0x88)[0x7f58685d5e58]
    [DESKTOP-898LF9E:02878] [ 4] /home/samuel/OpenFOAM/OpenFOAM-v1806/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so(_ZN4Foam15cellPointWeight15findTetrahedronERKNS_8polyMeshERKNS_6VectorIdEEl+0x65)[0x7f586aca5d75]
    [DESKTOP-898LF9E:02878] [ 5] pisoIBMFoamIPL(+0x38faa)[0x7f586d438faa]
    [DESKTOP-898LF9E:02878] [ 6] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7f5867021b97]
    [DESKTOP-898LF9E:02878] [ 7] pisoIBMFoamIPL(+0x3ebca)[0x7f586d43ebca]
    [DESKTOP-898LF9E:02878] *** End of error message ***
     in ~/OpenFOAM/samuel-v1806/platforms/linux64GccDPInt64Opt/bin/pisoIBMFoamIPL
    

    难道说插值不能用并行计算??
    因为有一个命令findCell找到包含插值点的网格编号,我在想分区后,如果刚好这个插值点处于两个分解区域的交界面,这样岂不是就有两个网格都包含这个插值点了?这样不会有问题么。。


Log in to reply
 

CFD中文网 2016 - 2020 | 京ICP备15017992号-2