View Issue Details

IDProjectCategoryView StatusLast Update
0003307OpenFOAMBugpublic2019-07-26 11:45
Reporterliet Assigned Tohenry  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionsuspended 
PlatformGNU/LinuxOSUbuntuOS Version16.04
Summary0003307: Only SimpleFilter can be used for dynamicKEqn model
DescriptionAs described in dynamicKEqn.H,
"There are no default model coefficients but the filter used for KK must be supplied, e.g.
  dynamicKEqnCoeffs
{
  filter simple;
 }
"
I used the simple filter in the beginning, and it worked well. However, when I changed the filter into the laplace one, it crashed with an erro report as fellow,
"#0 Foam::error::printStack(Foam::Ostream&) at ??:?
#1 Foam::sigFpe::sigHandler(int) at ??:?
#2 ? in "/lib/x86_64-linux-gnu/libc.so.6"
#3 Foam::sqrt(Foam::Field<double>&, Foam::UList<double> const&) at ??:?
#4 Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::sqrt<Foam::fvPatchField, Foam::volMesh>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) at ??:?
#5 Foam::LESModels::dynamicKEqn<Foam::IncompressibleTurbulenceModel<Foam::transportModel> >::Ck(Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) const at ??:?
#6 Foam::LESModels::dynamicKEqn<Foam::IncompressibleTurbulenceModel<Foam::transportModel> >::correctNut(Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) at ??:?
#7 Foam::LESModels::dynamicKEqn<Foam::IncompressibleTurbulenceModel<Foam::transportModel> >::correctNut() at ??:?
#8 ? at ??:?
#9 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
#10 ? at ??:?
Floating point exception (core dumped)
"
Does it mean that the dynamicKEqn is designed only for the simple filter? Or it is just a bug needed to be fixed?
Steps To ReproduceUse pitzDaily in the LES tutorial case, and replace the default dynmaicKEqnCoeffs with the fellowing code which is written under the instruction of laplaceFilter code,
" dynamicKEqnCoeffs
    {
        filter laplace;
    widthCoeff 6;
    }
"
TagsNo tags attached.

Activities

henry

2019-07-15 08:11

manager   ~0010559

I ran the pitzDaily LES case dynamicKEqn with

    dynamicKEqnCoeffs
    {
        filter laplace;
        widthCoeff 24;
    }

in OpenFOAM-7 and OpenFOAM-dev without problem. The laplace filter has not changed between OpenFOAM-6 and OpenFOAM-7 but the dynamicKEqn has been improved.

liet

2019-07-15 11:32

reporter   ~0010562

Thank you for your quick reply!
I have installed OpenFOAM-7, and implemented your method that worked well. But as the reference in dynamicKEqn.H described, the filter we have to set is the test filter,which means that widthCoeff should be 6, not 24. So I try it, and it crashed again with following code.
"#0 Foam::error::printStack(Foam::Ostream&) at ??:?
#1 Foam::sigFpe::sigHandler(int) at ??:?
#2 ? in "/lib/x86_64-linux-gnu/libc.so.6"
#3 Foam::GaussSeidelSmoother::smooth(Foam::word const&, Foam::Field<double>&, Foam::lduMatrix const&, Foam::Field<double> const&, Foam::FieldField<Foam::Field, double> const&, Foam::UPtrList<Foam::lduInterfaceField const> const&, unsigned char, int) at ??:?
#4 Foam::GaussSeidelSmoother::smooth(Foam::Field<double>&, Foam::Field<double> const&, unsigned char, int) const at ??:?
#5 Foam::smoothSolver::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const at ??:?
#6 Foam::fvMatrix<double>::solveSegregated(Foam::dictionary const&) at ??:?
#7 Foam::fvMatrix<double>::solve(Foam::dictionary const&) at ??:?
#8 Foam::fvMatrix<double>::solve() at ??:?
#9 Foam::SolverPerformance<double> Foam::solve<double>(Foam::tmp<Foam::fvMatrix<double> > const&) at ??:?
#10 Foam::LESModels::dynamicKEqn<Foam::IncompressibleTurbulenceModel<Foam::transportModel> >::correct() at ??:?
#11 ? at ??:?
#12 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
#13 ? at ??:?
Floating point exception (core dumped)
"

henry

2019-07-15 12:46

manager   ~0010563

Correct, that 2D case does not run with dynamicKEqn and a laplace filter with a coefficient of 6. Maybe the issue is that the case is 2D and the dynamic SGS models are not correct for 2D turbulence. Maybe the issue is with dynamic models being rather "noisy" which introduces instability. Either way this is a research topic and not a bug in the current implementation.

liet

2019-07-16 03:55

reporter   ~0010568

I have tried a 3D case by laplace filter with widthCoeff 6, which simulated the flow over a cylinder at Re =2e4 and ran well with simple filter.No surprise, it also crashed with the same report. It seems that if you use the laplace fliter as the test filter, the procedure will calculate a extremely high k (SGS kinetic), causing a a extremely high U responded and the crash finally.
As a consequence, I'm sure it is a bug, and not the problem of 2D. If you need my case, I can email it to you for I used the fluentMeshToFoam which is larger than the size of upload files.

henry

2019-07-16 07:22

manager   ~0010569

Have you studied the the laplaceFilter implementation to diagnose the problem? It is not clear to me that there is an error in the implementation, if you find the problem can you provide a patch for us to test?

liet

2019-07-17 02:58

reporter   ~0010589

I'm looking into this problem and attempt to solve it, but don't expect me a lot.
In my opinion that two things I doubt result in the crash, firstly, the laplaceFilter itself is implemented in a wrong way. Secondly, all things are right, which means both the filter and model are innocent, but they can't be used together. If it is the first situation, we just need to fix the filter. If not, it is really a topic to research.
As a result to investigate this bug deeply, can you provide me with the paper or some information about simpleFilter(I know how it works, but can't understand why), which does me a lot of favor to determine the interaction between the filter and the model.

henry

2019-07-17 12:10

manager   ~0010597

Fureby, C., Tabor, G., Weller, H. G., & Gosman, A. D. (1997). A comparative study of subgrid scale models in homogeneous isotropic turbulence. Physics of fluids, 9(5), 1416-1429.
Fureby, C., Tabor, G., Weller, H. G., & Gosman, A. D. (2000). Large eddy simulations of the flow around a square prism. AIAA journal, 38(3), 442-452.
Fureby, C., Gosman, A. D., Tabor, G., Weller, H. G., Sandham, N., & Wolfshtein, M. (1997). Large eddy simulation of turbulent channel flows. Turbulent shear flows, 11, 28-13.

henry

2019-07-26 11:45

manager   ~0010652

Pending feedback

Issue History

Date Modified Username Field Change
2019-07-15 05:43 liet New Issue
2019-07-15 08:11 henry Note Added: 0010559
2019-07-15 11:32 liet Note Added: 0010562
2019-07-15 12:46 henry Note Added: 0010563
2019-07-16 03:55 liet Note Added: 0010568
2019-07-16 07:22 henry Note Added: 0010569
2019-07-17 02:58 liet Note Added: 0010589
2019-07-17 12:10 henry Note Added: 0010597
2019-07-26 11:45 henry Assigned To => henry
2019-07-26 11:45 henry Status new => closed
2019-07-26 11:45 henry Resolution open => suspended
2019-07-26 11:45 henry Note Added: 0010652