AFEPack
公有类型 | 公有成员 | 私有成员 | 私有属性 | 友元
RegularMesh< DIM, DOW >模板类参考

#include <HGeometry.h>

类RegularMesh< DIM, DOW >继承关系图:
Mesh< DIM, DOW >

所有成员的列表。

公有类型

enum  { dim = DIM, dow = DOW }
typedef IrregularMesh< DIM, DOWir_mesh_t
typedef RegularMesh< DIM, DOWmesh_t

公有成员

ir_mesh_tirregularMesh () const
void renumerateElement ()
std::vector< std::vector
< HGeometryBase * > > & 
h_geometry ()
const std::vector< std::vector
< HGeometryBase * > > & 
h_geometry () const
HGeometryBaseh_geometry (int dim, u_int idx) const
template<int GDIM>
HGeometry< GDIM, DOW > * h_geometry (u_int idx) const
template<class T , int GDIM>
T * new_property (u_int idx, const property_id_t< T > &pid) const
template<class T , int GDIM>
T * get_property (int idx, const property_id_t< T > &pid) const
template<class T , int GDIM>
void free_property (int idx, const property_id_t< T > &pid) const
template<class T , int GDIM>
T * new_property (const GeometryBM &geo, const property_id_t< T > &pid) const
template<class T , int GDIM>
T * get_property (const GeometryBM &geo, const property_id_t< T > &pid) const
template<class T , int GDIM>
void free_property (const GeometryBM &geo, const property_id_t< T > &pid) const
template<class T >
T * new_property (int dim, const GeometryBM &geo, const property_id_t< T > &pid) const
template<class T >
T * get_property (int dim, int idx, const property_id_t< T > &pid) const
template<class T >
void free_property (int dim, int idx, const property_id_t< T > &pid) const
template<class T >
T * new_property (int dim, int idx, const property_id_t< T > &pid) const
template<class T >
T * get_property (int dim, const GeometryBM &geo, const property_id_t< T > &pid) const
template<class T >
void free_property (int dim, const GeometryBM &geo, const property_id_t< T > &pid) const
template<class LABEL >
void refineLabelled (LABEL &flag)
template<class LABEL >
void coarsenLabelled (LABEL &flag)
void renumerateElementHSFC (void(*f)(double, double, double, double &, double &, double &)=NULL)
virtual void writeEasyMesh (const std::string &) const
virtual void writeTecplotData (const std::string &) const
virtual void writeOpenDXData (const std::string &) const
virtual void writeSimplestSimplexMesh (const std::string &) const
virtual void writeSimplexMesh (const std::string &) const
template<>
void writeEasyMesh (const std::string &filename) const
template<>
void writeTecplotData (const std::string &filename) const
template<>
void writeTecplotData (const std::string &filename) const
template<>
void writeOpenDXData (const std::string &filename) const
template<>
void writeOpenDXData (const std::string &filename) const
template<>
void writeOpenDXData (const std::string &filename) const
template<>
void writeSimplestSimplexMesh (const std::string &filename) const
template<>
void writeSimplestSimplexMesh (const std::string &filename) const
template<>
void writeSimplestSimplexMesh (const std::string &filename) const
template<>
void writeSimplexMesh (const std::string &filename) const
template<>
void writeSimplexMesh (const std::string &filename) const
template<>
void writeSimplexMesh (const std::string &filename) const

私有成员

 RegularMesh ()
 几何体对HGeometry的反向索引表
 RegularMesh (const mesh_t &m)
mesh_toperator= (const mesh_t &m)
 RegularMesh (ir_mesh_t *m)

私有属性

ir_mesh_tirregular_mesh
std::vector< std::vector
< HGeometryBase * > > 
h_geometry_ptr

友元

class IrregularMesh< DIM, DOW >

详细描述

template<int DIM, int DOW = DIM>
class RegularMesh< DIM, DOW >

This is a derativate class of the {class Mesh} in the finite element library. It's used to build the relationship of a mesh used by the finite element mesh and the depended semi-regular mesh.


成员类型定义文档

template<int DIM, int DOW = DIM>
typedef IrregularMesh<DIM,DOW> RegularMesh< DIM, DOW >::ir_mesh_t
template<int DIM, int DOW = DIM>
typedef RegularMesh<DIM,DOW> RegularMesh< DIM, DOW >::mesh_t

重载Mesh< DIM, DOW >


成员枚举类型文档

template<int DIM, int DOW = DIM>
anonymous enum
枚举值:
dim 
dow 

构造及析构函数文档

template<int DIM, int DOW = DIM>
RegularMesh< DIM, DOW >::RegularMesh ( ) [inline, private]

