CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Post-Processing

LES filtering in post-processing.

Register Blogs Community New Posts Updated Threads Search

Like Tree2Likes
  • 2 Post By rr3245

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   January 28, 2020, 10:15
Default LES filtering in post-processing.
  #1
New Member
 
anonymous
Join Date: Nov 2016
Posts: 29
Rep Power: 10
rr3245 is on a distinguished road
Dear all,

Before calculating the Q field for snapshots in time (vortex identification), I would like to first filter the velocity field on some length scale. I was beginning to think this would be possible by taking the Q post-processing function, and adding an 'LES type' filter operation in before the gradU is calculated. For example, in myQ.C:


Code:
        const volVectorField& U = lookupObject<volVectorField>(fieldName_);
        const tmp<volVectorField> filtU(filter_(U));
        const tmp<volTensorField> tgradU(fvc::grad(flitU));
        const volTensorField& gradU = tgradU();

        return store
        (
            resultName_,
            0.5*(sqr(tr(gradU)) - tr(((gradU) & (gradU))))
        );
where filtU is my new, filtered field. I have managed to compile a new Q field in OF version 4.1, but I have no idea how to first filter the velocity field. I have tried to pick apart the code from different LES SGS models, but this hasn't been successful at all. Any help greatly appreciated.
john_alm and H.Tofighian like this.
rr3245 is offline   Reply With Quote

Old   February 20, 2020, 06:06
Default
  #2
Senior Member
 
Andrea
Join Date: Feb 2012
Location: Leeds, UK
Posts: 179
Rep Power: 16
Andrea1984 is on a distinguished road
What is the filter_(U) doing in const tmp<volVectorField> filtU(filter_(U)) and where is it defined?

I am not sure what you are trying to do makes sense, especially in the context of implicit LES used in OpenFOAM. The filtering operation in implicit LES is not performed explicitly, but rather given by the numerical grid and discretization procedure following the FVM, with a filter width equal to your mesh size.

Andrea
Andrea1984 is offline   Reply With Quote

Old   February 20, 2020, 12:59
Default
  #3
HPE
Senior Member
 
HPE's Avatar
 
Herpes Free Engineer
Join Date: Sep 2019
Location: The Home Under The Ground with the Lost Boys
Posts: 931
Rep Power: 13
HPE is on a distinguished road
Could you please which file you refer to for `filter_(U)`?
HPE is offline   Reply With Quote

Old   March 16, 2020, 21:08
Default
  #4
New Member
 
Hesam Tofighian
Join Date: Mar 2019
Posts: 11
Rep Power: 7
H.Tofighian is on a distinguished road
I think you'd better use "proper orthogonal decomposition" and remove high frequency modes.
H.Tofighian is offline   Reply With Quote

Old   June 11, 2020, 11:46
Default
  #5
New Member
 
John Alamas
Join Date: Sep 2016
Posts: 2
Rep Power: 0
john_alm is on a distinguished road
Quote:
Originally Posted by rr3245 View Post
Dear all,

Before calculating the Q field for snapshots in time (vortex identification), I would like to first filter the velocity field on some length scale. I was beginning to think this would be possible by taking the Q post-processing function, and adding an 'LES type' filter operation in before the gradU is calculated. For example, in myQ.C:


Code:
        const volVectorField& U = lookupObject<volVectorField>(fieldName_);
        const tmp<volVectorField> filtU(filter_(U));
        const tmp<volTensorField> tgradU(fvc::grad(flitU));
        const volTensorField& gradU = tgradU();

        return store
        (
            resultName_,
            0.5*(sqr(tr(gradU)) - tr(((gradU) & (gradU))))
        );
where filtU is my new, filtered field. I have managed to compile a new Q field in OF version 4.1, but I have no idea how to first filter the velocity field. I have tried to pick apart the code from different LES SGS models, but this hasn't been successful at all. Any help greatly appreciated.
Hello rr3245 and others,

It would be nice to call filter_(U), e.g. from a coded function object. If anyone knows how to access this object, that would be a great help.
john_alm is offline   Reply With Quote

Reply


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


Similar Threads
Thread Thread Starter Forum Replies Last Post
Utilities: post average turbulence fields and create turbulence fields for LES Hanzo OpenFOAM Running, Solving & CFD 10 August 18, 2017 19:33
Explicit filtering in LES TJ Main CFD Forum 85 November 30, 2016 06:22
Automated post processing using CFD Post shreyasr ANSYS 0 January 28, 2013 07:21
LES post processing moun FLUENT 0 April 23, 2005 11:30
post processing in CFD MANISH BHARGAVA Main CFD Forum 0 October 17, 1998 21:51


All times are GMT -4. The time now is 18:13.