LES filtering in FDS

640 views
Skip to first unread message

Mahfuz Sarwar

unread,
Jan 13, 2013, 11:18:33 PM1/13/13
to fds...@googlegroups.com

Hi everyone!

I would like to do some work with LES in FDS. So, I have some queries regarding large eddy simulation (LES) used in FDS. We know that FDS is working on LES in default mode. And there are two types of filtering technique (i.e. IMPLICIT and EXPLICIT) in LES. To my knowledge, FDS is implicitly filtered. Now my question is, in FDS source codes (written in FORTRAN), where or which portion in source codes this implicit filtering technique has been used or discussed? A response would be pleasure for me.

Thank you

Mahfuz

Randy McDermott

unread,
Jan 14, 2013, 8:48:12 AM1/14/13
to fds...@googlegroups.com
Yes, FDS is implicitly filtered, which is a fancy way of saying "no explicit filter", which means there is no place in the code "where this implicit filtering technique has been used".

Mahfuz Sarwar

unread,
Jan 18, 2013, 12:43:14 AM1/18/13
to fds...@googlegroups.com
Thanks Randy for your response. But your reply is quite unclear to me. 

Randy, actually I would like to have some idea about the LES filtering technique involved in FDS source code. If posssible, please let me know
what would be the best possible way to do it? FYI, I am a beginner in the field of LES.

Regards
Mahfuz 

Randy McDermott

unread,
Jan 18, 2013, 8:32:21 AM1/18/13
to fds...@googlegroups.com
Mahfuz,

My best explanation is given in the FDS 6 Tech Guide.  A link is provided below.


See sections 2.1 and 4.1.

Let me try to say this another way.  You have three basic LES approaches:

1. Explicit filtering (the LES purists' approach, means taking Delta/dx = 4 for a 2nd order scheme)
2. MILES (Monotone Integrated LES, use upwinding for the velocity to create dissipation, see papers by Oran and Boris)
3. Implicit, physics-based LES (what FDS does, use 2nd order, energy-conserving numerics for velocity without explicitly filtering any terms, then use physics-based subgrid models).

The key point about 3 is that there is no "LES filtering technique" in the code.  We just take the resolved velocity field from the numerical solution and use it as the filtered field.

Randy

Mahfuz Sarwar

unread,
Apr 21, 2013, 2:35:16 AM4/21/13
to fds...@googlegroups.com
Hi Randy!

I have gone through the MODULE TURBULENCE (FDS source code to solve turbulences) in FDS 6 beta version. To solve the turbulent viscosity term using Dynamic Smagorinsky Model (DSM) in MODULE VELO it calls a subroutine from MODULE TURBULENCE named VARDEN_DYNSMAG(NM). In the subroutine VARDEN_DYNSMAG, you have used the model parameter ALPHA=6 (according to a CTR briefs from LUND). Where, ALPHA represents square of the ratio of test filter width to grid spacing width. Now, I would like to know, is it possible to change the value of ALPHA by using command in input file of FDS. Let say, anyone would like use the value of ALPHA= 4 or 8, how this can be done?

Regards,
Mahfuz

dr_jfloyd

unread,
Apr 21, 2013, 8:54:24 AM4/21/13
to fds...@googlegroups.com
Variables defined in local context (e.g. within a subroutine) override any other value that variable might have had elsewhere.  ALPHA=6.0_EB is defined within the Varden routine, so there is no way for an execution path through another portion of the source to change that.  You would need to modify the source and recompile

Mahfuz Sarwar

unread,
Apr 21, 2013, 10:11:41 AM4/21/13
to fds...@googlegroups.com
Thanks Jason.

Mahfuz Sarwar

unread,
Apr 26, 2013, 12:48:29 PM4/26/13
to fds...@googlegroups.com
Hi all!
 
I have a question regarding the constant coefficient smagorinsky model that used in the MODUL VELO of FDS 6 beta version. I have gone the SUBROUTINE COMPUTE_VISCOSITY(T,NM) in MODULE VELO, where the turbulent viscosity MU(I,J,K) has been calculated for four different eddy viscosity models (i.e. constant smagorinsky, dynamic smagorinsky, deardorff's and vreman's model). For the calculation of MU(I,J,K) for CONSMAG and DYNSMAG in FDS 6 a common term CSD2(I,J,K) has been used, which basically represents (CS*DELTA)**2. For the DYNSMAG, the term CSD2 is calculated in SUBROUTINE VARDEN_DYNSMAG of MODULE TURB. But I am not getting the CSD2 term for the constant smagorinsky model. Can anyone please tell me that where the CSD2 term is calculated for the CONSMAG?
 
Thank you.
 
Regards
Mahfuz

dr_jfloyd

unread,
Apr 26, 2013, 12:58:45 PM4/26/13
to fds...@googlegroups.com
Have you tried searching the source for CDS2? 

If you are on a linux machine use grep (and you can download a grep utility for windows.

grep CDS2 *.f90

Mahfuz Sarwar

unread,
Apr 27, 2013, 12:25:33 PM4/27/13
to fds...@googlegroups.com
Hi Jason! Thanks for your response.

I have got the CSD2(I,J,K) term for the constant smagorinsky model in the SUBROUTINE INITIALIZE_MESH_VARIABLES(NM) of init.f90, though I am looking for answer why this CSD2 term is included in init.f90 rather than velo.f90 or in turb.f90.

dr_jfloyd

unread,
Apr 27, 2013, 2:08:15 PM4/27/13
to fds...@googlegroups.com
For constant Smagorinsky the CSD2 term is constant.  We only need to set the value the once.  So why not set it when the variable is declared and initialized rather than taking time each timestep to set the variable again and again even though its value doesn't change.

Mahfuz Sarwar

unread,
Apr 27, 2013, 11:43:34 PM4/27/13
to fds...@googlegroups.com
Thanks Jason. Now it is clear to me.
Reply all
Reply to author
Forward
0 new messages