CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Running, Solving & CFD

Anyone using IDDES

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

Reply
 
LinkBack Thread Tools Display Modes
Old   June 1, 2010, 04:01
Default Anyone using IDDES
  #1
Member
 
Markus Weinmann
Join Date: Mar 2009
Location: Stuttgart, Germany
Posts: 77
Rep Power: 8
cfdmarkus is on a distinguished road
Hi all,

I was wondering whether anyone is using IDDES using the IDDESdelta in LESProperties. I have applied IDDES to two different cases and the results were not exactly what I would expect them to be (compared to the case in the original paper). So I started digging into the code in order to check the implementation.

In line 77 in src/turbulenceModels/.../SpalartAllmarasIDDES/IDDESdelta/IDDESDelta.C, I found something which does not make sense in my opinion.

The variable deltamax= 2*deltamaxTemp is currently defined as a scalar which is obtained as the maximum cell dimension that appears in the whole domain.

To my understanding deltamax should be a FIELD variable (deltamax=hmax = max(dx,dy,dz)) and should be put inside of the loop over all the cells in the domain.

What do you guys think?

Markus
cfdmarkus is offline   Reply With Quote

Old   June 1, 2010, 12:16
Exclamation ... yes, we are ... and massivley so ... and ... I am shocked...
  #2
Member
 
djbungee's Avatar
 
Ulf Bunge
Join Date: Mar 2009
Location: Wolfsburg, Germany
Posts: 34
Rep Power: 8
djbungee is on a distinguished road
Hi Markus,

thanks for the hint!!!

deltamax is the maximum grid cell edge length in the orignal formulation for delta for IDDES and it is used in

Code:
{
        delta_.internalField() =
            deltaCoeff_
           *min
            (
                max(max(cw_*wallDist(mesh()).y(), cw_*deltamax), hwn),
                deltamax
            );
    }
to limit delta and ensure that it does not supercede deltamax. And yes, I do also feel that it is not implemented correctly, it should be a local, i.e., cell-dependent value, not a global maximum. Therefore, I am a little shocked about not having seen it. Of course, for regular grids used for calibration, such as decay of isotropic turbulence, it does not play any role. But it might explain some effects we have observed.

What do others think!?

However, do not forget, that the hybrid numerics which is an important ingredient for a DES is not implemented. This might also explain that you do not achieve the results you want to achieve!? We will present this additional implementation with some results in Gothenburg, however, the results have to be checked carefully, now, and a possible influence of this mistake will have to be evaluated.

Best regards, Ulf.

Last edited by djbungee; June 1, 2010 at 14:13. Reason: forgot remark about hybrid scheme, corrected a typo
djbungee is offline   Reply With Quote

Old   June 1, 2010, 12:38
Default Delta in IDDES
  #3
New Member
 
Charles Mockett
Join Date: Dec 2009
Location: Berlin, Germany
Posts: 9
Rep Power: 7
charlie is on a distinguished road
Dear Markus and Ulf,

I can confirm that the h_max in the IDDES Delta formula should be a local measure of the maximum cell length, not the global maximum. I also agree that this won't be a problem for decaying, isotropic turbulence on a uniform mesh. It also won't be a problem when running a channel flow on the usual kind of structured grid. For anything real however, it will usually be a big problem.

Thanks very much for bringing this to our attention!

It would be very good to plot the value of Delta in the field, then you can be sure what is happening and also sure that your remedy is effective.

Out of interest, what cases have you been running to test the IDDES in OF? I'd be very interested in seeing some results if you wish to share them.

Best regards,

Charlie.
charlie is offline   Reply With Quote

Old   June 1, 2010, 14:49
Default code adjustement available
  #4
Member
 
djbungee's Avatar
 
Ulf Bunge
Join Date: Mar 2009
Location: Wolfsburg, Germany
Posts: 34
Rep Power: 8
djbungee is on a distinguished road
Hi Markus,

