CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (http://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Code for EARSM by Hellsten and RSM by Manceau, square duct, 2d turbulent channel (http://www.cfd-online.com/Forums/openfoam-solving/120969-code-earsm-hellsten-rsm-manceau-square-duct-2d-turbulent-channel.html)

Thomas Baumann July 18, 2013 07:39

Code for EARSM by Hellsten and RSM by Manceau, square duct, 2d turbulent channel
 
5 Attachment(s)
Hi everybody,

under the link

http://www.istm.kit.edu/english/83.php


you can download some codes and tutorials of turbulence models I implemented in OpenFOAM for different versions. They are implemented for incompressible flow (simpleFoam, pisoFoam,...). I validated them at serveral cases (2d channel, square duct, annular pipe flow, rod bundles).

OpenFOAM 1.7.0
Code: nonlinear algebraic stress model ( EARSM ) by Hellsten and two validationcases: channel flow and square duct. Good agreement of the velocity profile at the 2d channel. The uv Reynolds stress is good (even for a annular pipe flow). (uu, vv, ww) are too low.
Pic: Attachment 23602

OpenFOAM 2.1.0
Code: Reynolds stress model ( RSM ) by Manceau and the same two validation cases. Good agreement of velocity profiles, Reynolds stresses and secondary flows (see the pics)

PICS:
RSM: Reynolds stress profiles of a 2d channel
Attachment 23599

RSM: Square Duct
Attachment 23598
Attachment 23600
Attachment 23601



Post-Processing yplus: To check the y+ values: post-processing tool to calculate them using low Reynolds models.

Good luck ;)

Thomas

alexander_s October 16, 2013 20:04

Hello Thomas,

thank you very much for providing your files!

I am interested in your square duct simulation using the Reynolds-stress model you implemented. Unfortunately, the link to the case setup (OF211_RSM_Manceau_quadchannel) doesn't work correctly (it's linked to the EARSM case). I wonder if you could fix it or upload your case folder here, since I have some problems with setting the right boundary conditions / fvSchemes.

Thank you in advance!
Alex

Thomas Baumann October 23, 2013 11:43

Hi,

I have uploaded it now.

Try following link:

https://dl.dropboxusercontent.com/u/...channel.tar.gz

Regards Thomas

alexander_s October 29, 2013 21:15

Hello Thomas,

thank you very much for your reply. Could you also upload the 3D case of a square duct (OF211_RSM_Manceau_quadchannel) or do you use the same boundary conditions and fvSchemes as for the 2D channel?

Furthermore, I have some questions concerning the 2D case you've just uploaded.
What kind of boundary condition do you use for epsilon? Do you calculate the values for epsilon a priori and impose them as fixedValue?
Is the initialization of the flow field important?
If I get it right, there is no need for any lowReWallfunctions when using your code?

Best wishes,
Alex

Thomas Baumann October 29, 2013 23:10

Hi,

here is the correct link for the quad-channel.

https://dl.dropboxusercontent.com/u/...channel.tar.gz

It is a low Reynolds-number model with a elliptic factor, no damping functions are necessary... epsilon is calculated by a correction-function within the code. Its put to fixed value, but every time step the boundary values are updated.

I made pre-simulations with the Launder-Sharma-model and used the results as starting conditions, because of the model is very sensitive.
Of course, you have to correct the boundary conditions.

You must read the papers of Manceau to understand the code. (an improved version ....)

Best regards,

Thomas

alexander_s October 31, 2013 12:52

Hi Thomas,

thank you once again. You helped me a lot!

Alex

bmikuz February 17, 2014 04:34

Hi Thomas,

I've tried your quadchannel case and it works fine if I run it on a single core. Since I'd like to test it also on a bigger case I'll need to run it in parallel. The problem is that the case cannot be decomposed and it returns me the following error:

HTML Code:

