Prev Up
Go backward to Vertex Grid Geometry Concept
Go up to Grid Geometries

Volume Grid Geometry Concept

Description
The Volume Grid Geometry assigns a geometric entity to every combinatorial element of a grid. Moreover, the it offers methods to calculate the volumes of these geometric entities, which means volume in the combinatorial dimension of the entities, for example, length of edges or area of faces.
Refinement of
Vertex Grid Geometry
Notation
Geo is a type which is a model of Vertex Grid Geometry
g is an object of type Geo
x is an object of type Geo::real_type
q is an object of Geo::coord_type
s is an object of type Geo::segment_type
p is an object of type Geo::polygon_type
h is an object of type Geo::polyhedron_type
e is an objects of type Geo::grid_type::Edge, which is a model of Grid Edge.
f is an objects of type Geo::grid_type::Face, which is a model of Grid Face.
c is an objects of type Geo::grid_type::Cell, which is a model of Grid Cell.
Definitions
Associated types
Name Expression Description
point type Geo::coord_type the geometric point type, representation of the elements of the topological space where the geometry lives

model of STL Assignable.

real number type real_type representation of a real number, model of STL Assignable
segment type segment_type geometric type corressponding to edges,

model of STL Assignable

polygon type polygon_type geometric type corresponding to faces (if the grid type has combinatorial dimension >= 2.)

model of STL Assignable

polyhedron type polyhedron_type geometric type corresponding to cells (if the grid type has combinatorial dimension 3.)

model of STL Assignable

Valid Expressions
Name Expression Type requirements return type
1-dimensional geometric entity s = g.segment(e) Geo::segment_type
2-dimensional geometric entity p = g.polygon(f) Geo::polygon_type
3-dimensional geometric entity h = g.polyhedron(c) Geo::polyhedron_type
1-dimensional volume x = g.volume(e); real_type
1-dimensional volume x = g.length(e); real_type
2-dimensional volume x = g.volume(f); real_type
2-dimensional volume x = g.area(f); real_type
3-dimensional volume x = g.volume(c); real_type
Expression semantics

The general requirement here is that the mapping to geometric entities is faithful with respect to the combinatorial structure, that is, the poset defined by the inclusion relation of the geometric elements is identical or a refinement of the poset of the grid: The relative boundary of a geometric image of a grid element is identical of the union of the geometric images of its lower-dimensional incidents. Note, however, that self-intersecting immersions are not excluded.
Name Expression Precondition Semantics Postcondition
1-dimensional geometric entity s = g.segment(e) e is valid get the segment corresponding to e s == g.segment(e)

start(s) == g.coord(e.V1())

end(s) == g.coord(e.V2())

2-dimensional geometric entity p = g.polygon(f) f is valid get the polygon corresponding to f boundary of  p = U  e < f  g.segment(e)

Invariants
Refinements
Models
Notes
See also

Guntram Berti

Prev Up