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

Inlet BC for LES

Register Blogs Community New Posts Updated Threads Search

Like Tree5Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   January 23, 2008, 04:52
Default Good morning, I'm sorry for
  #21
Senior Member
 
Cedric DUPRAT
Join Date: Mar 2009
Location: Nantes, France
Posts: 195
Rep Power: 17
cedric_duprat is on a distinguished road
Good morning,

I'm sorry for disturbing during coffee break (in France, time is coming).
But I'm still a little bit confused.

In the articles I've read about LES on OpenFOAM, to get real turbulent inlet, we used to define a "mapping surface". I agree.
Here comes my first question, to be sure I didn't make any mistakes here, I think that it is defined in the constant/polymesh/boundary files in the inlet by changing the offset (if the inlet is directMappedPatch) isn't it ?

so, doing this, we get a periodic volume between inlet patch and the Mapping surface right ?

My mask function should be 1 in this volume and 0 elsewhere.

by writing these 2 lines I will never get the volume but only the cells which are in my patch "inlet":

label patchINLET = mesh.boundaryMesh().findPatchID("inlet");
toto.boundaryField()[patchINLET]=1.0;

So my question is is there a way to take all these cells and to impose "toto" of all these cell =1 (not only boundary patch)

Thank you again,

Regards,

Cedric
cedric_duprat is offline   Reply With Quote

Old   April 1, 2008, 07:05
Default hi to all, I m a beginner i
  #22
kanarya
Guest
 
Posts: n/a
hi to all,

I m a beginner in OpenFoam and I want to program fluctuations with tensor...
for example I want the following program to do with fluctuations.
magSqr(fvc::grad(U))+ sqr(gradU.component(tensor::YX) + gradU.component(tensor::XY))

does someone can help me?
best regards
  Reply With Quote

Old   April 1, 2008, 08:27
Default hi to all, I m a beginner
  #23
kanarya
Guest
 
Posts: n/a
hi to all,

I m a beginner in OpenFoam and I want to program fluctuations with
tensor...
for example I want the following program to do with fluctuations.
magSqr(fvc::grad(U))+ sqr(gradU.component(tensor::YX) +
gradU.component(tensor::XY))

does someone can help me?
best regards
  Reply With Quote

Old   October 16, 2008, 09:58
Default Hello, this is a question r
  #24
New Member
 
Wilko Rohlfs
Join Date: Mar 2009
Location: Germany
Posts: 5
Rep Power: 17
wilko is on a distinguished road
Hello,

this is a question regarding the DirectMappedFixedValue Boundary Patch.
I would like to use the patch for generating a nice developed flow as an inlet condition (LES).
Unfortunally I am working with the OpenFOAM Version 1.3. Is there a version of this b.c. for OF 1.3?
Trying to figure out the structure of this boundary condition brought me fast to the directMapped file that allows to transfer the needed inlet values to the boundary patch. This class is refering to PStream. I think, in this file, there are some big changes from 1.3 to 1.5. How deep are the changes going? Is it possible to include this boundary condition to 1.3?

Perhaps somebody can help me with an other idea to generate an inlet profile with a small number of cells as it can be done by this b.c. I belive that a pipelength of 4d (2d for recirculation and 2d to take into account the interaction with the pipe exit) should be enough.

Thank you so fare

Wilko
wilko is offline   Reply With Quote

Old   November 6, 2008, 09:32
Default Hi, I'm working on Klein i
  #25
Senior Member
 
Cedric DUPRAT
Join Date: Mar 2009
Location: Nantes, France
Posts: 195
Rep Power: 17
cedric_duprat is on a distinguished road
Hi,

I'm working on Klein inflow condition which is an effective algebraic Methods. It is used to target the statistics of turbulence by performing operation on them.
Now, I'm implementing it directly on a LES solver.

I've to define the Cholesky decomposotion "aij" of the Reynolds stress tensor. The expression of aij is not so hard to implement but, while compiling, I still have a error:

error: no matching function for call to âFoam::dimensioned<foam::tensor<double> >::dimensioned(const char [5], Foam::dimensionSet)â
/home/users/duprat/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/lnInclude/dimensionedTyp e.C:95: note: candidates are: ...