/*---------------------------------------------------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.1.1                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
Build  : 2.1.1-221db2718bbb
Exec  : decomposePar
Date  : Feb 17 2014
Time  : 09:29:22
Host  : "krn"
PID    : 31017
Case  : /home/r4/mikuz/MATIS-H/MATiS-bmk/steady/Mine_Fine_mesh/Baumann/quadchannel_paral
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

--> FOAM Warning :
    From function dlOpen(const fileName&, const bool)
    in file POSIX.C at line 1175
    dlopen error : /home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so: undefined symbol: _ZN4Foam14incompressible8RASModel11printCoeffsEv
--> FOAM Warning :
    From function dlLibraryTable::open(const fileName&, const bool)
    in file db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C at line 96
    could not load "/home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so"
Create mesh

Calculating distribution of cells
Selecting decompositionMethod simple

Finished decomposition in 0.29 s

Calculating original mesh data

Distributing cells to processors

Distributing faces to processors

Distributing points to processors

Constructing processor meshes
--> FOAM Warning :
    From function dlOpen(const fileName&, const bool)
    in file POSIX.C at line 1175
    dlopen error : /home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so: undefined symbol: _ZN4Foam14incompressible8RASModel11printCoeffsEv
--> FOAM Warning :
    From function dlLibraryTable::open(const fileName&, const bool)
    in file db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C at line 96
    could not load "/home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so"

Processor 0
    Number of cells = 63000
    Number of faces shared with processor 1 = 3718
    Number of processor patches = 1
    Number of processor faces = 3718
    Number of boundary faces = 7800
--> FOAM Warning :
    From function dlOpen(const fileName&, const bool)
    in file POSIX.C at line 1175
    dlopen error : /home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so: undefined symbol: _ZN4Foam14incompressible8RASModel11printCoeffsEv
--> FOAM Warning :
    From function dlLibraryTable::open(const fileName&, const bool)
    in file db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C at line 96
    could not load "/home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so"

Processor 1
    Number of cells = 63000
    Number of faces shared with processor 0 = 3718
    Number of faces shared with processor 2 = 3600
    Number of processor patches = 2
    Number of processor faces = 7318
    Number of boundary faces = 4200
--> FOAM Warning :
    From function dlOpen(const fileName&, const bool)
    in file POSIX.C at line 1175
    dlopen error : /home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so: undefined symbol: _ZN4Foam14incompressible8RASModel11printCoeffsEv
--> FOAM Warning :
    From function dlLibraryTable::open(const fileName&, const bool)
    in file db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C at line 96
    could not load "/home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so"

Processor 2
    Number of cells = 63000
    Number of faces shared with processor 1 = 3600
    Number of faces shared with processor 3 = 3718
    Number of processor patches = 2
    Number of processor faces = 7318
    Number of boundary faces = 4200
--> FOAM Warning :
    From function dlOpen(const fileName&, const bool)
    in file POSIX.C at line 1175
    dlopen error : /home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so: undefined symbol: _ZN4Foam14incompressible8RASModel11printCoeffsEv
--> FOAM Warning :
    From function dlLibraryTable::open(const fileName&, const bool)
    in file db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C at line 96
    could not load "/home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so"

Processor 3
    Number of cells = 63000
    Number of faces shared with processor 2 = 3718
    Number of processor patches = 1
    Number of processor faces = 3718
    Number of boundary faces = 7800

Number of processor faces = 11036
Max number of cells = 63000 (0% above average 63000)
Max number of processor patches = 2 (33.3333% above average 1.5)
Max number of faces between processors = 7318 (32.6205% above average 5518)

Time = 0

Processor 0: field transfer
--> FOAM Warning :
    From function dlOpen(const fileName&, const bool)
    in file POSIX.C at line 1175
    dlopen error : /home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so: undefined symbol: _ZN4Foam14incompressible8RASModel11printCoeffsEv
--> FOAM Warning :
    From function dlLibraryTable::open(const fileName&, const bool)
    in file db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C at line 96
    could not load "/home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so"
Processor 1: field transfer
--> FOAM Warning :
    From function dlOpen(const fileName&, const bool)
    in file POSIX.C at line 1175
    dlopen error : /home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so: undefined symbol: _ZN4Foam14incompressible8RASModel11printCoeffsEv
--> FOAM Warning :
    From function dlLibraryTable::open(const fileName&, const bool)
    in file db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C at line 96
    could not load "/home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so"
Processor 2: field transfer
--> FOAM Warning :
    From function dlOpen(const fileName&, const bool)
    in file POSIX.C at line 1175
    dlopen error : /home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so: undefined symbol: _ZN4Foam14incompressible8RASModel11printCoeffsEv
--> FOAM Warning :
    From function dlLibraryTable::open(const fileName&, const bool)
    in file db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C at line 96
    could not load "/home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so"
Processor 3: field transfer
--> FOAM Warning :
    From function dlOpen(const fileName&, const bool)
    in file POSIX.C at line 1175
    dlopen error : /home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so: undefined symbol: _ZN4Foam14incompressible8RASModel11printCoeffsEv
--> FOAM Warning :
    From function dlLibraryTable::open(const fileName&, const bool)
    in file db/dynamicLibrary/dlLibraryTable/dlLibraryTable.C at line 96
    could not load "/home/r4/mikuz/OpenFOAM/mikuz-2.1.1/platforms/linux64GccDPOpt/lib/libRSMEBMenhanced.so"

End.

Do you have the same problem?

Thanks!
Blaz

mra-cfd March 3, 2014 15:52

Dear Thomas,

Would you please write down exact reference to works of Manceau and Hellsten? I am not sure about title of the papers.

Regards,
Mohammadreza

MaLa August 4, 2014 15:23

Expressing the production term 'G'
 
Hi Thomas

Thanks for the code!

Shahr November 27, 2014 16:31

Thanks for sharing your code and the results.

Has anybody managed to compile the EARSM code for newer openfoam versions?

I have been struggling with it for some time without any success.

Thomas Baumann January 18, 2015 16:12

Here are some infos; bit late ;)

the EARSM from Hellsten is the version from his Dissertation:
new two equation turbulence model for aerodynamics applications.

The RSM by Manceau should be the one from the paper:
AN IMPROVED VERSION OF THE ELLIPTIC BLENDING MODEL
APPLICATION TO NON-ROTATING AND ROTATING CHANNEL FLOWS

Ardali April 10, 2015 08:56

I'm working with Remi Manceau now, your code is helpful a lot :)
A note:
The current version of the code is not robust.
You need to make it stable.
Split the anisotoropy tensor to deviatic and diagonal and use Sp in deviatic part! check the implementation of Spezial-Sarkar-Gatski RSM as well.

This is my REq:

tmp<fvSymmTensorMatrix> REqn
(
fvm::ddt(R_)
+ fvm::div(phi_, R_)
//+ fvm::SuSp(-fvc::div(phi_), R_)
- fvm::Sp(fvc::div(phi_), R_)
- fvm::laplacian(nu(), R_)
- fvm::laplacian(CMu/sigmak*TEBM*R_,R_) //anisotrope SSG-Modellierung
+ fvm::Sp(anisotrope, R_)
==
P
- fvm::Sp(epsilonterm1, R_)
+isotrope
-epsilonterm2
+phistar
);
////////////////////
If you have problem with it contact me!
Ardalan Javadi


All times are GMT -4. The time now is 01:26.