cogeometry.html
来自「有限元学习研究用源代码(老外的),供科研人员参考」· HTML 代码 · 共 73 行
HTML
73 行
<TITLE>COG 1.0 - cogeometry</TITLE>
<P>The aim of this file is to give a description of the abstract,
theoretical concept I have named <B>cogeometry</B>. This may be
useful for a better understanding of the idea behind the software
package <A HREF="cog.html">COG 1.0</A>.
<H1>Cogeometry</H1>
<H2>Contravariant Geometry Description</H2>
<P>A geometry description describes the subdivision of the space into
different regions, boundary faces between these regions, similar
boundary edges and boundary vertices in 3D. This can be easily
generalized for arbitrary dimension where the geometry description
describes the subdivision of the space into boundary faces of each
codimension between 0 (regions) and n (boundary vertices).
<P>A <B>Cogeometry</B> is a new type of geometry description which is
much easier to create and modify compared with a usual geometry
description with boundary grids or boundary mappings. The notion
<B>cogeometry</B> for this type of geometry description was created
similar to the notion <B>cohomology</B> in algebraic topology.
<P>The main difference to the usual geometry description is that it
is <A HREF="cogdef.html#contravariance"> contravariant</A>. This
seems much more natural, because the object we want to describe - the
geometry - has also contravariant behaviour. That means, we have a
natural <B>pre-image</B> of a geometry, but there is no such natural
<B>image</B> operation: Once we have a map X->Y and a geometry on
Y, we can define a geometry on X (the pre-image) by a simple rule: the
regions in X are the (set-theoretical) pre-images of the regions in Y.
<P>In the other direction, we have no such natural operation. A
geometry on is something meaningful, but there is no way to define an
image of a geometry for maps which are not reversible.
<P>There are a lot of <A HREF="cogoperations.html">interesting
operations</A> which allow to define and modify geometries which are
de-facto only special cases of this <B>preimage-operation</B>. A
geometry description which is contravariant can handle such operations
much easier compared with a non-contravariant geometry description.
<H2>Definition</H2>
<P>It is possible to give a nice, abstract definition of a cogeometry
on the space <B>R<SUP>n</SUP></B> by n+1 functions. Each of these
functions <B>F<SUB>k</SUB></B> allows to define intersections of
k-segments with simplices of dimension k.
<P>It works even for infinite-dimensional spaces, in this case we
need an infinite number of such functions. But there is an interesting
subclass of cogeometries - with <B>finite codimension</B> - which is
completely defined also by a finite number of them.
<P>In this sense, a cogeometry is a variant of a dual
construction. Instead of defining a k-segment using a map from a
k-simplex into the space, we use a function <B>F<SUB>k</SUB></B>
defined on such maps.
<P>In the n-dimensional case, we need only the first (n+1) of
them.
<H2>Implementation of the concept in COG 1.0</H2>
<P>In <A HREF="cog.html">COG 1.0</A>, we plan to implement only the
first four of these functions. For simplicity of implementation, each
of the functions <B>F<SUB>k</SUB></B> for k>0 is splitted into two
with slightly different parameter list.
<P>This leads to the C++ class definition you can find in <A
HREF="cog.hxx"> cog.hxx</A>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?