I create aij as a volTensorField:
volTensorField aij
(
IOobject
(
"aij",
runTime.constant(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
mesh,
dimensionedTensor("null",dimensionSet(0, 1, -1, 0, 0, 0, 0))
);

And in these last lines is the mistake.

Then, I write :

aij[cellI] = (....)

where cellI is the mesh at the inlet patch


Can someone give me a hint to solve this problem ?

I'll use this tensor every time step but it is constant in time that's why it is defined in constant directory

Thank you for helping,

Cedric

PS: aij tensor is not a symetric tensor and I need it only in the inlet patch
cedric_duprat is offline   Reply With Quote

Old   November 6, 2008, 10:12
Default I got it dimensionedTenso
  #26
Senior Member
 
Cedric DUPRAT
Join Date: Mar 2009
Location: Nantes, France
Posts: 195
Rep Power: 17
cedric_duprat is on a distinguished road
I got it

dimensionedTensor("null",dimensionSet(0, 1, -1, 0, 0, 0, 0))
should be
dimensionedTensor("null",dimensionSet(0, 1, -1, 0, 0, 0, 0),tensor::zero)
..... initial value, everything is there !!

I hope I can give to the community this solver but .... I've still some work to do :-)

Cedric
cedric_duprat is offline   Reply With Quote

Old   November 24, 2008, 03:23
Default Hi, for the implementation
  #27
Senior Member
 
Fabian Braennstroem
Join Date: Mar 2009
Posts: 407
Rep Power: 19
braennstroem is on a distinguished road
Hi,

for the implementation of a synthetic inlet of L. Davidson one needs random numbers with the probability distribution of p(phi)=1/2*Pi with 0<=phi<=2*Pi.

Does anyone know, how to achieve this? So far I know of:
Random perturbation(1234567);
scalar phi_n=phiValues.GaussNormal();

Would be nice, if you can give me a hint!
Fabian
braennstroem is offline   Reply With Quote

Old   November 24, 2008, 03:37
Default have you tried this? some p
  #28
Super Moderator
 
niklas's Avatar
 
Niklas Nordin
Join Date: Mar 2009
Location: Stockholm, Sweden
Posts: 693
Rep Power: 29
niklas will become famous soon enoughniklas will become famous soon enough
have you tried this?

some pdf's can be found in thermophysicalModels

Random rndGen(0);

autoPtr<pdf> phiPDF
(
pdf::New
(
<dictionary>
rndGen
)
);

scalar phi = phiPDF->sample();

the pdf is defined in the the <dictionary> of which you can find examples in sprayProperties where I use them.

N
niklas is offline   Reply With Quote

Old   November 26, 2008, 05:19
Default Hi Niklas, thansk for the h
  #29
Senior Member
 
Fabian Braennstroem
Join Date: Mar 2009
Posts: 407
Rep Power: 19
braennstroem is on a distinguished road
Hi Niklas,

thansk for the hint!

Fabian
braennstroem is offline   Reply With Quote

Old   October 5, 2009, 08:56
Default
  #30
Senior Member
 
Suresh kumar Kannan
Join Date: Mar 2009
Location: Luxembourg, Luxembourg, Luxembourg
Posts: 129
Rep Power: 17
kumar is on a distinguished road
Hello Cedric
I am working on the break up study of liquid sheets. I am using lesInterfoam for this purpose. I am looking into start working on the implementation of Kleins initial conditions for turbulence. I saw your post and thought as you have already worked on it you could give me some hints on how to start along with it or just explain me the steps you followed to implement it in the lessolver.

Any help is appreciated.

bye
with regards
K.Suresh kumar
kumar is offline   Reply With Quote

Old   January 29, 2010, 10:58
Default
  #31
Senior Member
 
Jiang
Join Date: Oct 2009
Location: Japan
Posts: 186
Rep Power: 17
panda60 is on a distinguished road
Quote:
Originally Posted by eugene View Post
Are you referring to the turbulentInlet boundary condition?

Basically this is a random walk for each face value on the boundary around some reference value. All the details are available in

src/finiteVolume/lnInclude/turbulentInletFvPatchField.C

Give us a shout once you run in to more specific problems

Dear eugene,
It seems that OpenFOAM only can simply map the internal value back to inlet. If I want to use mapping position value multiply an function and then feed back to inlet, is it possible to realise ?

< > is time-averaged value,
is boundary layer thickness
recy is mapping plane position
Attached Images
File Type: jpg untitled.jpg (62.8 KB, 88 views)
panda60 is offline   Reply With Quote

Old   February 2, 2010, 05:50
Default
  #32
Senior Member
 
Eugene de Villiers
Join Date: Mar 2009
Posts: 725
Rep Power: 21
eugene is on a distinguished road
I see no reason why modifying the mapped value should not be possible. In fact several people have already done this. Try to contact Gavin Tabor at Exeter Uni. I think he has some code for this. (I do not unfortunately.)
eugene is offline   Reply With Quote

Old   February 9, 2010, 10:19
Default
  #33
Senior Member
 
Jiang
Join Date: Oct 2009
Location: Japan
Posts: 186
Rep Power: 17
panda60 is on a distinguished road
Dear all,

It seems that pitzDailyDirectMapped case can't be run in version-1.6.

When I run, I have the following mistakes:

patch type 'patch' not type 'directMappedPatchBase'
for patch inlet of field U in file "/home/panda60/OpenFOAM/run/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/U"

From function directMappedFixedValueFvPatchField<Type>::directMa ppedFixedValueFvPatchField
(
const fvPatch& p,
const DimensionedField<Type, volMesh>& iF,
const dictionary& dict
)

in file fields/fvPatchFields/derived/directMappedFixedValue/directMappedFixedValueFvPatchField.C at line 109.

FOAM exiting

who knows how to use DirectMapped condition crectly ?
Thank you very much.
panda60 is offline   Reply With Quote

Old   April 23, 2010, 18:51
Default Inflow boundary question
  #34
Senior Member
 
n/a
Join Date: Sep 2009
Posts: 199
Rep Power: 17
deji is on a distinguished road
hey there foamers. i have been using openfoam for about 6months now, and have a question. if anyone can assist please do so, it would be greatly appreciated. i am trying to implement the turbulentinlet boundary for my simulation, but i am not able to find any documentation on how the following quantities are chosen. can anyone explain to me?

boundaryField
{
inlet
{
type turbulentInlet;
referenceField uniform (10 0 0);
fluctuationScale (0.02 0.01 0.01);
value uniform (10 0 0);
deji is offline   Reply With Quote

Old   August 31, 2010, 11:38
Default
  #35
Senior Member
 
Francois
Join Date: Jun 2010
Posts: 107
Rep Power: 21
Fransje will become famous soon enough
Quote:
Originally Posted by panda60 View Post
Dear all,

It seems that pitzDailyDirectMapped case can't be run in version-1.6.

When I run, I have the following mistakes:

patch type 'patch' not type 'directMappedPatchBase'
for patch inlet of field U in file "/home/panda60/OpenFOAM/run/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/U"

From function directMappedFixedValueFvPatchField<Type>::directMa ppedFixedValueFvPatchField
(
const fvPatch& p,
const DimensionedField<Type, volMesh>& iF,
const dictionary& dict
)

in file fields/fvPatchFields/derived/directMappedFixedValue/directMappedFixedValueFvPatchField.C at line 109.

FOAM exiting

who knows how to use DirectMapped condition crectly ?
Thank you very much.
You should take the followings steps when trying to run the pitzDailyDirectMapped test case:
1. blockMesh
2. changeDictionary
3. pisoFoam.

This should do the trick.

Regards,

Francois.
Fransje is offline   Reply With Quote

Old   August 31, 2010, 15:20
Default
  #36
Senior Member
 
Francois
Join Date: Jun 2010
Posts: 107
Rep Power: 21
Fransje will become famous soon enough
Quote:
Originally Posted by deji View Post
hey there foamers. i have been using openfoam for about 6months now, and have a question. if anyone can assist please do so, it would be greatly appreciated. i am trying to implement the turbulentinlet boundary for my simulation, but i am not able to find any documentation on how the following quantities are chosen. can anyone explain to me?

boundaryField
{
inlet
{
type turbulentInlet;
referenceField uniform (10 0 0);
fluctuationScale (0.02 0.01 0.01);
value uniform (10 0 0);
You might want to look at example 3.2 in the Programmer's guide. In the guide they detail the implementation of a turbulent flow over a backward-facing step.

Regards,

Francois.
Fransje is offline   Reply With Quote

Old   September 7, 2010, 06:06
Default Inlet velocity Profile
  #37
New Member
 
Jgan
Join Date: Apr 2009
Posts: 2
Rep Power: 0
janara is on a distinguished road
Hi,

I am using parabolic inlet velocity profile (solved analytically) for shear-driven multiphase flow using InterFoam solver. I could observe numerical diffusion due to the analytical velocity profile which is imposed at inlet.
Please do let me know how to get interpolated discretized velocity profile from internal field on to inlet boundary.

Thanks,
Jagannath
janara is offline   Reply With Quote

Old   September 9, 2010, 05:27
Default directMapped boundary conditions
  #38
And
New Member
 
Andrea Aprovitola
Join Date: Nov 2009
Posts: 16
Rep Power: 17
And is on a distinguished road
Good morning to the OpenFOAM community!

I would like to use the directMapped method in the LES of the pitzDaily3D testcase without. In order to do that after having previously read the suggestions contained in the former threads, I'have followed these steps:

  • Download the pitzDailyDirectMapped testcase,
  • Modify the 0/U file in the following way

Code:
..........

boundaryField
{
    inlet
    {
        type            directMapped;
        value           uniform (13.3 0 0);
        setAverage      true;
        average         (13.3 0 0);
    }

...........
  • Enlarge the channel lenght of four inlet heights (Eugene de Villiers Ph.D. Thesis) changing the blockMeshDict

[CODE]
  • Execute blockMesh
  • Modify the file boundary in this way:
Code:
    inlet
    {
        type            directMappedPatch;
        nFaces          600;
        startFace       715675;
        sampleMode      nearestCell;
        sampleRegion    region0;
        samplePatch     none;
        offset          (0.081 0 0);
    }
Thus if I understand the meaning of the offset plane keyword, the mapping plane to sample the flow velocity is placed 0.081 unit downstream from the first domain point. Is this right ?

Anyway I'm not sure to know the correct meaning of the keyword sampleMode contained in the dictionary. Could someone give any further information about the sampleMode nearestCell keywords ?

Regards,

Andrea Aprovitola
And is offline   Reply With Quote

Old   November 8, 2010, 11:54
Default
  #39
Senior Member
 
Francois
Join Date: Jun 2010
Posts: 107
Rep Power: 21
Fransje will become famous soon enough
Hello Andrea,

A little late, but better late than never!

To answer your questions:
  • The offset value: The value specified is the vector at which the sampling plane should be taken, with respect to the reference plane (in your case, the reference plane is inlet).
  • For sampleMode, you have a few options available, namely
    1. NEARESTFACE
    1. NEARESTCELL
    1. NEARESTPATCHFACE
    The naming of these options is a straightforward description of how they work, namely that openfoam searches for the nearest cell, face, or patchface to the offset vector specified.

I hope this helps!

Kind regards,

Francois.
Fransje is offline   Reply With Quote

Old   November 9, 2010, 09:35
Default
  #40
And
New Member
 
Andrea Aprovitola
Join Date: Nov 2009
Posts: 16
Rep Power: 17
And is on a distinguished road
Dear Francois,

thank you very much for your help.

Now I'm confident about the meaning of the offset value. Anyway, only the sample mode "nearestCell" seems working for my application. NEARESTFACE and NEARESTPATCHFACE model are not working. I'm not sure of what I'm doing wrong,

Regards

Andrea

Code:
    inlet
    {
        type            directMappedPatch;
        nFaces          1500;
        startFace       2486476;
        sampleMode      nearestCelll;
        sampleRegion    region0;
        samplePatch     none;
        offset          (0.081 0 0);

Quote:
Originally Posted by Fransje View Post
Hello Andrea,

A little late, but better late than never!

To answer your questions:
  • The offset value: The value specified is the vector at which the sampling plane should be taken, with respect to the reference plane (in your case, the reference plane is inlet).
  • For sampleMode, you have a few options available, namely
    1. NEARESTFACE
    1. NEARESTCELL
    1. NEARESTPATCHFACE
    The naming of these options is a straightforward description of how they work, namely that openfoam searches for the nearest cell, face, or patchface to the offset vector specified.

I hope this helps!

Kind regards,

Francois.
And is offline   Reply With Quote

Reply


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 Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
velocity inlet vs pressure inlet cheong FLUENT 6 April 9, 2011 04:07
subsonic inlet or supersonic inlet? mali CFX 0 November 28, 2008 21:57
about inlet bc ivanyao OpenFOAM Running, Solving & CFD 0 November 25, 2008 04:17
reversed flow at velocity inlet / mass flow inlet ib FLUENT 1 March 26, 2007 14:11
How to set smoke inlet speed on inlet Adam FLUENT 0 October 4, 2005 09:18


All times are GMT -4. The time now is 09:57.