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

#include <TemplateElement.h>

所有成员的列表。

公有类型

enum  { dim = DIM, tdim = TDIM }
typedef afepack::Point< DIMpoint_t
typedef afepack::Point< TDIMref_point_t

公有成员

 CoordTransform ()
 CoordTransform (const CoordTransform< TDIM, DIM > &)
 ~CoordTransform ()
CoordTransform< TDIM, DIM > & operator= (const CoordTransform< TDIM, DIM > &)
void loadFunction ()
void unloadFunction ()
point_t local_to_global (const ref_point_t &, const std::vector< ref_point_t > &, const std::vector< point_t > &) const
ref_point_t global_to_local (const point_t &, const std::vector< ref_point_t > &, const std::vector< point_t > &) const
double local_to_global_jacobian (const ref_point_t &, const std::vector< ref_point_t > &, const std::vector< point_t > &) const
double global_to_local_jacobian (const point_t &, const std::vector< ref_point_t > &, const std::vector< point_t > &) const
std::vector< point_tlocal_to_global (const std::vector< ref_point_t > &, const std::vector< ref_point_t > &, const std::vector< point_t > &) const
std::vector< ref_point_tglobal_to_local (const std::vector< point_t > &, const std::vector< ref_point_t > &, const std::vector< point_t > &) const
std::vector< double > local_to_global_jacobian (const std::vector< ref_point_t > &, const std::vector< ref_point_t > &, const std::vector< point_t > &) const
std::vector< double > global_to_local_jacobian (const std::vector< point_t > &, const std::vector< ref_point_t > &, const std::vector< point_t > &) const
void readData (const std::string &)
void writeData (const std::string &) const
 DeclException1 (ExcFileOpen, char *,<< "Can't open library "<< arg1)
 DeclException2 (ExcLoadFunction, char *, char *,<< "Can't load function "<< arg1<< " from library "<< arg2)

私有属性

void * handle
std::string library_path
std::string library_name
std::string l2g_function_name
std::string g2l_function_name
std::string l2g_jacobian_function_name
std::string g2l_jacobian_function_name
void(* l2g_function )(const double *, const double **, const double **, double *)
void(* g2l_function )(const double *, const double **, const double **, double *)
double(* l2g_jacobian_function )(const double *, const double **, const double **)
double(* g2l_jacobian_function )(const double *, const double **, const double **)

友元

template<class STREAM , int TGDIM, int GDIM>
STREAM & operator>> (STREAM &, CoordTransform< TGDIM, GDIM > &)
template<class STREAM , int TGDIM, int GDIM>
STREAM & operator<< (STREAM &, const CoordTransform< TGDIM, GDIM > &)

详细描述

template<int TDIM, int DIM = TDIM>
class CoordTransform< TDIM, DIM >

Coordinate transformation between the template element geometry and real element geometry. This class only contains the information of several functions to implement such operations. Those functions serious depend on the order of the vertices of the geometries. The facilities provided including: get the corresponding point on the real element of a point on the template element and vice visa, get the Jacobian determinant at a certain point on the template element or on the real element.


成员类型定义文档

template<int TDIM, int DIM = TDIM>
typedef afepack::Point<DIM> CoordTransform< TDIM, DIM >::point_t
template<int TDIM, int DIM = TDIM>
typedef afepack::Point<TDIM> CoordTransform< TDIM, DIM >::ref_point_t

成员枚举类型文档

template<int TDIM, int DIM = TDIM>
anonymous enum
枚举值:
dim 
tdim 

构造及析构函数文档

template<int TDIM, int DIM>
CoordTransform< TDIM, DIM >::CoordTransform ( )

Default constructor.

template<int TDIM, int DIM>
CoordTransform< TDIM, DIM >::CoordTransform ( const CoordTransform< TDIM, DIM > &  c)

Copy constructor.

template<int TDIM, int DIM>
CoordTransform< TDIM, DIM >::~CoordTransform ( )

Destructor.


成员函数文档

template<int TDIM, int DIM = TDIM>
CoordTransform< TDIM, DIM >::DeclException1 ( ExcFileOpen  ,
char *  ,
<< "Can't open library "<<  arg1 
)
template<int TDIM, int DIM = TDIM>
CoordTransform< TDIM, DIM >::DeclException2 ( ExcLoadFunction  ,
char *  ,
char *  ,
<< "Can't load function "<< arg1<< " from library "<<  arg2 
)
template<int TDIM, int DIM = TDIM>
ref_point_t CoordTransform< TDIM, DIM >::global_to_local ( const point_t ,
const std::vector< ref_point_t > &  ,
const std::vector< point_t > &   
) const

Mapping a point on real element to template element.

template<int TDIM, int DIM = TDIM>
std::vector<ref_point_t > CoordTransform< TDIM, DIM >::global_to_local ( const std::vector< point_t > &  ,
const std::vector< ref_point_t > &  ,
const std::vector< point_t > &   
) const

Mapping points on real element to template element.

