|
AFEPack
|
类型定义 | |
| typedef int | Method |
函数 | |
| template<class value_type , int DIM> | |
| void | L2Interpolate (const FEMFunction< value_type, DIM > &src, FEMFunction< value_type, DIM > &des) |
| template<class value_type , int DIM> | |
| void | L2Interpolate (value_type(*)(const double *), FEMFunction< value_type, DIM > &fun) |
| template<class value_type , int DIM> | |
| void | L2Interpolate (value_type(*)(const afepack::Point< DIM > &), FEMFunction< value_type, DIM > &fun) |
| template<class value_type , int DIM> | |
| void | L2Interpolate (const Function< value_type > &, FEMFunction< value_type, DIM > &fun) |
| template<class value_type , int DIM> | |
| void | L2Project (const FEMFunction< value_type, DIM > &src, FEMFunction< value_type, DIM > &des, Method method, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Project (value_type(*)(const double *), FEMFunction< value_type, DIM > &fun, Method method, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Project (value_type(*)(const afepack::Point< DIM > &), FEMFunction< value_type, DIM > &fun, Method method, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Project (const Function< value_type > &, FEMFunction< value_type, DIM > &fun, Method method, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Project (value_type(*f)(const value_type &), const FEMFunction< value_type, DIM > &src, FEMFunction< value_type, DIM > &des, Method method, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Project (value_type(*f)(const value_type &, const value_type &), const FEMFunction< value_type, DIM > &src0, const FEMFunction< value_type, DIM > &src1, FEMFunction< value_type, DIM > &des, Method method, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Discretize (const FEMFunction< value_type, DIM > &src, Vector< double > &des, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Discretize (const FEMFunction< value_type, DIM > &src, const FEMSpace< value_type, DIM > &space, Vector< double > &des, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Discretize (value_type(*)(const double *), const FEMSpace< value_type, DIM > &space, Vector< double > &des, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Discretize (value_type(*)(const afepack::Point< DIM > &), const FEMSpace< value_type, DIM > &space, Vector< double > &des, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Discretize (const Function< value_type > &, const FEMSpace< value_type, DIM > &space, Vector< double > &des, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Discretize (value_type(*f)(const value_type &), const FEMFunction< value_type, DIM > &src, Vector< double > &des, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Discretize (value_type(*f)(const value_type &), const FEMFunction< value_type, DIM > &src, const FEMSpace< value_type, DIM > &space, Vector< double > &des, int algebric_accuracy) |
| template<class value_type , int DIM> | |
| void | L2Discretize (value_type(*f)(const value_type &, const value_type &), const FEMFunction< value_type, DIM > &src0, const FEMFunction< value_type, DIM > &src1, const FEMSpace< value_type, DIM > &space, Vector< double > &des, int algebric_accuracy) |
变量 | |
| static const Method | MASS_ACCUMULATION = 1 |
| static const Method | LEAST_SQUARE = 2 |
| static const Method | LOCAL_LEAST_SQUARE = 3 |
This namespace packs a list of operator operating on the finite element functions and analytic functions. Such operations include $L^2$ interpolation, projection and discretization. Generally, an numerical intergration will be involved in the implentation of those operations. A parameter {Method} is sumetimes in the parameter list of sume operators to require certain operation style.
| typedef int Operator::Method |
| template void Operator::L2Discretize | ( | const FEMFunction< value_type, DIM > & | src, |
| Vector< double > & | des, | ||
| int | algebric_accuracy | ||
| ) |
Discrete formation of a finite element function in the finite element space it's in.
| template void Operator::L2Discretize | ( | const FEMFunction< value_type, DIM > & | src, |
| const FEMSpace< value_type, DIM > & | space, | ||
| Vector< double > & | des, | ||
| int | algebric_accuracy | ||
| ) |
Discrete formation of a finite element function in finite element space {space}.
| template void Operator::L2Discretize | ( | value_type(*)(const double *) | , |
| const FEMSpace< value_type, DIM > & | space, | ||
| Vector< double > & | des, | ||
| int | algebric_accuracy | ||
| ) |
Discrete formation of an analytic function in finite element space {space}.
| template void Operator::L2Discretize | ( | value_type(*)(const afepack::Point< DIM > &) | , |
| const FEMSpace< value_type, DIM > & | space, | ||
| Vector< double > & | des, | ||
| int | algebric_accuracy | ||
| ) |
Discrete formation of an analytic function in finite element space {space}.
| template void Operator::L2Discretize | ( | const Function< value_type > & | , |
| const FEMSpace< value_type, DIM > & | space, | ||
| Vector< double > & | des, | ||
| int | algebric_accuracy | ||
| ) |
Discrete formation of an analytic function in finite element space {space}.
| template void Operator::L2Discretize | ( | value_type(*)(const value_type &) | f, |
| const FEMFunction< value_type, DIM > & | src, | ||
| Vector< double > & | des, | ||
| int | algebric_accuracy | ||
| ) |
Discrete formation of an analytic function {f} of a finite element function {src} in the finite element space {src} in.
| template void Operator::L2Discretize | ( | value_type(*)(const value_type &) | f, |
| const FEMFunction< value_type, DIM > & | src, | ||
| const FEMSpace< value_type, DIM > & | space, | ||
| Vector< double > & | des, | ||
| int | algebric_accuracy | ||
| ) |
Discrete formation of an analytic function {f} of a finite element function {src} in another finite element space {space}.
| template void Operator::L2Discretize | ( | value_type(*)(const value_type &, const value_type &) | f, |
| const FEMFunction< value_type, DIM > & | src0, | ||
| const FEMFunction< value_type, DIM > & | src1, | ||
| const FEMSpace< value_type, DIM > & | space, | ||
| Vector< double > & | des, | ||
| int | algebric_accuracy | ||
| ) |
Discrete formation of an analytic function {f} of two finite element functions {src0} and {src1} to a finite element function {des} in another finite element space, which means {des = Discrtize( f(src0, src1) )}. Because we can now only cope with those operation with two different meshes, it's required that the three finite element functions {src0}, {src1} and {des} should be on only two different meshes.
| template void Operator::L2Interpolate | ( | const FEMFunction< value_type, DIM > & | src, |
| FEMFunction< value_type, DIM > & | des | ||
| ) |
Interpolate a finite element function {src} in one finite element space to a finite element funtion {des} in another finite element space.
| template void Operator::L2Interpolate | ( | value_type(*)(const double *) | , |
| FEMFunction< value_type, DIM > & | fun | ||
| ) |
Interpolate an analytic function {src} to a finite element funtion {des} in another finite element space.
| template void Operator::L2Interpolate | ( | value_type(*)(const afepack::Point< DIM > &) | , |
| FEMFunction< value_type, DIM > & | fun | ||
| ) |
Interpolate an analytic function {src} to a finite element funtion {des} in another finite element space.
| template void Operator::L2Interpolate | ( | const Function< value_type > & | , |
| FEMFunction< value_type, DIM > & | fun | ||
| ) |
Interpolate an analytic function {src} to a finite element funtion {des} in another finite element space.
| template void Operator::L2Project | ( | const FEMFunction< value_type, DIM > & | src, |
| FEMFunction< value_type, DIM > & | des, | ||
| Method | method, | ||
| int | algebric_accuracy | ||
| ) |
Project a finite element function {src} in one finite element space to a finite element function {des} in another finite element space, with algebriac integrate accuracy order {algebric_accuracy}
| template void Operator::L2Project | ( | value_type(*)(const double *) | , |
| FEMFunction< value_type, DIM > & | fun, | ||
| Method | method, | ||
| int | algebric_accuracy | ||
| ) |
Project an analytic {src} in one finite element space to a finite element function {des} in another finite element space, with algebriac integrate accuracy order {algebric_accuracy}
| template void Operator::L2Project | ( | value_type(*)(const afepack::Point< DIM > &) | , |
| FEMFunction< value_type, DIM > & | fun, | ||
| Method | method, | ||
| int | algebric_accuracy | ||
| ) |
Project an analytic {src} in one finite element space to a finite element function {des} in another finite element space, with algebriac integrate accuracy order {algebric_accuracy}
| template void Operator::L2Project | ( | const Function< value_type > & | , |
| FEMFunction< value_type, DIM > & | fun, | ||
| Method | method, | ||
| int | algebric_accuracy | ||
| ) |
Project an analytic {src} in one finite element space to a finite element function {des} in another finite element space, with algebriac integrate accuracy order {algebric_accuracy}
| template void Operator::L2Project | ( | value_type(*)(const value_type &) | f, |
| const FEMFunction< value_type, DIM > & | src, | ||
| FEMFunction< value_type, DIM > & | des, | ||
| Method | method, | ||
| int | algebric_accuracy | ||
| ) |
Project an analytic function {f} of a finite element function {src} to a finite element function {des} in another finite element space, which means {des = Project( f(src) )}.
| template void Operator::L2Project | ( | value_type(*)(const value_type &, const value_type &) | f, |
| const FEMFunction< value_type, DIM > & | src0, | ||
| const FEMFunction< value_type, DIM > & | src1, | ||
| FEMFunction< value_type, DIM > & | des, | ||
| Method | method, | ||
| int | algebric_accuracy | ||
| ) |
Project an analytic function {f} of two finite element functions {src0} and {src1} to a finite element function {des} in another finite element space, which means {des = Project( f(src0, src1) )}. Because we can now only cope with those operation with two different meshes, it's required that the three finite element functions {src0}, {src1} and {des} should be on only two different meshes.
const Method Operator::LEAST_SQUARE = 2 [static] |
const Method Operator::LOCAL_LEAST_SQUARE = 3 [static] |
const Method Operator::MASS_ACCUMULATION = 1 [static] |
1.7.6.1