![]() |
Reference documentation for deal.II version GIT 00e6fe71c9 2023-06-04 19:35:01+00:00
|
Namespaces | |
internal | |
Variables | |
template<int dim, int spacedim> | |
concept | is_valid_dim_spacedim |
template<typename VectorType > | |
concept | is_dealii_vector_type |
template<typename VectorType > | |
concept | is_writable_dealii_vector_type |
template<typename VectorType > | |
concept | is_dealii_petsc_vector_type |
template<typename VectorType > | |
concept | is_dealii_petsc_matrix_type |
template<typename MeshType > | |
concept | is_triangulation_or_dof_handler |
A namespace that is used to declare concepts used in C++20-style requires
clauses.
concept concepts::is_valid_dim_spacedim |
A concept that tests that a combination of dim
and spacedim
template arguments is valid. Specifically, we must have that
dim>=1
spacedim<=3
dim<=spacedim
. These are the kinds of requirements that are imposed, for example, on class Triangulation. Definition at line 720 of file template_constraints.h.
concept concepts::is_dealii_vector_type |
A concept that tests whether a given template argument is a deal.II vector type. This concept is used in many places, such as for the functions in namespace VectorTools, where functions take a vector as argument, but the type of the vector is a template argument. The concept ensures that these functions cannot be called with an int
argument, for example, for which the declaration without the concept would be perfectly valid but for which one would later get a linker error because the function is only instantiated for deal.II vector types.
Definition at line 866 of file template_constraints.h.
concept concepts::is_writable_dealii_vector_type |
A concept that tests whether a given template argument is a deal.II vector type into which one can write. It is defined by asking whether the is_dealii_vector_type concept is satisfied, and that the template argument is not a const
-qualified type. For example, is_writable_dealii_vector_type<Vector>
is true, whereas is_writable_dealii_vector_type<const Vector>
is not.
Definition at line 879 of file template_constraints.h.
concept concepts::is_dealii_petsc_vector_type |
A concept that tests whether a given template argument is a deal.II vector type that internally builds on PETSc functionality. This concept is used to constrain some classes that implement advanced functionality based on PETSc and that requires that the vector it works on are PETSc vectors. This includes, for example, the time stepping and nonlinear solver classes in namespace PETScWrappers.
Definition at line 892 of file template_constraints.h.
concept concepts::is_dealii_petsc_matrix_type |
A concept that tests whether a given template argument is a deal.II matrix type that internally builds on PETSc functionality. This concept is used to constrain some classes that implement advanced functionality based on PETSc and that requires that the matrix it works on are PETSc matrices. This includes, for example, the time stepping and nonlinear solver classes in namespace PETScWrappers.
Definition at line 904 of file template_constraints.h.
concept concepts::is_triangulation_or_dof_handler |
A concept that is used to check whether the MeshType
template type used in many functions in namespace GridTools and VectorTools is in fact a "mesh" in the sense expected by these functions. Specifically, this means that the type is either a Triangulation or a DoFHandler type.
Definition at line 978 of file template_constraints.h.