do you already have an adjustment of the code for IDDESDelta that you can provide to this forum? My last post of code adjustment for solving unsteady flows with arbitrarily large time steps is some weeks ago - so it might be my turn again . However, at the moment other topics are pressing much more, so it might take some days. Nonetheless, I would like to update our running computations as soon as possible....

Best regards, Ulf.
djbungee is offline   Reply With Quote

Old   June 2, 2010, 04:12
Default
  #5
Member
 
Markus Weinmann
Join Date: Mar 2009
Location: Stuttgart, Germany
Posts: 77
Rep Power: 8
cfdmarkus is on a distinguished road
Hi

I am glad to hear that at least some people agree with me.
I have submitted a bug report about this issue a long time ago but no one was interrested in fixing that bug at that time.

Ulf: You have mentioned that you have also observed some unexpected behviour of IDDES. I would be very interested to hear more details about that.

Charles: I was using IDDES for a channel flow and a tandem cylinder configuration.


Best regards,
Markus
cfdmarkus is offline   Reply With Quote

Old   June 9, 2010, 03:25
Default Our observations
  #6
Member
 
djbungee's Avatar
 
Ulf Bunge
Join Date: Mar 2009
Location: Wolfsburg, Germany
Posts: 34
Rep Power: 8
djbungee is on a distinguished road
Hi Markus,

what we computed so far is, decay of isotropic turbulence, inviscid isotropic turbulence, and a NACA-profile wake flow for high angle of attack. Based on several comparisons that Charlie has made he found the behavior of our IDDES too diffusive for the wake flow. This, however, was only one of the observations, so we have to perform more computations, especially for a very long time to have statistically significant data. The dissipative behavior can be explained by the wrong delta, but this has to be evaluated in detail.

Best regards, Ulf.
djbungee is offline   Reply With Quote

Old   June 30, 2010, 02:35
Default
  #7
Member
 
Fabian Peng Karrholm
Join Date: Mar 2009
Posts: 61
Rep Power: 8
fabianpk is on a distinguished road
Here is a small modification in IDDESDelta.C that changes deltamax into a field instead of a scalar. I would be happy to hear from anyone who tries it.
Attached Files
File Type: c IDDESDelta.C (4.5 KB, 67 views)
fabianpk is offline   Reply With Quote

Old   September 20, 2010, 07:08
Default anything else wrong in IDDES implementation?! hmax in SpalartAllmarasIDDES.C
  #8
Member
 
djbungee's Avatar
 
Ulf Bunge
Join Date: Mar 2009
Location: Wolfsburg, Germany
Posts: 34
Rep Power: 8
djbungee is on a distinguished road
Dear Fabian, dear all,

there are some more peculiarities in the IDDES implementation regarding the value hmax in the turbulence model itself that we are now checking in detail. In case anyone has already checked or confirmed that and found some/none/more/less mistakes, please let us know.

E.g., in SpalartAllmarasIDDES.C we find for alpha:

Code:
tmp<volScalarField> SpalartAllmarasIDDES::alpha() const
{
    return max
    (
        0.25 - y_/dimensionedScalar("hMax", dimLength, max(cmptMax(delta()))),
        scalar(-5)
    );
}
In literature, alpha is defined as 0.25 - d_w / hmax where d_w is the wall-normal distance and hmax the maximum local cell dimension. We are not sure whether the above mentioned source code gives the right value!?

Best regards, Ulf.
djbungee is offline   Reply With Quote

Old   September 22, 2010, 05:16
Default
  #9
Member
 
Markus Weinmann
Join Date: Mar 2009
Location: Stuttgart, Germany
Posts: 77
Rep Power: 8
cfdmarkus is on a distinguished road
Hi Ulf,

I have to agree with you - I don't think the present alpha() is correct.
In fact, I have checked the IDDES implemantation a while ago and I have changed alpha() such that it uses hmax (deltamax) as computed in IDDESDelta.C instead of dimLength, max(cmptMax(delta())))

Markus
cfdmarkus is offline   Reply With Quote

Old   September 22, 2010, 07:38
Default
  #10
New Member
 
