I just installed OpenFOAM-1.4
I just installed OpenFOAM-1.4 and tested the tutorials for icoFoam and oodles, which worked fine.
The tutorial for icoDyMFoam crashes however, see below for the error message.
The error seems to occur in the polyMesh::calcDirections function. Maybe it is the case/mesh/boundary conditions which are not set up correctly. They seem to be the same as the corresponding tutorials in versions 1.2 and 1.3, however. These tutorials work fine on my machine by the way.
checkMesh complains about skew faces, but that shouldn't cause this kind of crash.
This seems to be related to the thread by Joakim Möller about SetField.
So - what can be the problem ?
| ========= | |
| \ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \ / O peration | Version: 1.4 |
| \ / A nd | Web: http://www.openfoam.org |
| \/ M anipulation | |
Exec : icoDyMFoam .. movingCone
Date : Apr 24 2007
Time : 17:18:13
Host : matlie
PID : 3240
Root : ..
Case : movingCone
Nprocs : 1
Selecting dynamicFvMesh dynamicMotionSolverFvMesh
Selecting motion solver: componentLaplacian
#2 Uninterpreted: [0xffffe420]
#3 Foam::polyMesh::calcDirections() const
#4 Foam::polyMesh::directions() const
#5 Foam::polyMesh::nSolutionD() const
#6 Foam::polyMesh::nGeometricD() const
#7 Foam::twoDPointCorrector::twoDPointCorrector(Foam: :polyMesh const&)
#8 Foam::motionSolver::motionSolver(Foam::polyMesh const&)
#9 Foam::fvMotionSolver::fvMotionSolver(Foam::polyMes h const&)
#10 Foam::componentLaplacianFvMotionSolver::componentL aplacianFvMotionSolver(Foam::p olyMesh const&, Foam::Istream&)
#11 Foam::motionSolver::adddictionaryConstructorToTabl e<foam::componentlaplacianfvmo tionsolver>::New(Foam::polyMesh const&, Foam::Istream&)
#12 Foam::motionSolver::New(Foam::polyMesh const&)
#13 Foam::dynamicMotionSolverFvMesh::dynamicMotionSolv erFvMesh(Foam::IOobject const&)
#14 Foam::dynamicFvMesh::addIOobjectConstructorToTable <foam::dynamicmotionsolverfvme sh>::New(Foam::IOobject const&)
#15 Foam::dynamicFvMesh::New(Foam::IOobject const&)
#18 __gxx_personality_v0 at ../sysdeps/i386/elf/start.S:122
Floating exception (core dumped)
Are you running single or doub
Are you running single or double precision? If single try double.
There is a problem with calcDi
There is a problem with calcDirections for meshes in which all patches of type empty contain no faces, as is the case for this tutorial. One option is to change the patch type of the axis in the blockMeshDict file or change the logic in calcDirections in OpenFOAM-1.4/src/OpenFOAM/meshes/polyMesh/polyMesh.C by moving
from line 66 to line 70, i.e. inside the
However, even after this change this case will still not run correctly single precision because the accumulation of error causes problems with the mesh motion.
Thanks Henry for the quick res
Thanks Henry for the quick response.
1. I am running in double precision.
2. I tried to change the patch type in blockMeshDict from 'empty' to 'patch'. It still didn't work (same error message).
3. I cannot try your suggestion of changing the code since I cannot recompile libOpenFOAM.so since the compiler cannot find 'demangle.h'. I saw that other people have had this problem. I couldn't fix it. I run Ubuntu 6.10.
2. I have changed the tutorial
2. I have changed the tutorial case so that it works without my suggested change to calcDirections:
Unpack using tar xjf movingCone.tbz2
3. I do not have any experience with Ubuntu Linux so cannot advise on how to install demangle.h.
Hi Mattias! I ran the tutor
I ran the tutorial on my SuSE box without any trouble... are you running the 32 or 64-bit OF-version?
Thanks Henry, Now movingCone
Now movingCone case works.
Compared to 1.3, the execution is almost six times as fast!
Is that because of the finite volume mesh motion solver ?
Eric, I'm running the 32-bit version.
Yes the finite volume mesh mot
Yes the finite volume mesh motion solver is much faster. For me the difference was even larger on this case.
On large FSI cases using the l
On large FSI cases using the laplacian solver with quadratic inverse distance diffusivity I found the fvMotionSolver to be about two times faster then the tetDecomp version. But then again I haven't look through all the code.
Is there some useful tuning for general 3D motion with preserved BL grids? Could you give a brief explanation on the different diffusivities.
You may get significant perfor
You may get significant performance improvements on large problems by changing/tuning the solvers. The GAMG solver has a large number of parameters which if tuned carefully can give substantial benfits.
I implemented a large number of diffusivities for the fvMotionSolver but didn't have time to play with them much. It is also very easy to create new diffusivity functions for particular type of problems if the need arises. To preserve BL grids it might be useful to use a distance to the wall function to alter the diffusivity in that region. It would be very useful for all if you can play around with some of these options and let us know your findings.
I'll do my best ;-)
I'll do my best ;-)
|All times are GMT -4. The time now is 16:24.|