Understanding FVM(Lax Friedrich scheme) by solving Burger equation

Published on . Written by

Solution to Inviscid Burger equation using FVM
Finite Volume Method is one of the popular numerical methods used by engineers, mathematician around the world for solving complex differential equations. This is because it has the characteristics to produce accurate and stable solutions. So, studying the finite volume method is important for an engineer. In this project, you will learn how the Finite Volume Method (Numerical Method) is implemented to solve the differential equation by solving a fluid flow problem using Burger equation.

Read more..
Burger equation is derived from the Navier Stokes equations by eliminating the effect of viscous, heat conduction and assuming that there is no temperature difference between fluid and surrounding in a fluid flow. In this project, you are going to solve a fluid flow problem using Lax Friedrich scheme.

Problem Description:


Skyfi Labs Projects
In a one dimension fluid flow problem, the length of the pipe is 1 meter. U is any conserved variable of the flow which is transporting at a speed of 12m/s. The value of U is -1.0unit from 0mm to 0.33mm and 0.66mm to 1.0mm. Find out the value of U in the domain at time t=2.0 sec assuming the flow to be inviscid, no conductive heat transfer and constant pressure throughout the flow.

Project Description:

  1. Burgers Equation: Burgers equation is a quadratic differential equation which is derived from the legendary Navier-Stokes equation.
  2. ?u/?t+?g(u)/?x=0

    Where, g(u)= u^2/2

  3. Finite Volume Method (FVM): The finite volume method is a method for representing and evaluating the partial differential equation in the form of algebraic equations. Here finite volume (cell) refers to the small volume surrounding each node point on a mesh. In the finite volume method, volume integrals in a partial differential equation that contains divergence terms are converted to surface integrals using Gauss divergence theorem. These terms are the evaluated as fluxes at the surfaces of each finite volume. These are conservative in nature since the amount of flux leaving a surface is equal to the amount of flux entering into the finite volume.
  4. Lax Friedrich’s scheme: Several schemes are implemented on the basis of the finite volume method, one of which is Lax Friedrich’s scheme. To avoid the dependency of the solution on the direction of information flow, a central solver can be preferred. Lax-Friedrich’s scheme is one of the central solvers which can be used to solve a flow problem. Use Local Lax-Friedrich scheme for a better result.

Project Implementation:

  1. At first, learn basic of numerical methods. Learn how FVM is different from other methods, what is a node, discretization, errors in numerical methods, truncation error, stability and convergence.
  2. Then, learn what are the limitations in using FDM as a numerical approach to solve the differential equation.
  3. Find the Numerical solution to that equation using Lax-Friedrich’s scheme. In this step, you have to write codes to discretize the domain, initial the boundary condition and interact the solution for the number of times until you get an accuracy of 10e-5 and achieve timestep 1s. Don’t forget to save the result data in a text file. Solve for both the direction of flow.
  4. Then solve the same problem using Local Lax-Friedrich’s scheme.
  5. Plot the result data using Gnuplot or Minitab.
  6. Compare both the result and observe the difference.
Project Brief: By observation you can see, use of FVM is independent of the direction of information flow and produces a fairly approximate solution. You can also see that Local Lax-Friedrich’s scheme produces the more accurate result then Lax-Friedrich’s scheme.

Software requirements:

  1. Dev-C++: You will be needing Dev-C++ software to write logic and interact the solution for a number of times.
  2. Gnuplot: Also, you will be needing plotting software such as Gnuplot to plot the result data and compare the solution.
Programming language: C programming language

Kit required to develop Understanding FVM(Lax Friedrich scheme) by solving Burger equation:
Technologies you will learn by working on Understanding FVM(Lax Friedrich scheme) by solving Burger equation:


Any Questions?