Skip to main content

NVD and TVD schemes

Many of the convection schemes in OpenFOAM are based on the Normalised Variable (NV) 40 and Total Variation Diminishing (TVD) 23 methods. These provide a set tools to characterise scheme properties such as boundedness (1-D).

NVD
TVD

Properties

  • Offer a blend between a low order scheme and a higher order scheme based on the calculation of a limiter
  • Boundedness of NVD/TVD schemes is only guaranteed for 1-D cases
  • Boundedness can be improved in 2-D and 3-D cases by limiting the gradient

Limiter calculation

For arbitrary unstructured meshes it is not straightforward to identify the upstream and downstream locations reliably. The limiters are evaluated using a compact stencil as described in Jasak et al. 26, where:

TVD: Limiter Ψ(r)\Psi(r) defined as a function of rr

r=2d(ϕ)Pd(ϕ)f1=2d(ϕ)PϕNϕP1 r = 2 \frac{\vec{d} \dprod \left( \grad{\phi} \right)_P}{\vec{d} \dprod \left(\grad{\phi} \right)_f} - 1 = 2 \frac{\vec{d} \dprod \left( \grad{\phi} \right)_P}{\phi_N - \phi_P} - 1

NVD: Limiter ϕf~\widetilde{\phi_f} defined as a function of ϕc~\widetilde{\phi_c}

ϕc~=10.5d(ϕ)fd(ϕ)P=10.5ϕNϕPd(ϕ)P \widetilde{\phi_c} = 1 - 0.5 \frac{\vec{d} \dprod \left( \grad{\phi} \right)_f}{\vec{d} \dprod \left( \grad{\phi}\right)_P } = 1 - 0.5 \frac{\phi_N - \phi_P}{\vec{d} \dprod \left(\grad{\phi}\right)_P}

Where the gradient at cell P (ϕ)P\left( \grad{\phi} \right)_P is calculated using the user-selected gradient scheme, and the vector d\vec{d}

d=CNCP \vec{d} = \vec{C}_{N} - \vec{C}_{P}

Further information

Source code:

API: