# Non-Reflecting Boundary Conditions in OpenFOAM

There are two approximate non-reflecting boundary conditions available in OpenFOAM:

They determine the boundary value by solving the following equation

\begin{align}
\frac{D \phi}{D t} = \frac{\partial \phi}{\partial t} + \boldsymbol{U} \cdot \nabla \phi = 0, \tag{1} \label{eq:advection}
\end{align}

where $$D/Dt$$ is the material derivative and $$\boldsymbol{U}(\boldsymbol{x}, t)$$ is the advection velocity.

We assume that the advection velocity $$\boldsymbol{U}$$ is parallel to the boundary (face) normal direction and rewrite the eqn. \eqref{eq:advection} as

\begin{align}
\frac{D \phi}{Dt} \approx \frac{\partial \phi}{\partial t} + U_{n} \cdot \frac{\partial \phi}{\partial \boldsymbol{n}}= 0, \tag{2} \label{eq:advection2}
\end{align}

where $$\boldsymbol{n}$$ is the outward-pointing unit normal vector.

These boundary conditions are different in how the advection speed (scalar quantity) $$U_{n}$$ is calculated and it is calculated in advectionSpeed() member function.

The advection speed is the component of the velocity normal to the boundary

\begin{align}
\end{align}

 waveTransmissive B.C.

The advection speed is the sum of the component of the velocity normal to the boundary and the speed of sound $$c$$

\begin{align}
U_n = u_n + c = u_n + \sqrt{\gamma/\psi}, \tag{4} \label{eq:waveTransmissiveUn}
\end{align}

where $$\gamma$$ is the ratio of specific heats $$C_p/C_v$$ and $$\psi$$ is compressibility.

## Author: fumiya

CFD engineer in Japan

## One thought on “Non-Reflecting Boundary Conditions in OpenFOAM”

1. PANKAJ SAHA says:

Thanks for this explanation of wave transmissive BC.

Can you please, let me know how linf and fieldinf can be selected?

Thanks

Pankaj

This site uses Akismet to reduce spam. Learn how your comment data is processed.