Grid Generator

Content

  1. Introduction
  2. Computation of the cut cells
  3. Witch of Agnesi
  4. Cartesian cut cell grids for buildings
  5. City of Leipzig, Eisenbahnstraße
  6. Two dimensional street canyon
  7. Introduction

    Cartesian methods differ in that they are non-body-fitted. Hexahedral cells in the domain consist of a set of right parallelepipeds and the (normally) orthogonal grid system may extend through solid wall boundaries within the computational domain. The method then removes, or flags, cells which are completely internal to the geometry and identifies those cells which intersect the solid walls. The remaining cells are considered general volume mesh elements. Fundamentally, Cartesian approaches trade the case-specific problem of generating a body-fitted surface mesh for the more general problem of computing and characterizing intersections between hexahedral cells and the surface geometry.
    This work documents a new method for rapid and robust Cartesian mesh generation for a surface level geometry. The new algorithm adopts a novel strategy which first inspects the vertices to extract the cutted surface before proceeding with the further grid generation in a second phase. The main task there is the determination of the intersection point of straight lines with the surface. The intersection algorithm is based on a robust root finder which consistently handles geometric degenaracies.
    For surface geometries given by other data structures an intermediate level set description has to be found, which relies on an algorithm which determines if a given point is inside or outside of an obstacle. This idea is applied for the grid generation of an urban building configuration, where each individual building is described by a polyhedron.
    As input to the CFD code ASAM the grid generator must supply the free face area of the six faces of the parallelepiped and the free volume.

Computation of the cut cells

The algorithm consists of the following stages, where you should visualize th Cartesian Grid a wire frame consisting of vertices and edges.

  1. 1. Divide the vertices in the two parts where of them is the set of all vertices which are outside of the orography.
  2. 2. Flag all edges where the two end points lie in different parts.
  3. 3. Determine the intersection point of this edges with the level set.
  4. 4. Compute the free face area for all faces which have intersecting edges by a numerical quadrature rule.
  5. 5. Compute the free volume for all cells which have intersecting edges by a numerical quadrature rule.
  6. 6. Determine the intersecting polygons for visualization.
  7. Stages of the cut cell computation:

    Cut_cell Cut_cell1 Cut_cell2
    Cut_cell3 Cut_cell4 Cut_cell5

Possible intersection between the hexahedral and the cutting surface:
800px-Schnittgebilde5x_v1

For applications with the different resolution in the simulation the dividing interface requires a special treatment. To enforce flux continuity the free face area of the coarse cell has to be equal to the sum of the possible two fine face areas, \( F^{C}=F^{F}_{1}+F^{F}_{2}\). The face areas therefore determined for the fine cells and than summed up for the coarse cell.

Witch of Agnesi

Figure A: Cartesian cut cell grid of a witch of Agnesi. The blocks are colored in blue.

Figure A: Cartesian cut cell grid of a witch of Agnesi. The blocks are colored in blue.


A classicla test for atmospheric models is the flow over bell shaped mountains like the witch of Agnesi which is given by the level set function
\(\phi (x,y,z) = z- \frac{H}{1+(x/a)^{2}+(y/b)^{2}}\)
where H is the height of the mountain and a and b are the half width in x and y direction. Figure A shows a small example where the computational domain is decomposed in B blocks of different resolution. In Figure A at the point x=0 is the summit of the mountain located. In the following Figure B the summit is shifted to the right and the resolution of the hill near the summit decreases.


Figure B: cartesian cut cell grid of a with of Agnesi, where the summit of the hill is located in different regions of the resolution.

800px-Agnesi_6BlkV21_36x1x12_2D 800px-Agnesi_6BlkV22_36x1x12_2D
800px-Agnesi_6BlkV23_36x1x12_2D 800px-Agnesi_6BlkV24_36x1x12_2D

Cartesian cut cell grid for buildings

