CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

TurbDyMFoam Tuning

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

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   March 24, 2010, 10:52
Default TurbDyMFoam Tuning
  #1
New Member
 
Mauro Parodi
Join Date: Mar 2010
Location: Torino
Posts: 4
Rep Power: 16
mparodi is on a distinguished road
Hello Everyone,

I wish to simulate a blower using a turbulent solver; I have chosen the turbDyMFoam solver provided with release 1.5-dev. I am testing it with the "Ercofact" centrifugal pump described in:

http://openfoamwiki.net/index.php/Si...vaned_diffuser

I have modified the MRFSimpleFoam example, that works great , and I have chosen the kepsilon model, but I have little experience and maybe I did not setup correctly the problem.

I keep the time step rather low (I also used automatic time stepping), and apparently the job starts correcly, but after a while the solution suddenly diverges and returns a Floating Point Exception Error .

Can anybody euggest me some hints?

Is any tutorial / example on this specific issue available?

Many thanks for your time!

My controlDict file is:

/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.5 |
| \\ / A nd | Web: http://www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

application turbDyMFoam;

startFrom startTime;

startTime 0;

stopAt endTime;

endTime 1;

deltaT .000005;

writeControl timeStep;

writeInterval 20;

purgeWrite 0;

writeFormat ascii;

writePrecision 8;

writeCompression compressed;

timeFormat general;

timePrecision 6;

runTimeModifiable no;

adjustTimeStep no;

maxCo 0.5;

maxDeltaT .01;


functions
(
trackDictionaryContent
{
type trackDictionary;
// Where to load it from (if not already in solver)
functionObjectLibs ("libsimpleFunctionObjects.so");
// Names of dictionaries to track.
dictionaryNameList
(
"system/controlDict"
"system/fvSchemes"
"system/fvSolution"
"constant/transportProperties"
"constant/RASProperties"
);
// Section separators (optional)
// If the string "_sectionIdToken_" explicitely appears in the
// specification of the following section separators, this token
// string will be replaced by the name of the dictionary beeing
// dumped to the console, plus the file modification date and time.
sectionStartSeparator "############ Start of: _sectionIdToken_############";
sectionEndSeparator "############ End of: _sectionIdToken_############";
}

ggiCheck
{
// Type of functionObject
type ggiCheck;
phi phi;
// Where to load it from (if not already in solver)
functionObjectLibs ("libsampling.so");
}
);

libs ("libOpenFoamTurbo.so");
// ************************************************** *********************** //

My fvSolution file:

/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.3 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/

FoamFile
{
version 2.0;
format ascii;
class dictionary;
object fvSolution;
}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
p PCG
{
preconditioner DIC;
tolerance 1e-05;
relTol 0.0002;
minIter 2; maxIter 500;
};
pFinal PCG
{
preconditioner DIC;
tolerance 1e-05;
relTol 0.0001;
minIter 2; maxIter 500;
};
U BiCGStab
{
preconditioner { type DILU; }
minIter 1; maxIter 5;
tolerance 1e-07;
relTol 0;
};
k BiCGStab
{
preconditioner { type DILU; }
minIter 1; maxIter 5;
tolerance 1e-07;
relTol 0;
};
epsilon BiCGStab
{
preconditioner { type DILU; }
minIter 1; maxIter 5;
tolerance 1e-07;
relTol 0;
};
}

PISO
{
nCorrectors 2;
nOuterCorrectors 5;
nNonOrthogonalCorrectors 0;
correctPhi false;
}
relaxationFactors
{
p 0.3;
U 0.75;
k 0.5;
epsilon 0.5;
}
// ************************************************** *********************** //
mparodi is offline   Reply With Quote

Old   March 25, 2010, 03:06
Default Running after restart
  #2
New Member
 
Mauro Parodi
Join Date: Mar 2010
Location: Torino
Posts: 4
Rep Power: 16
mparodi is on a distinguished road
Hi,

After a few restarts from the latest sensible solution the job looks to be running fine now .

I think that the solver is rather sensitive to the initial conditions and I believe that its is worthwhile wotking in this direction.

I guess that starting with a ramp instead of an abrupt rotational speed mught help also.

Cheers,

Mauro.
mparodi is offline   Reply With Quote

Old   August 4, 2010, 09:07
Default
  #3
Member
 
Nick Gardiner
Join Date: Apr 2009
Location: Chichester, UK
Posts: 94
Rep Power: 16
NickG is on a distinguished road
I use turbDyMfoam a lot and my solvers are BiCGStab for p/pcorr/pFinal and PBiCG for the rest. I tried a few including GAMG but these seemed the fastest. 85% of each time step is spent calculating the pEqn for my cases.

I see that you've set the relTol to 0 in some cases. I've left mine at 0.01 for all except pFinal (set to 0) as I figured that I don't need to converge to the final tolerance until the final loop (pFinal). I don't know if that's right but it made sense to me.

Regarding tolerance: with my case (vertical axis turbine) it's the pressure that is the most important and so I have that set at 1e-8 at the moment although I relax it to 5e-8 or 1e-7 on slower machines.

With my case relaxation made no difference to the time taken so I commented it all out.

Currently I'm checking the effect of the outer loop (nOuterCorrectors) but I'm surprised that you have no nNonOrthogonalCorrectors.

I've also found that initial conditions are important.

If you search transientSimpleDyMFoam this is also being used for similar cases.
NickG is offline   Reply With Quote

Reply

Tags
fpe, turbdymfoam

Thread Tools Search this Thread
Search this Thread:

Advanced Search
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 Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
TurbDyMFoam Application jdkummer OpenFOAM Installation 2 November 24, 2011 09:14
Rotor-stator computation with Ggi interface (turbDyMFoam) Stylianos OpenFOAM Running, Solving & CFD 28 January 12, 2011 21:37
turbDyMFoam settings MichiB OpenFOAM Running, Solving & CFD 2 August 4, 2010 09:14
update turbDyMFoam antonio_ing OpenFOAM Installation 12 June 2, 2010 09:16
turbDyMFoam and LES g.akbari OpenFOAM Running, Solving & CFD 2 February 20, 2010 03:33


All times are GMT -4. The time now is 12:35.