---
name: "form_option_type"
section: "2rheolef"
platform: "linux"
package: "librheolef-dev"
version: "6.7-1+b4"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/form_option_type"
---

# form\_option\_type(2rheolef)

send options to the integrate function

## 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;
};

```

## SEE ALSO

quadrature\_option\_type(2)
