|
[Sponsors] |
July 7, 2011, 11:20 |
dynLagrangian SGS model
|
#1 |
New Member
Tom
Join Date: Mar 2011
Posts: 11
Rep Power: 15 |
I am trying to set up a LES model using the pisoFoam solver and the dynLagrangian SGS model that is included in the latest release of OpenFOAM 2.0.0.
I am struggling to set up the model as I am unsure what the dimensions of the flm and fmm fields should be? Has anyone managed to get this model to run? thanks Tom |
|
July 8, 2011, 15:19 |
|
#2 |
Senior Member
Bernhard
Join Date: Sep 2009
Location: Delft
Posts: 790
Rep Power: 22 |
Did you check the reference that is given in the .H source file?
Otherwise you can get it out of the equations, since flm and fmm should have the same dimension, and they are used in the expression for the timescale. |
|
July 12, 2011, 06:29 |
Sorted
|
#3 |
New Member
Tom
Join Date: Mar 2011
Posts: 11
Rep Power: 15 |
Hi, thanks for your response.
I resorted to going through the reference given in the source code and worked the dimensions out from the equations for flm and fmm. Both have the same units of m^4 s^-4. The model now works. Tom |
|
August 9, 2011, 02:51 |
|
#4 | |
New Member
prasanth
Join Date: Jul 2010
Location: Chennai, India
Posts: 17
Rep Power: 0 |
Quote:
I am also in need of this new Sgs model. What should I Need to do for flm and fmm fields, In the source code, It is mentioned like these two are relaxtion equations for soloving the nuSgs. Could you please telll me how you manage to run this Sgs model? |
||
August 11, 2011, 07:46 |
|
#5 |
New Member
Tom
Join Date: Mar 2011
Posts: 11
Rep Power: 15 |
Include files in the '0' directory of flm and fmm fileds, in the same way there are files for 'U' and 'p'. Set the dimensions of these fields as per my previous post.
The model should now run. Refer to 'A lagrangian dynamic subgrid-scale model of turbulence' by Charles Meneveau 1996 for more details about the model. hope this helps, Tom |
|
August 11, 2011, 15:44 |
|
#6 |
New Member
prasanth
Join Date: Jul 2010
Location: Chennai, India
Posts: 17
Rep Power: 0 |
Hello Tom,
I added the flm and fmm files as per your suggestion. I am getting print stack errors. Did you also facing this issue. I am giving those errors over here: /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.0.1 | | \\ / A nd | Web: www.OpenFOAM.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ Build : 2.0.1 Exec : pisoFoam Date : Aug 12 2011 Time : 00:05:01 Host : ubuntu PID : 4732 Case : /media/CFDSOFT/CFD/CFD_Projects/openFoam/OF-2.0/LES nProcs : 1 sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster allowSystemOperations : Disallowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create mesh for time = 0 Reading field p Reading field U Reading/calculating face flux field phi Selecting incompressible transport model Newtonian Selecting turbulence model type LESModel Selecting LES turbulence model dynLagrangian #0 Foam::error:rintStack(Foam::Ostream&) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::sigFpe::sigHandler(int) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 in "/lib/libc.so.6" #3 Foam::divide(Foam::Field<double>&, Foam::UList<double> const&, Foam::UList<double> const&) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #4 void Foam::divide<Foam::fvPatchField, Foam::volMesh>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libincompressibleRASModels.so" #5 Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam:perator/<Foam::fvPatchField, Foam::volMesh>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libincompressibleRASModels.so" #6 Foam::incompressible::LESModels::dynLagrangian::up dateSubGridScaleFields(Foam::tmp<Foam::GeometricFi eld<Foam::Tensor<double>, Foam::fvPatchField, Foam::volMesh> > const&) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so" #7 Foam::incompressible::LESModels::dynLagrangian::dy nLagrangian(Foam::GeometricField<Foam::Vector<doub le>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&, Foam::word const&) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so" #8 Foam::incompressible::LESModel::adddictionaryConst ructorToTable<Foam::incompressible::LESModels::dyn Lagrangian>::New(Foam::GeometricField<Foam::Vector <double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so" #9 Foam::incompressible::LESModel::New(Foam::Geometri cField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so" #10 Foam::incompressible::turbulenceModel::addturbulen ceModelConstructorToTable<Foam::incompressible::LE SModel>::NewturbulenceModel(Foam::GeometricField<F oam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so" #11 Foam::incompressible::turbulenceModel::New(Foam::G eometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libincompressibleTurbulenceModel.so" #12 in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/bin/pisoFoam" #13 __libc_start_main in "/lib/libc.so.6" #14 in "/home/prasanth/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/bin/pisoFoam" I have given the units like m^4/s^4 for both the files. and I am using simple filter for the dynLagrangianCoeffs. Could you please give some idea about working on this. In mean while, I am also looking in to that paper which you have send. |
|
August 12, 2011, 04:54 |
|
#7 |
New Member
Tom
Join Date: Mar 2011
Posts: 11
Rep Power: 15 |
I do not know what is causing your errors. I am a relatively novice user so it is beyond me. below are my files I used for flm and fmm. I don't think fmm can be zero, as the calculation for turbulent viscosity divides by fmm, I set this to a value of 1. flm can be zero as it is the nominator.
Have you added flm and fmm in the fvSolution and fvSchemes? lines I added are below. fvSolution: flm { solver PBiCG; preconditioner DILU; tolerance 1e-05; relTol 0; } fmm { solver PBiCG; preconditioner DILU; tolerance 1e-05; relTol 0; } fvSchemes: divSchemes { default none; div(phi,U) Gauss linear; div(phi,flm) Gauss limitedLinear 1; div(phi,fmm) Gauss limitedLinear 1; div(phi,B) Gauss limitedLinear 1; div(B) Gauss linear; div((nuEff*dev(T(grad(U))))) Gauss linear; } and I added: dynLagrangianCoeffs { filter simple; ce 1.048; theta 1.5; } in the LESProperties dictionary. flm: /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.0.0 | | \\ / A nd | Web: www.OpenFOAM.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; object flm; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 4 -4 0 0 0 0]; internalField uniform 0; boundaryField { inlet { type fixedValue; value uniform 0; } outlet { type zeroGradient; } outside { type fixedValue; value uniform 0; } object { type fixedValue; value uniform 0; } wedge1 { type wedge; } wedge2 { type wedge; } } // ************************************************** *********************** // fmm: /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.0.0 | | \\ / A nd | Web: www.OpenFOAM.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; object fmm; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 4 -4 0 0 0 0]; internalField uniform 1; boundaryField { inlet { type fixedValue; value uniform 1; } outlet { type zeroGradient; } outside { type zeroGradient; } object { type zeroGradient; } wedge1 { type wedge; } wedge2 { type wedge; } } // ************************************************** *********************** // |
|
August 12, 2011, 15:38 |
|
#8 | |
New Member
prasanth
Join Date: Jul 2010
Location: Chennai, India
Posts: 17
Rep Power: 0 |
Quote:
Hello Tom, Thank you very much. Now I can able to run the lagrangian Sgs model. Regards Prasanth. |
||
November 21, 2012, 06:44 |
|
#9 |
Senior Member
Albrecht vBoetticher
Join Date: Aug 2010
Location: Zürich, Swizerland
Posts: 240
Rep Power: 17 |
Since the SGS model constant ce is defined as ce² = flm/fmm you just kill the model konstant when setting flm to zero, so I expect your results to be the same if you run it without SGS model at all. I would suggest to give flm a very small value, such that the average for flm written at the end the first timestep is close to 1. Dependent on your grid resolution, flm will become quite large in the following calculations. I use
div(phi,U) Gauss LUST unlimitedGrad(U); which is suitable for LES in complex geometries and smoothSolver for flm, and I apply relaxation to flm and fmm. Since the authors of the SGS model themselves point out that the dynamic Mixed Scale Similarity model has some better representation than the Smagorinsky model, (aswell a finding of the LTT Rostock that led to their dynamicMixedModel SGS implementation for OpenFOAM), I am looking forward to the day someone implements the first Lagrangian Dynamic Mixed Model in OF. I have to admit that Eugene is right: (http://www.cfd-online.com/Forums/ope...tml#post195652) the local dynamic SGS models are still somehow unpredictable due to the lack of validation. Never-the-less one needs backscatter to account for the influence of the free surface on turbulence, for all who use interFoam with LES, and the dynamic models together with clipping can allow this. |
|
January 10, 2013, 06:22 |
|
#10 |
Senior Member
Albrecht vBoetticher
Join Date: Aug 2010
Location: Zürich, Swizerland
Posts: 240
Rep Power: 17 |
The Lagrangian Dynamic Mixed Model is implemented for OF 2.1.x by LEMOS extensions for OpenFOAM, however it is not in the git repository as annaunced here: http://www.lemos.uni-rostock.de/cfd-software/
with the dynLagrangian model, I think about implementing a limitation for fmm, in my simulations it grows larger and larger in some regions which is ok for me since it just makes the subgrid scale viscosity vanish, but I think it causes numerical problems when going towarts infinity. Actually there is a mistake in the Detailed Description in the programmer's C++ documentation, the equation for fmm should be "= (1/T) * (M && M - fmm)" instead of "= (1/T) * ( M && M - flm)" due to Meneveaus Eq. (3.9). Anyone has experience with theta different from 1.5 yet? |
|
May 2, 2013, 08:41 |
|
#11 | |
New Member
Stephan Uhkoetter
Join Date: Jun 2011
Posts: 1
Rep Power: 0 |
Quote:
By the way, Meneveau recommends a 'first-order expression in time, coupled with linear spatial interpolation to find the values required at the 'upstream' locations'. |
||
May 2, 2013, 09:28 |
|
#12 |
Senior Member
Lieven
Join Date: Dec 2011
Location: Leuven, Belgium
Posts: 299
Rep Power: 23 |
The computation of fmm and flm is correct fine, at least the equations are. There is however a bug in the computation of nuSgs in the dynLagrangian model of OF-2.1.x (and earlier). This has been corrected in 2.2.x (http://www.openfoam.org/mantisbt/view.php?id=816). It is pretty easy to correct it yourself.
And I fully agree with Stephan, the implementation of OF is not really what Meneveau does in his papers... Cheers, L |
|
July 8, 2013, 21:07 |
problem in using dynLagrangian model
|
#13 |
New Member
Ashvin Chaudhari
Join Date: Aug 2011
Location: Finland
Posts: 23
Rep Power: 15 |
Hello,
Can someone comment on my results of open channel flow simulation obtained using Dynamic Lagrangian and One equation eddy SGS models? The solution looks OK when using one eq. model but for the same grid and numerical set-up the solution changes a lot when using the dynamic Lagrangian model. What causes this difference in solutions? The results are attached here. Thanks in advance. - Ashvin |
|
July 13, 2013, 09:56 |
|
#14 |
New Member
Ashvin Chaudhari
Join Date: Aug 2011
Location: Finland
Posts: 23
Rep Power: 15 |
Can any one please comment on the above issue? I appreciate your help !
- Ashvin |
|
July 22, 2013, 06:02 |
|
#15 |
Senior Member
Albrecht vBoetticher
Join Date: Aug 2010
Location: Zürich, Swizerland
Posts: 240
Rep Power: 17 |
could you post your fvSolution and dynLagrangianCoeffs ?
|
|
July 22, 2013, 06:55 |
|
#16 |
New Member
Ashvin Chaudhari
Join Date: Aug 2011
Location: Finland
Posts: 23
Rep Power: 15 |
Thank you for your reply. The answers are below:
Code:
dynLagrangianCoeffs { filter simple; ce 1.048; theta 1.5; } Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.1.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { p { solver PCG; preconditioner { preconditioner GAMG; tolerance 1e-05; relTol 0.005; smoother DICGaussSeidel; nPreSweeps 0; nPostSweeps 2; nBottomSweeps 2; cacheAgglomeration true; nCellsInCoarsestLevel 100; agglomerator faceAreaPair; mergeLevels 1; } tolerance 1e-06; relTol 0; } s { solver PCG; preconditioner DIC; tolerance 1e-06; relTol 0; } U { solver PBiCG; preconditioner DILU; tolerance 1e-05; relTol 0; } k { solver PBiCG; preconditioner DILU; tolerance 1e-08; relTol 0; } flm { solver smoothSolver; smoother DILUGaussSeidel; preconditioner DILU; tolerance 1e-06; relTol 0; } fmm { solver smoothSolver; smoother DILUGaussSeidel; preconditioner DILU; tolerance 1e-06; relTol 0; } } PISO { nCorrectors 2; nNonOrthogonalCorrectors 0; pRefCell 0; pRefValue 0.0; } // ************************************************************************* // Ashvin |
|
July 22, 2013, 11:15 |
|
#17 |
Senior Member
Albrecht vBoetticher
Join Date: Aug 2010
Location: Zürich, Swizerland
Posts: 240
Rep Power: 17 |
... looks O.K. for a general testcase for me. I use solver precisions 10e-8 and courant number 0.25, but this should not make the difference. Do you apply vanDriest damping? And what are your initial values for flm, fmm?
|
|
July 22, 2013, 11:43 |
|
#18 |
New Member
Ashvin Chaudhari
Join Date: Aug 2011
Location: Finland
Posts: 23
Rep Power: 15 |
Hi,
I also used maxCo=0.25 in almost all the simulations. I don't use vanDriest damping function. Do we need in this kind of SGS model ? The initial and boundary conditions for flm and fmm are as follows: The flm file in 0 dir is: Code:
dimensions [0 4 -4 0 0 0 0]; internalField uniform 0.1; boundaryField { down { type zeroGradient; } top { type zeroGradient; } in { type cyclic; } out { type cyclic; } side1 { type cyclic; } side2 { type cyclic; } } Code:
dimensions [0 4 -4 0 0 0 0]; internalField uniform 0.1; boundaryField { down { type zeroGradient; } top { type zeroGradient; } in { type cyclic; } out { type cyclic; } side1 { type cyclic; } side2 { type cyclic; } } Ashvin |
|
July 24, 2013, 06:29 |
|
#19 |
Senior Member
Albrecht vBoetticher
Join Date: Aug 2010
Location: Zürich, Swizerland
Posts: 240
Rep Power: 17 |
For me your settings look all right, but I used the Lagrangian DMM only a little. Since the biggest "error" is developing close to the wall, I guess the difference in wallFunctions between your two simulation plays a role.
|
|
April 3, 2014, 04:32 |
|
#20 |
Member
Join Date: Feb 2014
Posts: 57
Rep Power: 12 |
Hi,
I want to use dynLagrangian, too. Just one question: Which value should we set for flm and fmm at WALL in 0/? Regards, vut |
|
Tags |
dynlagrangian, les, sgs |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
multiphaseInterFoam for RAS turbulence model | chiven | OpenFOAM Bugs | 8 | December 6, 2017 03:08 |
Wrong calculation of nut in the kOmegaSST turbulence model | FelixL | OpenFOAM Bugs | 27 | March 27, 2012 10:02 |
help for different between les model (subgrid-scale model) | liuyuxuan | FLUENT | 1 | October 2, 2009 16:25 |
2 stage axial turbine model convergence issues | sherifkadry | CFX | 2 | September 7, 2009 21:51 |
multi fluid mixture model issue | rystokes | CFX | 3 | August 9, 2009 20:13 |