Provided by: librheolef-dev_7.0-3_amd64 bug

NAME

       quadrature_option - send options to the integrate function

SYNOPSIS

       The  quadrature_option  class  is  used  to  send  options  to  the integrate function see
       integrate(4).  This class allows one to set the family (Gauss, Gauss-Lobatto, etc) and the
       polynomial degree that is exactly integrated.

       A special family name, call equispaced, refers to an equispaced set of point, suitable for
       some irregular functions, e.g. the Heaviside function.  In that case, the order  parameter
       refers  to  the  number  of  nodes  used.  For instance, order=1 refers to the trapezoidal
       formulae and for the general case, there are order+1 nodes per edges.  See  also  the  see
       quadrature(2) for more on quadrature formulae.

IMPLEMENTATION

       class quadrature_option {
       public:
       // typedefs:

         typedef size_t size_type;

         typedef enum {
               gauss           = 0,
               gauss_lobatto   = 1,
               gauss_radau     = 2,
               middle_edge     = 3,
               superconvergent = 4,
               equispaced      = 5,
               max_family      = 6
         } family_type; // update also family_name[] in quatrature.cc

       // allocators:

         quadrature_option(
               family_type ft = quadrature_option::gauss,
               size_type k = std::numeric_limits<size_type>::max());

         quadrature_option (const quadrature_option& qopt);
         quadrature_option& operator= (const quadrature_option& qopt);

       // accessors & modifiers:

         size_t         get_order() const;
         family_type    get_family() const;
         std::string    get_family_name() const;
         void set_order (size_t r);
         void set_family (family_type type);
         void set_family (std::string name);
       // data:
       protected:
         family_type   _family;
         size_t        _order;
       };

SEE ALSO

       integrate(4), quadrature(2)

COPYRIGHT

       Copyright  (C) 2000-2018 Pierre Saramito <Pierre.Saramito@imag.fr> GPLv3+: GNU GPL version
       3 or later <http://gnu.org/licenses/gpl.html>.  This is free software:  you  are  free  to
       change and redistribute it.  There is NO WARRANTY, to the extent permitted by law.