CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Programming & Development

Immersed Boundary Method in OpenFOAM-3.1-ext

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree15Likes

Reply
 
LinkBack Thread Tools Display Modes
Old   September 3, 2014, 12:17
Default Immersed Boundary Method in OpenFOAM-3.1-ext
  #1
New Member
 
miladrakhsha
Join Date: Aug 2012
Posts: 27
Rep Power: 5
miladrakhsha is on a distinguished road
I am experiencing with the implementation of IBM in OpenFOAM. I am working with simpleIbFoam. It would be great if this method could be implemented in the future version of OpenFOAM ext by default as it is a very powerful method. However, I did not find the currrent implementation robust enough yet. My case terminates after a couple of iterations without any warning or any error message so I dont rally know where the problem is!!! My only gauss is that it has something to do with the "k" equation!
this is a small part of my log file:

Code:
Time = 6

DILUPBiCG:  Solving for Ux, Initial residual = 7.0369e-05, Final residual = 6.80687e-11, No Iterations 5
DILUPBiCG:  Solving for Uy, Initial residual = 0.000326453, Final residual = 2.10094e-10, No Iterations 5
DILUPBiCG:  Solving for Uz, Initial residual = 7.49995e-06, Final residual = 1.87974e-11, No Iterations 5
GAMG:  Solving for p, Initial residual = 0.0588972, Final residual = 0.00623836, No Iterations 1000
time step continuity errors : sum local = 1.84801e-06, global = -2.04249e-09, cumulative = -4.51088e-09
DILUPBiCG:  Solving for omega, Initial residual = 0.0135086, Final residual = 3.48746e-05, No Iterations 1
DILUPBiCG:  Solving for k, Initial residual = 0.0159819, Final residual = 5.767e-05, No Iterations 1
bounding k, min: -0.940922 max: 1.77288 average: 0.00776461
ExecutionTime = 198.19 s  ClockTime = 198 s

forces output:
    forces(pressure, viscous)((0.000193756 -2.15261e-05 0.000364652) (4.89027e-10 7.44523e-11 6.68369e-13))
    moment(pressure, viscous)((2.45693e-05 -3.77346e-05 -1.48994e-05) (-1.28583e-12 5.10029e-12 -2.34689e-11))

Field p min = -19.5442 max = 3.89681
Field U magnitude min = 0 max = 6.16393
forceCoeffs output:
    Cd = -0.013689
    Cl = 0.581642
    Cm = 0.059539

Time = 7

DILUPBiCG:  Solving for Ux, Initial residual = 6.97614e-05, Final residual = 9.57514e-11, No Iterations 5
DILUPBiCG:  Solving for Uy, Initial residual = 0.000280219, Final residual = 1.82e-10, No Iterations 5
DILUPBiCG:  Solving for Uz, Initial residual = 6.51344e-06, Final residual = 2.49325e-11, No Iterations 5
GAMG:  Solving for p, Initial residual = 0.0732228, Final residual = 0.00731821, No Iterations 871
time step continuity errors : sum local = 1.70086e-06, global = -2.23902e-09, cumulative = -6.7499e-09
DILUPBiCG:  Solving for omega, Initial residual = 0.00702349, Final residual = 3.47449e-05, No Iterations 1
DILUPBiCG:  Solving for k, Initial residual = 0.00908902, Final residual = 4.9913e-05, No Iterations 1
bounding k, min: -1.34002 max: 3.64086 average: 0.00851153
THAT IS IT, THIS IS THE END OF THE LOG FILE!!!!!!!!


I tried to use bounded schemes for k and omega in fvSchemes but it seems that it does not recognize bounded scheme !

I would really appreciate if somebody can help.
Thank you

----------------
Moderator note: This specific topic was later discussed here in more detail: Bounding k and omega in OpenFOAM-1.6-ext
The remaining thread is on the topic of porting to foam-extend 3.1

Last edited by wyldckat; September 14, 2014 at 05:35. Reason: See "Moderator note" and added [CODE][/CODE]
miladrakhsha is offline   Reply With Quote

Old   September 4, 2014, 21:54
Default Immersed Boundary Method in OpenFOAM-3.1-ext
  #2
New Member
 
miladrakhsha
Join Date: Aug 2012
Posts: 27
Rep Power: 5
miladrakhsha is on a distinguished road
Has anyone ported the Immersed Boundary Method developed by ZeljkoTukovic and Professor Jasak in OpenFOAM-1.6-ext to foam-extend-3.1 yet?

I tried to compile the source codes but it gives me an error in the middle of the process. Is it possible at all to port that source code to the new Extend project?

This is the message I received:

