|
[Sponsors] |
August 4, 2010, 11:34 |
Problem using GGI
|
#1 | |
New Member
Bernd Stöver
Join Date: Mar 2009
Posts: 16
Rep Power: 17 |
Hello dearest community,
well, i'm trying to run the old well know problem of a rotating cylinder in a static (closed) domain. After looking at different options for this problem i tried to use the ggi of version 1.5-dev. However the simulation does not run, but stops with a floating point exception. The output is: Quote:
. The output suggests, it could be something with the turbulence model (k-omega SST). However if i turn it off in the RASproperties, there is no change. Here are the main setup files: boundary: Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 1.5-dev | | \\ / A nd | Web: http://www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class polyBoundaryMesh; location "constant/polyMesh"; object boundary; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 5 ( CYLINDER { type ggi; nFaces 2166; startFace 211296; shadowPatch CYLINDER2; bridegOverlap false; zone CYLINDER_ZONE; } GEOM { type wall; nFaces 7143; startFace 213462; } INFLOW { type patch; nFaces 399; startFace 220605; } OUTFLOW { type patch; nFaces 5208; startFace 221004; } CYLINDER2 { type ggi; nFaces 2166; startFace 226212; shadowPatch CYLINDER; bridgeOverlap false; zone CYLINDER2_ZONE; } ) Code:
dynamicFvMesh mixerGgiFvMesh; dynamicFvMeshLib "libtopoChangerFvMesh.so"; mixerGgiFvMeshCoeffs { coordinateSystem { type cylindrical; origin (0 0 0); axis (1 0 0); direction (0 0 1); } rpm 40; slider { moving CYLINDER; static CYLINDER2; } Code:
#include "fixedInlet" OUTFLOW { type inletOutlet; inletValue $internalField; value $internalField; } GEOM { type fixedValue; value uniform (0 0 0); } INFLOW { type fixedValue; value uniform (10 0 0); } CYLINDER2 { type ggi; } CYLINDER { type ggi; } Code:
internalField uniform $pressure; boundaryField { INFLOW { type zeroGradient; } OUTFLOW { type fixedValue; value $internalField; } GEOM { type zeroGradient; } CYLINDER2 { type ggi; } CYLINDER { type ggi; } Bernhard |
||
August 4, 2010, 22:05 |
|
#2 |
Member
Masashi Ohbuchi
Join Date: Oct 2009
Posts: 74
Rep Power: 17 |
Hello, Bernd !
Did you check non-rotating case ? If you could run the case by turbFoam, setting for GGI might be OK and the problem would be setting for dynamicMesh. |
|
August 4, 2010, 23:56 |
|
#3 |
Senior Member
Martin Beaudoin
Join Date: Mar 2009
Posts: 332
Rep Power: 22 |
Hello,
Not enough information. Please specify the Svn revision number of your local 1.5-dev source code working copy. Please enable the FOAM_ABORT env. variable so we can see the stack trace dump when your error occurs. Martin |
|
August 5, 2010, 10:56 |
Not all information
|
#4 |
New Member
Bernd Stöver
Join Date: Mar 2009
Posts: 16
Rep Power: 17 |
Hi,
thanx for the response. Sad but true, i used an old version without subversion. So do not have a subversion number (Sorry). The file has a date however: OpenFOAM-1.5-dev.General_2009-01-20.tgz Setting FOAM_ABORT i get: Code:
Selecting RAS turbulence model kOmegaSST #0 Foam::error::printStack(Foam::Ostream&) in "/home/bstoeve/OpenFOAM/OpenFOAM-1.5-dev/lib/linux64GccDPOpt/libOpenFOAM.so" #1 Foam::sigFpe::sigFpeHandler(int) in "/home/bstoeve/OpenFOAM/OpenFOAM-1.5-dev/lib/linux64GccDPOpt/libOpenFOAM.so" #2 ?? in "/lib/libc.so.6" #3 Foam::divide(Foam::Field<double>&, Foam::UList<double> const&, Foam::UList<double> const&) in "/home/bstoeve/OpenFOAM/OpenFOAM-1.5-dev/lib/linux64GccDPOpt/libOpenFOAM.so" #4 void Foam::divide<Foam::fvPatchField, Foam::volMesh>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) in "/home/bstoeve/OpenFOAM/OpenFOAM-1.5-dev/lib/linux64GccDPOpt/libincompressibleRASModels.so" #5 Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::operator/<Foam::fvPatchField, Foam::volMesh>(Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > const&, Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > const&) in "/home/bstoeve/OpenFOAM/OpenFOAM-1.5-dev/lib/linux64GccDPOpt/libincompressibleRASModels.so" #6 Foam::incompressible::RASModels::kOmegaSST::F2() const in "/home/bstoeve/OpenFOAM/OpenFOAM-1.5-dev/lib/linux64GccDPOpt/libincompressibleRASModels.so" #7 Foam::incompressible::RASModels::kOmegaSST::kOmegaSST(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&) in "/home/bstoeve/OpenFOAM/OpenFOAM-1.5-dev/lib/linux64GccDPOpt/libincompressibleRASModels.so" #8 Foam::incompressible::RASModel::adddictionaryConstructorToTable<Foam::incompressible::RASModels::kOmegaSST>::New(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&) in "/home/bstoeve/OpenFOAM/OpenFOAM-1.5-dev/lib/linux64GccDPOpt/libincompressibleRASModels.so" #9 Foam::incompressible::RASModel::New(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&) in "/home/bstoeve/OpenFOAM/OpenFOAM-1.5-dev/lib/linux64GccDPOpt/libincompressibleRASModels.so" #10 main in "/home/bstoeve/OpenFOAM/OpenFOAM-1.5-dev/applications/bin/linux64GccDPOpt/turbDyMFoam" #11 __libc_start_main in "/lib/libc.so.6" #12 _start at /build/buildd/eglibc-2.10.1/csu/../sysdeps/x86_64/elf/start.S:116 Floating point exception Bernhard |
|
August 5, 2010, 11:01 |
Further
|
#5 |
New Member
Bernd Stöver
Join Date: Mar 2009
Posts: 16
Rep Power: 17 |
Now looking at the output i posted, i found that, even if i set the turbulence in RASproperties to off, the k-omega SST was chosen.
So i set it now to laminar. This did make a change - however this still doesn't work. I get: Unknown GAMGInterface type ggi. Valid GAMGInterface types are : 2 ( cyclic processor ) Obviously i do have to change the schemes as well. However i will need the turbulence model ... |
|
August 5, 2010, 11:44 |
|
#6 |
New Member
Bernd Stöver
Join Date: Mar 2009
Posts: 16
Rep Power: 17 |
O.k.! Using PCG instead of GAMG as solver works (laminar). So only the problem using the k-omega SST remains ...
|
|
August 5, 2010, 11:50 |
And the conditions are ..
|
#7 |
New Member
Bernd Stöver
Join Date: Mar 2009
Posts: 16
Rep Power: 17 |
Yes, as this is the case - here are the initial conditions for the turbulence:
Code:
boundaryField { OUTFLOW { type inletOutlet; inletValue $internalField; value $internalField; } GEOM { type zeroGradient; } INFLOW { type fixedValue; value $internalField; } CYLINDER2 { type ggi; } CYLINDER { type ggi; } } turbulentKE 0.24; turbulentOmega 1.78; Bernhard |
|
August 6, 2010, 11:25 |
|
#8 | |
Senior Member
Martin Beaudoin
Join Date: Mar 2009
Posts: 332
Rep Power: 22 |
1: your version of OF-1.5-dev is too old. Many bug fixes have been contributed since then, including improvements to the GGI interfaces.
2: From your stack trace information, we can see that your case is crashing because of a division by zero in the method KOmegaSST::F2() when evaluating a patch field. Go check the list of fields being used for division in that method, and check your boundary fields dictionnary definitions or your kOmegaSST parameters. Martin Quote:
|
||
August 23, 2010, 04:40 |
This solved it so far
|
#9 |
New Member
Bernd Stöver
Join Date: Mar 2009
Posts: 16
Rep Power: 17 |
Hi,
well, downloading the new version did not solve the problem directly - but the error messages were a lot better! Thus i could resolve this problem (got new ones, but new problem should get new threads). Thanx Bernd |
|
August 30, 2010, 04:24 |
|
#10 |
Senior Member
Karl-Johan Nogenmyr
Join Date: Mar 2009
Location: Linköping
Posts: 279
Rep Power: 21 |
Hi Bernd,
Is it possible you share your solution? I am experiencing a similar problem using 1.5-dev from August 19. I try to run a simulation of a two-stroke engine, but the simulation can only start if I select laminar as turbulence 'model'. All other RANS models I tried fails with the same output: Code:
Reading field U Reading/calculating face flux field phi Creating turbulence model Selecting RAS turbulence model kEpsilon Floating point exception Regards, Kalle |
|
August 30, 2010, 04:41 |
Solution
|
#11 |
New Member
Bernd Stöver
Join Date: Mar 2009
Posts: 16
Rep Power: 17 |
Hi Kalle,
well, the solution was rather simple: First there was a spelling error in the boundary file. Afterwards there was another similar error. So it was really simple. The point was to set FOAM_ABORT (for detailed error messages) and use a new version. Due to the new version i actually got the error output that told me what's wrong. So always try to use new versions! I'm now at subversion number 1816 and 1817 |
|
August 30, 2010, 08:12 |
|
#12 |
Senior Member
Karl-Johan Nogenmyr
Join Date: Mar 2009
Location: Linköping
Posts: 279
Rep Power: 21 |
Hi,
Thanks for your reply! The only thing I could find out from the full error message was that there was a floating point exception as the kEpsilon object was created (if I understood it right). Since all fields seemed reasonable, including p and T, I did the classical way: Start with something that works and add things until the error appears. It turned out to be that viscosity was set to zero in the thermophysicalProperties. Having that fixed, it works fine! One should be careful to be too quick when setting up test cases by copying files from various tutorials Regards, Kalle |
|
October 29, 2010, 14:36 |
ggi problem
|
#13 |
New Member
Bastian Schnepf
Join Date: Oct 2010
Posts: 2
Rep Power: 0 |
Hello everybody!
I try to get the mixerGgi tutorial working but I get the following error message: /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 1.5-dev | | \\ / A nd | Revision: exported | | \\/ M anipulation | Web: http://www.OpenFOAM.org | \*---------------------------------------------------------------------------*/ Exec : icoDyMFoam Date : Oct 29 2010 Time : 19:16:13 Host : linux-3zx0.site PID : 18771 Case : /home/bschnepf/OpenFOAM/OpenFOAM-1.5-dev/tutorials/icoDyMFoam/mixerGgi nProcs : 1 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create dynamic mesh for time = 0 Selecting dynamicFvMesh mixerGgiFvMesh void mixerGgiFvMesh::addZonesAndModifiers() : Zones and modifiers already present. Skipping. Mixer mesh: origin: (0 0 0) axis : (1.51863e-314 2.122e-314 -6.22849e-49) rpm : 60 Reading transportProperties Reading field p Reading field U Reading/calculating face flux field phi Initializing the GGI interpolator between master/shadow patches: insideSlider/outsideSlider Evaluation of GGI weighting factors: From function void GGIInterpolation<MasterPatch, SlavePatch>::rescaleWeightingFactors() const in file /home/bschnepf/OpenFOAM/OpenFOAM-1.5-dev/src/OpenFOAM/lnInclude/GGIInterpolationWeights.C at line 534 Uncovered faces found. On master: 8 on slave: 20 Largest slave weighting factor correction : 1 average: 0.362385 Largest master weighting factor correction: 0.903086 average: 0.103186 Reading field rAU if present Starting time loop Volume: new = 0.0147948 old = 0.0147948 change = 0 ratio = 0 Courant Number mean: 0 max: -0 velocity magnitude: 0 deltaT = 0.006 --> FOAM Warning : From function dlLibraryTable:pen(const dictionary& dict, const word& libsEntry, const TablePtr tablePtr) in file lnInclude/dlLibraryTableTemplates.C at line 68 library "libsampling.so" did not introduce any new entries Creating ggi check Time = 0.006 Initializing the GGI interpolator between master/shadow patches: insideSlider/outsideSlider Evaluation of GGI weighting factors: plane normal has got zero length From function plane:lane(const point&, const vector&) in file meshes/primitiveShapes/plane/plane.C at line 148. FOAM aborting Abgebrochen I guess the error is a consequence of the bad definition of the axis: Mixer mesh:Hopefully you are able to help me on this one, thank you! (I downloaded my release of OpenFOAM 1.5-dev from the svn platform on October 27, 2010) Bastian |
|
October 30, 2010, 08:34 |
addition
|
#14 |
New Member
Bastian Schnepf
Join Date: Oct 2010
Posts: 2
Rep Power: 0 |
I realized that there is something wrong with blockMesh, too, since it is not able to create the arc edges of the mesh.
I compiled OpenFOAM 1.5-dev again because I thought the errors were a result of an incorrect compiling process, but the problem stays the same. The system compiler was used (gcc4.5.0) and the OS is OpenSUSE 11.3. Thanks in advance! I attached the log of Allwmake: |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Incoherent problem table in hollow-fiber spinning | Gianni | FLUENT | 0 | April 5, 2008 11:33 |
Adiabatic and Rotating wall (Convection problem) | ParodDav | CFX | 5 | April 29, 2007 20:13 |
problem with GGI interfaces | strider | CFX | 6 | May 29, 2006 15:20 |
GGI interface problem (CFX-5.7.1) | Jesper | CFX | 3 | May 14, 2005 19:06 |
Is this problem well posed? | Thomas P. Abraham | Main CFD Forum | 5 | September 8, 1999 15:52 |