
[Sponsors] 
August 22, 2012, 15:23 
Model crashes while solving advection diffusion equation

#1 
New Member
Jdbaba
Join Date: Jul 2012
Posts: 5
Rep Power: 6 
Hi,
I am using excel VBA to solve the advection diffusion equation. I have used Van Leer TVD scheme to solve the advection term and I used central difference second order for the diffusion term. My model runs smoothly until I use the value of diffusion coefficient as 30 m2/s. However, when I increase the value of D beyond 30 m2/s the model shows a lot of oscillation. I don't know why the model is behaving this way. Is there any way I can control this oscillation ? Please suggest me what can I do to solve this issue. BTW, I am using explicit scheme to solve advection diffusion equation. Thanks JD 

August 22, 2012, 16:45 

#2 
Senior Member
cfdnewbie
Join Date: Mar 2010
Posts: 557
Rep Power: 12 
How do you control the timestep? Does reducing the timestep reduce the oscillations? Are you solving the linear adv diff equation?


August 22, 2012, 19:17 

#3  
Senior Member
Join Date: Aug 2011
Posts: 251
Rep Power: 8 
Quote:
First if your diffusion coefficient is not zero,TVD scheme are not essential. Anyway you have a stability condition which implies the diffusion coefficient which is: dt<(dx²)/(2D) where dt isthe time step and dx the space step. As suggested by cfdnewbie try to reduce the time step and it should be ok 

August 23, 2012, 10:40 
diffusion terms

#4 
New Member
Patrick Godon
Join Date: Apr 2010
Posts: 19
Rep Power: 9 
if the reducing the time step is not good enough or take too much cpu to progress in time, you can of course solve the diffusion term implicitly while still solving for the advective term explicitly. In most applications second order space derivatives (diffusive) terms are solved implicitly as this provides stability, while even a small time step cannot always guarantee stability especially on a very long running time.
Note that the condition on the explicit time step is to make sure that the numerical solver advances faster than the processes taking place in the flow and this has to be realized everywhere in the flow at all times. For advective terms the maximum speed of the propagation is usually taken to be sound speed (though it is really the sound speed + the flow speed), such that the integration has to be faster than that: dx/dt > Cs , which gives dt < dx/Cs [or dt < dx/ (Cs + V) ] where dx is the grid space and dt is the time step and Cs is the sound speed (and V is the flow speed). So you get some dt_adv, a restriction on the time step dt given by advection. For the diffusion term, dt is dictated by the condition given in the post of leflix above. And you get a restriction on dt dictated by the diffusion term where dt < dt_diff You have to make sure the time step is smaller than the smallest : dt < min (dt_diff, dt_adv) That's for the explicit time marching methods. 

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 
alphaEqn.H in twoPhaseEulerFoam  cheng1988sjtu  OpenFOAM Bugs  15  May 1, 2016 16:12 
Extrusion with OpenFoam problem No. Iterations 0  Lord Kelvin  OpenFOAM Running, Solving & CFD  8  March 28, 2016 11:08 
Problems with simulating TurbFOAM  barath.ezhilan  OpenFOAM  13  July 16, 2009 05:55 
IcoFoam parallel woes  msrinath80  OpenFOAM Running, Solving & CFD  9  July 22, 2007 02:58 