Code:
./Allwmake 
+ wmake surfaceNormal
Making dependency list for source file surfaceNormal.C
SOURCE=surfaceNormal.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/surfaceNormal.o
g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -Xlinker --add-needed -Xlinker --no-as-needed Make/linux64GccDPOpt/surfaceNormal.o -L/home/milad/foam/foam-extend-3.1/lib/linux64GccDPOpt \
         -ltriSurface     -lmeshTools -lfoam -liberty -ldl   -lrt -lm -o /home/milad/foam/milad-3.1/applications/bin/linux64GccDPOpt/surfaceNormal
+ wmake surfaceInvertNormal
Making dependency list for source file surfaceInvertNormal.C
SOURCE=surfaceInvertNormal.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/surfaceInvertNormal.o
g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -Xlinker --add-needed -Xlinker --no-as-needed Make/linux64GccDPOpt/surfaceInvertNormal.o -L/home/milad/foam/foam-extend-3.1/lib/linux64GccDPOpt \
         -ltriSurface     -lmeshTools -lfoam -liberty -ldl   -lrt -lm -o /home/milad/foam/milad-3.1/applications/bin/linux64GccDPOpt/surfaceInvertNormal
+ wmake libso immersedBoundary
Making dependency list for source file immersedBoundaryPolyPatch/immersedBoundaryPolyPatch.C
Making dependency list for source file immersedBoundaryPointPatch/immersedBoundaryPointPatch.C
Making dependency list for source file immersedBoundaryFvPatch/immersedBoundaryFvPatch.C
Making dependency list for source file immersedBoundaryFvPatch/immersedBoundaryFvPatchLeastSquaresFit.C
Making dependency list for source file immersedBoundaryFvPatch/immersedBoundaryFvPatchTriAddressing.C
Making dependency list for source file immersedBoundaryFvPatchField/immersedBoundaryFvPatchFields.C
Making dependency list for source file immersedBoundaryFvsPatchField/immersedBoundaryFvsPatchFields.C
Making dependency list for source file immersedBoundaryAdjustPhi/immersedBoundaryAdjustPhi.C
Making dependency list for source file refineImmersedBoundaryMesh/refineImmersedBoundaryMesh.C
SOURCE=immersedBoundaryPolyPatch/immersedBoundaryPolyPatch.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/dynamicMesh/dynamicMesh/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryPolyPatch.o
SOURCE=immersedBoundaryPointPatch/immersedBoundaryPointPatch.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/dynamicMesh/dynamicMesh/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryPointPatch.o
SOURCE=immersedBoundaryFvPatch/immersedBoundaryFvPatch.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/dynamicMesh/dynamicMesh/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryFvPatch.o
SOURCE=immersedBoundaryFvPatch/immersedBoundaryFvPatchLeastSquaresFit.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/dynamicMesh/dynamicMesh/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryFvPatchLeastSquaresFit.o
SOURCE=immersedBoundaryFvPatch/immersedBoundaryFvPatchTriAddressing.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/dynamicMesh/dynamicMesh/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryFvPatchTriAddressing.o
SOURCE=immersedBoundaryFvPatchField/immersedBoundaryFvPatchFields.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/dynamicMesh/dynamicMesh/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryFvPatchFields.o
SOURCE=immersedBoundaryFvsPatchField/immersedBoundaryFvsPatchFields.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/dynamicMesh/dynamicMesh/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryFvsPatchFields.o
SOURCE=immersedBoundaryAdjustPhi/immersedBoundaryAdjustPhi.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/dynamicMesh/dynamicMesh/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryAdjustPhi.o
SOURCE=refineImmersedBoundaryMesh/refineImmersedBoundaryMesh.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/dynamicMesh/dynamicMesh/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/refineImmersedBoundaryMesh.o
'/home/milad/foam/milad-3.1/lib/linux64GccDPOpt/libimmersedBoundary.so' is up to date.
+ wmake libso immersedBoundaryForce
Making dependency list for source file immersedBoundaryForces.C
Making dependency list for source file immersedBoundaryForcesFunctionObject.C
SOURCE=immersedBoundaryForces.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/postProcessing/functionObjects/forces/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I../immersedBoundary/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryForces.o
SOURCE=immersedBoundaryForcesFunctionObject.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/postProcessing/functionObjects/forces/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/home/milad/foam/foam-extend-3.1/src/sampling/lnInclude     -I../immersedBoundary/lnInclude -IlnInclude -I. -I/home/milad/foam/foam-extend-3.1/src/foam/lnInclude -I/home/milad/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryForcesFunctionObject.o
In file included from /home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvMatrices.H:40:0,
                 from /home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvPatchFields.H:33,
                 from /home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/volFields.H:41,
                 from /home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvMatrix.H:40,
                 from ../immersedBoundary/lnInclude/immersedBoundaryFvPatchField.C:29,
                 from ../immersedBoundary/lnInclude/immersedBoundaryFvPatchField.H:367,
                 from ../immersedBoundary/lnInclude/immersedBoundaryFvPatchFields.H:30,
                 from immersedBoundaryForces.C:29:
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:56:1: error: invalid use of incomplete type ‘struct Foam::fvMatrix<double>’
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvPatchField.H:75:7: error: declaration of ‘struct Foam::fvMatrix<double>’
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:59:9: error: incomplete type ‘Foam::fvMatrix<double>’ used in nested name specifier
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:59:9: error: incomplete type ‘Foam::fvMatrix<double>’ used in nested name specifier
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:59:35: error: template argument 1 is invalid
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:62:2: error: invalid type in declaration before ‘;’ token
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:62:2: error: invalid use of incomplete type ‘struct Foam::fvMatrix<double>’
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvPatchField.H:75:7: error: declaration of ‘struct Foam::fvMatrix<double>’
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:65:1: error: ‘solverPerformance’ in ‘struct Foam::lduMatrix’ does not name a type
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:71:1: error: ‘solverPerformance’ in ‘struct Foam::lduMatrix’ does not name a type
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:77:47: error: invalid use of incomplete type ‘struct Foam::fvMatrix<double>’
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvPatchField.H:75:7: error: declaration of ‘struct Foam::fvMatrix<double>’
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:80:43: error: invalid use of incomplete type ‘struct Foam::fvMatrix<double>’
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvPatchField.H:75:7: error: declaration of ‘struct Foam::fvMatrix<double>’
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:83:44: error: invalid use of incomplete type ‘struct Foam::fvMatrix<double>’
/home/milad/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvPatchField.H:75:7: error: declaration of ‘struct Foam::fvMatrix<double>’
make: *** [Make/linux64GccDPOpt/immersedBoundaryForces.o] Error 1
miladrakhsha is offline   Reply With Quote

