CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > FLUENT

Reversed Time Marching Method (RTMM)

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

Reply
 
LinkBack Thread Tools Display Modes
Old   July 12, 2011, 06:45
Default Reversed Time Marching Method (RTMM)
  #1
New Member
 
Join Date: Apr 2011
Posts: 6
Rep Power: 5
paillou is on a distinguished road
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.
paillou is offline   Reply With Quote

Reply

Thread Tools
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 On
Pingbacks are On
Refbacks are On


Similar Threads
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 11:32


All times are GMT -4. The time now is 14:31.