template<int TDIM, int DIM = TDIM>
double CoordTransform< TDIM, DIM >::global_to_local_jacobian ( const point_t ,
const std::vector< ref_point_t > &  ,
const std::vector< point_t > &   
) const

Jacobian determinant at a point on real element.

template<int TDIM, int DIM = TDIM>
std::vector<double> CoordTransform< TDIM, DIM >::global_to_local_jacobian ( const std::vector< point_t > &  ,
const std::vector< ref_point_t > &  ,
const std::vector< point_t > &   
) const

Jacobian determinant at points on real element.

template<int TDIM, int DIM>
void CoordTransform< TDIM, DIM >::loadFunction ( )

Open the shared library and get those function pointers.

template<int TDIM, int DIM = TDIM>
point_t CoordTransform< TDIM, DIM >::local_to_global ( const ref_point_t ,
const std::vector< ref_point_t > &  ,
const std::vector< point_t > &   
) const

Mapping a point on template element to real element.

template<int TDIM, int DIM = TDIM>
std::vector<point_t > CoordTransform< TDIM, DIM >::local_to_global ( const std::vector< ref_point_t > &  ,
const std::vector< ref_point_t > &  ,
const std::vector< point_t > &   
) const

Mapping points on template element to real element.

template<int TDIM, int DIM = TDIM>
double CoordTransform< TDIM, DIM >::local_to_global_jacobian ( const ref_point_t ,
const std::vector< ref_point_t > &  ,
const std::vector< point_t > &   
) const

Jacobian determinant at a point on template element.

template<int TDIM, int DIM = TDIM>
std::vector<double> CoordTransform< TDIM, DIM >::local_to_global_jacobian ( const std::vector< ref_point_t > &  ,
const std::vector< ref_point_t > &  ,
const std::vector< point_t > &   
) const

Jacobian determinant at points on template element.

template<int TDIM, int DIM>
CoordTransform< TDIM, DIM > & CoordTransform< TDIM, DIM >::operator= ( const CoordTransform< TDIM, DIM > &  c)

Copy operator.

template<int TDIM, int DIM>
void CoordTransform< TDIM, DIM >::readData ( const std::string &  s)

Read in the information from a file.

template<int TDIM, int DIM>
void CoordTransform< TDIM, DIM >::unloadFunction ( )

Close the shared library.

template<int TDIM, int DIM>
void CoordTransform< TDIM, DIM >::writeData ( const std::string &  s) const

Write out the information to a file.


友元及相关函数文档

template<int TDIM, int DIM = TDIM>
template<class STREAM , int TGDIM, int GDIM>
STREAM& operator<< ( STREAM &  ,
const CoordTransform< TGDIM, GDIM > &   
) [friend]

Stream output.

template<int TDIM, int DIM = TDIM>
template<class STREAM , int TGDIM, int GDIM>
STREAM& operator>> ( STREAM &  ,
CoordTransform< TGDIM, GDIM > &   
) [friend]

Stream input.


成员数据文档

template<int TDIM, int DIM = TDIM>
void(* CoordTransform< TDIM, DIM >::g2l_function)(const double *, const double **, const double **, double *) [private]

Pointer to the function to map a point on real element to template element.

template<int TDIM, int DIM = TDIM>
std::string CoordTransform< TDIM, DIM >::g2l_function_name [private]

Name of the function to map a point on real element to template element.

template<int TDIM, int DIM = TDIM>
double(* CoordTransform< TDIM, DIM >::g2l_jacobian_function)(const double *, const double **, const double **) [private]

Pointer to the function given the Jacobian determinant at a point on real element.

template<int TDIM, int DIM = TDIM>
std::string CoordTransform< TDIM, DIM >::g2l_jacobian_function_name [private]

Jacobian determinant of the function at a point on real element.

template<int TDIM, int DIM = TDIM>
void* CoordTransform< TDIM, DIM >::handle [private]

Handle of the object to open the shared library.

template<int TDIM, int DIM = TDIM>
void(* CoordTransform< TDIM, DIM >::l2g_function)(const double *, const double **, const double **, double *) [private]

Pointer to the function to map a point on template element to real element.

template<int TDIM, int DIM = TDIM>
std::string CoordTransform< TDIM, DIM >::l2g_function_name [private]

Name of the function to map a point on template element to real element.

template<int TDIM, int DIM = TDIM>
double(* CoordTransform< TDIM, DIM >::l2g_jacobian_function)(const double *, const double **, const double **) [private]

Pointer to the function given the Jacobian determinant at a point on template element.

template<int TDIM, int DIM = TDIM>
std::string CoordTransform< TDIM, DIM >::l2g_jacobian_function_name [private]

Jacobian determinant of the function at a point on template element.

template<int TDIM, int DIM = TDIM>
std::string CoordTransform< TDIM, DIM >::library_name [private]

Name of the shared library.

template<int TDIM, int DIM = TDIM>
std::string CoordTransform< TDIM, DIM >::library_path [private]

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