CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Main CFD Forum (https://www.cfd-online.com/Forums/main/)
-   -   non reflecting boundary condition? (https://www.cfd-online.com/Forums/main/4774-non-reflecting-boundary-condition.html)

adarsh May 25, 2002 12:08

non reflecting boundary condition?
 
what is meant by non reflecting boundary condition? what are the conditions under which we need to apply this condition? i know that under the conditions of compressible subsonic duct flows , the pressure waves affect the solutions by reflection under transient responses. are there any more situtaions?

regards, Adarsh

Patrick Godon May 30, 2002 10:27

Re: non reflecting boundary condition?
 
Hi,

non-reflective boundary conditions means exactly what it means, that the conditions are imposed at the boundary in such a way that no disturbance (waves and other) will be reflected, they will cross the boundary and exit the computational grid without any trouble. Here what I am talking about is for time dependent problems; I never dealt with steady state problems so I am not sure how this will affect the flow in that case, but I am sure it will.

If you ask me, I would suggest anybody to use non-reflective boundary conditions whenever there is an 'open' boundary (not a rigid wall). And this is because, even if waves don't seem to be reflected at the boundary, they actually are. As a consequence you might trap waves in your computational domain and have artificial resonances.

When the viscosity is high and the flow is subsonic, the reflected waves at the boundary have low amplitude and are damped quickly, this is why many people do actually neglect the treament of non-reflective boundary conditions in such cases.

However, when viscosity is low and the Mach number in the flow is large (approaches 1), then the reflected waves are noticed and can affect substancially the results and easily lead to divergence of the numerical scheme.

When working with high order methods (such as Spectral Methods), one has always to treat the boundaries with extreme care and non-reflective boundary conditions must be imposed (on the characteristics of the flow) at the open boundaries otherwise the numerical scheme is 'explosive' and diverges within a few time steps!

See for example:

Givoli, 1991, J. Comput. PHys, vol. 94, page 1.

Abarbanel, Don, Gottlieb, Rudy and Townsend, 1991, J. Fluid Mech., vol. 225, page 557.

Patrick

qutadah.r July 13, 2023 18:15

Ok so this is an old post, however im implementing the non-reflective boundary condition in my case since its sonic flow and an open boundary. What exactly is the treatment of the non-reflective boundary?


Thanks!

agd July 15, 2023 11:50

The classic method for compressible flow can be found in a paper by Poinsot and Lele (can't remember the reference off the top of my head). The approach basically consists of considering the equations at the boundary and casting them in the decoupled form where the dependent variables are the eigenvalues/wave amplitudes. Then for waves that are leaving the domain you solve the differential equation for the boundary update. For waves coming into the domain, simply set a Dirichlet condition.

Krapf July 16, 2023 04:04

Quote:

Originally Posted by agd (Post 853397)
The classic method for compressible flow can be found in a paper by Poinsot and Lele (can't remember the reference off the top of my head). The approach basically consists of considering the equations at the boundary and casting them in the decoupled form where the dependent variables are the eigenvalues/wave amplitudes. Then for waves that are leaving the domain you solve the differential equation for the boundary update. For waves coming into the domain, simply set a Dirichlet condition.

Poinsot, T. J., & Lelef, S. K. (1992). Boundary conditions for direct simulations of compressible viscous flows. Journal of Computational Physics, 101(1), 104–129. doi:10.1016/0021-9991(92)90046-2

zitash July 16, 2023 05:14

Need advices on implementing NSCBC in FVM without using ghost-cell method.
 
Hello,

I've been reading NSCBC paper for a while and understanding how to apply it in finite difference method (FDM, and the original paper by Poinsot(1992) was based on FDM). As I am using finite volume method (FVM), please give me some advices on how to implement it in the FVM.

I read a paper on ghost-cell FVM (gc-nscbc), the performace seems good, but I haven't go into details. GC-NSCBC use 4 layers of ghost cells, however, I am using only 1 layer of ghost cell in my FVM solver.

https://www.researchgate.net/publica...ng_Ghost_Cells

I have several doubts on using NSCBC
1. when applying it to FVM method, do I need to revise the governing equation a lot for the cell near boundary? In Poinsot paper, governing equations are rewritten in characteristic form, is this required for FVM implementation? Or only some source terms, inviscid/viscous flux need to get changed?

2. can I used NSCBC in the FVM framework of only 1 layer of ghost cell? If can, could you please provide more advices such as paper / example code.

Thanks a lot!

Regards,
Zitash

ander July 18, 2023 08:26

Can anyone tell me if so called far-field boundary conditions and non reflecting boundary conditions are the same thing? At least I know that far-field conditions impose Dirichlet conditions for waves entering the domain, and extrapolate from the interior for waves leaving, so it kind of sounds similar to one of the non-reflective BC descriptions above.

agd July 18, 2023 11:27

Far-field conditions refers to conditions applied to the far field. Non-reflective conditions are one possible type of far-field conditions. I think the language has become somewhat looer over the years, such that there is an implicit assumption that far-field equates to non-reflective but it is always best to check what a particular researcher/modeler/developer means by far-field.

LuckyTran July 18, 2023 16:37

Farfield and nrbc are most certainly not the same thing.

Before the implementation of NRBC's, many people used farfield BCs as a bandaid together with sponge layers to absorb reflections. Farfield BCs are actually mostly reflecting and in the zero frequency limit, they are perfectly reflecting! Farfield BCs were incorrectly applied in many scenarios but people were forced to use them because there was no other alternative. So if you look at CFD done in the past, you will find the usage of the farfield BC, not because it was the right thing to do.

One reason why farfield BCs was used, was it allowed for a floating pressure at a boundary. During initial calculations, you have a lot of pressure perturbations due to numerics that are non-physical. Farfield BC allows these to pass through the boundary without affecting the physical fixed pressure you want to impose at the boundary. Hence, the use of farfield BCs alleviates divergence errors due to numerics, not because of physics.

ander July 18, 2023 16:59

Interesting, so when you say «in the past» are we talking like 1990’s to early 2000’s? Or will sources from this era be «reliable»?

LuckyTran July 18, 2023 18:00

Star-CCM did not implement the NRBC until v15 (2020?) and strongly encouraged their users to use the farfieldBC, contributing to the problem, because they did not want to develop the NRBC in their code.

OpenFOAM does not have a (public) implementation of the Poinsot's NRBC and are not allowed to release it, so don't expect it any time soon. They do however, have a wavetransmissive BC implemented for a long while.

Fluent also has had a wavetransmissive BC implemented for a long time.

What is interesting is that you did not report your own findings of the wave transmissive BC but did do so for the farfield BC. That is a perfect example of how it is a rampant ongoing issue.

So when I say the past, I actually mean the present. People still do it wrongly today. I'm just giving people of the present the benefit of the doubt.

Aerterliusi July 20, 2023 05:01

Quote:

Originally Posted by ander (Post 853568)
Can anyone tell me if so called far-field boundary conditions and non reflecting boundary conditions are the same thing? At least I know that far-field conditions impose Dirichlet conditions for waves entering the domain, and extrapolate from the interior for waves leaving, so it kind of sounds similar to one of the non-reflective BC descriptions above.

and What is the difference between the terms "far-field condition" and "freestream condition"?

LuckyTran July 20, 2023 08:38

farfield and freestream are basically the same thing, just different people call them whatever they prefer. A farfield BC in many codes requires you to specify the freestream mach number, temperature, and pressure. A fresstream BC in another code might ask you to specify the farfield pressure, temperature, and mach number.


Neither (of the same thing) are non-reflecting.

ander July 20, 2023 08:48

Would you use far field and non refletive BC’s for the same flow problems and if this is the case would non reflective BC’s be superior? or are they simply meant for different types of flow problems? For instance, when modelling an airplane or wing, my understanding was that far field BC’s was the way to go independently of the freestream mach number, but could non reflective BC’s be used in this scenario as well?

LuckyTran July 20, 2023 09:01

They serve fundamentally different purposes.

You use non-reflective BC to stop reflections. You still specify a desired mean static pressure. This is inherently transient.

You use farfield BC when your arse is too lazy to calculate what should be the pressure at the inlet of your domain but you know the gas properties far upstream of the airplane (ambient, ambient, and plane speed, duh). This has nothing to do with time. If you motivated yourself to calculate what the static pressure at the inlet of your domain is supposed to be, you would not ever need to use farfield BCs.

You don't use non-reflective BCs in place of a farfield BC because you are back at the same problem. What is the mean pressure for the NRBC if you use it at an inlet? I guess, in the future, you can expect there to be implemented a non-reflecting farfield BC for this purpose.

The characteristics of a nrbc are the characteristics of the flow inside the domain. The characteristics of the farfield BC are the characteristics of the farfield. Even though they both sound like they are doing the same thing (because you read a wall of text and notice that both use the words characteristics which you've never heard before), they're not doing the same thing.

ander July 21, 2023 09:32

Thanks for clarifying that they’re not the same thing, I should probably do some reading up before attempting to discuss this any further.

Aerterliusi July 23, 2023 04:13

Quote:

Originally Posted by LuckyTran (Post 853705)
farfield and freestream are basically the same thing, just different people call them whatever they prefer. A farfield BC in many codes requires you to specify the freestream mach number, temperature, and pressure. A fresstream BC in another code might ask you to specify the farfield pressure, temperature, and mach number.


Neither (of the same thing) are non-reflecting.

I have come across a new term/new boundary condition, inlet/outlet boundary condition, which seems to be = far-field boundary condition = non-reflection boundary condition?

It seems that the far-field boundary condition is commonly used in scenarios involving external flow, while the inlet/outlet boundary condition is used in scenarios involving flow inside a pipe. Is there any other difference between them?

LuckyTran July 23, 2023 15:20

Farfield BC is indeed intended for external flows where you have a farfield characteristic that you want to impose. Internal flows don't have constant characteristics coming from a farfield, they have known massflows and properties at inlets and outlets. Again, sometimes farfield BC is used ad hoc in internal flows as a surrogate non-reflecting BC for when an actual nrbc does not exist in that software.

The inlet/outlet BC is a derivative of the outlet/outflow BC. The outlet BC applies zeroGradient constraint, which is exactly a perfectly reflecting BC. Now sometimes there is reversed flow and parts of your "outlet" boundary is actually an inlet. Here it makes no sense to apply zeroGradient for stuff flowing in. It's also super numerically unstable. So, the inlet part of the inletOutlet BC allows you to specify the inflow properties for situations where you might have some reversed flow. For cases when you never have reversed flow at an outlet boundary, the inletOutlet is identical to the Outlet BC.

Keep in mind that you cannot apply the nrbc to steady cases. That should be a hint that any BC that can be used in a steady case is not equivalent to an nrbc.


Btw, it is rather straightforward to do a few simple test cases with different BC types, plot the results, and see how they work rather than attempting an archaeological dig.

ander July 23, 2023 15:26

Regarding your last point about only being able to apply nrbc’s to unsteady cases, what happened if you ran an unsteady case for a long time with a nrbc, would the solution never become steady?

LuckyTran July 23, 2023 15:37

nrbc's time-varying conditions depends on the characteristics of the flow inside the domain. If the solution becomes steady, the instantaneous pressure and velocity at an nrbc outlet also become steady and fixed.

So to answer the question, no. NRBC doesn't rule out steady solutions. The reason you can't apply the nrbc to strictly steady simulations is because you need time-derivatives, which don't exist in steady cases. zero time derivatives are permitted in unsteady cases. If you wrote a steady solver that had dphi/dt=0 for every term, you could use the nrbc. However, most steady solvers don't actually apply the zero time derivative constraint, they just the term from the equation.


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