几何体对HGeometry的反向索引表

对构造函数和赋值运算符私有化保护,不允许用户构造本类对象

template<int DIM, int DOW = DIM>
RegularMesh< DIM, DOW >::RegularMesh ( const mesh_t m) [inline, private]
template<int DIM, int DOW = DIM>
RegularMesh< DIM, DOW >::RegularMesh ( ir_mesh_t m) [inline, explicit, private]

成员函数文档

template<int DIM, int DOW = DIM>
template<class LABEL >
void RegularMesh< DIM, DOW >::coarsenLabelled ( LABEL &  flag) [inline]
template<int DIM, int DOW = DIM>
template<class T , int GDIM>
void RegularMesh< DIM, DOW >::free_property ( int  idx,
const property_id_t< T > &  pid 
) const [inline]
template<int DIM, int DOW = DIM>
template<class T , int GDIM>
void RegularMesh< DIM, DOW >::free_property ( const GeometryBM geo,
const property_id_t< T > &  pid 
) const [inline]
template<int DIM, int DOW = DIM>
template<class T >
void RegularMesh< DIM, DOW >::free_property ( int  dim,
int  idx,
const property_id_t< T > &  pid 
) const [inline]
template<int DIM, int DOW = DIM>
template<class T >
void RegularMesh< DIM, DOW >::free_property ( int  dim,
const GeometryBM geo,
const property_id_t< T > &  pid 
) const [inline]
template<int DIM, int DOW = DIM>
template<class T , int GDIM>
T* RegularMesh< DIM, DOW >::get_property ( int  idx,
const property_id_t< T > &  pid 
) const [inline]

取第 dim 维的第 idx 个几何体的性质表。

参数:
dim维数
idx几何体序号
pid性质表 ID
返回:
性质表指针
template<int DIM, int DOW = DIM>
template<class T , int GDIM>
T* RegularMesh< DIM, DOW >::get_property ( const GeometryBM geo,
const property_id_t< T > &  pid 
) const [inline]

取第 dim 维的几何体 geo 的性质表。

template<int DIM, int DOW = DIM>
template<class T >
T* RegularMesh< DIM, DOW >::get_property ( int  dim,
int  idx,
const property_id_t< T > &  pid 
) const [inline]

取第 dim 维的第 idx 个几何体的性质表。

参数:
dim维数
idx几何体序号
pid性质表 ID
返回:
性质表指针
template<int DIM, int DOW = DIM>
template<class T >
T* RegularMesh< DIM, DOW >::get_property ( int  dim,
const GeometryBM geo,
const property_id_t< T > &  pid 
) const [inline]

为第 dim 维的几何体 geo 新分配性质表。

template<int DIM, int DOW = DIM>
std::vector<std::vector<HGeometryBase*> >& RegularMesh< DIM, DOW >::h_geometry ( ) [inline]
template<int DIM, int DOW = DIM>
const std::vector<std::vector<HGeometryBase*> >& RegularMesh< DIM, DOW >::h_geometry ( ) const [inline]
template<int DIM, int DOW = DIM>
HGeometryBase* RegularMesh< DIM, DOW >::h_geometry ( int  dim,
u_int  idx 
) const [inline]
template<int DIM, int DOW = DIM>
template<int GDIM>
HGeometry<GDIM,DOW>* RegularMesh< DIM, DOW >::h_geometry ( u_int  idx) const [inline]

取第 GDIM 维的第 idx 个几何体的 HGeometry 的指针。

template<int DIM, int DOW = DIM>
ir_mesh_t& RegularMesh< DIM, DOW >::irregularMesh ( ) const [inline]
template<int DIM, int DOW = DIM>
template<class T , int GDIM>
T* RegularMesh< DIM, DOW >::new_property ( u_int  idx,
const property_id_t< T > &  pid 
) const [inline]

为第 dim 维的第 idx 个几何体新分配性质表。

参数:
dim维数
idx几何体序号
pid性质表 ID
返回:
新分配的性质表指针
template<int DIM, int DOW = DIM>
template<class T , int GDIM>
T* RegularMesh< DIM, DOW >::new_property ( const GeometryBM geo,
const property_id_t< T > &  pid 
) const [inline]

为第 dim 维的几何体 geo 新分配性质表。

template<int DIM, int DOW = DIM>
template<class T >
T* RegularMesh< DIM, DOW >::new_property ( int  dim,
const GeometryBM geo,
const property_id_t< T > &  pid 
) const [inline]

为第 dim 维的几何体 geo 新分配性质表。

