Challenge

Week 9 - FVM Literature Review

Objective: -

To describe the need for interpolation scheme and flux limiters in FVM.

Basic

In computational fluid dynamics there are 3 numerical methods-based solvers to solve the governing navier stokes equations.

  1. Finite difference method
  2. Finite volume method
  3. Finite element method

Finite difference method

The grid is linear and aligned so that all grid points lie in a straight line. Main thing is that the properties are considered to concentrate at a single point.

Finite volume method

The method is applied over a volume such that the governing equation is valid over the entire volume; also, the properties are assumed to be concentrated at the geometric centre of the volume concerned

Finite element method

The properties are valid over an elemental are. The properties assumed to be concentrated at area centre.

Drawbacks of finite difference method:

  1. We cannot use FDM directly to a body whose grid points are not aligned properly along the x, y directions. These may occur due to complex folds, cuts in the structure.
  2. It is not aligned we cannot calculate the properties at the next adjacent point exactly, but we can make some correction factor and approximate it, this method is called 'variable transformation method' which basically seeks to create grid using different variable space which look very similar to Cartesian grid.
  3. Variable transformation method gives an approximated solution of property but it is time consuming and complex.
  4. For complex profile this method is less preferred. That’s why finite volume method is used.

Finite volume method

The finite volume method is a method for representing and evaluating partial differential equation in the form of algebraic equation. In the finite volume method, volume integrals in a partial differential equation that contain a divergence term are converted to surface integrals, using the divergence theorem. These terms are then evaluated as flux at the surface of each finite volume. Because the flux entering a given volume is identical to that leaving the adjacent volume, these methods are conservative. Another advantage of the finite volume method is that it is easily formulated to allow for unstructured meshes. The method is used in many computational fluid dynamics packages. "FINITE VOLUME" refers to the small volume surrounding each node point on a mesh.

In finite volume method instead of writing the equation in a single point, equations are written in an entire volume. It means for a considered volume no assumptions are made over the shape of the volume. Inside the particular volume the flow is conserved, flow quantities are conserved, energy is conserved, mass is conserved, momentum is conserved and so on. This is called as ' Finite volume representation' which begins with integral form of governing equation.

Steps: -

  1. Once we have this integral form of the equation.
  2. Apply gauss divergence theorem.
  3. We get discretized form which can be solved using computer (flux terms)

Consider steady state heat conduction equation with heat generation:

`∂/(∂x) (α (∂T)/(∂x))+S=0`

Where, S is source term.

`alpha` Is thermal diffusivity term.

`frac(∂T)(∂x)` Is temperature gradient along x direction.

Governing equation `∂/[∂x] (α [∂T]/[∂x])+S=0` is valid at every point in domain. Which means it is also valid in entire control volume.

If small control volume `dv` is considered and it is multiplied with the governing equation and integrated it for entire volume then that should be also equal to zero i.e. 'the integral form of governing equation'

Taking the conservation equation validated at single point and if it is validated at single point then it is validated at entire volume and in this entire volume properties are conserved.

Multiplying the equation by `dv` and integrating it.

`∫(∂/[∂x] (α[ ∂T]/[∂x])+S) *dv=0`

`∫(∂/[∂x] (α[ ∂T]/[∂x]))*dv+∫S*dv=0`

`∵ dv=A*dx`

`∫(∂/[∂x] (α [∂T]/[∂x])) A*dx+∫S*dv=0`

`[αA([∂T]/[∂x])]_w^e+barS*dv=0`

`barS` is average value of source term (S) which when multiplied by `dv` is going to be equal to

`∫S*dv`

`α_e* A [∂T]/[∂x]-α_w *A [∂T]/[∂x]+barS*dv=0`

If we assume α as a constant and not a function of temperature,

`α*A[(T_e-T_p)/(∆x)]-α*A[(T_p-T_w)/(∆x)]+barS*dv=0`

The source term which is to be added in a cell, if it is a function of temperature, we have to linearize it, if a`alpha` is a function of temperature we have to linearize this also.

`(barStext(linearization) →S_u+S_p T_p )`

`α*A[(T_e-T_p)/[∆x]]-α*A[(T_p-T_w)/[∆x]]+barS*dv=0`

`[heat flux]_(out)-[heat flux]_text(in)+source term=0`

The amount of heat that is removed from a particular box is conserved.

Different schemes used to solve the equation:

  1. Gradient scheme
  2. Interpolation scheme

1. Gradient scheme

From the above figure when we calculate temperature gradient in the east face, we basically use temperature from neighbouring point trying to evaluate or numerical represent gradient of temperature is called as gradient scheme.

  1. Interpolation scheme

