Classes | |
| struct | phelm::Element |
| Destination of this structure is finite-element matrix changing. More... | |
Typedefs | |
| typedef std::vector< Element > | phelm::elements_t |
| Elements vector. | |
Functions | |
| template<typename Functor , typename Data > | |
| void | phelm::generate_matrix (Matrix &A, const Mesh &m, Functor integrate_cb, Data user_data, bool transpose=false) |
| Generate finite element matrix. | |
| template<typename Functor , typename Data > | |
| void | phelm::generate_full_matrix (Matrix &A, const Mesh &m, Functor integrate_cb, Data user_data, bool transpose=false) |
| Generate full finite-elements matrix. | |
| template<typename Functor , typename Data > | |
| void | phelm::generate_right_part (double *b, const Mesh &m, Functor right_part_cb, Data user_data) |
| Generate right part. | |
| template<typename Functor , typename Data > | |
| void | phelm::generate_full_right_part (double *b, const Mesh &m, Functor right_part_cb, Data user_data) |
| Generate full right part. | |
| template<typename Functor , typename Data > | |
| void | phelm::generate_boundary_matrix (Matrix &A, const Mesh &m, Functor right_part_cb, Data user_data, bool transpose=false) |
| Generate boundary conditions matrix. | |
| template<typename Functor , typename Data > | |
| void | phelm::convolution (double *ans, const double *u, const double *v, const Mesh &m, Functor cb, Data user_data) |
| Convolution. | |
| typedef std::vector< Element > phelm::elements_t |
Elements vector.
If one wants to change multiple entries of finite-element matrix or finite-element right part he should return that vector in callback.
Definition at line 85 of file phelm_generators.h.
| void phelm::convolution | ( | double * | ans, | |
| const double * | u, | |||
| const double * | v, | |||
| const Mesh & | m, | |||
| Functor | cb, | |||
| Data | user_data | |||
| ) | [inline] |
Convolution.
| ans | - answer | |
| u | - mesh vector | |
| v | - mesh vector | |
| m | - mesh | |
| cb | - callback that calculates inner product of two basis functions on a triangle |
| user_data | - user data that is passed to callback |
Definition at line 440 of file phelm_generators.h.
| void phelm::generate_boundary_matrix | ( | Matrix & | A, | |
| const Mesh & | m, | |||
| Functor | right_part_cb, | |||
| Data | user_data, | |||
| bool | transpose = false | |||
| ) | [inline] |
Generate boundary conditions matrix.
The size of matrix is inner.size() x outer.size(). Callback parameters: j in boundary point, i is inner point
| A | - output matrix. | |
| m | - mesh | |
| right_part_cb | - callback that calculates inner product of two basis functions on a triangle |
| user_data | - user data | |
| transpose | - generate transposed matrix? |
Definition at line 394 of file phelm_generators.h.
| void phelm::generate_full_matrix | ( | Matrix & | A, | |
| const Mesh & | m, | |||
| Functor | integrate_cb, | |||
| Data | user_data, | |||
| bool | transpose = false | |||
| ) | [inline] |
Generate full finite-elements matrix.
| A | - output matrix | |
| m | - mesh | |
| integrate_cb | - callback that calculates inner product of two basis functions on a triangle |
| user_data | - user data | |
| transpose | - generate transposed matrix ? |
Definition at line 250 of file phelm_generators.h.
| void phelm::generate_full_right_part | ( | double * | b, | |
| const Mesh & | m, | |||
| Functor | right_part_cb, | |||
| Data | user_data | |||
| ) | [inline] |
Generate full right part.
| b | - output right part vector | |
| m | - mesh | |
| right_part_cb | - callback that calculates inner product of two basis functions on a triangle |
| user_data | - user data |
Definition at line 341 of file phelm_generators.h.
| void phelm::generate_matrix | ( | Matrix & | A, | |
| const Mesh & | m, | |||
| Functor | integrate_cb, | |||
| Data | user_data, | |||
| bool | transpose = false | |||
| ) | [inline] |
Generate finite element matrix.
Call integrate_cb for all phi_i, phi_j that are defined at shared point in triangle tr. If flag transpose is set then generate transposed matrix
Callback parameters:
| A | - output matrix | |
| m | - mesh | |
| integrate_cb | - callback that calculates inner product of two basis functions on a triangle |
| user_data | - user data | |
| transpose | - generate transposed matrix ? |
Definition at line 199 of file phelm_generators.h.
| void phelm::generate_right_part | ( | double * | b, | |
| const Mesh & | m, | |||
| Functor | right_part_cb, | |||
| Data | user_data | |||
| ) | [inline] |
Generate right part.
| b | - output right part vector | |
| m | - mesh | |
| right_part_cb | - callback that calculates inner product of two basis functions on a triangle |
| user_data | - user data |
Definition at line 290 of file phelm_generators.h.