A building is described by a set of polygonal faces, which is boundary representation with absolute coordinates. There are a lot of different data structures of this type like CityGML, 3D ESRI shape specification, the SKP format of Google Earth and so on. For convex buildings the distance to the buildings surface can simply be computed as the minimum of the distances to all faces forming the building, which can be further generalized to a group of buildings. For a simple building with a pitched roof the data structure look like the following:

1
8
4 4 4 4 4 3 4 3
w w w w r r r r
-0.2 1.0 1.0 -0.2 -0.2 -0.2 -0.2 -0.2 0.0d0 0.0d0 1.0 1.0
1.0 1.0 1.0 1.0 -0.2 1.0 1.0 -0.2 0.0 0.0 1.0 1.0
1.0 -0.2 -0. 1.0 1.0 1.0 1.0 1.0 0.0 0.0 1.0 1.0
-0.2 -0.2 -0.2 -0.2 1.0 -0.2 -0.2 1.0 0.0 0.0 1.0 1.0
-0.2 1.0 0.6 0.2 -0.2 -0.2 0.4 0.4 1.0 1.0 2.2 2.2
1.0 1.0 0.6 -0.2 1.0 0.4 1.0 1.0 2.2
1.0 -0.2 0.2 0.6 1.0 1.0 0.4 0.4 1.0 1.0 2.2 2.2
-0.2 -0.2 0.2 1.0 -0.2 0.4 1.0 1.0 2.2

Building with pitch roof (see description above) with increasing grid solution:

800px-Walmdach1_3x3x3 800px-Walmdach1_3x3x3schnitt3D 800px-Walmdach1_3x3x3schnitt2D
800px-Walmdach1_4x4x4_v2 800px-Walmdach1_4x4x4_v2_schnitt3D 800px-Walmdach1_4x4x4_v2_schnitt2D
800px-Walmdach1_6x6x5_v4 800px-Walmdach1_6x6x5_v4_schnitt3D 800px-Walmdach1_6x6x5_v3schnitt2D
800px-Walmdach1_18x18x20 800px-Walmdach1_18x18x20schnitt3D 800px-Walmdach1_18x18x20schnitt2D

City of Leipzig, Eisenbahnstraße

To accompany the aerosol number measurement activities in the Eisenbahnstraße and it is surrounding a three dimensional city model is prepared in cooperation with the Department of Geography of the Martin-Luther-University of Halle. By combining orthophotos and cadastre information about the floor plan of each building a half automatic system will be installed to extract building heights and roof forms. An old representation of the part of the Eisenbahnstraße is visualized with the new grid generator in Figure C (see below). Part of the forthcoming work can be seen in the Figures D and E.

Figure C: Cartesian cut cell grid for a simplified representation of a part of the Eisenbahnstraße.

Figure C: Cartesian cut cell grid for a simplified representation of a part of the Eisenbahnstraße.

Figure D: Floor plan of the Eisenbahnstraße in the City of Leipzig from a two dimensional shape file.

Figure D: Floor plan of the Eisenbahnstraße in the City of Leipzig from a two dimensional shape file.

Figure E: Area of the Eisenbahnstraße. Orthophoto overlaid with the two dimensional shape file of the floor plan.

Figure E: Area of the Eisenbahnstraße. Orthophoto overlaid with the two dimensional shape file of the floor plan.

Two dimensional street canyon

The simulation shows the influence of the ratio of the height for two buildings which form the street canyon on the position and number of vortices in the canyon. For a ratio 0.5 two vortices are formed in the main street canyon where for a ratio 0.67 only one vortex is visible. The transition between these two configurations appears at a ratio of approximately 0.64. The computations were performed with periodic boundary conditions in the horizontal direction, a resolution of 1 meter and a driving wind at the upper boundary of \(3 ms^{-1}\).
A two dimensional street canyon for different ratios of building height:

Building height: r =0.64

Building height ratio: r =0.64

building height ratio: r=0.5

building height ratio: r=0.5

building height ratio: r= 0.67

building height ratio: r= 0.67