CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Programming & Development (https://www.cfd-online.com/Forums/openfoam-programming-development/)
-   -   Deep modification of turbulence model (https://www.cfd-online.com/Forums/openfoam-programming-development/99495-deep-modification-turbulence-model.html)

Phicau April 4, 2012 12:49

Deep modification of turbulence model
 
Hi all,

I am currently working in porous media flow with free surface using a customized interFoam (OF2.1.0). So far the model has proven to be stable, but it runs for laminar turbulence model. Now I have to modify kEpsilon to add the closure terms needed. In order to do so I have to make kEpsilon to accept another field (porosity) at the time of creation, but that is kind of a secondary question for now.

As a first step I am trying to eliminate the unwanted functions e.g. R(), as I will only be using the model for myInterFoam. I changed the name of the model to kEpsilonPor and it compiles flawlessly. Then I removed all the references to R() in kEpsilonPor.H and kEpsilonPor.C and it did not compile.

To proceed I changed "files" and "options" from Make folder:
files
Code:

kEpsilonPor.C

LIB = $(FOAM_USER_LIBBIN)/libPorousRASModels

options
Code:

EXE_INC = \
    -I$(LIB_SRC)/finiteVolume/lnInclude \
    -I$(LIB_SRC)/meshTools/lnInclude

LIB_LIBS = \
    -lincompressibleTurbulenceModel \
    -lfiniteVolume \
    -lmeshTools

and copied several files to the folder, in order to modify them: RASModel.C, RASModel.H, transportModel.C, transportModel.H, turbulenceModel.C, turbulenceModel.H, backwardsCompatibilityWallFunctions.C, backwardsCompatibilityWallFunctions.H and backwardsCompatibilityWallFunctionsTemplates.C.

Everything compiles well, getting rid of the mentioned references to R() in RASModel.C, RASModel.H and turbulenceModel.H.

The problem is that when I run any case using the new turbulence model I keep getting:

Code:

kEpsilonPorCoeffs
{
    Cmu            0.09;
    C1              1.44;
    C2              1.92;
    sigmaEps        1.3;
}

time step after time step, not only the first one, as expected.

Any hints on what could be happening and how to fix it?

Thanks

Pablo

Phicau April 9, 2012 05:57

Kind of solved:

http://www.cfd-online.com/Forums/ope...-buoyancy.html

Peter Müller January 29, 2013 10:18

Hi everybody

In the createFields of my solver I create a pointer on an RASModel named turbulence (same as for example in the createFields of simpleFoam). My problem is that I would like to access the name of the turbulence model. I'm using OF2.1.x. In other versions this was possible with turbulence->typeModel() but this is no more available.
Do you have any suggestions?

Thanks in advance


All times are GMT -4. The time now is 10:25.