
[Sponsors] 
June 16, 2011, 02:23 
Local time step

#1 
New Member
Join Date: Aug 2010
Location: Chennai
Posts: 27
Rep Power: 8 
I want to use local time steps to converge to steady state quickly. I have fixed the maxCo and want to calculate deltaT for each cell (local time step). My Openfoam rho (for e.g.) equation reads :
rho = rho  runTime.deltaT()*fvc::div(phi); ...... I checked setDelta.H, compressibleCourantNo.H which tells runTime.deltaT() as a scalar. But I want a runtime.deltaT() as volScalarField which has delta time defined for each cell. Can anyone help me in this regard 

June 16, 2011, 11:10 

#2 
Senior Member
David Gaden
Join Date: Apr 2009
Location: Winnipeg, Canada
Posts: 436
Rep Power: 14 
The runTime scalar is used in the fvc and fvm namespaces in the discretization process. If you want to have any of these functions work with the local time, then you are looking at a complex problem. If, on the other hand, you just want to store a "local time" field that you use independently, that would be much easier. How do you plan to use the local time?


June 16, 2011, 14:16 

#3 
New Member
Join Date: Aug 2010
Location: Chennai
Posts: 27
Rep Power: 8 
" If, on the other hand, you just want to store a "local time" field that you use independently, that would be much easier"
Exactly the second one. A false time field just to update rho,rhoU and rhoE For e.g. rho = rho  runTime.deltaT()*fvc::div(phi) rhoU = rhoU  ... rhoE = rhoE  ... runTime.deltaT() is very local (or which only plays around setDelta.H, readTimecontrols.H and compressibleCourantNumber.H) and nothing to do with ddt schemes I specify. (whatever ddtscheme in the fvSchemesDict) & Hopefully, I didn't confuse you Thanks, hari 

June 16, 2011, 14:43 

#4 
Senior Member
Sandeep Menon
Join Date: Mar 2009
Location: Amherst, MA
Posts: 387
Rep Power: 16 
Take a look at the SLTSDdtScheme in $(FOAM_SRC)/finiteVolume/ddtSchemes/SLTSDdtScheme


June 17, 2011, 04:02 

#5 
Senior Member
Anton Kidess
Join Date: May 2009
Location: Delft, Netherlands
Posts: 1,152
Rep Power: 20 
Also, the just released new version of OpenFoam uses a local time step for their new VOF solver:
http://www.openfoam.com/version2.0.0/steadyvof.php You might want to have a look at that. 

July 6, 2011, 09:37 

#6 
New Member
Join Date: Aug 2010
Location: Chennai
Posts: 27
Rep Power: 8 
Dear all,
( Please check the previous posts in this thread to have an idea) I have slightly modified the inviscid solver rhoCentralFoam in order to improve the acceleration to steady state using local time step without touching any other part (e.g. reconstruct().  flux calculations). And it seems working for my case. If anyone have a word/doubt in my modification please post it. //////////Local time step  false time step forAll (mesh.C(),i) { cell faces = mesh.cells()[i]; denom = 0.0; forAll (faces,j) { denom = denom + ( (U[i] & mesh.Sf()[j]) + c[i]*mesh.magSf()[j] ); } falseTime[i] = maxCo * mesh.V()[i] / denom; } //////// Conservation equations //  Solve density rho = rho  falseTime*fvc::div(phi); //  Solve momentum rhoU = rhoU  falseTime*fvc::div(phiUp); //  Solve energy rhoE = rhoE  falseTime*fvc::div(phiEp); 

January 9, 2012, 14:49 

#7 
Member
Eric M. Tridas
Join Date: May 2011
Location: Tampa, Florida
Posts: 48
Rep Power: 7 
Has anyone else done this? I'm really interested in speeding up my rhoCentralFoam simulations but am having some trouble implementing it. I'd really appreciate the help anyone else can give!
Thanks, Eric 

March 25, 2012, 11:19 

#8 
Senior Member
ehsan
Join Date: Mar 2009
Posts: 106
Rep Power: 9 
Dear all
I need a reference which describes by more details the new localtime stepping (LTS) approach applied in VOF in openfoam. Thanks 

October 7, 2012, 12:23 

#9  
Senior Member
mahdi abdollahzadeh
Join Date: Mar 2011
Location: Covilha,Portugal
Posts: 150
Rep Power: 7 
Quote:
Dear Friend There is one question: the falsetime that you are calculating is the local deltaT. so its changing from cell to cell. so its almost the same as the local euler or coeuler scheme in openfoam? secondly this scheme is not giving unsteady result. just the final result could be correct? How can u access the simulationtime? how you will control writting the variables according the controldict writecontrol ( considering that u have local time ) Best Mahdi 

September 27, 2015, 12:24 

#10 
New Member
Pravin Kadu
Join Date: Jun 2015
Posts: 3
Rep Power: 3 
Dear friend,
Can you please provide the 'local time stepping' related theory. Because I am not getting that how the cells will have different time steps, since they would be interdependent? Thanks. 

Thread Tools  
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Forces in OF15  richard  OpenFOAM Running, Solving & CFD  167  June 18, 2016 06:04 
Time step size and max iterations per time step  pUl  FLUENT  31  August 21, 2015 04:46 
Superlinear speedup in OpenFOAM 13  msrinath80  OpenFOAM Running, Solving & CFD  18  March 3, 2015 06:36 
Convergence moving mesh  lr103476  OpenFOAM Running, Solving & CFD  30  November 19, 2007 15:09 
Transient simulation not converging  skabilan  OpenFOAM Running, Solving & CFD  12  September 17, 2007 17:48 