CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM (https://www.cfd-online.com/Forums/openfoam/)
-   -   wavetransmissive boundary for pressure and velocity (https://www.cfd-online.com/Forums/openfoam/145561-wavetransmissive-boundary-pressure-velocity.html)

SanchoPanza December 8, 2014 08:28

wavetransmissive boundary for pressure and velocity
 
Dear all,

This is my first post here since I'm new to OPENFOAM (though not new to CFD).

My aim is to perform a rather simple compressible simulation using rhoCentralFoam. The geometry is a simple square with zeroGradient boundaries left and right. I've added a rho*g term in the momentum equation to account for gravity. I initialize at t=0 with a pressure gradient to account for this gravity term.

I would like to use wavetransmissive boundary conditions (at the top and at the bottom). Its use is described in a rather simple way in every post I've found:

0/p:
top
{
type waveTransmissive;
field p;
phi phi;
rho rho;
psi thermo:psi_0;
gamma 1.4;
fieldInf 99884.8;
lInf 100;
value uniform 99884.8;
}

where lInf represents how far the boundary condition is (I'm 100% aware of how the NSCBC system of wavetransmissive works!)

However, OpenFoam requires a boundary condition for U as well! This is surprising, since the NSCBC system is written in a way in which one will prescribe p only (it can be written to prescribe U also, but not both at the same time).

I've tried several boundary conditions with no success:
1. calculated: this will not run (though, by the name it was my first guess)
2. pressureInletVelocity (or pressureInletOutletVelocity), which runs, but pressure oscillates without leaving the domain (this indicates that the boundary condition is reflective)
3. wavetransmissive in U: where pressure/velocity drifts away slowly from the expected value.

My questions are then:

What is the 'partner' boundary condition in velocity when one specifies wavetransmissive in pressure?

can wavetransmissive be used with a gravity term? (I am aware that the NSCBC conditions have to compute gradients normal to the flow... this could be the reason for my problems...


Many thanks for your help!

Sancho

olivierG December 9, 2014 04:23

Hello,

I would say you should use also wavetransmissive for U, but you can try "advective" BC for U instead.
NB: you may should use advective for other field too.

regards,
olivier

SanchoPanza December 9, 2014 06:37

Thanks for your help!

It seems indeed that the best choice would be to use the wavetransmissive BC in U as well... though this is not obvious, since a single wavetransmissive BC should set a combination of P and U, and this is enough. Having 2 of them is therefore redundant.

I've had a look at the rhoCentralFoam solver, and it seems that the boundary conditions on U and on P are computed separately. This may be the reason why I have to set wavetrasmissive in both fields.

Many thanks!

zeinelserfy September 7, 2020 10:46

what is the correct approch for using wave transmissive boundary condition in OPENFOA
 
do you test your case? is the best way is to apply wave transmissive for both p and u?

Quote:

Originally Posted by SanchoPanza (Post 523116)
Thanks for your help!

It seems indeed that the best choice would be to use the wavetransmissive BC in U as well... though this is not obvious, since a single wavetransmissive BC should set a combination of P and U, and this is enough. Having 2 of them is therefore redundant.

I've had a look at the rhoCentralFoam solver, and it seems that the boundary conditions on U and on P are computed separately. This may be the reason why I have to set wavetrasmissive in both fields.

Many thanks!


labyrinth01 April 11, 2021 05:11

Quote:

Originally Posted by SanchoPanza (Post 522920)
Dear all,

This is my first post here since I'm new to OPENFOAM (though not new to CFD).

My aim is to perform a rather simple compressible simulation using rhoCentralFoam. The geometry is a simple square with zeroGradient boundaries left and right. I've added a rho*g term in the momentum equation to account for gravity. I initialize at t=0 with a pressure gradient to account for this gravity term.

I would like to use wavetransmissive boundary conditions (at the top and at the bottom). Its use is described in a rather simple way in every post I've found:

0/p:
top
{
type waveTransmissive;
field p;
phi phi;
rho rho;
psi thermo:psi_0;
gamma 1.4;
fieldInf 99884.8;
lInf 100;
value uniform 99884.8;
}

where lInf represents how far the boundary condition is (I'm 100% aware of how the NSCBC system of wavetransmissive works!)

However, OpenFoam requires a boundary condition for U as well! This is surprising, since the NSCBC system is written in a way in which one will prescribe p only (it can be written to prescribe U also, but not both at the same time).

I've tried several boundary conditions with no success:
1. calculated: this will not run (though, by the name it was my first guess)
2. pressureInletVelocity (or pressureInletOutletVelocity), which runs, but pressure oscillates without leaving the domain (this indicates that the boundary condition is reflective)
3. wavetransmissive in U: where pressure/velocity drifts away slowly from the expected value.

My questions are then:

What is the 'partner' boundary condition in velocity when one specifies wavetransmissive in pressure?

can wavetransmissive be used with a gravity term? (I am aware that the NSCBC conditions have to compute gradients normal to the flow... this could be the reason for my problems...


Many thanks for your help!

Sancho

This message is made for the followers since it is a long time after the last reply.

There is one example case in OF (reactingFoam-sandiaD). It uses 'waveTransmissive' for 'p' but 'pressureInletOutletVelocity' for 'u'.

alligngr8 June 29, 2021 06:48

So it works?
 
Quote:

Originally Posted by labyrinth01 (Post 801180)
This message is made for the followers since it is a long time after the last reply.

There is one example case in OF (reactingFoam-sandiaD). It uses 'waveTransmissive' for 'p' but 'pressureInletOutletVelocity' for 'u'.

So it implies that waveTransmission for pressure and zero gradient for velocity.
However, I have come across few articles which say this may not be very well implemented in openFoam and the best is to implement NSCBC.

Any leads or comments on that please?


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