# 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

## 1 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