AFEPack
|
#include <FEMSpace.h>
公有类型 | |
enum | { dim = DIM, dow = DOW, tdim = TDIM } |
typedef value_type | value_t |
typedef Number | number_t |
typedef Element< value_t, DIM, DOW, TDIM > | element_t |
typedef FEMSpace< value_t, DIM, DOW, TDIM > | fe_space_t |
typedef FEMFunction< value_t, DIM, DOW, TDIM, number_t > | fe_func_t |
公有成员 | |
FEMFunction (fe_space_t &=*((fe_space_t *) NULL)) | |
virtual | ~FEMFunction () |
fe_space_t & | femSpace () |
const fe_space_t & | femSpace () const |
void | reinit (fe_space_t &, bool=false) |
value_type | value (const afepack::Point< DOW > &, const element_t &) const |
std::vector< value_type > | gradient (const afepack::Point< DOW > &, const element_t &) const |
std::vector< value_type > | value (const std::vector< afepack::Point< DOW > > &, const element_t &) const |
std::vector< std::vector < value_type > > | gradient (const std::vector< afepack::Point< DOW > > &, const element_t &) const |
value_type | value (const std::vector< value_type > &, const element_t &) const |
std::vector< value_type > | gradient (const std::vector< std::vector< value_type > > &, const element_t &) const |
std::vector< value_type > | value (const std::vector< std::vector< value_type > > &, const element_t &) const |
std::vector< std::vector < value_type > > | gradient (const std::vector< std::vector< std::vector< value_type > > > &, const element_t &) const |
void | loadData (const std::string &filename) |
void | writeData (const std::string &filename) |
void | writeEasyMeshData (const std::string &filename) |
void | writeTecplotData (const std::string &filename) |
void | writeOpenDXData (const std::string &filename, int flag=0) const |
template<> | |
value_type | value (const afepack::Point< DOW > &p, const Element< value_type, DIM, DOW, TDIM > &e) const |
template<> | |
std::vector< value_type > | gradient (const afepack::Point< DOW > &p, const Element< value_type, DIM, DOW, TDIM > &e) const |
template<> | |
std::vector< value_type > | value (const std::vector< afepack::Point< DOW > > &p, const Element< value_type, DIM, DOW, TDIM > &e) const |
template<> | |
std::vector< std::vector < value_type > > | gradient (const std::vector< afepack::Point< DOW > > &p, const Element< value_type, DIM, DOW, TDIM > &e) const |
template<> | |
value_type | value (const std::vector< value_type > &basis_value, const Element< value_type, DIM, DOW, TDIM > &e) const |
template<> | |
std::vector< value_type > | gradient (const std::vector< std::vector< value_type > > &basis_gradient, const Element< value_type, DIM, DOW, TDIM > &e) const |
template<> | |
std::vector< value_type > | value (const std::vector< std::vector< value_type > > &basis_value, const Element< value_type, DIM, DOW, TDIM > &e) const |
template<> | |
std::vector< std::vector < value_type > > | gradient (const std::vector< std::vector< std::vector< value_type > > > &basis_gradient, const Element< value_type, DIM, DOW, TDIM > &e) const |
template<> | |
void | writeEasyMeshData (const std::string &filename) |
template<> | |
void | writeTecplotData (const std::string &filename) |
template<> | |
void | writeTecplotData (const std::string &filename) |
template<> | |
void | writeOpenDXData (const std::string &filename, int flag) const |
template<> | |
void | writeOpenDXData (const std::string &filename, int flag) const |
template<> | |
void | writeEasyMeshData (const std::string &filename) |
template<> | |
void | writeTecplotData (const std::string &filename) |
template<> | |
void | writeOpenDXData (const std::string &filename, int flag) const |
template<> | |
void | writeTecplotData (const std::string &filename) |
template<> | |
void | writeOpenDXData (const std::string &filename, int flag) const |
私有属性 | |
fe_space_t * | sp |
Finite element function is a vector associated with a finite element space. The entry of the vector is related with the corresponding degree of freedom of the finite element space.
typedef Element<value_t,DIM,DOW,TDIM> FEMFunction< value_type, DIM, DOW, TDIM, Number >::element_t |
typedef FEMFunction<value_t,DIM,DOW,TDIM,number_t> FEMFunction< value_type, DIM, DOW, TDIM, Number >::fe_func_t |
typedef FEMSpace<value_t,DIM,DOW,TDIM> FEMFunction< value_type, DIM, DOW, TDIM, Number >::fe_space_t |
typedef Number FEMFunction< value_type, DIM, DOW, TDIM, Number >::number_t |
typedef value_type FEMFunction< value_type, DIM, DOW, TDIM, Number >::value_t |
anonymous enum |
FEMFunction< value_type, DIM, DOW, TDIM, Number >::FEMFunction | ( | fe_space_t & | = *((fe_space_t *) NULL) | ) |
Default constructor.
virtual FEMFunction< value_type, DIM, DOW, TDIM, Number >::~FEMFunction | ( | ) | [virtual] |
Destructor.
fe_space_t& FEMFunction< value_type, DIM, DOW, TDIM, Number >::femSpace | ( | ) |
Finite element space, obsolete
const fe_space_t& FEMFunction< value_type, DIM, DOW, TDIM, Number >::femSpace | ( | ) | const [inline] |
std::vector< value_type > FEMFunction< value_type, DIM, DOW, TDIM, Number >::gradient | ( | const afepack::Point< DOW > & | p, |
const Element< value_type, DIM, DOW, TDIM > & | e | ||
) | const |
std::vector< std::vector< value_type > > FEMFunction< value_type, DIM, DOW, TDIM, Number >::gradient | ( | const std::vector< afepack::Point< DOW > > & | p, |
const Element< value_type, DIM, DOW, TDIM > & | e | ||
) | const |
std::vector< value_type > FEMFunction< value_type, DIM, DOW, TDIM, Number >::gradient | ( | const std::vector< std::vector< value_type > > & | basis_gradient, |
const Element< value_type, DIM, DOW, TDIM > & | e | ||
) | const |
std::vector< std::vector< value_type > > FEMFunction< value_type, DIM, DOW, TDIM, Number >::gradient | ( | const std::vector< std::vector< std::vector< value_type > > > & | basis_gradient, |
const Element< value_type, DIM, DOW, TDIM > & | e | ||
) | const |
std::vector<value_type> FEMFunction< value_type, DIM, DOW, TDIM, Number >::gradient | ( | const afepack::Point< DOW > & | , |
const element_t & | |||
) | const |
Value of the function at points in certain element.
std::vector<std::vector<value_type> > FEMFunction< value_type, DIM, DOW, TDIM, Number >::gradient | ( | const std::vector< afepack::Point< DOW > > & | , |
const element_t & | |||
) | const |
Gradient of the function at points in certain element.
std::vector<value_type> FEMFunction< value_type, DIM, DOW, TDIM, Number >::gradient | ( | const std::vector< std::vector< value_type > > & | , |
const element_t & | |||
) | const |
Value of the function at points in certain element assuming the basis function gradient is known.
std::vector<std::vector<value_type> > FEMFunction< value_type, DIM, DOW, TDIM, Number >::gradient | ( | const std::vector< std::vector< std::vector< value_type > > > & | , |
const element_t & | |||
) | const |
Gradient of the function at points in certain element assuming the basis function gradient is known.
void FEMFunction< value_type, DIM, DOW, TDIM, Number >::loadData | ( | const std::string & | filename | ) |
Load data written by writeData.
void FEMFunction< value_type, DIM, DOW, TDIM, Number >::reinit | ( | fe_space_t & | , |
bool | = false |
||
) |
Reinitialization.
value_type FEMFunction< value_type, DIM, DOW, TDIM, Number >::value | ( | const afepack::Point< DOW > & | p, |
const Element< value_type, DIM, DOW, TDIM > & | e | ||
) | const |
std::vector< value_type > FEMFunction< value_type, DIM, DOW, TDIM, Number >::value | ( | const std::vector< afepack::Point< DOW > > & | p, |
const Element< value_type, DIM, DOW, TDIM > & | e | ||
) | const |
value_type FEMFunction< value_type, DIM, DOW, TDIM, Number >::value | ( | const std::vector< value_type > & | basis_value, |
const Element< value_type, DIM, DOW, TDIM > & | e | ||
) | const |
for optimization. Assume the basis function value and gradient are known, the following functions will speedup the calculation to get the value and gradient of the finite element function.
std::vector< value_type > FEMFunction< value_type, DIM, DOW, TDIM, Number >::value | ( | const std::vector< std::vector< value_type > > & | basis_value, |
const Element< value_type, DIM, DOW, TDIM > & | e | ||
) | const |
value_type FEMFunction< value_type, DIM, DOW, TDIM, Number >::value | ( | const afepack::Point< DOW > & | , |
const element_t & | |||
) | const |
Value of the function at a point in certain element.
std::vector<value_type> FEMFunction< value_type, DIM, DOW, TDIM, Number >::value | ( | const std::vector< afepack::Point< DOW > > & | , |
const element_t & | |||
) | const |
Gradient of the function at a point in certain element.
value_type FEMFunction< value_type, DIM, DOW, TDIM, Number >::value | ( | const std::vector< value_type > & | , |
const element_t & | |||
) | const |
for optimization of the code when the basis function value and gradient are assumed known, the following functions will make it more efficient to calculate the value and gradient of the finite element function. Value of the function at a point in certain element assuming the basis function value is known.
std::vector<value_type> FEMFunction< value_type, DIM, DOW, TDIM, Number >::value | ( | const std::vector< std::vector< value_type > > & | , |
const element_t & | |||
) | const |
Gradient of the function at a point in certain element assuming the basis function value is known.
void FEMFunction< value_type, DIM, DOW, TDIM, Number >::writeData | ( | const std::string & | filename | ) |
Write the data of the function in internal data format. This function will output the value of the vector only used to be rereaded in.
void FEMFunction< double, 2 >::writeEasyMeshData | ( | const std::string & | filename | ) |
void FEMFunction< value_type, DIM >::writeEasyMeshData | ( | const std::string & | filename | ) |
void FEMFunction< value_type, DIM, DOW, TDIM, Number >::writeEasyMeshData | ( | const std::string & | filename | ) |
Write the data of the function in easymesh data format. This function will output mesh into easymesh data format at first and then output the function value on the nodes in the file named filename.dat. Only valid for 2 dimension and the mesh is turned into a RegularMesh object, for such otherwise object this function can't handle.
void FEMFunction< double, 2 >::writeOpenDXData | ( | const std::string & | filename, |
int | flag | ||
) | const |
void FEMFunction< value_type, DIM >::writeOpenDXData | ( | const std::string & | filename, |
int | flag | ||
) | const |
void FEMFunction< value_type, DIM >::writeOpenDXData | ( | const std::string & | filename, |
int | flag | ||
) | const |
void FEMFunction< double, 3 >::writeOpenDXData | ( | const std::string & | filename, |
int | flag | ||
) | const |
void FEMFunction< value_type, DIM, DOW, TDIM, Number >::writeOpenDXData | ( | const std::string & | filename, |
int | flag = 0 |
||
) | const |
Write the data of the function in IBM Open Data Explorer data format. This function will output the value of the function on nodes of the meshand will only be avaiable for certain case becase I'm not so familiar to this data format.
filename | the file name to write to |
flag | indicate to use position dependent data or connection dependent data, flag=0: position dependent data; flag=1: connection dependent data; default 0 |
void FEMFunction< double, 2 >::writeTecplotData | ( | const std::string & | filename | ) |
void FEMFunction< double, 3 >::writeTecplotData | ( | const std::string & | filename | ) |
void FEMFunction< value_type, DIM >::writeTecplotData | ( | const std::string & | filename | ) |
void FEMFunction< value_type, DIM >::writeTecplotData | ( | const std::string & | filename | ) |
void FEMFunction< value_type, DIM, DOW, TDIM, Number >::writeTecplotData | ( | const std::string & | filename | ) |
Write the data of the function in Tecplot data format. This function will output the value of the function on those interpolating point of basis functions.
fe_space_t* FEMFunction< value_type, DIM, DOW, TDIM, Number >::sp [private] |
Finite element space.