template<int DIM, int DOW = DIM>
template<class T >
T* RegularMesh< DIM, DOW >::new_property ( int  dim,
int  idx,
const property_id_t< T > &  pid 
) const [inline]

为第 dim 维的第 idx 个几何体新分配性质表。

参数:
dim维数
idx几何体序号
pid性质表 ID
返回:
新分配的性质表指针
template<int DIM, int DOW = DIM>
mesh_t& RegularMesh< DIM, DOW >::operator= ( const mesh_t ) [inline, private]

Copy operator.

重载Mesh< DIM, DOW >

template<int DIM, int DOW = DIM>
template<class LABEL >
void RegularMesh< DIM, DOW >::refineLabelled ( LABEL &  flag) [inline]
template<int DIM, int DOW = DIM>
void RegularMesh< DIM, DOW >::renumerateElement ( ) [inline]

Renumerate the element of the mesh. This is a very simple but efficient algorithm to decrease the band-width of the sparse system obtained.

重载Mesh< DIM, DOW >

template<int DIM, int DOW = DIM>
void RegularMesh< DIM, DOW >::renumerateElementHSFC ( void(*)(double, double, double, double &, double &, double &)  f = NULL)

重载Mesh< DIM, DOW >

template<int DIM, int DOW = DIM>
virtual void RegularMesh< DIM, DOW >::writeEasyMesh ( const std::string &  ) const [virtual]

Write the mesh data into {easymesh} format data files. For 2-d only.

重载Mesh< DIM, DOW >

template<>
void RegularMesh< 2, DOW >::writeEasyMesh ( const std::string &  filename) const [virtual]

重载Mesh< DIM, DOW >

template<int DIM, int DOW = DIM>
virtual void RegularMesh< DIM, DOW >::writeOpenDXData ( const std::string &  ) const [virtual]

Write the mesh data into {IBM OpenDX} native data format.

template<>
void RegularMesh< 1, DOW >::writeOpenDXData ( const std::string &  filename) const
template<>
void RegularMesh< 2, DOW >::writeOpenDXData ( const std::string &  filename) const
template<>
void RegularMesh< 3, DOW >::writeOpenDXData ( const std::string &  filename) const
template<int DIM, int DOW = DIM>
virtual void RegularMesh< DIM, DOW >::writeSimplestSimplexMesh ( const std::string &  ) const [virtual]

写入为 SimplestMesh 可以读入的形式。对于二维情况,我们使得网格中 只有三角形,对于三维情况,我们使得网格中只有四面体,这样输出的数 据使用 SimplestSimplexMesh 读入以后就可以产生出完整的网格数据。在 这个过程中,我们将会丢失关于材料标识的信息。

template<>
void RegularMesh< 1, DOW >::writeSimplestSimplexMesh ( const std::string &  filename) const
template<>
void RegularMesh< 2, DOW >::writeSimplestSimplexMesh ( const std::string &  filename) const
template<>
void RegularMesh< 3, DOW >::writeSimplestSimplexMesh ( const std::string &  filename) const
template<int DIM, int DOW = DIM>
virtual void RegularMesh< DIM, DOW >::writeSimplexMesh ( const std::string &  ) const [virtual]

写入为内部的 mesh 格式,但是网格中只有单纯形单元。

template<>
void RegularMesh< 1, DOW >::writeSimplexMesh ( const std::string &  filename) const
template<>
void RegularMesh< 2, DOW >::writeSimplexMesh ( const std::string &  filename) const
template<>
void RegularMesh< 3, DOW >::writeSimplexMesh ( const std::string &  filename) const

Todo: ...

template<int DIM, int DOW = DIM>
virtual void RegularMesh< DIM, DOW >::writeTecplotData ( const std::string &  ) const [virtual]

Write the mesh data into {Techplot} Finite-Element data format.

重载Mesh< DIM, DOW >

template<>
void RegularMesh< 2, DOW >::writeTecplotData ( const std::string &  filename) const [virtual]

重载Mesh< DIM, DOW >

template<>
void RegularMesh< 3, DOW >::writeTecplotData ( const std::string &  filename) const [virtual]

重载Mesh< DIM, DOW >


友元及相关函数文档

template<int DIM, int DOW = DIM>
friend class IrregularMesh< DIM, DOW > [friend]

成员数据文档

template<int DIM, int DOW = DIM>
std::vector<std::vector<HGeometryBase*> > RegularMesh< DIM, DOW >::h_geometry_ptr [private]
template<int DIM, int DOW = DIM>
ir_mesh_t* RegularMesh< DIM, DOW >::irregular_mesh [private]

该类的文档由以下文件生成: