View Issue Details

IDProjectCategoryView StatusLast Update
0002865OpenFOAM[All Projects] Bugpublic2018-03-01 11:46
ReporterHakikiCanakkaleliAssigned Tohenry 
PrioritynormalSeverityminorReproducibilityN/A
Status closedResolutionsuspended 
PlatformGNU/LinuxOSUbuntuOS Version14.04
Product Version 
Fixed in Version 
Summary0002865: Possible problem with the size of simpleFilter
DescriptionHi,

Please consider a large eddy simulation in which dynamicLagrangian SGS model is used with the test filter simpleFilter. Then please consider the support of the first filter is 'Delta', assuming cubeRootVolDelta in use. Conventionally, the support of the test filter, simpleFilter herein, is assumed twice the first filter, i.e. '2Delta'.

Let's further assume a 3-node grid as follows:

|--o--|--o--|--o--|

where '|'s are faces, and 'o's are nodes. Let's say the nodes store the following values of an arbitrary variable: 10 (Neighbour-Left), 20 (Owner), 10 (Neighbour-Right).

Please assume all other settings are default.

The alleged problem is, IMHO, the averaging radius of the test filter, simpleFilter, seems to be different from '2Delta'.

Below shows the relevant part of the code:


Foam::tmp<Foam::volVectorField> Foam::simpleFilter::operator()
(
    const tmp<volVectorField>& unFilteredField
) const
{
    correctBoundaryConditions(unFilteredField);

    tmp<volVectorField> filteredField = fvc::surfaceSum
    (
        mesh().magSf()*fvc::interpolate(unFilteredField)
    )/fvc::surfaceSum(mesh().magSf());

    unFilteredField.clear();

    return filteredField;
}

Therein, the neighbours and owner are interpolated on the owner cell's faces. Considering our example, this results in 15 (Owner-Face-Left) and 15 (Owner-Face-Right). Then, the face values are averaged to obtain the test filter value for the owner, leading to 15.

However, IMHO, '2Delta' should result in (10+20+10)/3 = 13.3.

'2Delta' was incorporated into the dynamicLagrangian as can be seen from this, where M was correctly derived with the assumption of 2Delta:

    volSymmTensorField M
    (
        2.0*sqr(this->delta())*(filter_(magS*S) - 4.0*magSf*Sf)
    );

The alleged problem is above that filter_() operation's support is not equal to '2Delta', yet a slightly different value despite the relevant equations seem to be derived with '2Delta'.

Kind regards
TagsdynamicLagrangian

Activities

henry

2018-03-01 10:54

manager   ~0009358

It is not clear from your description what changes if any you would like made. Would you like to change or replace simpleFilter?

HakikiCanakkaleli

2018-03-01 11:04

reporter   ~0009359

My apologies for unclarity.

First, I am trying to assess whether this observation is correct. Because, if the simpleFilter is in use for the test filter, and its filter support is not equivalent to '2Delta', but slightly to a different value, this may adversely affect dynamic LES solutions.

Second, if the observation is correct, I would like to change 'simpleFilter' with a definition that I deem more appropriate.

henry

2018-03-01 11:12

manager   ~0009360

Do you have any validation cases which demonstrate a need for a change to simpleFilter? Have you tested the change your propose?

HakikiCanakkaleli

2018-03-01 11:32

reporter   ~0009362

'2Delta' was itself an arbitrary choice, yet was first proposed by Germano based on tests he conducted, and then was conventionally used/tested by the academic community. Thus, there is a handful of justifications for '2Delta' in the literature, which currently I do not present here for brevity. I believe you would agree with me on this.

The issue I tried to raise and deemed as a 'bug(?)' was the fact that, assuming my above observation was correct: although '2Delta' was used in the derivations of the relevant equations, e.g. aforementioned volSymmTensorField M, the test filter support within the same equations does not provide a filter size of '2Delta' due to its implementation, but slightly something different.

I solely wanted to draw attention to this difference.

Apart from that, I do not possess any test regarding the effects of this slight difference on a particular flow.

henry

2018-03-01 11:46

manager   ~0009363

Please reopen when you can supply a validation case which demonstrates the need for a change to simpleFilter and the form of the change with a demonstration of the benefit.

Issue History

Date Modified Username Field Change
2018-03-01 10:41 HakikiCanakkaleli New Issue
2018-03-01 10:41 HakikiCanakkaleli Tag Attached: dynamicLagrangian
2018-03-01 10:54 henry Note Added: 0009358
2018-03-01 11:04 HakikiCanakkaleli Note Added: 0009359
2018-03-01 11:12 henry Note Added: 0009360
2018-03-01 11:32 HakikiCanakkaleli Note Added: 0009362
2018-03-01 11:46 henry Assigned To => henry
2018-03-01 11:46 henry Status new => closed
2018-03-01 11:46 henry Resolution open => suspended
2018-03-01 11:46 henry Note Added: 0009363