# 4.10.1. Open

An open boundary is a specified-pressure surface that allows flow both into and out of the domain. When the flow is out of the domain (as determined by the continuity solve using the specified pressure) then the conserved quantities are advected out and none of the other values specified in the open boundary condition are used.

When the flow is into the domain, the composition of the entrained fluid is defined by the values you set in the open boundary condition (e.g. the entrained enthalpy will be calculated using the specified temperature and mass fraction in the example below).

    begin open boundary condition on surface surface_4
        pressure = 0.0
        temperature = 300
        mass_fraction He = 0.0
        mass_fraction O2 = 0.233
        mass_fraction N2 = 0.767
    end

Most specified values can be constants, in-line string functions, tabulated functions, or user subroutines. The complete list of available commands for the open boundary condition and the syntax for the different options can be found in Open Boundary Condition On Surface.

## 4.10.1.1. Entrained Momentum

By default, the entrained momentum is zero. This is usually the most stable choice, but can make the open boundary condition more dissipative. If you specify non-zero velocities in the open boundary condition, those will be used for the entrained momentum.

There is an additional option one can specify on the open boundary condition to have the entrained momentum be computed from the calculated mass flux and local fluid density. This can improve accuracy and reduce dissipation from the boundary condition, but may sometimes lead to instabilities forming at the open boundary.

    begin open boundary condition on surface surface_4
        Momentum entrainment = Computed
        # ...
    end

The options for this command are `Specified` (default), `Computed`, or `Tangential`.

> - Specified Using this model the entrained velocity () is the specified value in the boundary condition block (), which is zero by default.

>   (4.22)

> - Computed Using this model the entrained velocity is calculated using the local density, face area, and calculated mass flow rate in a direction normal to the surface.

>   (4.23)

> - Tangential Using this model takes only the tangential component of the specified velocity. This can be used to prevent normal injection of momentum on non-planar open boundaries.

>   (4.24)

## 4.10.1.2. Entrained Turbulence Quantities

For turbulent flows, you can either set the turbulent quantity directly (e.g. `turbulent kinetic energy = 1e-3`) or you can specify a `characteristic length` () and optional `turbulence intensity` (, 10% by default), which will be used to calculate the entrained turbulent quantities using the following relationships.

(4.25)

(4.26)

(4.27)

## 4.10.1.3. Total Pressure

Instead of specifying a pressure, one can set a total pressure on the open boundary instead, where total pressure is defined as

(4.28)

## 4.10.1.4. Sponge Layer

Beta Capability

The sponge layer is not a well-used or well-tested feature and may introduce artifacts or other undesirable behavior into the solution. Use it with caution.

A so-called “sponge layer” is a technique used to reduce vorticity in the flow as it approaches an open boundary condition, to improve numerical stability. The sponge layer modifies the viscosity applied in the momentum equations anisotropically near the boundary, increasing it in the tangential directions to damp out oscillations in the flow tangential to the open boundary. This viscosity modification can either be a multiple of the current viscosity, or an absolute value. The sponge layer viscosity modification can be activated abruptly at the specified thickness with a Heaviside function, or blended in linearly as the flow approaches the boundary.

A sponge layer can be activated at an open boundary using the following commands.

    begin open boundary condition on surface surface_4
        Use Sponge layer
        Sponge Layer Thickness = 0.05
        Sponge Layer Viscosity = 1e-3
        Sponge Layer Viscosity Type = Absolute  # [Multiple | Absolute]
        Sponge Layer Blending Function = Linear # [Heaviside | Linear]
        # ...
    end