Old   September 6, 2014, 13:58
Default
  #3
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 233
Rep Power: 7
Mojtaba.a is on a distinguished road
Send a message via Yahoo to Mojtaba.a
Quote:
Originally Posted by miladrakhsha View Post
I am experiencing with the implementation of IBM in OpenFOAM. I am working with simpleIbFoam. It would be great if this method could be implemented in the future version of OpenFOAM ext by default as it is a very powerful method. However, I did not find the currrent implementation robust enough yet. My case terminates after a couple of iterations without any warning or any error message so I dont rally know where the problem is!!! My only gauss is that it has something to do with the "k" equation!
this is a small part of my log file:
...

I would really appreciate if somebody can help.
Thank you
Dear Milad,

You have got to be more specific. These are not enough information to help .
What problem are you solving right now?
Are all implemented tutorials running fine?
Are you using OF1.6-ext?

I just started working with this method, and tutorials are running just fine, not facing any problems yet.

Best.
__________________
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   September 6, 2014, 14:25
Default
  #4
New Member
 
miladrakhsha
Join Date: Aug 2012
Posts: 27
Rep Power: 5
miladrakhsha is on a distinguished road
Dear Mojtaba,

Yes all the tutorials that were provided are running smoothly. That was all the information I had! Well but to explain it more, I am trying to see if this method can be used to simulate the flow over complex geometry such as Vortex Generators. Therefore, I used simpleIbFoam to solve my problem. In addition I used upwind schemes for k and omega to ensure boundedness of the solution.

After working a couple of days with the ext-1.6 version I would say that this problem has something to do with the desensitization schemes in ext-1.6. I found that convective schemes cannot be discretized in this version like openFoam 2.2.0 or later versions. More pacifically, "Bounded" schemes were not developed as they are today in that version. BTW, I manage to remove the bounding "k" and "omega" message by using "bounded" scheme for surface normal gradient.

Now I am trying to to see if this method can be used in parallel. According to this presentation seems like parallelization has not been implemented in this method yet. (why exactly?) Also it would be great if anybody who has successfully ported those source file to new versions of OpenFOAM could share his/her experience here.
miladrakhsha is offline   Reply With Quote

Old   September 11, 2014, 21:51
Default IBM implementation in foam-extend
  #5
New Member
 
Krishna
Join Date: Aug 2014
Posts: 5
Rep Power: 3
singhfme is on a distinguished road
I also get similar messages during compilation of libraries, e.g.
Code:
 SOURCE=immersedBoundaryForces.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-200 -I/opt/foam/foam-extend-3.1/src/finiteVolume/lnInclude     -I/opt/foam/foam-extend-3.1/src/postProcessing/functionObjects/forces/lnInclude     -I/opt/foam/foam-extend-3.1/src/surfMesh/lnInclude     -I/opt/foam/foam-extend-3.1/src/triSurface/lnInclude     -I/opt/foam/foam-extend-3.1/src/meshTools/lnInclude     -I/opt/foam/foam-extend-3.1/src/sampling/lnInclude     -I../immersedBoundary/lnInclude -IlnInclude -I. -I/opt/foam/foam-extend-3.1/src/foam/lnInclude -I/opt/foam/foam-extend-3.1/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64GccDPOpt/immersedBoundaryForces.o
In file included from /opt/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvMatrices.H:40:0,
                 from /opt/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvPatchFields.H:33,
                 from /opt/foam/foam-extend-3.1/src/finiteVolume/lnInclude/volFields.H:41,
                 from /opt/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvMatrix.H:40,
                 from ../immersedBoundary/lnInclude/immersedBoundaryFvPatchField.C:29,
                 from ../immersedBoundary/lnInclude/immersedBoundaryFvPatchField.H:367,
                 from ../immersedBoundary/lnInclude/immersedBoundaryFvPatchFields.H:30,
                 from immersedBoundaryForces.C:29:
/opt/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvScalarMatrix.H:56:1: error: invalid use of incomplete type ‘class Foam::fvMatrix<double>’
 );
 ^
In file included from ../immersedBoundary/lnInclude/immersedBoundaryFvPatchField.H:42:0,
                 from ../immersedBoundary/lnInclude/immersedBoundaryFvPatchFields.H:30,
                 from immersedBoundaryForces.C:29:
/opt/foam/foam-extend-3.1/src/finiteVolume/lnInclude/fvPatchField.H:75:7: error: declaration of ‘class Foam::fvMatrix<double>’
 class fvMatrix;
       ^
How to get over this problem?

Last edited by wyldckat; September 14, 2014 at 05:36. Reason: Added [CODE][/CODE]
singhfme is offline   Reply With Quote

Old   September 13, 2014, 17:24
Default
  #6
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 233
Rep Power: 7
Mojtaba.a is on a distinguished road
Send a message via Yahoo to Mojtaba.a
Dear Milad,

Compiling OpenFOAM 1.6-extended source code in foam-extended 3.1 is possible but it would need too much effort to do this.
Why don't you use OF 1.6?

Best.
__________________
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   September 14, 2014, 06:42
Default
  #7
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 8,511
Blog Entries: 34
Rep Power: 86
wyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nice
Greetings to all!

I've created a new branch "fe31" for building ImmersedBoundary
with foam-extend 3.1. For more instructions: http://openfoamwiki.net/index.php/Ex...oam-extend_3.1

I only did some quick testing and file adjustments in the tutorials. Please let me know if is there a tutorial which is not working properly.

Best regards,
Bruno
snak, Mojtaba.a, sharonyue and 2 others like this.
wyldckat is offline   Reply With Quote

Old   September 17, 2014, 00:14
Default Immersed boundary in foam-extend 3.1
  #8
New Member
 
Krishna
Join Date: Aug 2014
Posts: 5
Rep Power: 3
singhfme is on a distinguished road
Thanks a lot for fe31 fork of IB toolkit. I have a small query based on icoIbFoam in fe31 and master forks. The following statements are missing from fe31 fork:
UEqn.boundaryManipulate(U.boundaryField());
// pressure field
pEqn.boundaryManipulate(p.boundaryField());
I am not sure how it will affect the velocity and pressure field solutions. Deletion of these lines is likely to affect IB modifications in the system matrix, and hence, the overall solution process.

Last edited by singhfme; September 17, 2014 at 02:59. Reason: Addition
singhfme is offline   Reply With Quote

Old   September 20, 2014, 09:09
Default
  #9
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 8,511
Blog Entries: 34
Rep Power: 86
wyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nice
Hi singhfme,

I only removed those lines because I found the following commit in foam-extend 3.1's git history: http://sourceforge.net/p/openfoam-ex...2e8036b5248244

More specifically:
There you'll see that the method "boundaryManipulate()" was eliminated and it was replaced with "completeAssembly()", which in turn is now always called from within "fvMatrixSolve.C".

In addition, you can see online all of the changes I made in the branch "fe31": https://github.com/wyldckat/Immersed...y/commits/fe31 - there you'll see one comment referring to the commit I've mentioned above.


But as I mentioned in the previous post, I only did the port and some basic testing, I did not go through all of the necessary validation steps.

Best regards,
Bruno
wyldckat is offline   Reply With Quote

Old   September 21, 2014, 03:15
Default
  #10
Senior Member
 
Hrvoje Jasak
Join Date: Mar 2009
Location: London, England
Posts: 1,763
Rep Power: 21
hjasak will become famous soon enough
For the record: we will release the latest version of immersed boundary in foam-extend-3.2

Hrv
__________________
Hrvoje Jasak
Providing commercial FOAM/OpenFOAM and CFD Consulting: http://wikki.co.uk
hjasak is offline   Reply With Quote

Old   September 21, 2014, 22:15
Default
  #11
New Member
 
Krishna
Join Date: Aug 2014
Posts: 5
Rep Power: 3
singhfme is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Hi singhfme,

I only removed those lines because I found the following commit in foam-extend 3.1's git history: http://sourceforge.net/p/openfoam-ex...2e8036b5248244