Christian Graurock
Join Date: Jul 2010
Location: Berlin, Germany
Posts: 6
Rep Power: 6
chrizzl is on a distinguished road
Dear Markus,
I'm also interested in this topic. As mentioned before the h_max used in the alpha-calculation should be a local value as well?
Thanks, Christian.
chrizzl is offline   Reply With Quote

Old   September 22, 2010, 07:50
Default
  #11
Member
 
Markus Weinmann
Join Date: Mar 2009
Location: Stuttgart, Germany
Posts: 77
Rep Power: 8
cfdmarkus is on a distinguished road
yes that is correct - hmax should be a local value and not a single value for the whole domain. I am not sure whether that as already been corrected in the file IDDESDelata.C for the latest 1.7.x release.

Markus
cfdmarkus is offline   Reply With Quote

Old   November 30, 2010, 17:24
Default
  #12
New Member
 
James
Join Date: Jan 2010
Posts: 6
Rep Power: 7
tookey_1989 is on a distinguished road
Dear All,

I'm very interested to know how you have got on with IDDES in OpenFOAM since your last posts? I'm currently looking at using it for incompressible flow over the Ahmed body, and am wondering if you have come across any other problems with the current implementation?

EDIT: I've had a look at alpha() and it appears it hasn't been changed yet in the latest 1.7.x. Markus please could you tell me what changes you made to use deltamax from IDDESDelta?

Regards
James

Last edited by tookey_1989; December 2, 2010 at 14:03.
tookey_1989 is offline   Reply With Quote

Old   January 7, 2012, 17:00
Default IDDES bugs in Openfoam 201
  #13
New Member
 
Join Date: Nov 2011
Posts: 13
Rep Power: 5
0.1 watts is on a distinguished road
Dear all,
I'm using IDDES in OpenFOAM 201, but I'm not sure whether the alpha and delta bugs have been removed - I don't have enough experience with C to go by my opinion alone, so I'd be grateful for your advice.

Delta:
see attached code from OF 201

Alpha:
Lines 45-52 of SpalartAllmarasIDDES.C:

Code:
tmp<volScalarField> SpalartAllmarasIDDES::alpha() const
{
    return max
    (
        0.25 - y_/static_cast<const volScalarField&>(hmax_()),
        scalar(-5)
    );
}
Attached Files
File Type: c IDDESDelta_orig_ver201.C (4.5 KB, 17 views)
0.1 watts is offline   Reply With Quote

Old   June 29, 2012, 10:12
Default
  #14
Senior Member
 
Anne Gerdes
Join Date: Aug 2010
Location: Hamburg
Posts: 152
Rep Power: 6
Anne Lincke is on a distinguished road
Hey,

what about the bugs, are they fixed in OpenFOAM-2.1.1?

Thanks
Anne
Anne Lincke is offline   Reply With Quote

Old   July 3, 2012, 11:15
Default
  #15
Senior Member
 
Anne Gerdes
Join Date: Aug 2010
Location: Hamburg
Posts: 152
Rep Power: 6
Anne Lincke is on a distinguished road
By the way, the IDDESDelta is missing in the OpenFOAM user guide.
Here what is written inside user guide

Quote:
LES deltas :
PrandtlDelta Prandtl delta
cubeRootVolDelta Cube root of cell volume delta
maxDeltaxyz Maximum of x, y and z; for structured hex cells only
smoothDelta Smoothing of delta
and here the output of the solver
Quote:
Valid LESdelta types are :

5
(
IDDESDelta
Prandtl
cubeRootVol
smooth
vanDriest
)
It would also be appreciated if the IDDESDeltaCoeffs would be defined somewhere.
I set them with the help of literature to

{
cw 0.15;
deltaCoeff 1;

}

inside LESProperties.

Cheers
Anne
Anne Lincke 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
Problem running IDDES with pimpleFoam charlie OpenFOAM Running, Solving & CFD 7 July 11, 2013 11:45
IDDES delta cfdmarkus OpenFOAM Bugs 1 July 17, 2012 04:28


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