In the finite volume formulation, evaluation of surface and volume integrals sometimes requires the values of unknown variables at locations other than the computational nodes of the control volume. These values are obtained by employing certain interpellation schemes.

As an example, let us consider the simple case of a steady one-dimensional convection and diffusion.

`d/dx (ρuϕ)=d/dx ( Γ[ dϕ]/[dx])`

Where `phi` is our solution variable (a scalar), is the density, u is the velocity, and 𝝘 is the diffusion coefficient.

The above figure shows the three neighbouring control volumes, which are going to be used for deriving the discretization equation.

Integration of the governing differential equation the control volume around grid point P yields:

`(ρuϕ)_e-(ρuϕ)_w=(Γ [dϕ]/[dx])_e-(Γ [dϕ]/[dx])_w`

Evaluation of the left-hand side of the above equation requires the values of phi over faces e and w. These values are estimated by employing certain interpellation schemes.

Some interpellation scheme used in CFD are as follows:

  1. Upwind interpolation scheme
  2. linear interpolation scheme
  3. Quadratic Upwind Interpolation for Convective Kinematics (QUICK) scheme.
  4. Hybrid scheme

5.Total Variation Diminishing (TVD) scheme

Explaining the Upwind interpolation scheme for an example

The Upwind interpretation scheme takes into account the direction of fluid flow and based on it, the value of solution variable at the face is approximated by its value at the upstream computational node. for instance, If the fluid is moving from West to East then:

`ϕ_e≈ϕP`

And if the fluid is moving from east to west then:

`ϕ_e≈ϕE`

In addition to these Gradient scheme and interpolation schemes there are flux limiters.

Flux limiters

While calculating the variable gradients they tend to toggle and are not bounded to a particular value and keeps jumping, this occurs due to discontinuity due to Sock occurring, having a flux limiter will help to bound the gradient value there by giving a stable solution.

Numerical approximation using higher order discretisation scheme results in better accuracy but exhibit spurious oscillation near discontinuities such as socks. On the other hand, lower order spatial discretization schemes remain stable near discontinuities but dampen out the distributions because of their dissipative nature. Hence in order to capture discontinuities, high resolution schemes are desired - which are really accurate and stable throughout the domain.

Flux limiters operate functionally as a switch and tune the numerical fluxes obtain from lower order scheme and higher order scheme that near the discontinuity lower order (stable) scheme is employed and away from its higher order(accurate) scheme is employed.

Suppose represents flux at face e calculated using high resolution scheme `L_e` represents flags at e calculated using lower order scheme and `H_e` represents flux at `e` calculated using higher order scheme. Then `psi(r)` represents the flux limiter function such that:

`F_e=L_e+ψ(r)(H_e-L_e)`

Flux limiter function depends upon the smoothness parameter r which is defined as:

`rp=(ϕP-ϕW)/(ϕE-ΦP)`

The flux limited function is constrained to be greater than or equal to zero. It assumes a value of zero near discontinuities and a value of 1 away from them. Hence it switches between higher order scheme and lower order scheme for numerical representation of flux, thereby keeping the scheme stable and accurate throughout.

Note that flux limiters are also referred to as slope limiters because they both have the same mathematical form, and both have the effect of limiting the solution gradient near shock for discontinuities. In general, the term flux limiter is used when the limiter acts on system m fluxes and slope limiter is used when the limiter acts on system States (like pressure, velocity etc.).

Consider 1-D semi discrete scheme

`(du_i)/dt+1/(∆x_i ) [F(u_(i+1/2) )-F(u_(i-1/2) )]=0`

`F(u_(i+1/2) ) & F(u_(i-1/2) )` these are the edge flux for `i_th` cell.

`F(u_(i+1/2) )=f_(i+1/2)^{low}-ϕr_i (f_(i+1/2)^[low]-f_(i+1/2)^[high] )`

`F(u_(i-1/2) )=f_(i-1/2)^{low}-ϕr_i (f_(i-1/2)^[low]-f_(i-1/2)^[high] )`

`f_(high)` - low precision, high resolution flux

`f_(low)`- high precision, low resolution flux

`phi(r)` - flux limiter function

`r_i=(u_i-u_(i-1))/(u_(i+1)-u_i )`

`r` represents the ratio of successive gradients on the solution mesh.

`ϕ(r)≥0`

This is the limiter function case

If limiters = 0, then there will be a low resolution and sharp gradient.

If limiter function > 0, then there will be a high resolution and +ve gradient.

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.