More specifically:
There you'll see that the method "boundaryManipulate()" was eliminated and it was replaced with "completeAssembly()", which in turn is now always called from within "fvMatrixSolve.C".

In addition, you can see online all of the changes I made in the branch "fe31": https://github.com/wyldckat/Immersed...y/commits/fe31 - there you'll see one comment referring to the commit I've mentioned above.


But as I mentioned in the previous post, I only did the port and some basic testing, I did not go through all of the necessary validation steps.

Best regards,
Bruno
Hi Bruno,
Thanks a lot for your kind clarification. I would try some validation runs with foam-extend-3.1.
Best regards,
Krishna
singhfme is offline   Reply With Quote

Old   September 21, 2014, 22:19
Default
  #12
New Member
 
Krishna
Join Date: Aug 2014
Posts: 5
Rep Power: 3
singhfme is on a distinguished road
Quote:
Originally Posted by hjasak View Post
For the record: we will release the latest version of immersed boundary in foam-extend-3.2

Hrv
Dear Professor Jasak,
Thanks a lot for the info. I am eagerly awaiting the new version of IBM. Any hint on possible date of release?

With best regards,
Krishna
singhfme is offline   Reply With Quote

Old   September 28, 2014, 09:00
Default
  #13
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 8,511
Blog Entries: 34
Rep Power: 86
wyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nice
Quote:
Originally Posted by singhfme View Post
Thanks a lot for the info. I am eagerly awaiting the new version of IBM. Any hint on possible date of release?
Quick answer: Deadline for next release of foam-extend (December 2014)
wyldckat is offline   Reply With Quote

Old   October 14, 2014, 13:17
Default
  #14
Senior Member
 
M. Montero
Join Date: Mar 2009
Location: Madrid
Posts: 112
Rep Power: 8
be_inspired is on a distinguished road
I have a problem with the current implementation into 1.6-ext ( i suppose the same problem will be in 3.1-ext).
It seems like when the stl has several surfaces ( maybe perpendicular between them), sometimes IB does not know how to deal with it.

Immersed Boundary Cylinder Tutorial using IcoIbFoam application

Mi first approach, that does not work yet, is only a stl were I have the tower and the nacelle of a wind turbine. The solver does not run:
Can`t find nearest triSurface point for cell 3644, (x y z)

My second step will be to see if vortex generators can be modeled in this way ( counterrotating maybe), so please miladrakhsha keep us informed.

Last edited by be_inspired; October 15, 2014 at 04:55.
be_inspired is offline   Reply With Quote

Old   November 18, 2014, 01:40
Default
  #15
New Member
 
hua1015's Avatar
 
Hua
Join Date: May 2012
Posts: 25
Rep Power: 5
hua1015 is on a distinguished road
Dear Bruno,
I also did some quick testing in the tutorials_HJ/sphereInChannel with OF3.1.
Everything worked well but failed in parallel.
Here is my log for decomposePar command.
Code:
 Build    : 3.1
Exec     : decomposePar
Date     : Nov 18 2014
Time     : 12:43:45
Host     : r710.mfm.com
PID      : 373
CtrlDict : /home/jhpan/foam/foam-extend-3.1/etc/controlDict
Case     : /home/jhpan/foam/foam-extend-3.1/extend-bazaar/ImmersedBoundary/tutorials_HJ/sphereInChannel
nProcs   : 1
SigFpe   : Enabling floating point exception trapping (FOAM_SIGFPE).
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time
--> FOAM Warning : 
    From function dlLibraryTable::open(const fileName& functionLibName)
    in file db/dlLibraryTable/dlLibraryTable.C at line 85
    could not load /home/jhpan/foam/jhpan-3.1/lib/linux64GccDPOpt/libimmersedBoundary.so: undefined symbol: _ZTIN4Foam11fileFormats18surfaceFormatsCoreE
Time = 0
Create mesh for region region0
Calculating distribution of cells
Selecting decompositionMethod simple
Finished decomposition in 0.48 s
Calculating original mesh data
Distributing cells to processors
Distributing faces to processors
Calculating processor boundary addressing
Distributing points to processors
Constructing processor meshes
--> FOAM Warning : 
    From function dlLibraryTable::open(const fileName& functionLibName)
    in file db/dlLibraryTable/dlLibraryTable.C at line 85
    could not load /home/jhpan/foam/jhpan-3.1/lib/linux64GccDPOpt/libimmersedBoundary.so: undefined symbol: _ZTIN4Foam11fileFormats18surfaceFormatsCoreE
Processor 0
    Number of cells = 52394
    Number of faces shared with processor 1 = 933
    Number of faces shared with processor 2 = 4066
    Number of processor patches = 2
    Number of processor faces = 4999
    Number of boundary faces = 1747
--> FOAM Warning : 
    From function dlLibraryTable::open(const fileName& functionLibName)
    in file db/dlLibraryTable/dlLibraryTable.C at line 85
    could not load /home/jhpan/foam/jhpan-3.1/lib/linux64GccDPOpt/libimmersedBoundary.so: undefined symbol: _ZTIN4Foam11fileFormats18surfaceFormatsCoreE
Processor 1
    Number of cells = 52470
    Number of faces shared with processor 0 = 933
    Number of faces shared with processor 3 = 4118
    Number of processor patches = 2
    Number of processor faces = 5051
    Number of boundary faces = 1397
--> FOAM Warning : 
    From function dlLibraryTable::open(const fileName& functionLibName)
    in file db/dlLibraryTable/dlLibraryTable.C at line 85
    could not load /home/jhpan/foam/jhpan-3.1/lib/linux64GccDPOpt/libimmersedBoundary.so: undefined symbol: _ZTIN4Foam11fileFormats18surfaceFormatsCoreE
Processor 2
    Number of cells = 52470
    Number of faces shared with processor 0 = 4066
    Number of faces shared with processor 3 = 910
    Number of processor patches = 2
    Number of processor faces = 4976
    Number of boundary faces = 1770
--> FOAM Warning : 
    From function dlLibraryTable::open(const fileName& functionLibName)
    in file db/dlLibraryTable/dlLibraryTable.C at line 85
    could not load /home/jhpan/foam/jhpan-3.1/lib/linux64GccDPOpt/libimmersedBoundary.so: undefined symbol: _ZTIN4Foam11fileFormats18surfaceFormatsCoreE
Processor 3
    Number of cells = 52394
    Number of faces shared with processor 1 = 4118
    Number of faces shared with processor 2 = 910
    Number of processor patches = 2
    Number of processor faces = 5028
    Number of boundary faces = 1374
Number of processor faces = 10027
Max number of processor patches = 2
Max number of faces between processors = 5051
Processor 0: field transfer
--> FOAM Warning : 
    From function dlLibraryTable::open(const fileName& functionLibName)
    in file db/dlLibraryTable/dlLibraryTable.C at line 85
    could not load /home/jhpan/foam/jhpan-3.1/lib/linux64GccDPOpt/libimmersedBoundary.so: undefined symbol: _ZTIN4Foam11fileFormats18surfaceFormatsCoreE
Processor 1: field transfer
--> FOAM Warning : 
    From function dlLibraryTable::open(const fileName& functionLibName)
    in file db/dlLibraryTable/dlLibraryTable.C at line 85
    could not load /home/jhpan/foam/jhpan-3.1/lib/linux64GccDPOpt/libimmersedBoundary.so: undefined symbol: _ZTIN4Foam11fileFormats18surfaceFormatsCoreE
Processor 2: field transfer
--> FOAM Warning : 
    From function dlLibraryTable::open(const fileName& functionLibName)
    in file db/dlLibraryTable/dlLibraryTable.C at line 85
    could not load /home/jhpan/foam/jhpan-3.1/lib/linux64GccDPOpt/libimmersedBoundary.so: undefined symbol: _ZTIN4Foam11fileFormats18surfaceFormatsCoreE
Processor 3: field transfer
--> FOAM Warning : 
    From function dlLibraryTable::open(const fileName& functionLibName)
    in file db/dlLibraryTable/dlLibraryTable.C at line 85
    could not load /home/jhpan/foam/jhpan-3.1/lib/linux64GccDPOpt/libimmersedBoundary.so: undefined symbol: _ZTIN4Foam11fileFormats18surfaceFormatsCoreE
End.
Here is the error when using icoIbFoam in parallel.
Code:
 Build    : 3.1
Exec     : icoIbFoam -parallel
Date     : Nov 18 2014
Time     : 12:50:13
Host     : compute-3-16.local
PID      : 34815
CtrlDict : /home/jhpan/foam/foam-extend-3.1/etc/controlDict
Case     : /home/jhpan/foam/foam-extend-3.1/extend-bazaar/ImmersedBoundary/tutorials_HJ/sphereInChannel
nProcs   : 4
Slaves : 
3
(
compute-3-16.local.34816
compute-3-16.local.34817
compute-3-16.local.34818
)
Pstream initialized with:
    floatTransfer     : 0
    nProcsSimpleSum   : 0
    commsType         : blocking
SigFpe   : Enabling floating point exception trapping (FOAM_SIGFPE).
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time
Create mesh for time = 0
Reading transportProperties
Reading field p
Reading field U
Reading/calculating face flux field phi
Create immersed boundary cell mask
Create immersed boundary face mask
Found immersed boundary patch 0 named ibSphere
[1] Number of IB cells: 0
[3] Number of IB cells: 0
External flow
[0] Number of IB cells: 100
Starting time loop
[2] Number of IB cells: 100
Time = 0.05
Courant Number mean: 0 max: 0.8 velocity magnitude: 1
[compute-3-16.local:34815] *** An error occurred in MPI_Recv
[compute-3-16.local:34815] *** on communicator MPI_COMM_WORLD
[compute-3-16.local:34815] *** MPI_ERR_TRUNCATE: message truncated
[compute-3-16.local:34815] *** MPI_ERRORS_ARE_FATAL: your MPI job will now abort
--------------------------------------------------------------------------
mpirun has exited due to process rank 3 with PID 34818 on
node compute-3-16.local exiting improperly. There are two reasons this could occur:
1. this process did not call "init" before exiting, but others in
the job did. This can cause a job to hang indefinitely while it waits
for all processes to call "init". By rule, if one process calls "init",
then ALL processes must call "init" prior to termination.
2. this process called "init", but exited without calling "finalize".
By rule, all processes that call "init" MUST call "finalize" prior to
exiting or it will be considered an "abnormal termination"
This may have caused other processes in the application to be
terminated by signals sent by mpirun (as reported here).
--------------------------------------------------------------------------
[compute-3-16.local:34814] 3 more processes have sent help message help-mpi-errors.txt / mpi_errors_are_fatal
[compute-3-16.local:34814] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ End of output ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Program ended at:    Tue Nov 18 12:50:16 CST 2014
- Time consumed:       0:0:5
- Mails delivered to:  jhpan@r710.mfm.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If I do not include [libs ( "libimmersedBoundary.so")] in controlDict. The decomposePar command will not report any warning. But the error is the same in parallel using icoIbFoam.

Sorry for a long text. Have you any idea about these problems?
Thank you.

Last edited by wyldckat; November 23, 2014 at 08:49. Reason: Added [CODE][/CODE]
hua1015 is offline   Reply With Quote

Old   November 18, 2014, 05:32
Default
  #16
Senior Member
 
Hrvoje Jasak
Join Date: Mar 2009
Location: London, England
Posts: 1,763
Rep Power: 21
hjasak will become famous soon enough
The parallel implementation of the Immersed Boundary Method with FOAM-Extend-3.1 runs fine and we have tutorials to prove it.

My guess is that you are looking at user error. Are you sure you are doing everything right? If not, all I can offer you would be under a support contract.

Alternatively, since you have access to the full source code so please have a look where you got out-of-order parallel comms. This would happen eg. if you have removed the ibm patch from one of the processors or generally messed with the decomposition.

Hrv
__________________
Hrvoje Jasak
Providing commercial FOAM/OpenFOAM and CFD Consulting: http://wikki.co.uk
hjasak is offline   Reply With Quote

Old   November 18, 2014, 10:34
Default
  #17
New Member
 
hua1015's Avatar
 
Hua
Join Date: May 2012
Posts: 25
Rep Power: 5
hua1015 is on a distinguished road
Dear Professor Jasak,
Thank you for your quick reply.
I got the codes from https://github.com/wyldckat/ImmersedBoundary and compiled in my Ubuntu 14.04 FOAM-extend 3.1.Everything worked well but failed in parallel. So I think I am doing everything right.
I do some test to find where the problem is. I use 2 processors to output messages about immersedBoundaryFvPatchField member function and (*this) field name. Below is the log file. Crash at the first time step.
Is it possible to send me a copy tutorial that you have run it fine in parallel? Maybe the cases downloaded from https://github.com/wyldckat/ImmersedBoundary have some problem. Here is my email: panjunhua13@mails.ucas.ac.cn


here is the icoIbFoam.log for tutorials_HJ/sphereInChannel case.
Code:
Build    : 3.1-f77b4801a214
Exec     : icoIbFoam -parallel
Date     : Nov 18 2014
Time     : 21:28:49
Host     : pjh-Veriton-D832
PID      : 8320
CtrlDict : /home/pjh/foam/foam-extend-3.1/etc/controlDict
Case     : /home/pjh/foam/ImmersedBoundary/tutorials_HJ/sphereInChannel
nProcs   : 2
Slaves : 
1
(
pjh-Veriton-D832.8321
)

Pstream initialized with:
    floatTransfer     : 0
    nProcsSimpleSum   : 0
    commsType         : blocking
SigFpe   : Enabling floating point exception trapping (FOAM_SIGFPE).

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Create mesh for time = 0

Reading transportProperties

Reading field p

Reading field U

Reading/calculating face flux field phi

Create immersed boundary cell mask
Create immersed boundary face mask
Found immersed boundary patch 0 named ibSphere
[1] Number of IB cells: 0
External flow
[0] Number of IB cells: 200

Starting time loop

Time = 0.05

Courant Number mean: 0 max: 0.8 velocity magnitude: 1
[0] updateCoeffs() imposeDirichletCondition()U
[0] imposeDirichletCondition()U
[1] updateCoeffs() imposeDirichletCondition()U
[1] imposeDirichletCondition()U
[1] imposeDeadCondition()U
[0] imposeDeadCondition()U
[0] evaluate()grad(interpolate(U.component(0)))
[0] updateCoeffs() imposeNeumannCondition()grad(interpolate(U.component(0)))
[0] imposeNeumannCondition()grad(interpolate(U.component(0)))
[1] evaluate()grad(interpolate(U.component(0)))
[1] updateCoeffs() imposeNeumannCondition()grad(interpolate(U.component(0)))
[1] imposeNeumannCondition()grad(interpolate(U.component(0)))
[pjh-Veriton-D832:8321] *** An error occurred in MPI_Recv
[pjh-Veriton-D832:8321] *** on communicator MPI_COMM_WORLD
[pjh-Veriton-D832:8321] *** MPI_ERR_TRUNCATE: message truncated
[pjh-Veriton-D832:8321] *** MPI_ERRORS_ARE_FATAL: your MPI job will now abort
--------------------------------------------------------------------------
mpirun has exited due to process rank 1 with PID 8321 on
node pjh-Veriton-D832 exiting improperly. There are two reasons this could occur:

1. this process did not call "init" before exiting, but others in
the job did. This can cause a job to hang indefinitely while it waits
for all processes to call "init". By rule, if one process calls "init",
then ALL processes must call "init" prior to termination.

2. this process called "init", but exited without calling "finalize".
By rule, all processes that call "init" MUST call "finalize" prior to
exiting or it will be considered an "abnormal termination"

This may have caused other processes in the application to be
terminated by signals sent by mpirun (as reported here).
--------------------------------------------------------------------------
[pjh-Veriton-D832:08319] 1 more process has sent help message help-mpi-errors.txt / mpi_errors_are_fatal
[pjh-Veriton-D832:08319] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages

Last edited by wyldckat; November 23, 2014 at 08:50. Reason: Added [CODE][/CODE]
hua1015 is offline   Reply With Quote

Old   November 18, 2014, 11:19
Default
  #18
Senior Member
 
Pablo Higuera
Join Date: Jan 2011
Location: London, UK
Posts: 242
Rep Power: 7
Phicau is on a distinguished road
Hi Hua,

this error rings a bell to me:

Code:
[pjh-Veriton-D832:8321] *** An error occurred in MPI_Recv
[pjh-Veriton-D832:8321] *** on communicator MPI_COMM_WORLD
[pjh-Veriton-D832:8321] *** MPI_ERR_TRUNCATE: message truncated
[pjh-Veriton-D832:8321] *** MPI_ERRORS_ARE_FATAL: your MPI job will now abort
It was also triggered by a parallel boundary condition I developed. The solution was found thanks to Bernhard:

Edit $WM_PROJECT_DIR/etc/controlDict and change commsType to nonBlocking .

You should try and see if this helps with your problem.

Best,

Pablo
hua1015 likes this.
Phicau is offline   Reply With Quote

Old   November 20, 2014, 03:49
Default
  #19
New Member
 
hua1015's Avatar
 
Hua
Join Date: May 2012
Posts: 25
Rep Power: 5
hua1015 is on a distinguished road
Dear Higuera,
Thank you for your help.
Your method is work for me!!! But I still have some questions.
1. There 3 types about commsType : blocking; scheduled ; nonBlocking. What is the difference between them?
2. some codes like below are included in my codes
// Parallel data exchange
{
IPstream fromProc
(
Pstream::blocking,
procI,
sizeof(label)
);

fromProc >> sizes[procI];
}

we can see " Pstream::blocking". Is it conflicting when change commsType to nonBlocking?

BTW, similar problem can be solved by changing commsType to nonBlocking(or blocking) for other parallel problems. (I did some search on cfdonline)
hua1015 is offline   Reply With Quote

Old   January 26, 2015, 01:37
Default foam-extend-3.2
  #20
New Member
 
Krishna
Join Date: Aug 2014
Posts: 5
Rep Power: 3
singhfme is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Has foam-extend-3.2 been released?
singhfme is offline   Reply With Quote

Reply

Tags
immersed boundary method, openfoam-1.6-ext, openfoam-3.1-ext

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
implementation of the Immersed Boundary Method mi_cfd Main CFD Forum 14 June 1, 2015 22:59
Wind turbine simulation Saturn CFX 34 October 16, 2014 05:27
who has the paper about immersed boundary method in openfoam blueshit OpenFOAM 1 November 18, 2013 08:16
Fluent immersed boundary method ufocfd FLUENT 1 November 12, 2012 09:52
Trimmed cell and embedded refinement mesh conversion issues michele OpenFOAM Other Meshers: ICEM, Star, Ansys, Pointwise, GridPro, Ansa, ... 2 July 15, 2005 04:15


All times are GMT -4. The time now is 09:56.