Discontinuous Galerkin Methods and Strand Mesh Generation Andrey Andreyev (andreyev@umd.edu)andreyev@umd.edu Advisor: James Baeder (baeder@umd.edu)

  • Published on

  • View

  • Download

Embed Size (px)


  • Discontinuous Galerkin Methods and Strand Mesh GenerationAndrey Andreyev (andreyev@umd.edu)

    Advisor: James Baeder (baeder@umd.edu)

  • Terminology:Picture from: http://www.cgl-erlangen.com/downloads/Manual/ch09s16s01.htmlStructured MeshUnstructured MeshPicture from: http://ta.twi.tudelft.nl/users/wesselin/projects/unstructured.html

  • Project OverviewTwo-Part Effort

    Part 1: Implementation of the Discontinuous Galerkin (DG) Euler Equation Solver on a 2D Grid

    Part 2: Implementation of a strand grid generator from a surface meshImage: from Bcmath.orgImage: Aaron Katz 3

  • The Euler EquationsU is the conservative variable vector

    F, G, and H are the Flux Vectors in the x, y, z direction respectively

  • Part 1: DG Method

    Finite Difference MethodsAdvantages: Ease of Implementation Easy to make higher orderDisadvantages:Only applicable on structured grids

    Finite VolumeAdvantages: Naturally Conservative (captures discontinuities in the flow field)Many upwinding possibilitiesApplicable on unstructured gridsDisadvantages:Difficult to devise stable higher order scheme

    Finite ElementAdvantages: Can be any order of accuracyBased on variational methodsApplicable on unstructured gridsDisadvantages:More complexNot conservative!Naturally implicit (can be explicit with modifications)

    In general, methods in Computational Fluid Dynamics can be divided into three approaches:

  • Part 1: DG Method What is the appeal behind Discontinuous Galerkin Methods?

    Can be thought of as a combination between Finite Volume and Finite Element MethodsCan be implemented on unstructured gridsCan be made higher orderDoes not enforce continuity in the shape functions of the element, continuity is enforced using numerical fluxes (seen in finite volume approaches)Requires substantially less information about the neighboring elements making parallelization easier. (Result of not enforcing inter-element continuity

  • Part 1: DG Method

    Spatial Discretization 1. Start with the Euler Equation:2. Discretize the spatial domain and assume and assume an approximate solution on a per-element basis 3. Multiply by weight function and integrate by partsNote the boundary term has a different flux term. In normal finite element, the boundary terms need to enforce connectivity with neighboring elements. In Discontinuous Galerkin Methods the boundary fluxes are calculated using the Riemann Fluxes. This enforces connectivity and allows for discontinuities in the solution!

  • Part 1: DG MethodTime Integration Time integration of the equations will be carried out using a higher order Runge-Kutta technique. The space discretization in the previous slide converted the PDEs into a system of ODEs in time. Using Higher Order Runge-Kutta, we carry out the time integration on a per-element basis2

  • Part 1: DG MethodTest ProblemsThe method will first be implemented on the one-dimensional version of the Euler Equations to test the methods accuracy. Sods Shock Tube Problem will be used as the test case since it has an exact solution and will test the schemes shock capturing ability.

    Implemented using Fortran 95Image: http://en.wikipedia.org/wiki/File:SodShockTubeTest_Regions.pngExact SolutionImage: Author Generated

  • Part 1: DG MethodTest Problemshttp://www.salome-platform.org/forum/forum_10/213329959/viewTwo Dimensional Airfoil on a structured mesh. Mesh provided by Dr. Baeder.Boundary Conditions:Tangential Flow around the airfoil (Inviscid Wall)Undisturbed flow at the domain edge (Farfield)

    Run at a variety of mach numbers to create different flow regimes (subsonic, trans-sonic, supersonic) to steady state

    Compare the results to experimental data (large database for many airfoils)Compare results to other established computational tools

    Implemented serially using Fortran 95, then parallelized using MPI

  • Part 1: DG Method Implementation Schedule10/31/12- One dimensional version. Apply to one dimensional problem with a known solution to test accuracy and shock capturing abilities. Sod shock tube problem. Will validate the 1-D version (serial)12/15/13- Two dimensional version. Apply to 2-D airfoil problem using provided grids (serial)02/15/13- Validation of the two dimensional version using experimental airfoil results as well as the results published in literature03/15/13- Parallelization of the two dimensional. Validate using results from the serial version

  • Part 2: Strand Mesh GenerationOne of the largest bottle necks in CFD based design is the generation of volume meshes for the flow solvers.

    Picture: Katz, Wissink 3Complex geometries make it difficult to resolve the surface mesh and extrude the volume mesh.The strand mesh method seeks to eliminate the second problem of volume mesh extrusion by shooting out strands from the nodes of the surface mesh in prescribed manner making volume mesh generation automatic. The volume grid has prismatic which have good computational properties.

  • Part 2: Strand Mesh GenerationApproach:Calculate the normal on each node of the mesh using an average of the normals at the neighboring cells

    Apply a distribution function in the normal direction for node placement. Function of Reynolds number

    Apply vector smoothing at areas of high surface curvature Katz, Wissink 3

  • Part 2: Strand Mesh GenerationVector SmoothingApply normal vector smoothing on areas with high curvature by minimizing the equation at each node using Lagrange multipliers and updated with Jacobi Iterations3. Katz, Wissink 3

  • Part 2: Strand Grid Generation Implementation DetailCoding will be done in Fortran 95, unless a need for complex data structures arises, then it will be done in CParallelization of the code will be done in MPI. Will require the use of an external library, Parmetis to partition the surface meshVery little communication required since only the neighboring nodes of the surface mesh are used for normal vector generation

  • Part 2: Strand Grid Generation Implementation Schedule04/15/13- Implementation of the strand mesh generation. Validation is trivial since the problem is geometric in nature and visual inspection of the resulting mesh will suffice.

    Time Permitting- Integration of the strand methods into the DG Flow Solver

    End of Semester- Final Report

  • Questions?

  • References:

    S.-Y. Lin, Y.-S. Ching Quadrature-Free Implementation of the Discontinuous Galerkin Method for Hyperbolic Equations. San-Yih Lin Yan Shin-Ching. National Cheng Kung University, Tainan, Taiwan 70101, National Republic of ChinaB. Cockburn, C.W. Shu. Runge-Kutta Discontinuous Galerkin Methods for Convection-dominated Problems. A. Katz, A. Wissink. Application of Strand Meshes to Complex Aerodynamic Flow Fields