|July 12, 2011, 06:45||
Reversed Time Marching Method (RTMM)
Join Date: Apr 2011
Posts: 6Rep Power: 7
Hey guys !
I'm trying to solve a time reversed scalar transport equation thanks to the Reversed Time Marching Method (RTMM), which implies that the solution of the scalar transport equation on the flow field is mathematically obtained with time integration in the negative direction. The purpose is to "go back in time" in order to find the source of a pollutant, for instance.
My goal is to solve it for a steady-state case.
Fortunately, there is a way to solve it with a time integration in the positive direction : the diffusion field is obtained from a virtual flow field with negative convection and diffusion; that is, from the virtual flow field with reversed flow direction and negative diffusion (coefficient).
To do so, first I solve the steady-state flow field (not reversed), then I reverse it, and finally I create a UDS in Fluent and specify a negative diffusion (via DEFINE_DIFFUSIVITY). So this way, I got a reversed flow direction and a negative diffusion for my UDS.
Since the diffusivity coefficient is negative, it can lead to cells with a negative concentration which leads to unstabilities when solving. To avoid it, I define a UDF (DEFINE_ADJUST) which find the minimum positive value of the concentration within the solution domain and applies it to cell which have a negative concentration.
I've tried upwind and power law discretization models (haven't found something else in Fluent which is a first or second order method), but nothing happens. The concentration stays at 0 within the domain during 2 or 3 iterations, then there is an error and I get residuals with letters like #QNBe+00 (which, if remember well my courses of programming, means that an operation on a double or float has gone wrong, like for instance a division by zero or an attempt to get the square root of a negative number.
Anyway I don't see why an error like this occur. I hope you guys can help me on this one ! (for the first one who find a solution: beers on me ^^)
Thanks in advance
P.S: for those of you who want to know more about RTMM : http://www.jstage.jst.go.jp/article/jaabe/8/1/275/_pdf
Last edited by paillou; July 12, 2011 at 10:04.
|Thread||Thread Starter||Forum||Replies||Last Post|
|Floating point exception error||Alan||OpenFOAM Running, Solving & CFD||10||April 6, 2012 14:02|
|How can Implicit Time Marching algorithms NOT be Time Accurate?!||f_sizer||Main CFD Forum||9||August 19, 2010 10:14|
|directMapped problem||panda60||OpenFOAM Bugs||4||July 8, 2010 10:23|
|The method of Checking the CPU time||JunYoung Park||Main CFD Forum||2||April 19, 1999 15:34|
|unsteady calcs in FLUENT||Sanjay Padhiar||Main CFD Forum||1||March 31, 1999 12:32|