NAME¶
form_option_type - send options to the integrate function
DESCRIPTION¶
This class is used to send options to the integrate function when building a
form. It allows to set the quadrature formulae that is used for numerical
integration see quadrature_option_type(2) and two boolean flags.
FLAGS¶
- ignore_sys_coord
- This flag has effects only for axisymmetric coordinate systems. When set,
it omits the r weight in the r dr dz measure during the
numerical integration performed the integrate function. This
feature is usefull for computing the stream function in the axisymmetric
case.
- lump
- This flag, when set, perfoms a mass lumping procedure on the matrix
at the element level:
a(i,i) := sum(j) a(i,j)
The resulting matrix is diagonal. This feature is usefull for computing a
diagonal approximation of the mass matrix for the continuous P1
element.
- invert
- This flag, when set, perfoms a local inversion on the matrix at the
element level:
a := inv(a)
This procedure is allowed only when the global matrix is block diagonal,
e.g. for discontinuous or bubble approximations. This property is true
when basis functions have a compact support inside exactly one
element.
DEFAULT FLAG VALUES¶
All flags are set to false by default.
IMPLEMENTATION¶
struct form_option_type : quadrature_option_type {
// allocators:
form_option_type();
form_option_type (const form_option_type& fopt);
form_option_type (const quadrature_option_type& qopt);
form_option_type& operator= (const form_option_type& fopt);
#ifdef TO_CLEAN
operator quadrature_option_type() const { return *this; }
#endif // TO_CLEAN
// data:
bool ignore_sys_coord, lump, invert;
};