deal.II version GIT relicensing-2206-gaa53ff9447 2024-12-02 09:10:00+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
quadrature_selector.h
Go to the documentation of this file.
1// ------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4// Copyright (C) 2003 - 2022 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Part of the source code is dual licensed under Apache-2.0 WITH
9// LLVM-exception OR LGPL-2.1-or-later. Detailed license information
10// governing the source code and code contributions can be found in
11// LICENSE.md and CONTRIBUTING.md at the top level directory of deal.II.
12//
13// ------------------------------------------------------------------------
14
15
16#ifndef dealii_quadrature_selector_h
17#define dealii_quadrature_selector_h
18
19
20#include <deal.II/base/config.h>
21
24
25#include <string>
26
28
39template <int dim>
40class QuadratureSelector : public Quadrature<dim>
41{
42public:
48 QuadratureSelector(const std::string &s, const unsigned int order = 0);
49
55 static std::string
57
68 int,
69 << "You tried to generate a QGauss object with an invalid "
70 << "number " << arg1
71 << " of quadrature points in each coordinate "
72 << "direction. This number must be greater than or equal "
73 << "to 1.");
78 std::string,
79 unsigned int,
80 << "You tried to generate a " << arg1
81 << " object; no order is needed for objects of this kind, but "
82 << arg2 << " was given as argument.");
87 std::string,
88 << arg1 << " is not a valid name for a quadrature rule.");
90private:
96 static Quadrature<dim>
97 create_quadrature(const std::string &s, const unsigned int order);
98};
100
101#endif
static std::string get_quadrature_names()
static Quadrature< dim > create_quadrature(const std::string &s, const unsigned int order)
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:498
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:499
static ::ExceptionBase & ExcInvalidOrder(std::string arg1, unsigned int arg2)
static ::ExceptionBase & ExcInvalidQGaussOrder(int arg1)
static ::ExceptionBase & ExcInvalidQuadrature(std::string arg1)
#define DeclException2(Exception2, type1, type2, outsequence)
Definition exceptions.h:534
#define DeclException1(Exception1, type1, outsequence)
Definition exceptions.h:511