\r
Parser();\r
\r
- virtual void InitCharSets();\r
- virtual void InitFun();\r
- virtual void InitConst();\r
- virtual void InitOprt();\r
- virtual void OnDetectVar(string_type *pExpr, int &nStart, int &nEnd);\r
+ virtual void InitCharSets() override;\r
+ virtual void InitFun() override;\r
+ virtual void InitConst() override;\r
+ virtual void InitOprt() override;\r
+ virtual void OnDetectVar(string_type *pExpr, int &nStart, int &nEnd) override;\r
\r
value_type Diff(value_type *a_Var, \r
value_type a_fPos, \r
\r
protected:\r
\r
- virtual char_type do_decimal_point() const\r
+ virtual char_type do_decimal_point() const override\r
{\r
return m_cDecPoint;\r
}\r
\r
- virtual char_type do_thousands_sep() const\r
+ virtual char_type do_thousands_sep() const override\r
{\r
return m_cThousandsSep;\r
}\r
\r
- virtual std::string do_grouping() const \r
+ virtual std::string do_grouping() const override\r
{ \r
// fix for issue 4: https://code.google.com/p/muparser/issues/detail?id=4\r
// courtesy of Jens Bartsch\r
public:\r
ParserInt();\r
\r
- virtual void InitFun();\r
- virtual void InitOprt();\r
- virtual void InitConst();\r
- virtual void InitCharSets();\r
+ virtual void InitFun() override;\r
+ virtual void InitOprt() override;\r
+ virtual void InitConst() override;\r
+ virtual void InitCharSets() override;\r
};\r
\r
} // namespace mu\r
BoundaryValues () {}
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component=0) const;
+ const unsigned int component=0) const override;
};
// Given the flow direction, the inflow boundary of the unit square
TableHandler &results_table);
virtual void operator () (const DoFHandler<dim> &dof_handler,
- const Vector<double> &solution) const;
+ const Vector<double> &solution) const override;
DeclException1 (ExcEvaluationPointNotFound,
Point<dim>,
const DataOutBase::OutputFormat output_format);
virtual void operator () (const DoFHandler<dim> &dof_handler,
- const Vector<double> &solution) const;
+ const Vector<double> &solution) const override;
private:
const std::string output_name_base;
const DataOutBase::OutputFormat output_format;
const Quadrature<dim> &quadrature,
const Function<dim> &boundary_values);
virtual
- ~Solver ();
+ ~Solver () override;
virtual
void
- solve_problem ();
+ solve_problem () override;
virtual
void
- postprocess (const Evaluation::EvaluationBase<dim> &postprocessor) const;
+ postprocess (const Evaluation::EvaluationBase<dim> &postprocessor) const override;
virtual
unsigned int
- n_dofs () const;
+ n_dofs () const override;
// In the protected section of this class, we first have a number of
// member variables, of which the use should be clear from the previous
const Function<dim> &boundary_values);
protected:
const SmartPointer<const Function<dim> > rhs_function;
- virtual void assemble_rhs (Vector<double> &rhs) const;
+ virtual void assemble_rhs (Vector<double> &rhs) const override;
};
const Function<dim> &rhs_function,
const Function<dim> &boundary_values);
- virtual void refine_grid ();
+ virtual void refine_grid () override;
};
const Function<dim> &rhs_function,
const Function<dim> &boundary_values);
- virtual void refine_grid ();
+ virtual void refine_grid () override;
};
Solution () : Function<dim> () {}
virtual double value (const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
};
RightHandSide () : Function<dim> () {}
virtual double value (const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
};
PointValueEvaluation (const Point<dim> &evaluation_point);
virtual void operator () (const DoFHandler<dim> &dof_handler,
- const Vector<double> &solution) const;
+ const Vector<double> &solution) const override;
DeclException1 (ExcEvaluationPointNotFound,
Point<dim>,
GridOutput (const std::string &output_name_base);
virtual void operator () (const DoFHandler<dim> &dof_handler,
- const Vector<double> &solution) const;
+ const Vector<double> &solution) const override;
private:
const std::string output_name_base;
};
const Quadrature<dim-1> &face_quadrature,
const Function<dim> &boundary_values);
virtual
- ~Solver ();
+ ~Solver () override;
virtual
void
- solve_problem ();
+ solve_problem () override;
virtual
void
- postprocess (const Evaluation::EvaluationBase<dim> &postprocessor) const;
+ postprocess (const Evaluation::EvaluationBase<dim> &postprocessor) const override;
virtual
unsigned int
- n_dofs () const;
+ n_dofs () const override;
protected:
const SmartPointer<const FiniteElement<dim> > fe;
const Function<dim> &boundary_values);
virtual
- void output_solution () const;
+ void output_solution () const override;
protected:
const SmartPointer<const Function<dim> > rhs_function;
- virtual void assemble_rhs (Vector<double> &rhs) const;
+ virtual void assemble_rhs (Vector<double> &rhs) const override;
};
const Function<dim> &rhs_function,
const Function<dim> &boundary_values);
- virtual void refine_grid ();
+ virtual void refine_grid () override;
};
const Function<dim> &rhs_function,
const Function<dim> &boundary_values);
- virtual void refine_grid ();
+ virtual void refine_grid () override;
};
const Function<dim> &boundary_values,
const Function<dim> &weighting_function);
- virtual void refine_grid ();
+ virtual void refine_grid () override;
private:
const SmartPointer<const Function<dim> > weighting_function;
struct SetUp : public SetUpBase<dim>
{
virtual
- const Function<dim> &get_boundary_values () const;
+ const Function<dim> &get_boundary_values () const override;
virtual
- const Function<dim> &get_right_hand_side () const;
+ const Function<dim> &get_right_hand_side () const override;
virtual
- void create_coarse_grid (Triangulation<dim> &coarse_grid) const;
+ void create_coarse_grid (Triangulation<dim> &coarse_grid) const override;
private:
static const typename Traits::BoundaryValues boundary_values;
virtual
void
assemble_rhs (const DoFHandler<dim> &dof_handler,
- Vector<double> &rhs) const;
+ Vector<double> &rhs) const override;
DeclException1 (ExcEvaluationPointNotFound,
Point<dim>,
protected:
const SmartPointer<const DualFunctional::DualFunctionalBase<dim> > dual_functional;
- virtual void assemble_rhs (Vector<double> &rhs) const;
+ virtual void assemble_rhs (Vector<double> &rhs) const override;
static const Functions::ZeroFunction<dim> boundary_values;
};
virtual
void
- solve_problem ();
+ solve_problem () override;
virtual
void
- postprocess (const Evaluation::EvaluationBase<dim> &postprocessor) const;
+ postprocess (const Evaluation::EvaluationBase<dim> &postprocessor) const override;
virtual
unsigned int
- n_dofs () const;
+ n_dofs () const override;
- virtual void refine_grid ();
+ virtual void refine_grid () override;
virtual
void
- output_solution () const;
+ output_solution () const override;
private:
// In the private section, we have two functions that are used to call
BoundaryValues () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
{
public:
LaplaceIntegrator();
- virtual void cell(MeshWorker::DoFInfo<dim> &dinfo, MeshWorker::IntegrationInfo<dim> &info) const;
+ virtual void cell(MeshWorker::DoFInfo<dim> &dinfo, MeshWorker::IntegrationInfo<dim> &info) const override;
};
RightHandSide ();
virtual void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &value_list) const;
+ std::vector<Vector<double> > &value_list) const override;
};
virtual
void
vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
virtual
void
vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &value_list) const;
+ std::vector<Vector<double> > &value_list) const override;
};
virtual
void
vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
virtual
void
vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &value_list) const;
+ std::vector<Vector<double> > &value_list) const override;
private:
const double velocity;
RightHandSide () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
PressureBoundaryValues () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
ExactSolution () : Function<dim>(dim+1) {}
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
KInverse () : TensorFunction<2,dim>() {}
virtual void value_list (const std::vector<Point<dim> > &points,
- std::vector<Tensor<2,dim> > &values) const;
+ std::vector<Tensor<2,dim> > &values) const override;
};
PressureRightHandSide () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
PressureBoundaryValues () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
SaturationBoundaryValues () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
InitialValues () : Function<dim>(dim+2) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
{}
virtual void value_list (const std::vector<Point<dim> > &points,
- std::vector<Tensor<2,dim> > &values) const;
+ std::vector<Tensor<2,dim> > &values) const override;
private:
static std::vector<Point<dim> > centers;
BoundaryValues () : Function<dim>(dim+1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
RightHandSide () : Function<dim>(dim+1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
InitialValuesU () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
InitialValuesV () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
RightHandSide () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
BoundaryValuesU () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
BoundaryValuesV () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
{}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
struct Source
ExactSolution (const unsigned int n_components = 1,
const double time = 0.) : Function<dim>(n_components, time) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
template <int dim>
{}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
template <int dim>
{}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
const double period;
{
public:
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
RightHandSide () : Function<dim> () {}
virtual double value (const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
};
DirichletBoundaryValues() : Function<dim> (2) {};
virtual void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &value_list) const;
+ std::vector<Vector<double> > &value_list) const override;
};
void
evaluate_vector_field
(const DataPostprocessorInputs::Vector<dim> &inputs,
- std::vector<Vector<double> > &computed_quantities) const;
+ std::vector<Vector<double> > &computed_quantities) const override;
};
// In the constructor, we need to call the constructor of the base class
public:
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component=0) const;
+ const unsigned int component=0) const override;
};
public:
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component=0) const;
+ const unsigned int component=0) const override;
};
TemperatureInitialValues () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
TemperatureRightHandSide () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
TemperatureInitialValues () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
void
evaluate_vector_field
(const DataPostprocessorInputs::Vector<dim> &inputs,
- std::vector<Vector<double> > &computed_quantities) const;
+ std::vector<Vector<double> > &computed_quantities) const override;
- virtual std::vector<std::string> get_names () const;
+ virtual std::vector<std::string> get_names () const override;
virtual
std::vector<DataComponentInterpretation::DataComponentInterpretation>
- get_data_component_interpretation () const;
+ get_data_component_interpretation () const override;
- virtual UpdateFlags get_needed_update_flags () const;
+ virtual UpdateFlags get_needed_update_flags () const override;
private:
const unsigned int partition;
void
evaluate_vector_field
(const DataPostprocessorInputs::Vector<dim> &inputs,
- std::vector<Vector<double> > &computed_quantities) const;
+ std::vector<Vector<double> > &computed_quantities) const override;
- virtual std::vector<std::string> get_names () const;
+ virtual std::vector<std::string> get_names () const override;
virtual
std::vector<DataComponentInterpretation::DataComponentInterpretation>
- get_data_component_interpretation () const;
+ get_data_component_interpretation () const override;
- virtual UpdateFlags get_needed_update_flags () const;
+ virtual UpdateFlags get_needed_update_flags () const override;
private:
const bool do_schlieren_plot;
Velocity (const double initial_time = 0.0);
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector< Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
Pressure (const double initial_time = 0.0);
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector< Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
template <int dim>
Coefficient () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
template <typename number>
number value (const Point<dim,number> &p,
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
LaplaceOperator ();
- void clear();
+ void clear() override;
void evaluate_coefficient(const Coefficient<dim> &coefficient_function);
- virtual void compute_diagonal();
+ virtual void compute_diagonal() override;
private:
virtual void apply_add(LinearAlgebra::distributed::Vector<number> &dst,
- const LinearAlgebra::distributed::Vector<number> &src) const;
+ const LinearAlgebra::distributed::Vector<number> &src) const override;
void local_apply (const MatrixFree<dim,number> &data,
LinearAlgebra::distributed::Vector<number> &dst,
Solution () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
RightHandSide () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
template <>
{
public:
void cell(MeshWorker::DoFInfo<dim> &dinfo,
- typename MeshWorker::IntegrationInfo<dim> &info) const;
+ typename MeshWorker::IntegrationInfo<dim> &info) const override;
void boundary(MeshWorker::DoFInfo<dim> &dinfo,
- typename MeshWorker::IntegrationInfo<dim> &info) const;
+ typename MeshWorker::IntegrationInfo<dim> &info) const override;
void face(MeshWorker::DoFInfo<dim> &dinfo1,
MeshWorker::DoFInfo<dim> &dinfo2,
typename MeshWorker::IntegrationInfo<dim> &info1,
- typename MeshWorker::IntegrationInfo<dim> &info2) const;
+ typename MeshWorker::IntegrationInfo<dim> &info2) const override;
};
class RHSIntegrator : public MeshWorker::LocalIntegrator<dim>
{
public:
- void cell(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const;
- void boundary(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const;
+ void cell(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const override;
+ void boundary(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const override;
void face(MeshWorker::DoFInfo<dim> &dinfo1,
MeshWorker::DoFInfo<dim> &dinfo2,
typename MeshWorker::IntegrationInfo<dim> &info1,
- typename MeshWorker::IntegrationInfo<dim> &info2) const;
+ typename MeshWorker::IntegrationInfo<dim> &info2) const override;
};
class Estimator : public MeshWorker::LocalIntegrator<dim>
{
public:
- void cell(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const;
- void boundary(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const;
+ void cell(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const override;
+ void boundary(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const override;
void face(MeshWorker::DoFInfo<dim> &dinfo1,
MeshWorker::DoFInfo<dim> &dinfo2,
typename MeshWorker::IntegrationInfo<dim> &info1,
- typename MeshWorker::IntegrationInfo<dim> &info2) const;
+ typename MeshWorker::IntegrationInfo<dim> &info2) const override;
};
class ErrorIntegrator : public MeshWorker::LocalIntegrator<dim>
{
public:
- void cell(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const;
- void boundary(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const;
+ void cell(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const override;
+ void boundary(MeshWorker::DoFInfo<dim> &dinfo, typename MeshWorker::IntegrationInfo<dim> &info) const override;
void face(MeshWorker::DoFInfo<dim> &dinfo1,
MeshWorker::DoFInfo<dim> &dinfo2,
typename MeshWorker::IntegrationInfo<dim> &info1,
- typename MeshWorker::IntegrationInfo<dim> &info2) const;
+ typename MeshWorker::IntegrationInfo<dim> &info2) const override;
};
// Here we have the integration on cells. There is currently no good
RightHandSide () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
BoundaryValues () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
for (unsigned int i=0; i<dim; ++i)
return_value += 4.0 * std::pow(p(i), 4.0);
- return return_value;
+ return 1.;//return_value;
}
RightHandSide () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
template <int dim>
BoundaryValues () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
template <int dim>
Obstacle () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
template <int dim>
virtual
double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual
void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
};
template <int dim>
BoundaryValues ();
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual
void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
};
virtual
double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual
void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
private:
const double z_surface;
virtual
double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual
void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
private:
const BitmapFile<dim> input_obstacle;
PressureRightHandSide () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
PressureBoundaryValues () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
SaturationBoundaryValues () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
SaturationInitialValues () : Function<dim>(1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
{}
virtual void value_list (const std::vector<Point<dim> > &points,
- std::vector<Tensor<2,dim> > &values) const;
+ std::vector<Tensor<2,dim> > &values) const override;
private:
static std::vector<Point<dim> > centers;
BoundaryValues () : Function<dim>(dim+1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
RightHandSide () : Function<dim>(dim+1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
StokesBoundaryValues () : Function<dim>(dim+1+dim) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
RightHandSide () : Function<dim>(dim+1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
Coefficient () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
void
evaluate_vector_field
(const dealii::DataPostprocessorInputs::Vector<dim> &inputs,
- std::vector<Vector<double> > &computed_quantities) const;
+ std::vector<Vector<double> > &computed_quantities) const override;
- virtual std::vector<std::string> get_names () const;
+ virtual std::vector<std::string> get_names () const override;
virtual
std::vector<DataComponentInterpretation::DataComponentInterpretation>
- get_data_component_interpretation () const;
+ get_data_component_interpretation () const override;
- virtual UpdateFlags get_needed_update_flags () const;
+ virtual UpdateFlags get_needed_update_flags () const override;
};
ExactSolution (const unsigned int n_components = 1,
const double time = 0.) : Function<dim>(n_components, time) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
template <int dim>
Coefficient () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
Solution () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
SolutionAndGradient () : Function<dim>(dim) {}
virtual void vector_value (const Point<dim> &p,
- Vector<double> &v) const;
+ Vector<double> &v) const override;
};
template <int dim>
public:
ConvectionVelocity() : TensorFunction<1,dim>() {}
- virtual Tensor<1,dim> value (const Point<dim> &p) const;
+ virtual Tensor<1,dim> value (const Point<dim> &p) const override;
};
RightHandSide () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
const ConvectionVelocity<dim> convection_velocity;
RightHandSide () : Function<dim>(dim+1) {}
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
ExactSolution () : Function<dim>(dim+1) {}
virtual void vector_value (const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
};
template <int dim>
public:
Solution () : Function<dim>(dim+1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
template <>
RightHandSide () : Function<dim>(dim+1) {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
template <>
public:
BoundaryValues() : Function<dim>(dim+1) {}
virtual double value(const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
virtual void vector_value(const Point <dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
};
template <int dim>
Solution () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
RightHandSide () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
public:
AdvectionField () : TensorFunction<1,dim> () {}
- virtual Tensor<1,dim> value (const Point<dim> &p) const;
+ virtual Tensor<1,dim> value (const Point<dim> &p) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
- std::vector<Tensor<1,dim> > &values) const;
+ std::vector<Tensor<1,dim> > &values) const override;
// In previous examples, we have used assertions that throw exceptions in
// several places. However, we have never seen how such exceptions are
RightHandSide () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
static const Point<dim> center_point;
BoundaryValues () : Function<dim>() {}
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
* are not used by Newton, but will be handed down to the objects
* #residual and #inverse_derivative.
*/
- virtual void operator() (AnyData &out, const AnyData &in);
+ virtual void operator() (AnyData &out, const AnyData &in) override;
- virtual void notify(const Event &);
+ virtual void notify(const Event &) override;
/**
* Set the maximal residual reduction allowed without triggering
/**
* The virtual destructor.
*/
- virtual ~OperatorBase() = default;
+ virtual ~OperatorBase() override = default;
/**
* The actual operation, which is implemented in a derived class.
/**
* Empty virtual destructor.
*/
- virtual ~OutputOperator() = default;
+ virtual ~OutputOperator() override = default;
/**
* Set the stream @p os to which data is written. If no stream is selected
* instance, which contains the initial value when the operator is called.
* It contains the final value when the operator returns.
*/
- virtual void operator() (AnyData &out, const AnyData &in);
+ virtual void operator() (AnyData &out, const AnyData &in) override;
/**
* Register an event triggered by an outer iteration.
*/
- virtual void notify(const Event &);
+ virtual void notify(const Event &) override;
/**
* Define an operator which will output the result in each step. Note that
* the constructor on a subrange given by two integers.
*/
virtual void apply_to_subrange (const std::size_t begin,
- const std::size_t end) const
+ const std::size_t end) const override
{
if (end == begin)
return;
* the constructor on a subrange given by two integers.
*/
virtual void apply_to_subrange (const std::size_t begin,
- const std::size_t end) const
+ const std::size_t end) const override
{
if (end == begin)
return;
* This sets elements on a subrange given by two integers.
*/
virtual void apply_to_subrange (const std::size_t begin,
- const std::size_t end) const
+ const std::size_t end) const override
{
// for classes with trivial assignment of zero can use memset. cast
// element to (void*) to silence compiler warning for virtual
* This initializes elements on a subrange given by two integers.
*/
virtual void apply_to_subrange (const std::size_t begin,
- const std::size_t end) const
+ const std::size_t end) const override
{
// for classes with trivial assignment of zero can use memset. cast
// element to (void*) to silence compiler warning for virtual
/**
* Virtual destructor; absolutely necessary in this case.
*/
- virtual ~AutoDerivativeFunction () = default;
+ virtual ~AutoDerivativeFunction () override = default;
/**
* Choose the difference formula. See the enum #DifferenceFormula for
* #DifferenceFormula.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return the gradient of all components of the function at the given point.
* #DifferenceFormula.
*/
virtual void vector_gradient (const Point<dim> &p,
- std::vector<Tensor<1,dim> > &gradients) const;
+ std::vector<Tensor<1,dim> > &gradients) const override;
/**
* Set <tt>gradients</tt> to the gradients of the specified component of the
*/
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Set <tt>gradients</tt> to the gradients of the function at the
* #DifferenceFormula.
*/
virtual void vector_gradient_list (const std::vector<Point<dim> > &points,
- std::vector<std::vector<Tensor<1,dim> > > &gradients) const;
+ std::vector<std::vector<Tensor<1,dim> > > &gradients) const override;
/**
* Return a #DifferenceFormula of the order <tt>ord</tt> at minimum.
* read() function.
*/
virtual const std::vector<dealii::DataOutBase::Patch<dim,spacedim> > &
- get_patches () const;
+ get_patches () const override;
/**
* Abstract virtual function through which the names of data sets are
*
* Return the names of the variables as read the last time we read a file.
*/
- virtual std::vector<std::string> get_dataset_names () const;
+ virtual std::vector<std::string> get_dataset_names () const override;
/**
* This functions returns information about how the individual components of
*/
virtual
std::vector<std::tuple<unsigned int, unsigned int, std::string> >
- get_vector_data_ranges () const;
+ get_vector_data_ranges () const override;
private:
/**
/**
* Destructor.
*/
- virtual ~ExceptionBase () noexcept;
+ virtual ~ExceptionBase () noexcept override;
/**
* Copy operator. This operator is deleted since exception objects
/**
* Override the standard function that returns the description of the error.
*/
- virtual const char *what() const noexcept;
+ virtual const char *what() const noexcept override;
/**
* Get exception name.
public: \
Exception (const std::string &msg = defaulttext) : arg (msg) {} \
virtual ~Exception () noexcept {} \
- virtual void print_info (std::ostream &out) const { \
+ virtual void print_info (std::ostream &out) const override { \
out << " " << arg << std::endl; \
} \
private: \
public: \
Exception1 (const type1 a1) : arg1 (a1) {} /*NOLINT*/ \
virtual ~Exception1 () noexcept {} \
- virtual void print_info (std::ostream &out) const { \
+ virtual void print_info (std::ostream &out) const override { \
out << " " outsequence << std::endl; \
} \
private: \
Exception2 (const type1 a1, const type2 a2) : /*NOLINT*/ \
arg1 (a1), arg2(a2) {} \
virtual ~Exception2 () noexcept {} \
- virtual void print_info (std::ostream &out) const { \
+ virtual void print_info (std::ostream &out) const override { \
out << " " outsequence << std::endl; \
} \
private: \
Exception3 (const type1 a1, const type2 a2, const type3 a3) : /*NOLINT*/ \
arg1 (a1), arg2(a2), arg3(a3) {} \
virtual ~Exception3 () noexcept {} \
- virtual void print_info (std::ostream &out) const { \
+ virtual void print_info (std::ostream &out) const override { \
out << " " outsequence << std::endl; \
} \
private: \
const type3 a3, const type4 a4) : /*NOLINT*/ \
arg1 (a1), arg2(a2), arg3(a3), arg4(a4) {} \
virtual ~Exception4 () noexcept {} \
- virtual void print_info (std::ostream &out) const { \
+ virtual void print_info (std::ostream &out) const override { \
out << " " outsequence << std::endl; \
} \
private: \
const type4 a4, const type5 a5) : /*NOLINT*/ \
arg1 (a1), arg2(a2), arg3(a3), arg4(a4), arg5(a5) {} \
virtual ~Exception5 () noexcept {} \
- virtual void print_info (std::ostream &out) const { \
+ virtual void print_info (std::ostream &out) const override { \
out << " " outsequence << std::endl; \
} \
private: \
public:
ExcMPI (const int error_code);
- virtual void print_info (std::ostream &out) const;
+ virtual void print_info (std::ostream &out) const override;
const int error_code;
};
/**
* Virtual destructor.
*/
- virtual ~FlowFunction() = default;
+ virtual ~FlowFunction() override = default;
/**
* Store an adjustment for the pressure function, such that its mean value
* point.
*/
virtual void vector_values (const std::vector<Point<dim> > &points,
- std::vector<std::vector<double> > &values) const = 0;
+ std::vector<std::vector<double> > &values) const override = 0;
/**
* Gradients in a structure more suitable for vector valued functions. The
* outer vector is indexed by solution component, the inner by quadrature
* point.
*/
virtual void vector_gradients (const std::vector<Point<dim> > &points,
- std::vector<std::vector<Tensor<1,dim> > > &gradients) const = 0;
+ std::vector<std::vector<Tensor<1,dim> > > &gradients) const override = 0;
/**
* Force terms in a structure more suitable for vector valued functions.
* The outer vector is indexed by solution component, the inner by
virtual void vector_laplacians (const std::vector<Point<dim> > &points,
std::vector<std::vector<double> > &values) const = 0;
- virtual void vector_value (const Point<dim> &points, Vector<double> &value) const;
- virtual double value (const Point<dim> &points, const unsigned int component) const;
+ virtual void vector_value (const Point<dim> &points, Vector<double> &value) const override;
+ virtual double value (const Point<dim> &points, const unsigned int component) const override;
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
virtual void vector_gradient_list (const std::vector<Point<dim> > &points,
- std::vector<std::vector<Tensor<1,dim> > > &gradients) const;
+ std::vector<std::vector<Tensor<1,dim> > > &gradients) const override;
/**
* The force term in the momentum equation.
*/
virtual void vector_laplacian_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
std::size_t memory_consumption () const;
PoisseuilleFlow<dim> (const double r,
const double Re);
- virtual ~PoisseuilleFlow() = default;
+ virtual ~PoisseuilleFlow() override = default;
virtual void vector_values (const std::vector<Point<dim> > &points,
- std::vector<std::vector<double> > &values) const;
+ std::vector<std::vector<double> > &values) const override;
virtual void vector_gradients (const std::vector<Point<dim> > &points,
- std::vector<std::vector<Tensor<1,dim> > > &gradients) const;
+ std::vector<std::vector<Tensor<1,dim> > > &gradients) const override;
virtual void vector_laplacians (const std::vector<Point<dim> > &points,
- std::vector<std::vector<double> > &values) const;
+ std::vector<std::vector<double> > &values) const override;
private:
const double radius;
*/
void set_parameters (const double viscosity, const double reaction);
- virtual ~StokesCosine() = default;
+ virtual ~StokesCosine() override = default;
virtual void vector_values (const std::vector<Point<dim> > &points,
- std::vector<std::vector<double> > &values) const;
+ std::vector<std::vector<double> > &values) const override;
virtual void vector_gradients (const std::vector<Point<dim> > &points,
- std::vector<std::vector<Tensor<1,dim> > > &gradients) const;
+ std::vector<std::vector<Tensor<1,dim> > > &gradients) const override;
virtual void vector_laplacians (const std::vector<Point<dim> > &points,
- std::vector<std::vector<double> > &values) const;
+ std::vector<std::vector<double> > &values) const override;
private:
/// The viscosity
StokesLSingularity();
virtual void vector_values (const std::vector<Point<2> > &points,
- std::vector<std::vector<double> > &values) const;
+ std::vector<std::vector<double> > &values) const override;
virtual void vector_gradients (const std::vector<Point<2> > &points,
- std::vector<std::vector<Tensor<1,2> > > &gradients) const;
+ std::vector<std::vector<Tensor<1,2> > > &gradients) const override;
virtual void vector_laplacians (const std::vector<Point<2> > &points,
- std::vector<std::vector<double> > &values) const;
+ std::vector<std::vector<double> > &values) const override;
private:
/// The auxiliary function Psi.
double Psi(double phi) const;
*/
Kovasznay (const double Re, bool Stokes = false);
- virtual ~Kovasznay() = default;
+ virtual ~Kovasznay() override = default;
virtual void vector_values (const std::vector<Point<2> > &points,
- std::vector<std::vector<double> > &values) const;
+ std::vector<std::vector<double> > &values) const override;
virtual void vector_gradients (const std::vector<Point<2> > &points,
- std::vector<std::vector<Tensor<1,2> > > &gradients) const;
+ std::vector<std::vector<Tensor<1,2> > > &gradients) const override;
virtual void vector_laplacians (const std::vector<Point<2> > &points,
- std::vector<std::vector<double> > &values) const;
+ std::vector<std::vector<double> > &values) const override;
/// The value of lambda.
double lambda () const;
* Nonetheless, since derived classes want to call the destructor of a base
* class, this destructor is implemented (despite it being pure virtual).
*/
- virtual ~Function () = 0;
+ virtual ~Function () override = 0;
/**
* Assignment operator. This is here only so that you can have objects of
ConstantFunction (const RangeNumberType *begin_ptr, const unsigned int n_components);
virtual RangeNumberType value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<RangeNumberType> &return_value) const;
+ Vector<RangeNumberType> &return_value) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<RangeNumberType> &return_values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<RangeNumberType> > &return_values) const;
+ std::vector<Vector<RangeNumberType> > &return_values) const override;
virtual Tensor<1,dim, RangeNumberType> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_gradient (const Point<dim> &p,
- std::vector<Tensor<1,dim, RangeNumberType> > &gradients) const;
+ std::vector<Tensor<1,dim, RangeNumberType> > &gradients) const override;
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim, RangeNumberType> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_gradient_list (const std::vector<Point<dim> > &points,
- std::vector<std::vector<Tensor<1,dim, RangeNumberType> > > &gradients) const;
+ std::vector<std::vector<Tensor<1,dim, RangeNumberType> > > &gradients) const override;
std::size_t memory_consumption () const;
* Return the value of the function at the given point for all components.
*/
virtual void vector_value (const Point<dim> &p,
- Vector<RangeNumberType> &return_value) const;
+ Vector<RangeNumberType> &return_value) const override;
/**
* Set <tt>values</tt> to the point values of the function at the
* array.
*/
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<RangeNumberType> > &values) const;
+ std::vector<Vector<RangeNumberType> > &values) const override;
/**
* Return an estimate for the memory consumption, in bytes, of this object.
* the function given to the constructor produces for this point.
*/
virtual RangeNumberType value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
/**
* the function given to the constructor produces for this point.
*/
virtual RangeNumberType value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return all components of a vector-valued function at a given point.
* <tt>values</tt> shall have the right size beforehand, i.e. #n_components.
*/
virtual void vector_value (const Point<dim> &p,
- Vector<RangeNumberType> &values) const;
+ Vector<RangeNumberType> &values) const override;
private:
/**
* This destructor is defined as virtual so as to coincide with all other
* aspects of class.
*/
- virtual ~VectorFunctionFromTensorFunction() = default;
+ virtual ~VectorFunctionFromTensorFunction() override = default;
/**
* Return a single component of a vector-valued function at a given point.
*/
virtual RangeNumberType value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return all components of a vector-valued function at a given point.
* <tt>values</tt> shall have the right size beforehand, i.e. #n_components.
*/
virtual void vector_value (const Point<dim> &p,
- Vector<RangeNumberType> &values) const;
+ Vector<RangeNumberType> &values) const override;
/**
* Return all components of a vector-valued function at a list of points.
* function
*/
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<RangeNumberType> > &value_list) const;
+ std::vector<Vector<RangeNumberType> > &value_list) const override;
private:
/**
Bessel1(const unsigned int order,
const double wave_number,
const Point<dim> center = Point<dim>());
- virtual double value (const Point<dim> &points, const unsigned int component) const;
+ virtual double value (const Point<dim> &points, const unsigned int component) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
unsigned int order;
double wave_number;
/**
* Virtual destructor.
*/
- virtual ~CSpline();
+ virtual ~CSpline() override;
virtual double value (const Point<dim> &point,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual SymmetricTensor<2,dim> hessian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual double laplacian(const Point< dim > &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
std::size_t memory_consumption () const;
void set_h (const double h);
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value(const Point<dim> &p,
- Vector<double> &value) const;
+ Vector<double> &value) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return an estimate for the memory consumption, in bytes, of this object.
{
public:
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_gradient (const Point<dim> &p,
- std::vector<Tensor<1,dim> > &gradient) const;
+ std::vector<Tensor<1,dim> > &gradient) const override;
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void laplacian_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
{
public:
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_gradient_list (const std::vector<Point<dim> > &,
- std::vector<std::vector<Tensor<1,dim> > > &) const;
+ std::vector<std::vector<Tensor<1,dim> > > &) const override;
/**
* Laplacian of the function at one point.
*/
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Laplacian of the function at multiple points.
*/
virtual void laplacian_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
* The value at a single point.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Values at multiple points.
*/
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Gradient at a single point.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Gradients at multiple points.
*/
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Laplacian at a single point.
*/
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Laplacian at multiple points.
*/
virtual void laplacian_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
const double offset;
};
CosineFunction (const unsigned int n_components = 1);
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void laplacian_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Second derivatives at a single point.
*/
virtual SymmetricTensor<2,dim> hessian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Second derivatives at multiple points.
*/
virtual void hessian_list (const std::vector<Point<dim> > &points,
std::vector<SymmetricTensor<2,dim> > &hessians,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
CosineGradFunction ();
virtual double value (const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
virtual void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component) const;
+ const unsigned int component) const override;
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim> > &gradients,
- const unsigned int component) const;
+ const unsigned int component) const override;
virtual void vector_gradient_list (const std::vector<Point<dim> > &points,
- std::vector<std::vector<Tensor<1,dim> > > &gradients) const;
+ std::vector<std::vector<Tensor<1,dim> > > &gradients) const override;
virtual double laplacian (const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
};
* The value at a single point.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Values at multiple points.
*/
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Gradient at a single point.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Gradients at multiple points.
*/
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Laplacian at a single point.
*/
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Laplacian at multiple points.
*/
virtual void laplacian_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
{
public:
virtual double value (const Point<2> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector<Point<2> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value_list (const std::vector<Point<2> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
virtual Tensor<1,2> gradient (const Point<2> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void gradient_list (const std::vector<Point<2> > &points,
std::vector<Tensor<1,2> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_gradient_list (const std::vector<Point<2> > &,
- std::vector<std::vector<Tensor<1,2> > > &) const;
+ std::vector<std::vector<Tensor<1,2> > > &) const override;
virtual double laplacian (const Point<2> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void laplacian_list (const std::vector<Point<2> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
*/
LSingularityGradFunction ();
virtual double value (const Point<2> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
virtual void value_list (const std::vector<Point<2> > &points,
std::vector<double> &values,
- const unsigned int component) const;
+ const unsigned int component) const override;
virtual void vector_value_list (const std::vector<Point<2> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
virtual Tensor<1,2> gradient (const Point<2> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
virtual void gradient_list (const std::vector<Point<2> > &points,
std::vector<Tensor<1,2> > &gradients,
- const unsigned int component) const;
+ const unsigned int component) const override;
virtual void vector_gradient_list (const std::vector<Point<2> > &,
- std::vector<std::vector<Tensor<1,2> > > &) const;
+ std::vector<std::vector<Tensor<1,2> > > &) const override;
virtual double laplacian (const Point<2> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
virtual void laplacian_list (const std::vector<Point<2> > &points,
std::vector<double> &values,
- const unsigned int component) const;
+ const unsigned int component) const override;
};
{
public:
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_gradient_list (const std::vector<Point<dim> > &,
- std::vector<std::vector<Tensor<1,dim> > > &) const;
+ std::vector<std::vector<Tensor<1,dim> > > &) const override;
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void laplacian_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
{
public:
virtual double value (const Point<2> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void value_list (const std::vector<Point<2> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_value_list (const std::vector<Point<2> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
virtual Tensor<1,2> gradient (const Point<2> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void gradient_list (const std::vector<Point<2> > &points,
std::vector<Tensor<1,2> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void vector_gradient_list (const std::vector<Point<2> > &,
- std::vector<std::vector<Tensor<1,2> > > &) const;
+ std::vector<std::vector<Tensor<1,2> > > &) const override;
virtual double laplacian (const Point<2> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
virtual void laplacian_list (const std::vector<Point<2> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
* Function value at one point.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Function values at multiple points.
*/
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Gradient at one point.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Gradients at multiple points.
*/
virtual void gradient_list (const std::vector<Point<dim> > &points,
std::vector<Tensor<1,dim> > &gradients,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Laplacian of the function at one point.
*/
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Laplacian of the function at multiple points.
*/
virtual void laplacian_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return an estimate for the memory consumption, in bytes, of this
* first component.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return the gradient of the specified component of the function at the
* given point.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Compute the Laplacian of a given component at point <tt>p</tt>.
*/
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
/**
* Stored Fourier coefficients.
* first component.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return the gradient of the specified component of the function at the
* given point.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Compute the Laplacian of a given component at point <tt>p</tt>.
*/
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
/**
* Stored Fourier coefficients.
* first component.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return the gradient of the specified component of the function at the
* given point.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Compute the Laplacian of a given component at point <tt>p</tt>.
*/
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
/**
* Stored Fourier coefficients and weights.
* first component.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return the gradient of the specified component of the function at the
* given point.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Compute the Laplacian of a given component at point <tt>p</tt>.
*/
virtual double laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
/**
* Function value at one point.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Function values at multiple points.
*/
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Function values at multiple points.
*/
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
};
* Function value at one point.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Function values at multiple points.
*/
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Function values at multiple points.
*/
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
};
* Function value at one point.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Function values at multiple points.
*/
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Function values at multiple points.
*/
virtual void vector_value_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<double> > &values) const;
+ std::vector<Vector<double> > &values) const override;
/**
* Function gradient at one point.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
};
* Function value at one point.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return all components of a vector-valued function at a given point.
* #n_components.
*/
virtual void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
/**
* Function values at multiple points.
*/
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Function gradient at one point.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
/**
virtual
double
value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Compute the gradient of the function defined by bilinear interpolation
virtual
Tensor<1, dim>
gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
protected:
/**
virtual
double
value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
/**
* Function value at one point.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
*/
virtual void value_list (const std::vector<Point<dim> > &points,
std::vector<double> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Function gradient at one point.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
private:
* Destructor. Explicitly delete the FunctionParser objects (there is one
* for each component of the function).
*/
- ~FunctionParser();
+ ~FunctionParser() override;
/**
* Type for the constant map. Used by the initialize() method.
* component.
*/
virtual double value (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return all components of a vector-valued function at the given point @p
* <tt>values</tt> shall have the right size beforehand, i.e. #n_components.
*/
virtual void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
/**
* @addtogroup Exceptions
* calls svalue() with it, and returns the result.
*/
virtual double value (const Point<dim> &point,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return the gradient with respect to the Cartesian coordinates at point @p p.
* coordinates.
*/
virtual Tensor<1,dim> gradient (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Return the Hessian with respect to the Cartesian coordinates at point @p p.
* Cartesian coordinates.
*/
virtual SymmetricTensor<2,dim> hessian (const Point<dim> &p,
- const unsigned int component=0) const;
+ const unsigned int component=0) const override;
std::size_t memory_consumption () const;
/**
* Destructor.
*/
- ~LogStream();
+ ~LogStream() override;
/**
/**
* Destructor.
*/
- virtual ~ParameterAcceptor();
+ virtual ~ParameterAcceptor() override;
/**
* Call declare_all_parameters(), read the parameters from `filename` (only
* Overloads the ParameterAcceptor::declare_parameters function, by calling
* @p SourceClass::declare_parameters with @p prm as an argument.
*/
- virtual void declare_parameters(ParameterHandler &prm);
+ virtual void declare_parameters(ParameterHandler &prm) override;
/**
* Overloads the ParameterAcceptor::parse_parameters function, by calling
* @p SourceClass::parse_parameters with @p prm as an argument.
*/
- virtual void parse_parameters(ParameterHandler &prm);
+ virtual void parse_parameters(ParameterHandler &prm) override;
};
* safer as we have virtual functions. It actually does nothing
* spectacular.
*/
- virtual ~ParameterHandler () = default;
+ virtual ~ParameterHandler () override = default;
/**
* Parse each line from a stream until the stream returns the <tt>eof</tt>
* p.
*/
virtual void vector_value (const Point<dim> &p,
- Vector<double> &values) const;
+ Vector<double> &values) const override;
/**
* Return the value of the function at the given point. Unless there is
* first component.
*/
virtual double value (const Point< dim > &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Set the time to a specific value for time-dependent functions.
* We need to overwrite this to set the time also in the accessor
* FunctionParser<dim>.
*/
- virtual void set_time(const double newtime);
+ virtual void set_time(const double newtime) override;
private:
/**
*/
virtual void reinit(const IndexSet &vector_space_vector_index_set,
const IndexSet &read_write_vector_index_set,
- const MPI_Comm &communicator);
+ const MPI_Comm &communicator) override;
/**
* Set the locally owned indices. Used in the constructor.
/**
* Return the MPI communicator underlying the partitioner object.
*/
- virtual const MPI_Comm &get_mpi_communicator() const;
+ virtual const MPI_Comm &get_mpi_communicator() const override;
/**
* Return whether ghost indices have been explicitly added as a @p
* Return <tt>true</tt> if the string is an integer and its value is
* within the specified range.
*/
- virtual bool match (const std::string &test_string) const;
+ virtual bool match (const std::string &test_string) const override;
/**
* Return a description of the pattern that valid strings are expected to
* match. If bounds were specified to the constructor, then include them
* into this description.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* Create a new object if the start of description matches
* Return <tt>true</tt> if the string is a number and its value is within
* the specified range.
*/
- virtual bool match (const std::string &test_string) const;
+ virtual bool match (const std::string &test_string) const override;
/**
* Return a description of the pattern that valid strings are expected to
* match. If bounds were specified to the constructor, then include them
* into this description.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* Creates a new object on the heap using @p new if the given
* Return <tt>true</tt> if the string is an element of the description
* list passed to the constructor.
*/
- virtual bool match (const std::string &test_string) const;
+ virtual bool match (const std::string &test_string) const override;
/**
* Return a description of the pattern that valid strings are expected to
* match. Here, this is the list of valid strings passed to the
* constructor.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* Determine an estimate for the memory consumption (in bytes) of this
* object.
*/
- std::size_t memory_consumption () const;
+ std::size_t memory_consumption () const override;
/**
* Create a new object if the start of description matches
* Return <tt>true</tt> if the string is a comma-separated list of strings
* each of which match the pattern given to the constructor.
*/
- virtual bool match (const std::string &test_string) const;
+ virtual bool match (const std::string &test_string) const override;
/**
* Return a description of the pattern that valid strings are expected to
* match.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* Create a new object if the start of description matches
* Determine an estimate for the memory consumption (in bytes) of this
* object.
*/
- std::size_t memory_consumption () const;
+ std::size_t memory_consumption () const override;
/**
* @addtogroup Exceptions
* Return <tt>true</tt> if the string is a comma-separated list of strings
* each of which match the pattern given to the constructor.
*/
- virtual bool match (const std::string &test_string) const;
+ virtual bool match (const std::string &test_string) const override;
/**
* Return a description of the pattern that valid strings are expected to
* match.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* Create a new object if the start of description matches
* Determine an estimate for the memory consumption (in bytes) of this
* object.
*/
- std::size_t memory_consumption () const;
+ std::size_t memory_consumption () const override;
/**
* Return a reference to the key pattern.
* Return <tt>true</tt> if the string is a list of strings
* each of which matches the patterns given to the constructor.
*/
- virtual bool match (const std::string &test_string) const;
+ virtual bool match (const std::string &test_string) const override;
/**
* Return a description of the pattern that valid strings are expected to
* match.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* Create a new object if the start of description matches
* Determine an estimate for the memory consumption (in bytes) of this
* object.
*/
- std::size_t memory_consumption () const;
+ std::size_t memory_consumption () const override;
/**
* Return a reference to the i-th pattern in the tuple.
* Return <tt>true</tt> if the string is an element of the description
* list passed to the constructor.
*/
- virtual bool match (const std::string &test_string) const;
+ virtual bool match (const std::string &test_string) const override;
/**
* Return a description of the pattern that valid strings are expected to
* match. Here, this is the list of valid strings passed to the
* constructor.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* Create a new object if the start of description matches
* Determine an estimate for the memory consumption (in bytes) of this
* object.
*/
- std::size_t memory_consumption () const;
+ std::size_t memory_consumption () const override;
/**
* @addtogroup Exceptions
* Return a description of the pattern that valid strings are expected to
* match.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* Create a new object if the start of description matches
* Return <tt>true</tt> if the string matches its constraints, i.e.
* always.
*/
- virtual bool match (const std::string &test_string) const;
+ virtual bool match (const std::string &test_string) const override;
/**
* Return a description of the pattern that valid strings are expected to
* match. Here, this is the string <tt>"[Anything]"</tt>.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* Create a new object if the start of description matches
* Return <tt>true</tt> if the string matches its constraints, i.e.
* always.
*/
- virtual bool match (const std::string &test_string) const;
+ virtual bool match (const std::string &test_string) const override;
/**
* Return a description of the pattern that valid strings are expected to
* match. Here, this is the string <tt>"[Filename]"</tt>.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* file type flag
* Return <tt>true</tt> if the string matches its constraints, i.e.
* always.
*/
- virtual bool match (const std::string &test_string) const;
+ virtual bool match (const std::string &test_string) const override;
/**
* Return a description of the pattern that valid strings are expected to
* match. Here, this is the string <tt>"[Filename]"</tt>.
*/
- virtual std::string description (const OutputStyle style=Machine) const;
+ virtual std::string description (const OutputStyle style=Machine) const override;
/**
* Return a copy of the present object, which is newly allocated on the
* heap. Ownership of that object is transferred to the caller of this
* function.
*/
- virtual std::unique_ptr<PatternBase> clone () const;
+ virtual std::unique_ptr<PatternBase> clone () const override;
/**
* Create a new object if the start of description matches
/**
* Virtual destructor.
*/
- virtual ~Quadrature () = default;
+ virtual ~Quadrature () override = default;
/**
* Assignment operator. Copies contents of #weights and #quadrature_points
/**
* Default destructor.
*/
- ~CellDataStorage() = default;
+ ~CellDataStorage() override = default;
/**
* Initialize data on the @p cell to store @p number_of_data_points_per_cell of objects of type @p T .
/**
* Destructor. Free allocated memory.
*/
- ~TableBase () = default;
+ ~TableBase () override = default;
/**
* Assignment operator. Copy all elements of <tt>src</tt> into the matrix.
* usually not used by their true type, but rather through pointers to this
* base class.
*/
- virtual ~TensorFunction () = default;
+ virtual ~TensorFunction () override = default;
/**
* Return the value of the function at the given point.
ConstantTensorFunction (const dealii::Tensor<rank, dim, Number> &value,
const Number initial_time = 0.0);
- virtual ~ConstantTensorFunction () = default;
+ virtual ~ConstantTensorFunction () override = default;
- virtual typename dealii::TensorFunction<rank, dim, Number>::value_type value (const Point<dim> &p) const;
+ virtual typename dealii::TensorFunction<rank, dim, Number>::value_type value (const Point<dim> &p) const override;
virtual void value_list (const std::vector<Point<dim> > &points,
- std::vector<typename dealii::TensorFunction<rank, dim, Number>::value_type> &values) const;
+ std::vector<typename dealii::TensorFunction<rank, dim, Number>::value_type> &values) const override;
- virtual typename dealii::TensorFunction<rank, dim, Number>::gradient_type gradient (const Point<dim> &p) const;
+ virtual typename dealii::TensorFunction<rank, dim, Number>::gradient_type gradient (const Point<dim> &p) const override;
virtual void gradient_list (const std::vector<Point<dim> > &points,
- std::vector<typename dealii::TensorFunction<rank, dim, Number>::gradient_type> &gradients) const;
+ std::vector<typename dealii::TensorFunction<rank, dim, Number>::gradient_type> &gradients) const override;
private:
const dealii::Tensor<rank, dim, Number> _value;
task_descriptor (task_descriptor)
{}
- virtual tbb::task *execute ()
+ virtual tbb::task *execute () override
{
// call the function object and put the return value into the
// proper place
/**
* Virtual destructor.
*/
- virtual ~RungeKutta() = default;
+ virtual ~RungeKutta() override = default;
/**
* Purely virtual method used to initialize the Runge-Kutta method.
std::vector<std::function<VectorType (const double, const double, const VectorType &)> > &J_inverse,
double t,
double delta_t,
- VectorType &y);
+ VectorType &y) override;
/**
* Purely virtual function. This function is used to advance from time @p
/**
* Initialize the explicit Runge-Kutta method.
*/
- void initialize(const runge_kutta_method method);
+ void initialize(const runge_kutta_method method) override;
/**
* This function is used to advance from time @p t to t+ @p delta_t. @p f
const std::function<VectorType (const double, const double, const VectorType &)> &id_minus_tau_J_inverse,
double t,
double delta_t,
- VectorType &y);
+ VectorType &y) override;
/**
* This function is used to advance from time @p t to t+ @p delta_t. This
/**
* Return the status of the current object.
*/
- const Status &get_status() const;
+ const Status &get_status() const override;
private:
/**
/**
* Initialize the implicit Runge-Kutta method.
*/
- void initialize(const runge_kutta_method method);
+ void initialize(const runge_kutta_method method) override;
/**
* This function is used to advance from time @p t to t+ @p delta_t. @p f
const std::function<VectorType (const double, const double, const VectorType &)> &id_minus_tau_J_inverse,
double t,
double delta_t,
- VectorType &y);
+ VectorType &y) override;
/**
* Set the maximum number of iterations and the tolerance used by the
/**
* Return the status of the current object.
*/
- const Status &get_status() const;
+ const Status &get_status() const override;
private:
/**
/**
* Destructor.
*/
- ~EmbeddedExplicitRungeKutta()
+ ~EmbeddedExplicitRungeKutta() override
{
free_memory();
}
/**
* Initialize the embedded explicit Runge-Kutta method.
*/
- void initialize(const runge_kutta_method method);
+ void initialize(const runge_kutta_method method) override;
/**
* This function is used to advance from time @p t to t+ @p delta_t. @p f
const std::function<VectorType (const double, const double, const VectorType &)> &id_minus_tau_J_inverse,
double t,
double delta_t,
- VectorType &y);
+ VectorType &y) override;
/**
* This function is used to advance from time @p t to t+ @p delta_t. This
/**
* Return the status of the current object.
*/
- const Status &get_status() const;
+ const Status &get_status() const override;
private:
/**
/**
* Create an item and return a pointer to it.
*/
- virtual void *operator () (void *)
+ virtual void *operator () (void *) override
{
// find first unused item. we know that there must be one
// because we have set the maximal number of tokens in flight
/**
* Work on an item.
*/
- void *operator () (void *item)
+ void *operator () (void *item) override
{
// first unpack the current item
typedef
/**
* Work on a single item.
*/
- void *operator () (void *item)
+ void *operator () (void *item) override
{
// first unpack the current item
typedef
/**
* Destructor.
*/
- virtual ~Triangulation () = default;
+ virtual ~Triangulation () override = default;
/**
* Coarsen and refine the mesh according to refinement and coarsening
* addition of calling dealii::GridTools::partition_triangulation() at
* the end.
*/
- virtual void execute_coarsening_and_refinement ();
+ virtual void execute_coarsening_and_refinement () override;
/**
* Create a triangulation.
*/
virtual void create_triangulation (const std::vector< Point< spacedim > > &vertices,
const std::vector< CellData< dim > > &cells,
- const SubCellData &subcelldata);
+ const SubCellData &subcelldata) override;
/**
* Copy @p other_tria to this triangulation.
* since it only stores those cells that it owns, one layer of ghost cells around
* the ones it locally owns, and a number of artificial cells.
*/
- virtual void copy_triangulation (const dealii::Triangulation<dim, spacedim> &other_tria);
+ virtual void copy_triangulation (const dealii::Triangulation<dim, spacedim> &other_tria) override;
/**
* Read the data of this object from a stream for the purpose of
* Override the function to update the number cache so we can fill data
* like @p level_ghost_owners.
*/
- virtual void update_number_cache ();
+ virtual void update_number_cache () override;
private:
/**
* Destructor.
*/
- virtual ~Triangulation ();
+ virtual ~Triangulation () override;
/**
* Reset this triangulation into a virgin state by deleting all data.
* Note that this operation is only allowed if no subscriptions to this
* object exist any more, such as DoFHandler objects using it.
*/
- virtual void clear ();
+ virtual void clear () override;
/**
* Implementation of the same function as in the base class.
* parallel::distributed::Triangulation but only if the serial
* Triangulation has never been refined.
*/
- virtual void copy_triangulation (const dealii::Triangulation<dim, spacedim> &other_tria);
+ virtual void copy_triangulation (const dealii::Triangulation<dim, spacedim> &other_tria) override;
/**
* Create a triangulation as documented in the base class.
*/
virtual void create_triangulation (const std::vector<Point<spacedim> > &vertices,
const std::vector<CellData<dim> > &cells,
- const SubCellData &subcelldata);
+ const SubCellData &subcelldata) override;
/**
* Coarsen and refine the mesh according to refinement and coarsening
* function is connected to the signal it will be used to balance the
* calculated weights, otherwise the number of cells is balanced.
*/
- virtual void execute_coarsening_and_refinement ();
+ virtual void execute_coarsening_and_refinement () override;
/**
* Override the implementation of prepare_coarsening_and_refinement from
* and the level difference over vertices over the periodic boundary
* must be not more than 2:1.
*/
- virtual bool prepare_coarsening_and_refinement ();
+ virtual bool prepare_coarsening_and_refinement () override;
/**
* Manually repartition the active cells between processors. Normally
* mesh, i.e., the union of locally owned cells on all processors.
*/
virtual
- bool has_hanging_nodes() const;
+ bool has_hanging_nodes() const override;
/**
* Return the local memory consumption in bytes.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
/**
* Return the local memory consumption contained in the p4est data
*/
virtual void
add_periodicity
- (const std::vector<dealii::GridTools::PeriodicFacePair<cell_iterator> > &);
+ (const std::vector<dealii::GridTools::PeriodicFacePair<cell_iterator> > &) override;
private:
* Override the function to update the number cache so we can fill data
* like @p level_ghost_owners.
*/
- virtual void update_number_cache ();
+ virtual void update_number_cache () override;
/**
* store the Settings.
* are adjacent to each vertex.
*/
virtual std::map<unsigned int, std::set<dealii::types::subdomain_id> >
- compute_vertices_with_ghost_neighbors () const;
+ compute_vertices_with_ghost_neighbors () const override;
/**
* This method returns a bit vector of length tria.n_vertices()
/**
* Destructor.
*/
- virtual ~Triangulation ();
+ virtual ~Triangulation () override;
/**
* Return a permutation vector for the order the coarse cells are
* Like above, this method, which is only implemented for dim = 2 or 3,
* needs a stub because it is used in dof_handler_policy.cc
*/
- std::map<unsigned int, std::set<dealii::types::subdomain_id> >
- compute_vertices_with_ghost_neighbors () const;
+ virtual std::map<unsigned int, std::set<dealii::types::subdomain_id> >
+ compute_vertices_with_ghost_neighbors () const override;
/**
* Like above, this method, which is only implemented for dim = 2 or 3,
* needs a stub because it is used in dof_handler_policy.cc
*/
- std::map<unsigned int, std::set<dealii::types::subdomain_id> >
+ virtual std::map<unsigned int, std::set<dealii::types::subdomain_id> >
compute_level_vertices_with_ghost_neighbors (const unsigned int level) const;
/**
* Like above, this method, which is only implemented for dim = 2 or 3,
* needs a stub because it is used in dof_handler_policy.cc
*/
- std::vector<bool>
+ virtual std::vector<bool>
mark_locally_active_vertices_on_level(const unsigned int level) const;
};
/**
* Destructor.
*/
- virtual ~Triangulation ();
+ virtual ~Triangulation () override;
/**
* Return MPI communicator used by this triangulation.
/**
* Implementation of the same function as in the base class.
*/
- virtual void copy_triangulation (const dealii::Triangulation<dim, spacedim> &old_tria);
+ virtual void copy_triangulation (const dealii::Triangulation<dim, spacedim> &old_tria) override;
/**
* Return the number of active cells owned by each of the MPI processes
* by each processor. This equals the overall number of active cells in
* the triangulation.
*/
- virtual types::global_dof_index n_global_active_cells () const;
+ virtual types::global_dof_index n_global_active_cells () const override;
/**
* Return the local memory consumption in bytes.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
/**
* the domain that are not very refined, but if other processors store
* cells in more deeply refined parts of the domain.
*/
- virtual unsigned int n_global_levels () const;
+ virtual unsigned int n_global_levels () const override;
/**
* Return the subdomain id of those cells that are owned by the current
* subdomain id are either owned by another processor or have children
* that only exist on other processors.
*/
- types::subdomain_id locally_owned_subdomain () const;
+ types::subdomain_id locally_owned_subdomain () const override;
/**
* Return a set of MPI ranks of the processors that have at least one
/**
* Destructor.
*/
- virtual ~DoFHandler ();
+ virtual ~DoFHandler () override;
/**
* Copy operator. DoFHandler objects are large and expensive.
// documentation is inherited
virtual
NumberCache
- distribute_dofs () const;
+ distribute_dofs () const override;
// documentation is inherited
virtual
std::vector<NumberCache>
- distribute_mg_dofs () const;
+ distribute_mg_dofs () const override;
// documentation is inherited
virtual
NumberCache
- renumber_dofs (const std::vector<types::global_dof_index> &new_numbers) const;
+ renumber_dofs (const std::vector<types::global_dof_index> &new_numbers) const override;
// documentation is inherited
virtual
NumberCache
renumber_mg_dofs (const unsigned int level,
- const std::vector<types::global_dof_index> &new_numbers) const;
+ const std::vector<types::global_dof_index> &new_numbers) const override;
protected:
/**
*/
virtual
NumberCache
- distribute_dofs () const;
+ distribute_dofs () const override;
/**
* This function is not yet implemented.
*/
virtual
std::vector<NumberCache>
- distribute_mg_dofs () const;
+ distribute_mg_dofs () const override;
/**
* Renumber degrees of freedom as specified by the first argument.
*/
virtual
NumberCache
- renumber_dofs (const std::vector<types::global_dof_index> &new_numbers) const;
+ renumber_dofs (const std::vector<types::global_dof_index> &new_numbers) const override;
// documentation is inherited
virtual
NumberCache
renumber_mg_dofs (const unsigned int level,
- const std::vector<types::global_dof_index> &new_numbers) const;
+ const std::vector<types::global_dof_index> &new_numbers) const override;
private:
/**
// documentation is inherited
virtual
NumberCache
- distribute_dofs () const;
+ distribute_dofs () const override;
// documentation is inherited
virtual
std::vector<NumberCache>
- distribute_mg_dofs () const;
+ distribute_mg_dofs () const override;
// documentation is inherited
virtual
NumberCache
- renumber_dofs (const std::vector<types::global_dof_index> &new_numbers) const;
+ renumber_dofs (const std::vector<types::global_dof_index> &new_numbers) const override;
// documentation is inherited
virtual
NumberCache
renumber_mg_dofs (const unsigned int level,
- const std::vector<types::global_dof_index> &new_numbers) const;
+ const std::vector<types::global_dof_index> &new_numbers) const override;
private:
/**
* Virtual destructor. Makes sure that pointers to this class are deleted
* properly.
*/
- virtual ~FiniteElement () = default;
+ virtual ~FiniteElement () override = default;
/**
* Creates information for creating a FESystem with this class as
* returns <tt>FE_ABF<dim>(degree)</tt>, with @p dim and @p degree replaced
* by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* always @p true.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
// documentation inherited from the base class
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
virtual
std::unique_ptr<FiniteElement<dim,dim> >
- clone() const;
+ clone() const override;
private:
/**
* returns <tt>FE_BDM<dim>(degree)</tt>, with @p dim and @p degree replaced
* by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,dim> >
- clone() const;
+ clone() const override;
// documentation inherited from the base class
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
private:
/**
*/
virtual void
get_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* FE_Bernstein is not interpolatory in the element interior, which prevents
*/
virtual const FullMatrix<double> &
get_restriction_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
/**
* FE_Bernstein is not interpolatory in the element interior, which prevents
*/
virtual const FullMatrix<double> &
get_prolongation_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
/**
* Return the matrix interpolating from a face of one element to the face of
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face of
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return whether this element implements its hanging node constraints in
* the new way, which has to be used to make elements "hp compatible".
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* If, on a vertex, several finite elements are active, the hp code first
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* returns <tt>FE_Bernstein<dim>(degree)</tt>, with @p dim and @p degree
* replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
protected:
* returns <tt>FE_RaviartThomas<dim>(degree)</tt>, with @p dim and @p degree
* replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* For this element, we always return @p true.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
private:
/**
* returns <tt>FE_DGNedelec<dim>(degree)</tt>, with @p dim and @p degree
* replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
};
* returns <tt>FE_DGRaviartThomas<dim>(degree)</tt>, with @p dim and @p
* degree replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
};
* returns <tt>FE_DGBDM<dim>(degree)</tt>, with @p dim and @p degree
* replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
};
* returns <tt>FE_DGP<dim>(degree)</tt>, with @p dim and @p degree replaced
* by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
/**
* @name Functions to support hp
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Return whether this element implements its hanging node constraints in
* of the element), as it has no hanging nodes (being a discontinuous
* element).
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* @}
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Determine an estimate for the memory consumption (in bytes) of this
* accessed through pointers to their base class, rather than the class
* itself.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
/**
* first entry is true, all other are false.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
private:
* returns <tt>FE_DGPMonomial<dim>(degree)</tt>, with <tt>dim</tt> and
* <tt>p</tt> replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
/**
* @name Functions to support hp
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim> &fe_other) const override;
/**
* Return whether this element implements its hanging node constraints in
* the degree of the element), as it has no hanging nodes (being a
* discontinuous element).
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim> &fe_other) const override;
/**
* @}
*/
virtual void
get_interpolation_matrix (const FiniteElement<dim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Determine an estimate for the memory consumption (in bytes) of this
* accessed through pointers to their base class, rather than the class
* itself.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
virtual
std::unique_ptr<FiniteElement<dim,dim> >
- clone() const;
+ clone() const override;
private:
* returns <tt>FE_DGPNonparametric<dim>(degree)</tt>, with @p dim and @p
* degree replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
// for documentation, see the FiniteElement base class
virtual
UpdateFlags
- requires_update_flags (const UpdateFlags update_flags) const;
+ requires_update_flags (const UpdateFlags update_flags) const override;
/**
* This function is intended to return the value of a shape function at a
* type FiniteElement::ExcUnitShapeValuesDoNotExist.
*/
virtual double shape_value (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* This function is intended to return the value of a shape function at a
*/
virtual double shape_value_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* This function is intended to return the gradient of a shape function at a
* type FiniteElement::ExcUnitShapeValuesDoNotExist.
*/
virtual Tensor<1,dim> shape_grad (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* This function is intended to return the gradient of a shape function at a
*/
virtual Tensor<1,dim> shape_grad_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* This function is intended to return the Hessian of a shape function at a
* exception of type FiniteElement::ExcUnitShapeValuesDoNotExist.
*/
virtual Tensor<2,dim> shape_grad_grad (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* This function is intended to return the Hessian of a shape function at a
*/
virtual Tensor<2,dim> shape_grad_grad_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Return the polynomial degree of this finite element, i.e. the value
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* @name Functions to support hp
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Return whether this element implements its hanging node constraints in
* of the degree of the element), as it has no hanging nodes (being a
* discontinuous element).
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* @}
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Determine an estimate for the memory consumption (in bytes) of this
* accessed through pointers to their base class, rather than the class
* itself.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
protected:
get_data (const UpdateFlags update_flags,
const Mapping<dim,spacedim> &mapping,
const Quadrature<dim> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
private:
* returns <tt>FE_DGQ<dim>(degree)</tt>, with <tt>dim</tt> and
* <tt>degree</tt> replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
/**
* Return the matrix interpolating from the given finite element to the
*/
virtual void
get_interpolation_matrix (const FiniteElement<dim, spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim, spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim, spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Projection from a fine grid space onto a coarse grid space. Overrides the
*/
virtual const FullMatrix<double> &
get_restriction_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
/**
* Embedding matrix between grids. Overrides the respective method in
*/
virtual const FullMatrix<double> &
get_prolongation_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
/**
* @name Functions to support hp
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const override;
/**
* Return whether this element implements its hanging node constraints in
* of the element), as it has no hanging nodes (being a discontinuous
* element).
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim, spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim, spacedim> &fe_other) const override;
/**
* @}
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Return a list of constant modes of the element. For this element, it
* simply returns one row with all entries set to true.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
/**
* Implementation of the corresponding function in the FiniteElement
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
/**
* Determine an estimate for the memory consumption (in bytes) of this
* accessed through pointers to their base class, rather than the class
* itself.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
protected:
/**
* returns <tt>FE_DGQArbitraryNodes<dim>(degree)</tt>, with <tt>dim</tt> and
* <tt>degree</tt> replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
/**
* Implementation of the corresponding function in the FiniteElement
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
};
* mode) is set to true and all other elements are set to false.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
/**
* Return a string that uniquely identifies a finite element. This class
* <tt>degree</tt> replaced by the values given by the template parameter
* and the argument passed to the constructor, respectively.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
};
* <tt>degree</tt> replaced by the values given by the template parameter
* and the argument passed to the constructor, respectively.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
};
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
virtual
UpdateFlags
- requires_update_flags (const UpdateFlags update_flags) const;
+ requires_update_flags (const UpdateFlags update_flags) const override;
/**
* Return a string that identifies a finite element.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
/**
* Access to a composing element. The index needs to be smaller than the
* element to be enriched, which could be FE_Nothing.
*/
virtual const FiniteElement<dim,spacedim> &
- base_element (const unsigned int index) const;
+ base_element (const unsigned int index) const override;
/**
* Return the value of the @p ith shape function at the point @p p. @p p is a
* real-space.
*/
virtual double shape_value(const unsigned int i,
- const Point< dim > &p) const;
+ const Point< dim > &p) const override;
/**
* @name Transfer matrices
*/
virtual const FullMatrix<double> &
get_restriction_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
/**
* Embedding matrix between grids.
*/
virtual const FullMatrix<double> &
get_prolongation_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
//@}
* This function returns @p true if and only if all its base elements return @p true
* for this function.
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return the matrix interpolating from a face of one element to the face
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* If, on a vertex, several finite elements are active, the hp code first
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const override;
//@}
get_data (const UpdateFlags flags,
const Mapping<dim,spacedim> &mapping,
const Quadrature<dim> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData< dim, spacedim > &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData< dim, spacedim > &output_data) const override;
virtual std::unique_ptr<typename FiniteElement<dim,spacedim>::InternalDataBase>
get_face_data (const UpdateFlags update_flags,
const Mapping<dim,spacedim> &mapping,
const Quadrature<dim-1> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData< dim, spacedim > &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData< dim, spacedim > &output_data) const override;
virtual std::unique_ptr<typename FiniteElement<dim,spacedim>::InternalDataBase>
get_subface_data (const UpdateFlags update_flags,
const Mapping<dim,spacedim> &mapping,
const Quadrature<dim-1> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void fill_fe_values (const typename Triangulation<dim, spacedim>::cell_iterator &cell,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data
- ) const;
+ ) const override;
virtual
void
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data
- ) const;
+ ) const override;
virtual
void
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data
- ) const;
+ ) const override;
private:
/**
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
/**
* Return a string that uniquely identifies a finite element. This class
* returns <tt>FE_FaceQ<dim>(degree)</tt>, with <tt>dim</tt> and
* <tt>degree</tt> replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
/**
* Implementation of the corresponding function in the FiniteElement
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
/**
* Return the matrix interpolating from a face of one element to the face
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* @name Functions to support hp
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim, spacedim> &fe_other) const override;
/**
* Return whether this element implements its hanging node constraints in
* the new way, which has to be used to make elements "hp compatible".
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* @}
*/
* simply returns one row with all entries set to true.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
private:
/**
virtual
std::unique_ptr<FiniteElement<1,spacedim>>
- clone() const;
+ clone() const override;
/**
* Return a string that uniquely identifies a finite element. This class
* returns <tt>FE_FaceQ<dim>(degree)</tt>, with <tt>dim</tt> and
* <tt>degree</tt> replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
// for documentation, see the FiniteElement base class
virtual
UpdateFlags
- requires_update_flags (const UpdateFlags update_flags) const;
+ requires_update_flags (const UpdateFlags update_flags) const override;
/**
* Return the matrix interpolating from a face of one element to the face
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<1,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
virtual void
get_subface_interpolation_matrix (const FiniteElement<1,spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Return whether this element implements its hanging node constraints in
* the new way, which has to be used to make elements "hp compatible".
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* If, on a vertex, several finite elements are active, the hp code first
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<1, spacedim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<1, spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<1, spacedim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<1, spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<1, spacedim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<1, spacedim> &fe_other) const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<1,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<1,spacedim> &fe_other) const override;
/**
* Return a list of constant modes of the element. For this element, it
* simply returns one row with all entries set to true.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
protected:
/*
get_data (const UpdateFlags /*update_flags*/,
const Mapping<1,spacedim> &/*mapping*/,
const Quadrature<1> &/*quadrature*/,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &/*output_data*/) const
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &/*output_data*/) const override
{
return std_cxx14::make_unique<typename FiniteElement<1, spacedim>::InternalDataBase>();
}
get_face_data(const UpdateFlags update_flags,
const Mapping<1,spacedim> &/*mapping*/,
const Quadrature<0> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &/*output_data*/) const
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &/*output_data*/) const override
{
// generate a new data object and initialize some fields
auto data = std_cxx14::make_unique<typename FiniteElement<1,spacedim>::InternalDataBase>();
get_subface_data(const UpdateFlags update_flags,
const Mapping<1,spacedim> &mapping,
const Quadrature<0> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &output_data) const
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &output_data) const override
{
return get_face_data(update_flags, mapping, quadrature, output_data);
}
const typename Mapping<1,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<1, spacedim> &mapping_data,
const typename FiniteElement<1,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &output_data) const override;
virtual
void
const typename Mapping<1,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<1, spacedim> &mapping_data,
const typename FiniteElement<1,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &output_data) const override;
virtual
void
const typename Mapping<1,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<1, spacedim> &mapping_data,
const typename FiniteElement<1,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<1, spacedim> &output_data) const override;
private:
/**
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
/**
* Return a string that uniquely identifies a finite element. This class
* returns <tt>FE_FaceP<dim>(degree)</tt> , with <tt>dim</tt> and
* <tt>degree</tt> replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
/**
* Return the matrix interpolating from a face of one element to the face
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Return whether this element implements its hanging node constraints in
* the new way, which has to be used to make elements "hp compatible".
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Return a list of constant modes of the element. For this element, the
* polynomials).
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
private:
/**
/**
* Return the name of the element
*/
- std::string get_name() const;
+ std::string get_name() const override;
};
* returns <tt>FE_Nedelec<dim>(degree)</tt>, with @p dim and @p degree
* replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
/**
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Return whether this element implements its hanging node constraints in
* of the degree of the element), as it implements the complete set of
* functions necessary for hp capability.
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return whether this element dominates the one, which is given as
* argument.
*/
virtual FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim> &fe_other) const override;
/**
* If, on a vertex, several finite elements are active, the hp code first
* corresponding index of the other finite element.
*/
virtual std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
* of freedom on lines.
*/
virtual std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
* of freedom on lines.
*/
virtual std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim> &fe_other) const override;
/**
* Return the matrix interpolating from a face of one element to the face of
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the subface
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Projection from a fine grid space onto a coarse grid space. If this
* projection operator is associated with a matrix @p P, then the
*/
virtual const FullMatrix<double> &
get_restriction_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
/**
* Embedding matrix between grids.
*/
virtual const FullMatrix<double> &
get_prolongation_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
// documentation inherited from the base class
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
/**
* Return a list of constant modes of the element.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
virtual
std::unique_ptr<FiniteElement<dim,dim> >
- clone() const;
+ clone() const override;
private:
/**
virtual
UpdateFlags
- requires_update_flags (const UpdateFlags update_flags) const;
+ requires_update_flags (const UpdateFlags update_flags) const override;
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
- virtual std::unique_ptr<FiniteElement<dim,dim> > clone() const;
+ virtual std::unique_ptr<FiniteElement<dim,dim> > clone() const override;
/**
* This element is vector-valued so this function will
* throw an exception.
*/
virtual double shape_value (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Not implemented.
*/
virtual double shape_value_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* This element is vector-valued so this function will
* throw an exception.
*/
virtual Tensor<1,dim> shape_grad (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Not implemented.
*/
virtual Tensor<1,dim> shape_grad_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* This element is vector-valued so this function will
* throw an exception.
*/
virtual Tensor<2,dim> shape_grad_grad (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Not implemented.
*/
virtual Tensor<2,dim> shape_grad_grad_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Given <tt>flags</tt>, determines the values which must be computed only
get_data (const UpdateFlags update_flags,
const Mapping<dim,dim> &mapping,
const Quadrature<dim> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, dim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, dim> &output_data) const override;
/**
* Compute information about the shape functions on the cell denoted by the
const typename Mapping<dim,dim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, dim> &mapping_data,
const typename FiniteElement<dim,dim>::InternalDataBase &fedata,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, dim> &data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, dim> &data) const override;
/**
* Compute information about the shape functions on the cell and face denoted
const typename Mapping<dim,dim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, dim> &mapping_data,
const typename FiniteElement<dim,dim>::InternalDataBase &fedata,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, dim> &data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, dim> &data) const override;
/**
* Not implemented.
const typename Mapping<dim,dim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, dim> &mapping_data,
const typename FiniteElement<dim,dim>::InternalDataBase &fedata,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, dim> &data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, dim> &data) const override;
/**
* Derived Internal data which is used to store cell-independent data.
*/
FE_P1NC();
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
- virtual UpdateFlags requires_update_flags (const UpdateFlags flags) const;
+ virtual UpdateFlags requires_update_flags (const UpdateFlags flags) const override;
virtual
std::unique_ptr<FiniteElement<2,2>>
- clone() const;
+ clone() const override;
/**
* Destructor.
*/
- virtual ~FE_P1NC () = default;
+ virtual ~FE_P1NC () override = default;
get_data (const UpdateFlags update_flags,
const Mapping<2,2> &,
const Quadrature<2> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const override;
virtual
std::unique_ptr<FiniteElement<2,2>::InternalDataBase>
get_face_data (const UpdateFlags update_flags,
const Mapping<2,2> &,
const Quadrature<1> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const override;
virtual
std::unique_ptr<FiniteElement<2,2>::InternalDataBase>
get_subface_data (const UpdateFlags update_flags,
const Mapping<2,2> &,
const Quadrature<1> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const override;
/**
* Compute the data on the current cell.
const Mapping<2,2>::InternalDataBase &mapping_internal,
const internal::FEValuesImplementation::MappingRelatedData<2,2> &mapping_data,
const FiniteElement<2,2>::InternalDataBase &fe_internal,
- internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const;
+ internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const override;
/**
* Compute the data on the face of the current cell.
const Mapping<2,2>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<2,2> &mapping_data,
const InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const override;
/**
* Compute the data on the subface of the current cell.
const Mapping<2,2>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<2,2> &mapping_data,
const InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<2,2> &output_data) const override;
/**
* Create the constraints matrix for hanging edges.
// for documentation, see the FiniteElement base class
virtual
UpdateFlags
- requires_update_flags (const UpdateFlags update_flags) const;
+ requires_update_flags (const UpdateFlags update_flags) const override;
/**
* Return the numbering of the underlying polynomial space compared to
* the semantics of this function.
*/
virtual double shape_value (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Return the value of the <tt>component</tt>th vector component of the
*/
virtual double shape_value_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Return the gradient of the <tt>i</tt>th shape function at the point
* the semantics of this function.
*/
virtual Tensor<1,dim> shape_grad (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Return the gradient of the <tt>component</tt>th vector component of the
*/
virtual Tensor<1,dim> shape_grad_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Return the tensor of second derivatives of the <tt>i</tt>th shape
* class for more information about the semantics of this function.
*/
virtual Tensor<2,dim> shape_grad_grad (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Return the second derivative of the <tt>component</tt>th vector component
*/
virtual Tensor<2,dim> shape_grad_grad_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Return the tensor of third derivatives of the <tt>i</tt>th shape function
* for more information about the semantics of this function.
*/
virtual Tensor<3,dim> shape_3rd_derivative (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Return the third derivative of the <tt>component</tt>th vector component
*/
virtual Tensor<3,dim> shape_3rd_derivative_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Return the tensor of fourth derivatives of the <tt>i</tt>th shape
* class for more information about the semantics of this function.
*/
virtual Tensor<4,dim> shape_4th_derivative (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Return the fourth derivative of the <tt>component</tt>th vector component
*/
virtual Tensor<4,dim> shape_4th_derivative_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
protected:
/*
get_data(const UpdateFlags update_flags,
const Mapping<dim,spacedim> &/*mapping*/,
const Quadrature<dim> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override
{
// generate a new data object and
// initialize some fields
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
/**
* Fields of cell-independent data.
// for documentation, see the FiniteElement base class
virtual
UpdateFlags
- requires_update_flags (const UpdateFlags update_flags) const;
+ requires_update_flags (const UpdateFlags update_flags) const override;
protected:
/*
get_data (const UpdateFlags /*update_flags*/,
const Mapping<dim,spacedim> &/*mapping*/,
const Quadrature<dim> &/*quadrature*/,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &/*output_data*/) const
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &/*output_data*/) const override
{
return std_cxx14::make_unique<InternalData>();
}
get_face_data(const UpdateFlags update_flags,
const Mapping<dim,spacedim> &/*mapping*/,
const Quadrature<dim-1> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &/*output_data*/) const
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &/*output_data*/) const override
{
// generate a new data object and
// initialize some fields
get_subface_data(const UpdateFlags update_flags,
const Mapping<dim,spacedim> &mapping,
const Quadrature<dim-1> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override
{
return get_face_data(update_flags, mapping,
QProjector<dim - 1>::project_to_all_children(quadrature),
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
/**
* Fields of cell-independent data.
// for documentation, see the FiniteElement base class
virtual
UpdateFlags
- requires_update_flags (const UpdateFlags update_flags) const;
+ requires_update_flags (const UpdateFlags update_flags) const override;
/**
* Compute the (scalar) value of shape function @p i at the given quadrature
* an exception.
*/
virtual double shape_value (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
// documentation inherited from the base class
virtual double shape_value_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Compute the gradient of (scalar) shape function @p i at the given
* throws an exception.
*/
virtual Tensor<1,dim> shape_grad (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
// documentation inherited from the base class
virtual Tensor<1,dim> shape_grad_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Compute the Hessian of (scalar) shape function @p i at the given
* throws an exception.
*/
virtual Tensor<2,dim> shape_grad_grad (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
// documentation inherited from the base class
virtual Tensor<2,dim> shape_grad_grad_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
protected:
/**
get_data(const UpdateFlags update_flags,
const Mapping<dim,spacedim> &/*mapping*/,
const Quadrature<dim> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &/*output_data*/) const
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &/*output_data*/) const override
{
// generate a new data object and
// initialize some fields
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
/**
* Fields of cell-independent data for FE_PolyTensor. Stores the values of
* returns <tt>FE_Q<dim>(degree)</tt>, with @p dim and @p degree replaced by
* appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
/**
* Implementation of the corresponding function in the FiniteElement
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
};
*/
virtual void
get_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Projection from a fine grid space onto a coarse grid space. Overrides the
*/
virtual const FullMatrix<double> &
get_restriction_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
/**
* Embedding matrix between grids. Overrides the respective method in
*/
virtual const FullMatrix<double> &
get_prolongation_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
/**
* Given an index in the natural ordering of indices on a face, return the
const unsigned int face,
const bool face_orientation = true,
const bool face_flip = false,
- const bool face_rotation = false) const;
+ const bool face_rotation = false) const override;
/**
* Return a list of constant modes of the element. For this element, the
* list consists of true arguments for all components.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
/**
* @name Functions to support hp
* of the element), as it implements the complete set of functions necessary
* for hp capability.
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* If, on a vertex, several finite elements are active, the hp code first
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const override;
//@}
/**
* returns <tt>FE_Q_Bubbles<dim>(degree)</tt>, with @p dim and @p degree
* replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
// documentation inherited from the base class
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
/**
* Return the matrix interpolating from the given finite element to the
*/
virtual void
get_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
virtual const FullMatrix<double> &
get_prolongation_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case) const;
+ const RefinementCase<dim> &refinement_case) const override;
virtual const FullMatrix<double> &
get_restriction_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case) const;
+ const RefinementCase<dim> &refinement_case) const override;
/**
* Check for non-zero values on a face.
* Implementation of the interface in FiniteElement
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
private:
* returns <tt>FE_Q_DG0<dim>(degree)</tt>, with @p dim and @p degree
* replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
// documentation inherited from the base class
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
/**
* Return the matrix interpolating from the given finite element to the
*/
virtual void
get_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Return a list of constant modes of the element. For this element, there
* the discontinuous part.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
private:
* returns <tt>FE_Q_Hierarchical<dim>(degree)</tt>, with @p dim and @p
* degree replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,dim> >
- clone() const;
+ clone() const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* @name Functions to support hp
* the degree of the element), as it implements the complete set of
* functions necessary for hp capability.
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return the matrix interpolating from the given finite element to the
* present one. Interpolation only between FE_Q_Hierarchical is supported.
*/
virtual void get_interpolation_matrix(const FiniteElement< dim> &source,
- FullMatrix< double > &matrix) const;
+ FullMatrix< double > &matrix) const override;
/**
* Embedding matrix between grids. Only isotropic refinement is supported.
*/
virtual const
FullMatrix<double> &get_prolongation_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case = RefinementCase< dim >::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case = RefinementCase< dim >::isotropic_refinement) const override;
/**
* If, on a vertex, several finite elements are active, the hp code first
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim> &fe_other) const override;
/**
* Same as above but for lines.
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim> &fe_other) const override;
/**
* Same as above but for faces.
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim> &fe_other) const override;
/*@}*/
* from a given element, then they must throw an exception of type
* <tt>FiniteElement<dim>::ExcInterpolationNotImplemented</tt>.
*/
- virtual void get_face_interpolation_matrix (const FiniteElement<dim> &source, FullMatrix<double> &matrix) const;
+ virtual void get_face_interpolation_matrix (const FiniteElement<dim> &source, FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the subface
* from a given element, then they must throw an exception of type
* <tt>ExcInterpolationNotImplemented</tt>.
*/
- virtual void get_subface_interpolation_matrix (const FiniteElement<dim> &source, const unsigned int subface, FullMatrix<double> &matrix) const;
+ virtual void get_subface_interpolation_matrix (const FiniteElement<dim> &source, const unsigned int subface, FullMatrix<double> &matrix) const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim> &fe_other) const override;
/**
* Determine an estimate for the memory consumption (in bytes) of this
* accessed through pointers to their base class, rather than the class
* itself.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
/**
* For a finite element of degree @p sub_degree < @p degree, we return a
* false for the remaining ones.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
private:
* returns <tt>FE_Q_iso_q1<dim>(equivalent_degree)</tt>, with @p dim and @p
* equivalent_degree replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
/**
* Implementation of the corresponding function in the FiniteElement
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
/**
* @name Functions to support hp
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const override;
//@}
};
FE_RannacherTurek(const unsigned int order = 0,
const unsigned int n_face_support_points = 2);
- virtual std::string get_name() const;
+ virtual std::string get_name() const override;
virtual
std::unique_ptr<FiniteElement<dim,dim> >
- clone() const;
+ clone() const override;
// documentation inherited from the base class
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
private:
/**
* returns <tt>FE_RaviartThomas<dim>(degree)</tt>, with @p dim and @p degree
* replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
// documentation inherited from the base class
virtual
std::unique_ptr<FiniteElement<dim,dim> >
- clone() const;
+ clone() const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* always @p true.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
// documentation inherited from the base class
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
/**
* Return a list of constant modes of the element. This method is currently
* not correctly implemented because it returns ones for all components.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
private:
/**
* returns <tt>FE_RaviartThomasNodal<dim>(degree)</tt>, with @p dim and @p
* degree replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
// documentation inherited from the base class
virtual
std::unique_ptr<FiniteElement<dim,dim> >
- clone() const;
+ clone() const override;
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
virtual void get_face_interpolation_matrix (const FiniteElement<dim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
virtual void get_subface_interpolation_matrix (const FiniteElement<dim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
- virtual bool hp_constraints_are_implemented () const;
+ FullMatrix<double> &matrix) const override;
+ virtual bool hp_constraints_are_implemented () const override;
virtual std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim> &fe_other) const override;
virtual std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim> &fe_other) const override;
virtual std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim> &fe_other) const override;
virtual FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim> &fe_other) const override;
private:
/**
* always @p true.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Initialize the FiniteElement<dim>::generalized_support_points and
* FiniteElement<dim>::generalized_face_support_points fields. Called from
/**
* Destructor.
*/
- virtual ~FESystem () = default;
+ virtual ~FESystem () override = default;
/**
* Return a string that uniquely identifies a finite element. This element
* the multiplicities of the basis elements. If a multiplicity is equal to
* one, then the superscript is omitted.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
virtual
UpdateFlags
- requires_update_flags (const UpdateFlags update_flags) const;
+ requires_update_flags (const UpdateFlags update_flags) const override;
// make variant with ComponentMask also available:
using FiniteElement<dim,spacedim>::get_sub_fe;
virtual
const FiniteElement<dim,spacedim> &
get_sub_fe (const unsigned int first_component,
- const unsigned int n_selected_components) const;
+ const unsigned int n_selected_components) const override;
/**
* Return the value of the @p ith shape function at the point @p p. @p p is
* the shape of the cell in real space.
*/
virtual double shape_value (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Return the value of the @p componentth vector component of the @p ith
*/
virtual double shape_value_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Return the gradient of the @p ith shape function at the point @p p. @p p
* the shape of the cell in real space.
*/
virtual Tensor<1,dim> shape_grad (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Return the gradient of the @p componentth vector component of the @p ith
*/
virtual Tensor<1,dim> shape_grad_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Return the tensor of second derivatives of the @p ith shape function at
* the shape of the cell in real space.
*/
virtual Tensor<2,dim> shape_grad_grad (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Return the second derivatives of the @p componentth vector component of
Tensor<2,dim>
shape_grad_grad_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Return the tensor of third derivatives of the @p ith shape function at
* the shape of the cell in real space.
*/
virtual Tensor<3,dim> shape_3rd_derivative (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Return the third derivatives of the @p componentth vector component of
*/
virtual Tensor<3,dim> shape_3rd_derivative_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Return the tensor of fourth derivatives of the @p ith shape function at
* the shape of the cell in real space.
*/
virtual Tensor<4,dim> shape_4th_derivative (const unsigned int i,
- const Point<dim> &p) const;
+ const Point<dim> &p) const override;
/**
* Return the fourth derivatives of the @p componentth vector component of
*/
virtual Tensor<4,dim> shape_4th_derivative_component (const unsigned int i,
const Point<dim> &p,
- const unsigned int component) const;
+ const unsigned int component) const override;
/**
* Return the matrix interpolating from the given finite element to the
*/
virtual void
get_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Access to a composing element. The index needs to be smaller than the
* the multiplicities are greater than one.
*/
virtual const FiniteElement<dim,spacedim> &
- base_element (const unsigned int index) const;
+ base_element (const unsigned int index) const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Projection from a fine grid space onto a coarse grid space. Overrides the
*/
virtual const FullMatrix<double> &
get_restriction_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
/**
* Embedding matrix between grids. Overrides the respective method in
*/
virtual const FullMatrix<double> &
get_prolongation_matrix (const unsigned int child,
- const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const;
+ const RefinementCase<dim> &refinement_case=RefinementCase<dim>::isotropic_refinement) const override;
/**
* Given an index in the natural ordering of indices on a face, return the
const unsigned int face,
const bool face_orientation = true,
const bool face_flip = false,
- const bool face_rotation = false) const;
+ const bool face_rotation = false) const override;
/**
* Implementation of the respective function in the base class.
*/
virtual
Point<dim>
- unit_support_point (const unsigned int index) const;
+ unit_support_point (const unsigned int index) const override;
/**
* Implementation of the respective function in the base class.
*/
virtual
Point<dim-1>
- unit_face_support_point (const unsigned int index) const;
+ unit_face_support_point (const unsigned int index) const override;
/**
* Return a list of constant modes of the element. The returns table has as
* element. Concatenates the constant modes of each base element.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
/**
* @name Functions to support hp
* This function returns @p true if and only if all its base elements return
* @p true for this function.
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return the matrix interpolating from a face of one element to the face
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* If, on a vertex, several finite elements are active, the hp code first
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_vertex_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_line_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Same as hp_vertex_dof_indices(), except that the function treats degrees
*/
virtual
std::vector<std::pair<unsigned int, unsigned int> >
- hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const;
+ hp_quad_dof_identities (const FiniteElement<dim,spacedim> &fe_other) const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const override;
//@}
/**
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &dof_values) const;
+ std::vector<double> &dof_values) const override;
/**
* Determine an estimate for the memory consumption (in bytes) of this
* accessed through pointers to their base class, rather than the class
* itself.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
protected:
get_data (const UpdateFlags update_flags,
const Mapping<dim,spacedim> &mapping,
const Quadrature<dim> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
std::unique_ptr<typename FiniteElement<dim,spacedim>::InternalDataBase>
get_face_data (const UpdateFlags update_flags,
const Mapping<dim,spacedim> &mapping,
const Quadrature<dim-1> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
std::unique_ptr<typename FiniteElement<dim,spacedim>::InternalDataBase>
get_subface_data (const UpdateFlags update_flags,
const Mapping<dim,spacedim> &mapping,
const Quadrature<dim-1> &quadrature,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
virtual
void
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_internal,
const dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim> &mapping_data,
const typename FiniteElement<dim,spacedim>::InternalDataBase &fe_internal,
- dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const;
+ dealii::internal::FEValuesImplementation::FiniteElementRelatedData<dim, spacedim> &output_data) const override;
/**
* Do the work for the three <tt>fill_fe*_values</tt> functions.
* Destructor. Deletes all @p InternalDatas whose pointers are stored by
* the @p base_fe_datas vector.
*/
- ~InternalData();
+ ~InternalData() override;
/**
* Give write-access to the pointer to a @p InternalData of the @p
/**
* Virtual destructor doing nothing but making the compiler happy.
*/
- virtual ~FEFactoryBase() = default;
+ virtual ~FEFactoryBase() override = default;
};
/**
* Create a FiniteElement and return a pointer to it.
*/
virtual std::unique_ptr<FiniteElement<FE::dimension,FE::space_dimension> >
- get (const unsigned int degree) const;
+ get (const unsigned int degree) const override;
/**
* Create a FiniteElement from a quadrature formula (currently only
* implemented for FE_Q) and return a pointer to it.
*/
virtual std::unique_ptr<FiniteElement<FE::dimension,FE::space_dimension> >
- get (const Quadrature<1> &quad) const;
+ get (const Quadrature<1> &quad) const override;
};
/**
* returns <tt>FE_DGQ<dim>(degree)</tt>, with <tt>dim</tt> and
* <tt>degree</tt> replaced by appropriate values.
*/
- virtual std::string get_name () const;
+ virtual std::string get_name () const override;
virtual
std::unique_ptr<FiniteElement<dim,spacedim> >
- clone() const;
+ clone() const override;
/**
* Implementation of the corresponding function in the FiniteElement
virtual
void
convert_generalized_support_point_values_to_dof_values (const std::vector<Vector<double> > &support_point_values,
- std::vector<double> &nodal_values) const;
+ std::vector<double> &nodal_values) const override;
/**
* This function returns @p true, if the shape function @p shape_index has
* non-zero function values somewhere on the face @p face_index.
*/
virtual bool has_support_on_face (const unsigned int shape_index,
- const unsigned int face_index) const;
+ const unsigned int face_index) const override;
/**
* Return a list of constant modes of the element. For this element, it
* simply returns one row with all entries set to true.
*/
virtual std::pair<Table<2,bool>, std::vector<unsigned int> >
- get_constant_modes () const;
+ get_constant_modes () const override;
/**
* Return whether this element implements its hanging node constraints in
* the new way, which has to be used to make elements "hp compatible".
*/
- virtual bool hp_constraints_are_implemented () const;
+ virtual bool hp_constraints_are_implemented () const override;
/**
* Return the matrix interpolating from a face of one element to the face
*/
virtual void
get_face_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return the matrix interpolating from a face of one element to the face
virtual void
get_subface_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
const unsigned int subface,
- FullMatrix<double> &matrix) const;
+ FullMatrix<double> &matrix) const override;
/**
* Return whether this element dominates the one given as argument when they
*/
virtual
FiniteElementDomination::Domination
- compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const;
+ compare_for_face_domination (const FiniteElement<dim,spacedim> &fe_other) const override;
private:
/**
/**
* Return the name of the element
*/
- std::string get_name() const;
+ std::string get_name() const override;
};
/**
* Destructor.
*/
- ~FEValuesBase ();
+ ~FEValuesBase () override;
/// @name ShapeAccess Access to shape function values. These fields are filled by the finite element.
/**
* Destructor.
*/
- ~Cache();
+ ~Cache() override;
/**
* Make sure that the objects marked for update are recomputed during
* Destructor. Does nothing here, but needs to be declared virtual to make
* class hierarchies derived from this class possible.
*/
- virtual ~Manifold () = default;
+ virtual ~Manifold () override = default;
/**
* Return a copy of this manifold.
/**
* Destructor.
*/
- virtual ~PersistentTriangulation () = default;
+ virtual ~PersistentTriangulation () override = default;
/**
* Overloaded version of the same function in the base class which stores
* triangulation and after that calls the respective function of the base
* class.
*/
- virtual void execute_coarsening_and_refinement ();
+ virtual void execute_coarsening_and_refinement () override;
/**
* Restore the grid according to the saved data. For this, the coarse grid
* The coarse grid must persist until the end of this object, since it will
* be used upon reconstruction of the grid.
*/
- virtual void copy_triangulation (const Triangulation<dim, spacedim> &tria);
+ virtual void copy_triangulation (const Triangulation<dim, spacedim> &tria) override;
/**
* Throw an error, since this function is not useful in the context of this
*/
virtual void create_triangulation (const std::vector<Point<spacedim> > &vertices,
const std::vector<CellData<dim> > &cells,
- const SubCellData &subcelldata);
+ const SubCellData &subcelldata) override;
/**
* An overload of the respective function of the base class.
virtual void create_triangulation_compatibility (
const std::vector<Point<spacedim> > &vertices,
const std::vector<CellData<dim> > &cells,
- const SubCellData &subcelldata);
+ const SubCellData &subcelldata) override;
/**
* Write all refine and coarsen flags to the ostream @p out.
* Determine an estimate for the memory consumption (in bytes) of this
* object.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
/**
* Exception.
* automatically generated destructor would have a different one due to
* member objects.
*/
- virtual ~DistortedCellList () noexcept;
+ virtual ~DistortedCellList () noexcept override;
/**
* A list of those cells among the coarse mesh cells that are deformed or
/**
* Delete the object and all levels of the hierarchy.
*/
- virtual ~Triangulation ();
+ virtual ~Triangulation () override;
/**
* Reset this triangulation into a virgin state by deleting all data.
/**
* Destructor.
*/
- virtual ~DoFHandler ();
+ virtual ~DoFHandler () override;
/**
* Copy operator. DoFHandler objects are large and expensive.
/**
* Destructor.
*/
- ~BlockMatrixBase ();
+ ~BlockMatrixBase () override;
/**
* Copy the matrix given as argument into the current object.
/**
* Destructor.
*/
- virtual ~BlockSparseMatrix ();
+ virtual ~BlockSparseMatrix () override;
/**
* Destructor.
*/
- ~BlockSparsityPatternBase ();
+ ~BlockSparsityPatternBase () override;
/**
* Resize the matrix, by setting the number of block rows and columns. This
/**
* Destructor. Clears memory
*/
- ~BlockVector () = default;
+ ~BlockVector () override = default;
/**
* Call the compress() function on all the subblocks.
* Destructor. Free all memory, but do not release the memory of the
* sparsity structure.
*/
- virtual ~ChunkSparseMatrix ();
+ virtual ~ChunkSparseMatrix () override;
/**
* Copy operator. Since copying entire sparse matrices is a very expensive
/**
* Destructor.
*/
- ~ChunkSparsityPattern () = default;
+ ~ChunkSparsityPattern () override = default;
/**
* Copy operator. For this the same holds as for the copy constructor: it is
public:
ExcPETScError (const int error_code);
- virtual void print_info (std::ostream &out) const;
+ virtual void print_info (std::ostream &out) const override;
const int error_code;
};
/**
* Destructor. Declared in order to make it virtual.
*/
- virtual ~MatrixOut () = default;
+ virtual ~MatrixOut () override = default;
/**
* Generate a list of patches from the given matrix and use the given string
* they shall write to a file.
*/
virtual const std::vector<Patch> &
- get_patches () const;
+ get_patches () const override;
/**
* Virtual function through which the names of data sets are obtained by the
* output functions of the base class.
*/
- virtual std::vector<std::string> get_dataset_names () const;
+ virtual std::vector<std::string> get_dataset_names () const override;
/**
* Get the value of the matrix at gridpoint <tt>(i,j)</tt>. Depending on the
* matrix. Since this is a sequential matrix, it returns the MPI_COMM_SELF
* communicator.
*/
- virtual const MPI_Comm &get_mpi_communicator () const;
+ virtual const MPI_Comm &get_mpi_communicator () const override;
private:
/**
* Destructor. Made virtual so that one can use pointers to this class.
*/
- virtual ~MatrixBase ();
+ virtual ~MatrixBase () override;
/**
* This operator assigns a scalar to a matrix. Since this does usually not
* Return a reference to the MPI communicator object in use with this
* matrix.
*/
- const MPI_Comm &get_mpi_communicator () const;
+ const MPI_Comm &get_mpi_communicator () const override;
/**
* Matrix-vector multiplication: let <i>dst = M*src</i> with <i>M</i>
/**
* Destructor.
*/
- ~BlockSparseMatrix () = default;
+ ~BlockSparseMatrix () override = default;
/**
* Pseudo copy operator only copying empty objects. The sizes of the
/**
* Destructor. Clears memory
*/
- ~BlockVector () = default;
+ ~BlockVector () override = default;
/**
* Copy operator: fill all components of the vector that are locally
/**
* Destructor to free the PETSc object.
*/
- ~SparseMatrix ();
+ ~SparseMatrix () override;
/**
* Create a sparse matrix of dimensions @p m times @p n, with an initial
* Return a reference to the MPI communicator object in use with this
* matrix.
*/
- virtual const MPI_Comm &get_mpi_communicator () const;
+ virtual const MPI_Comm &get_mpi_communicator () const override;
/**
* @addtogroup Exceptions
* Release all memory and return to a state just like after having
* called the default constructor.
*/
- void clear ();
+ virtual void clear () override;
/**
* Copy the given vector. Resize the present vector if necessary. Also
* Return a reference to the MPI communicator object in use with this
* vector.
*/
- const MPI_Comm &get_mpi_communicator () const;
+ const MPI_Comm &get_mpi_communicator () const override;
/**
* Print to a stream. @p precision denotes the desired precision with
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
/**
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
* Function that takes a Krylov Subspace Solver context object, and sets
* the type of solver that is appropriate for this class.
*/
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
};
/**
*/
const AdditionalData additional_data;
- virtual void set_solver_type (KSP &ksp) const;
+ virtual void set_solver_type (KSP &ksp) const override;
private:
/**
* matrix. Since this is a sequential matrix, it returns the MPI_COMM_SELF
* communicator.
*/
- virtual const MPI_Comm &get_mpi_communicator () const;
+ virtual const MPI_Comm &get_mpi_communicator () const override;
/**
* Return the number of rows of this matrix.
/**
* Destructor
*/
- virtual ~VectorBase ();
+ virtual ~VectorBase () override;
/**
* Release all memory and return to a state just like after having called
* of any derived class is called whenever a pointer-to-base-class object is
* destroyed.
*/
- virtual ~PointerMatrixBase () = default;
+ virtual ~PointerMatrixBase () override = default;
/**
* Reset the object to its original state.
const char *name);
// Use doc from base class
- virtual void clear();
+ virtual void clear() override;
/**
* Return whether the object is empty.
* Matrix-vector product.
*/
virtual void vmult (VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
/**
* Transposed matrix-vector product.
*/
virtual void Tvmult (VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
/**
* Matrix-vector product, adding to <tt>dst</tt>.
*/
virtual void vmult_add (VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
/**
* Transposed matrix-vector product, adding to <tt>dst</tt>.
*/
virtual void Tvmult_add (VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
private:
/**
const char *name);
// Use doc from base class
- virtual void clear();
+ virtual void clear() override;
/**
* Return whether the object is empty.
* Matrix-vector product.
*/
virtual void vmult (VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
/**
* Transposed matrix-vector product.
*/
virtual void Tvmult (VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
/**
* Matrix-vector product, adding to <tt>dst</tt>.
*/
virtual void vmult_add (VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
/**
* Transposed matrix-vector product, adding to <tt>dst</tt>.
*/
virtual void Tvmult_add (VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
private:
/**
internal::VectorImplementation::minimum_parallel_grain_size);
}
- ~VectorUpdatesRange() = default;
+ ~VectorUpdatesRange() override = default;
virtual void
apply_to_subrange (const std::size_t begin,
- const std::size_t end) const
+ const std::size_t end) const override
{
updater.apply_to_subrange(begin, end);
}
/**
* Destructor.
*/
- ~PreconditionBlock() = default;
+ ~PreconditionBlock() override = default;
/**
* Initialize matrix and block size. We store the matrix and the block size
/**
* Destructor.
*/
- virtual ~PreconditionSelector();
+ virtual ~PreconditionSelector() override;
/**
* Takes the matrix that is needed for preconditionings that involves a
/**
* Destructor.
*/
- ~ReadWriteVector () = default;
+ ~ReadWriteVector () override = default;
/**
* Set the global size of the vector to @p size. The stored elements have
/**
* Destructor
*/
- ~ScaLAPACKMatrix() = default;
+ ~ScaLAPACKMatrix() override = default;
/**
* Initialize the rectangular matrix with @p n_rows and @p n_cols
/**
* Virtual destructor.
*/
- virtual ~SolverBicgstab ();
+ virtual ~SolverBicgstab () override;
/**
* Solve primal problem only.
/**
* Virtual destructor.
*/
- virtual ~SolverCG () = default;
+ virtual ~SolverCG () override = default;
/**
* Solve the linear system $Ax=b$ for x.
: last_step (last_step), last_residual(last_residual)
{}
- virtual ~NoConvergence () noexcept = default;
+ virtual ~NoConvergence () noexcept override = default;
- virtual void print_info (std::ostream &out) const
+ virtual void print_info (std::ostream &out) const override
{
out << "Iterative method reported convergence failure in step "
<< last_step << ". The residual in the last step was " << last_residual
* Virtual destructor is needed as there are virtual functions in this
* class.
*/
- virtual ~SolverControl() = default;
+ virtual ~SolverControl() override = default;
/**
* Interface to parameter file.
* Virtual destructor is needed as there are virtual functions in this
* class.
*/
- virtual ~ReductionControl() = default;
+ virtual ~ReductionControl() override = default;
/**
* Interface to parameter file.
* value</tt> upon the first iteration.
*/
virtual State check (const unsigned int step,
- const double check_value);
+ const double check_value) override;
/**
* Reduction factor.
* Virtual destructor is needed as there are virtual functions in this
* class.
*/
- virtual ~IterationNumberControl() = default;
+ virtual ~IterationNumberControl() override = default;
/**
* Decide about success or failure of an iteration. This function bases
* the check value reached exactly zero.
*/
virtual State check (const unsigned int step,
- const double check_value);
+ const double check_value) override;
};
* Virtual destructor is needed as there are virtual functions in this
* class.
*/
- virtual ~ConsecutiveControl() = default;
+ virtual ~ConsecutiveControl() override = default;
/**
* Decide about success or failure of an iteration, see the class description
* above.
*/
virtual State check (const unsigned int step,
- const double check_value);
+ const double check_value) override;
protected:
/**
/**
* Virtual destructor.
*/
- virtual ~SolverMinRes () = default;
+ virtual ~SolverMinRes () override = default;
/**
* Solve the linear system $Ax=b$ for x.
/**
* Virtual destructor.
*/
- virtual ~SolverRichardson () = default;
+ virtual ~SolverRichardson () override = default;
/**
* Solve the linear system $Ax=b$ for x.
/**
* Destructor
*/
- ~SolverSelector();
+ ~SolverSelector() override;
/**
* Solver procedure. Calls the @p solve function of the @p solver whose @p
* Destruction. Mark the destructor pure to ensure that this class isn't
* used directly, but only its derived classes.
*/
- virtual ~SparseLUDecomposition () = 0;
+ virtual ~SparseLUDecomposition () override = 0;
/**
* Deletes all member variables. Leaves the class in the state that it had
* directly after calling the constructor
*/
- virtual void clear();
+ virtual void clear() override;
/**
* Parameters for SparseDecomposition.
/**
* Destructor.
*/
- ~SparseDirectUMFPACK ();
+ ~SparseDirectUMFPACK () override;
/**
* @name Setting up a sparse factorization
* Determine an estimate for the memory consumption (in bytes) of this
* object.
*/
- std::size_t memory_consumption () const;
+ std::size_t memory_consumption () const override;
/**
* @addtogroup Exceptions
* Destructor. Free all memory, but do not release the memory of the
* sparsity structure.
*/
- virtual ~SparseMatrix ();
+ virtual ~SparseMatrix () override;
/**
* Copy operator. Since copying entire sparse matrices is a very expensive
/**
* Destructor. Free all memory.
*/
- ~SparseMatrixEZ () = default;
+ ~SparseMatrixEZ () override = default;
/**
* Pseudo operator only copying empty objects.
/**
* Destructor.
*/
- virtual ~SparseMIC();
+ virtual ~SparseMIC() override;
/**
* Deletes all member variables. Leaves the class in the state that it had
* directly after calling the constructor
*/
- virtual void clear();
+ virtual void clear() override;
/**
* Make the @p AdditionalData type in the base class accessible to this
* Determine an estimate for the memory consumption (in bytes) of this
* object.
*/
- std::size_t memory_consumption () const;
+ std::size_t memory_consumption () const override;
/**
* @addtogroup Exceptions
/**
* Destructor.
*/
- ~SparsityPattern () = default;
+ ~SparsityPattern () override = default;
/**
* Copy operator. For this the same holds as for the copy constructor: it is
* Destructor. If this class still owns a file to which temporary data was
* stored, then it is deleted.
*/
- virtual ~SwappableVector ();
+ virtual ~SwappableVector () override;
/**
* Copy operator. Do mostly the same as the copy constructor does; if
/**
* Destructor.
*/
- ~BlockSparseMatrix ();
+ ~BlockSparseMatrix () override;
/**
* Pseudo copy operator only copying empty objects. The sizes of the block
/**
* Reinitialize the object.
*/
- void reinit(const IndexSet &vector_space_vector_index_set,
- const IndexSet &read_write_vector_index_set,
- const MPI_Comm &communicator);
+ virtual void reinit(const IndexSet &vector_space_vector_index_set,
+ const IndexSet &read_write_vector_index_set,
+ const MPI_Comm &communicator) override;
/**
* Return the underlying MPI communicator.
*/
- const MPI_Comm &get_mpi_communicator() const;
+ virtual const MPI_Comm &get_mpi_communicator() const override;
/**
* Return the underlying Epetra_Import object.
/**
* Destructor. Clears memory
*/
- ~BlockVector () = default;
+ ~BlockVector () override = default;
/**
* Copy operator: fill all components of the vector that are locally
/**
* Destructor.
*/
- ~PreconditionBase () = default;
+ ~PreconditionBase () override = default;
/**
* Destroys the preconditioner, leaving an object like just after having
/**
* Destructor.
*/
- ~PreconditionAMG();
+ ~PreconditionAMG() override;
/**
/**
* Destructor.
*/
- ~PreconditionAMGMueLu();
+ ~PreconditionAMGMueLu() override;
/**
* Let Trilinos compute a multilevel hierarchy for the solution of a
* Apply the preconditioner, i.e., dst = src.
*/
void vmult (MPI::Vector &dst,
- const MPI::Vector &src) const;
+ const MPI::Vector &src) const override;
/**
* Apply the transport conditioner, i.e., dst = src.
*/
void Tvmult (MPI::Vector &dst,
- const MPI::Vector &src) const;
+ const MPI::Vector &src) const override;
/**
* Apply the preconditioner on deal.II data structures instead of the ones
* provided in the Trilinos wrapper class, i.e., dst = src.
*/
void vmult (dealii::Vector<double> &dst,
- const dealii::Vector<double> &src) const;
+ const dealii::Vector<double> &src) const override;
/**
* Apply the transpose preconditioner on deal.II data structures instead
* of the ones provided in the Trilinos wrapper class, i.e. dst = src.
*/
void Tvmult (dealii::Vector<double> &dst,
- const dealii::Vector<double> &src) const;
+ const dealii::Vector<double> &src) const override;
/**
* Apply the preconditioner on deal.II parallel data structures instead of
* the ones provided in the Trilinos wrapper class, i.e., dst = src.
*/
void vmult (LinearAlgebra::distributed::Vector<double> &dst,
- const dealii::LinearAlgebra::distributed::Vector<double> &src) const;
+ const dealii::LinearAlgebra::distributed::Vector<double> &src) const override;
/**
* Apply the transpose preconditioner on deal.II parallel data structures
* src.
*/
void Tvmult (LinearAlgebra::distributed::Vector<double> &dst,
- const dealii::LinearAlgebra::distributed::Vector<double> &src) const;
+ const dealii::LinearAlgebra::distributed::Vector<double> &src) const override;
};
/**
* Destructor. Made virtual so that one can use pointers to this class.
*/
- virtual ~SparseMatrix () = default;
+ virtual ~SparseMatrix () override = default;
/**
* This function initializes the Trilinos matrix with a deal.II sparsity
/**
* Destructor
*/
- virtual ~TrilinosPayload() = default;
+ virtual ~TrilinosPayload() override = default;
/**
* Return a payload configured for identity operations
* Epetra_Operator.
*/
virtual bool
- UseTranspose () const;
+ UseTranspose () const override;
/**
* Sets an internal flag so that all operations performed by the matrix,
* operations that may occur on different threads simultaneously.
*/
virtual int
- SetUseTranspose (bool UseTranspose);
+ SetUseTranspose (bool UseTranspose) override;
/**
* Apply the vmult operation on a vector @p X (of internally defined
*/
virtual int
Apply(const VectorType &X,
- VectorType &Y) const;
+ VectorType &Y) const override;
/**
* Apply the vmult inverse operation on a vector @p X (of internally
*/
virtual int
ApplyInverse(const VectorType &Y,
- VectorType &X) const;
+ VectorType &X) const override;
//@}
/**
* Epetra_Operator.
*/
virtual const char *
- Label () const;
+ Label () const override;
/**
* Return a reference to the underlying MPI communicator for
* Epetra_Operator.
*/
virtual const Epetra_Comm &
- Comm () const;
+ Comm () const override;
/**
* Return the partitioning of the domain space of this matrix, i.e., the
* Epetra_Operator.
*/
virtual const Epetra_Map &
- OperatorDomainMap () const;
+ OperatorDomainMap () const override;
/**
* Return the partitioning of the range space of this matrix, i.e., the
* Epetra_Operator.
*/
virtual const Epetra_Map &
- OperatorRangeMap () const;
+ OperatorRangeMap () const override;
//@}
private:
* Epetra_Operator.
*/
virtual bool
- HasNormInf () const;
+ HasNormInf () const override;
/**
* Return the infinity norm of this operator.
* Epetra_Operator.
*/
virtual double
- NormInf () const;
+ NormInf () const override;
};
/**
/**
* Destructor. Made virtual so that one can use pointers to this class.
*/
- virtual ~SparsityPattern () = default;
+ virtual ~SparsityPattern () override = default;
/**
* Initialize a sparsity pattern that is completely stored locally, having
/**
* Destructor.
*/
- ~Vector () = default;
+ ~Vector () override = default;
/**
* Release all memory and return to a state just like after having called
* Destructor, deallocates memory. Made virtual to allow for derived classes
* to behave properly.
*/
- virtual ~Vector () = default;
+ virtual ~Vector () override = default;
/**
* This function does nothing but exists for compatibility with the parallel
* destroying objects of derived type through pointers to this base
* class.
*/
- virtual ~VectorMemory () = default;
+ virtual ~VectorMemory () override = default;
/**
* Return a pointer to a new vector. The number of elements or their
* same kind of service that <code>std::unique</code> provides
* for arbitrary memory allocated on the heap.
*/
- virtual VectorType *alloc ();
+ virtual VectorType *alloc () override;
/**
* Return a vector and indicate that it is not going to be used any further
* same kind of service that <code>std::unique</code> provides
* for arbitrary memory allocated on the heap.
*/
- virtual void free (const VectorType *const v);
+ virtual void free (const VectorType *const v) override;
};
* However, as discussed in the class documentation, this does not imply
* that their memory is returned to the operating system.
*/
- virtual ~GrowingVectorMemory();
+ virtual ~GrowingVectorMemory() override;
/**
* Return a pointer to a new vector. The number of elements or their
* same kind of service that <code>std::unique</code> provides
* for arbitrary memory allocated on the heap.
*/
- virtual VectorType *alloc ();
+ virtual VectorType *alloc () override;
/**
* Return a vector and indicate that it is not going to be used any further
* same kind of service that <code>std::unique</code> provides
* for arbitrary memory allocated on the heap.
*/
- virtual void free (const VectorType *const);
+ virtual void free (const VectorType *const) override;
/**
* Release all vectors that are not currently in use.
* This destructor will only reset the internal sizes and the internal
* pointers, but it will NOT clear the memory.
*/
- ~VectorView();
+ ~VectorView() override;
/**
* The reinit function of this object has a behavior which is different from
* call this reinit function if you really know what you are doing.
*/
virtual void reinit (const size_type N,
- const bool omit_zeroing_entries=false);
+ const bool omit_zeroing_entries=false) override;
/**
* This reinit function is equivalent to constructing a new object with the
* This function is here to prevent memory corruption. It should never be
* called, and will throw an exception if you try to do so.
*/
- virtual void swap (Vector<Number> &v);
+ virtual void swap (Vector<Number> &v) override;
};
/**
* Destructor.
*/
- ~MatrixFree() = default;
+ ~MatrixFree() override = default;
/**
* Extracts the information needed to perform loops over cells. The
/**
* Virtual destructor.
*/
- virtual ~Base() = default;
+ virtual ~Base() override = default;
/**
* Release all memory and return to a state just like after having called
/**
* For preconditioning, we store a lumped mass matrix at the diagonal entries.
*/
- virtual void compute_diagonal ();
+ virtual void compute_diagonal () override;
private:
/**
* using initialize_dof_vector().
*/
virtual void apply_add (VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
/**
* For this operator, there is just a cell contribution.
/**
* The empty virtual destructor.
*/
- virtual ~LocalIntegrator() = default;
+ virtual ~LocalIntegrator() override = default;
/**
* Virtual function for integrating on cells. Throws exception
/**
* Virtual, but empty destructor.
*/
- virtual ~VectorDataBase() = default;
+ virtual ~VectorDataBase() override = default;
/**
* The only function added to VectorSelector is an abstract virtual
const unsigned int component,
const unsigned int n_comp,
const unsigned int start,
- const unsigned int size) const;
+ const unsigned int size) const override;
virtual void mg_fill(
std::vector<std::vector<std::vector<typename VectorType::value_type> > > &values,
const unsigned int component,
const unsigned int n_comp,
const unsigned int start,
- const unsigned int size) const;
+ const unsigned int size) const override;
/**
* The memory used by this object.
/*
* Virtual destructor.
*/
- virtual ~MGMatrixBase() = default;
+ virtual ~MGMatrixBase() override = default;
/**
* Matrix-vector-multiplication on a certain level.
/**
* Virtual destructor.
*/
- virtual ~MGCoarseGridBase () = default;
+ virtual ~MGCoarseGridBase () override = default;
/**
* Solution operator.
/**
* Destructor. Does nothing here, but needs to be declared virtual anyway.
*/
- virtual ~MGTransferBase() = default;
+ virtual ~MGTransferBase() override = default;
/**
* Prolongate a vector from level <tt>to_level-1</tt> to level
/**
* Virtual destructor.
*/
- virtual ~MGSmootherBase() = default;
+ virtual ~MGSmootherBase() override = default;
/**
* Release matrices.
*/
void operator() (const unsigned int level,
VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
private:
/**
*/
virtual void operator() (const unsigned int level,
VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
private:
/**
void operator() (const unsigned int level,
VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
private:
/**
*/
const LinearOperator<VectorType> &operator[] (unsigned int level) const;
- virtual void vmult (const unsigned int level, VectorType &dst, const VectorType &src) const;
- virtual void vmult_add (const unsigned int level, VectorType &dst, const VectorType &src) const;
- virtual void Tvmult (const unsigned int level, VectorType &dst, const VectorType &src) const;
- virtual void Tvmult_add (const unsigned int level, VectorType &dst, const VectorType &src) const;
- virtual unsigned int get_minlevel() const;
- virtual unsigned int get_maxlevel() const;
+ virtual void vmult (const unsigned int level, VectorType &dst, const VectorType &src) const override;
+ virtual void vmult_add (const unsigned int level, VectorType &dst, const VectorType &src) const override;
+ virtual void Tvmult (const unsigned int level, VectorType &dst, const VectorType &src) const override;
+ virtual void Tvmult_add (const unsigned int level, VectorType &dst, const VectorType &src) const override;
+ virtual unsigned int get_minlevel() const override;
+ virtual unsigned int get_maxlevel() const override;
/**
* Memory used by this object.
/**
* Empty all vectors.
*/
- void clear ();
+ void clear () override;
/**
* The actual smoothing method.
*/
virtual void smooth (const unsigned int level,
VectorType &u,
- const VectorType &rhs) const;
+ const VectorType &rhs) const override;
/**
* The apply variant of smoothing, setting the vector u to zero before
*/
virtual void apply (const unsigned int level,
VectorType &u,
- const VectorType &rhs) const;
+ const VectorType &rhs) const override;
/**
* Memory used by this object.
/**
* Empty all vectors.
*/
- void clear ();
+ void clear () override;
/**
* The actual smoothing method.
*/
virtual void smooth (const unsigned int level,
VectorType &u,
- const VectorType &rhs) const;
+ const VectorType &rhs) const override;
/**
* The apply variant of smoothing, setting the vector u to zero before
*/
virtual void apply (const unsigned int level,
VectorType &u,
- const VectorType &rhs) const;
+ const VectorType &rhs) const override;
/**
* Object containing relaxation methods.
/**
* Destructor.
*/
- virtual ~MGTransferPrebuilt () = default;
+ virtual ~MGTransferPrebuilt () override = default;
/**
* Initialize the constraints to be used in build_matrices().
*/
virtual void prolongate (const unsigned int to_level,
VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
/**
* Restrict a vector from level <tt>from_level</tt> to level
*/
virtual void restrict_and_add (const unsigned int from_level,
VectorType &dst,
- const VectorType &src) const;
+ const VectorType &src) const override;
/**
* Finite element does not provide prolongation matrices.
/**
* Destructor.
*/
- virtual ~MGTransferBlock ();
+ virtual ~MGTransferBlock () override;
/**
* Initialize additional #factors and #memory if the restriction of the
virtual void prolongate (const unsigned int to_level,
BlockVector<number> &dst,
- const BlockVector<number> &src) const;
+ const BlockVector<number> &src) const override;
virtual void restrict_and_add (const unsigned int from_level,
BlockVector<number> &dst,
- const BlockVector<number> &src) const;
+ const BlockVector<number> &src) const override;
/**
* Transfer from a vector on the global grid to a multilevel vector for the
/**
* Destructor.
*/
- virtual ~MGTransferBlockSelect () = default;
+ virtual ~MGTransferBlockSelect () override = default;
/**
* Actually build the prolongation matrices for grouped blocks.
virtual void prolongate (const unsigned int to_level,
Vector<number> &dst,
- const Vector<number> &src) const;
+ const Vector<number> &src) const override;
virtual void restrict_and_add (const unsigned int from_level,
Vector<number> &dst,
- const Vector<number> &src) const;
+ const Vector<number> &src) const override;
/**
* Transfer a single block from a vector on the global grid to a multilevel
/**
* Destructor.
*/
- virtual ~MGTransferSelect () = default;
+ virtual ~MGTransferSelect () override = default;
//TODO: rewrite docs; make sure defaulted args are actually allowed
/**
virtual void prolongate (const unsigned int to_level,
Vector<number> &dst,
- const Vector<number> &src) const;
+ const Vector<number> &src) const override;
virtual void restrict_and_add (const unsigned int from_level,
Vector<number> &dst,
- const Vector<number> &src) const;
+ const Vector<number> &src) const override;
/**
* Transfer from a vector on the global grid to a multilevel vector for the
/**
* Destructor.
*/
- virtual ~MGTransferMatrixFree () = default;
+ virtual ~MGTransferMatrixFree () override = default;
/**
* Initialize the constraints to be used in build().
*/
virtual void prolongate (const unsigned int to_level,
LinearAlgebra::distributed::Vector<Number> &dst,
- const LinearAlgebra::distributed::Vector<Number> &src) const;
+ const LinearAlgebra::distributed::Vector<Number> &src) const override;
/**
* Restrict a vector from level <tt>from_level</tt> to level
*/
virtual void restrict_and_add (const unsigned int from_level,
LinearAlgebra::distributed::Vector<Number> &dst,
- const LinearAlgebra::distributed::Vector<Number> &src) const;
+ const LinearAlgebra::distributed::Vector<Number> &src) const override;
/**
* Restrict fine-mesh field @p src to each multigrid level in @p mg_dof and
/**
* Destructor.
*/
- virtual ~MGTransferBlockMatrixFree () = default;
+ virtual ~MGTransferBlockMatrixFree () override = default;
/**
* Initialize the constraints to be used in build().
*/
virtual void prolongate (const unsigned int to_level,
LinearAlgebra::distributed::BlockVector<Number> &dst,
- const LinearAlgebra::distributed::BlockVector<Number> &src) const;
+ const LinearAlgebra::distributed::BlockVector<Number> &src) const override;
/**
* Restrict a vector from level <tt>from_level</tt> to level
*/
virtual void restrict_and_add (const unsigned int from_level,
LinearAlgebra::distributed::BlockVector<Number> &dst,
- const LinearAlgebra::distributed::BlockVector<Number> &src) const;
+ const LinearAlgebra::distributed::BlockVector<Number> &src) const override;
/**
* Transfer from a block-vector on the global grid to block-vectors defined
/**
* Destructor.
*/
- virtual ~DataOut_DoFData ();
+ virtual ~DataOut_DoFData () override;
/**
* Designate a dof handler to be used to extract geometry data and the
* they shall write to a file.
*/
virtual
- const std::vector<Patch> &get_patches () const;
+ const std::vector<Patch> &get_patches () const override;
/**
* Virtual function through which the names of data sets are obtained by the
* output functions of the base class.
*/
virtual
- std::vector<std::string> get_dataset_names () const;
+ std::vector<std::string> get_dataset_names () const override;
/**
* Extracts the finite elements stored in the dof_data object, including a
*/
virtual
std::vector<std::tuple<unsigned int, unsigned int, std::string> >
- get_vector_data_ranges () const;
+ get_vector_data_ranges () const override;
/**
* Make all template siblings friends. Needed for the merge_patches()
virtual
double
get_cell_data_value (const unsigned int cell_number,
- const ComponentExtractor extract_component) const;
+ const ComponentExtractor extract_component) const override;
/**
* Given a FEValuesBase object, extract the values on the present cell
get_function_values
(const FEValuesBase<DoFHandlerType::dimension,DoFHandlerType::space_dimension> &fe_patch_values,
const ComponentExtractor extract_component,
- std::vector<double> &patch_values) const;
+ std::vector<double> &patch_values) const override;
/**
* Given a FEValuesBase object, extract the values on the present cell
get_function_values
(const FEValuesBase<DoFHandlerType::dimension,DoFHandlerType::space_dimension> &fe_patch_values,
const ComponentExtractor extract_component,
- std::vector<dealii::Vector<double> > &patch_values_system) const;
+ std::vector<dealii::Vector<double> > &patch_values_system) const override;
/**
* Given a FEValuesBase object, extract the gradients on the present
get_function_gradients
(const FEValuesBase<DoFHandlerType::dimension,DoFHandlerType::space_dimension> &fe_patch_values,
const ComponentExtractor extract_component,
- std::vector<Tensor<1,DoFHandlerType::space_dimension> > &patch_gradients) const;
+ std::vector<Tensor<1,DoFHandlerType::space_dimension> > &patch_gradients) const override;
/**
* Given a FEValuesBase object, extract the gradients on the present
get_function_gradients
(const FEValuesBase<DoFHandlerType::dimension,DoFHandlerType::space_dimension> &fe_patch_values,
const ComponentExtractor extract_component,
- std::vector<std::vector<Tensor<1,DoFHandlerType::space_dimension> > > &patch_gradients_system) const;
+ std::vector<std::vector<Tensor<1,DoFHandlerType::space_dimension> > > &patch_gradients_system) const override;
/**
* Given a FEValuesBase object, extract the second derivatives on the
get_function_hessians
(const FEValuesBase<DoFHandlerType::dimension,DoFHandlerType::space_dimension> &fe_patch_values,
const ComponentExtractor extract_component,
- std::vector<Tensor<2,DoFHandlerType::space_dimension> > &patch_hessians) const;
+ std::vector<Tensor<2,DoFHandlerType::space_dimension> > &patch_hessians) const override;
/**
* Given a FEValuesBase object, extract the second derivatives on the
get_function_hessians
(const FEValuesBase<DoFHandlerType::dimension,DoFHandlerType::space_dimension> &fe_patch_values,
const ComponentExtractor extract_component,
- std::vector<std::vector< Tensor<2,DoFHandlerType::space_dimension> > > &patch_hessians_system) const;
+ std::vector<std::vector< Tensor<2,DoFHandlerType::space_dimension> > > &patch_hessians_system) const override;
/**
* Return whether the data represented by (a derived class of) this object
* represents a complex-valued (as opposed to real-valued) information.
*/
- virtual bool is_complex_valued () const;
+ virtual bool is_complex_valued () const override;
/**
* Clear all references to the vectors.
*/
- virtual void clear ();
+ virtual void clear () override;
/**
* Determine an estimate for the memory consumption (in bytes) of this
* object.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
private:
/**
/**
* Destructor. Only declared to make it @p virtual.
*/
- virtual ~DataOutStack () = default;
+ virtual ~DataOutStack () override = default;
/**
* Start the next set of data for a specific parameter value. The argument
* data in the form of Patch structures (declared in the base class
* DataOutBase) to the actual output function.
*/
- virtual const std::vector< dealii::DataOutBase::Patch<dim+1,dim+1> > & get_patches () const;
+ virtual const std::vector< dealii::DataOutBase::Patch<dim+1,dim+1> > & get_patches () const override;
/**
* Virtual function through which the names of data sets are obtained by the
* output functions of the base class.
*/
- virtual std::vector<std::string> get_dataset_names () const;
+ virtual std::vector<std::string> get_dataset_names () const override;
};
* virtual to ensure that data postprocessors can be destroyed through
* pointers to the base class.
*/
- virtual ~DataPostprocessor () = default;
+ virtual ~DataPostprocessor () override = default;
/**
* This is the main function which actually performs the postprocessing. The
* quantities. Given the purpose of this class, this is a vector with a
* single entry equal to the name given to the constructor.
*/
- virtual std::vector<std::string> get_names () const;
+ virtual std::vector<std::string> get_names () const override;
/**
* This function returns information about how the individual components of
*/
virtual
std::vector<DataComponentInterpretation::DataComponentInterpretation>
- get_data_component_interpretation () const;
+ get_data_component_interpretation () const override;
/**
* Return, which data has to be provided to compute the derived quantities.
* The flags returned here are the ones passed to the constructor of this
* class.
*/
- virtual UpdateFlags get_needed_update_flags () const;
+ virtual UpdateFlags get_needed_update_flags () const override;
private:
/**
* quantities. Given the purpose of this class, this is a vector with dim
* entries all equal to the name given to the constructor.
*/
- virtual std::vector<std::string> get_names () const;
+ virtual std::vector<std::string> get_names () const override;
/**
* This function returns information about how the individual components of
*/
virtual
std::vector<DataComponentInterpretation::DataComponentInterpretation>
- get_data_component_interpretation () const;
+ get_data_component_interpretation () const override;
/**
* Return which data has to be provided to compute the derived quantities.
* The flags returned here are the ones passed to the constructor of this
* class.
*/
- virtual UpdateFlags get_needed_update_flags () const;
+ virtual UpdateFlags get_needed_update_flags () const override;
private:
/**
* quantities. Given the purpose of this class, this is a vector with dim
* entries all equal to the name given to the constructor.
*/
- virtual std::vector<std::string> get_names () const;
+ virtual std::vector<std::string> get_names () const override;
/**
* This function returns information about how the individual components of
*/
virtual
std::vector<DataComponentInterpretation::DataComponentInterpretation>
- get_data_component_interpretation () const;
+ get_data_component_interpretation () const override;
/**
* Return which data has to be provided to compute the derived quantities.
* The flags returned here are the ones passed to the constructor of this
* class.
*/
- virtual UpdateFlags get_needed_update_flags () const;
+ virtual UpdateFlags get_needed_update_flags () const override;
private:
/**
void initialize (const DoFHandler<dim, spacedim> &dof_handler);
virtual OutputOperator<VectorType> &
- operator << (const AnyData &vectors);
+ operator << (const AnyData &vectors) override;
private:
SmartPointer<const DoFHandler<dim, spacedim>,
out.write (out_filename);
out.clear ();
return *this;
- }
+ };
}
DEAL_II_NAMESPACE_CLOSE
* information.
*/
virtual void vector_value (const Point<dim> &p,
- Vector<typename VectorType::value_type> &values) const;
+ Vector<typename VectorType::value_type> &values) const override;
/**
* Return the value of the function at the given point. Unless there is
* information.
*/
virtual typename VectorType::value_type value (const Point< dim > &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Set @p values to the point values of the specified component of the
*/
virtual void value_list (const std::vector<Point< dim > > &points,
std::vector<typename VectorType::value_type > &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* information.
*/
virtual void vector_value_list (const std::vector<Point< dim > > &points,
- std::vector<Vector<typename VectorType::value_type> > &values) const;
+ std::vector<Vector<typename VectorType::value_type> > &values) const override;
/**
* Return the gradient of all components of the function at the given
*/
virtual void
vector_gradient (const Point< dim > &p,
- std::vector< Tensor< 1, dim,typename VectorType::value_type > > &gradients) const;
+ std::vector< Tensor< 1, dim,typename VectorType::value_type > > &gradients) const override;
/**
* Return the gradient of the specified component of the function at the
* information.
*/
virtual Tensor<1,dim,typename VectorType::value_type> gradient(const Point< dim > &p,
- const unsigned int component = 0)const;
+ const unsigned int component = 0)const override;
/**
* Return the gradient of all components of the function at all the given
virtual void
vector_gradient_list (const std::vector< Point< dim > > &p,
std::vector<
- std::vector< Tensor< 1, dim,typename VectorType::value_type > > > &gradients) const;
+ std::vector< Tensor< 1, dim,typename VectorType::value_type > > > &gradients) const override;
/**
* Return the gradient of the specified component of the function at all
virtual void
gradient_list (const std::vector< Point< dim > > &p,
std::vector< Tensor< 1, dim,typename VectorType::value_type > > &gradients,
- const unsigned int component=0) const;
+ const unsigned int component=0) const override;
/**
*/
virtual typename VectorType::value_type
laplacian (const Point<dim> &p,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Compute the Laplacian of all components at point <tt>p</tt> and store
*/
virtual void
vector_laplacian (const Point<dim> &p,
- Vector<typename VectorType::value_type> &values) const;
+ Vector<typename VectorType::value_type> &values) const override;
/**
* Compute the Laplacian of one component at a set of points.
virtual void
laplacian_list (const std::vector<Point<dim> > &points,
std::vector<typename VectorType::value_type> &values,
- const unsigned int component = 0) const;
+ const unsigned int component = 0) const override;
/**
* Compute the Laplacians of all components at a set of points.
*/
virtual void
vector_laplacian_list (const std::vector<Point<dim> > &points,
- std::vector<Vector<typename VectorType::value_type> > &values) const;
+ std::vector<Vector<typename VectorType::value_type> > &values) const override;
/**
* Given a set of points located in the domain (or, in the case of
/**
* Destructor. At present, this does nothing.
*/
- virtual ~TimeStepBase () = default;
+ virtual ~TimeStepBase () override = default;
/**
* Reconstruct all the data that is needed for this time level to work. This
* Destructor. At present, this does not more than releasing the lock on the
* coarse grid triangulation given to the constructor.
*/
- virtual ~TimeStepBase_Tria ();
+ virtual ~TimeStepBase_Tria () override;
/**
* Reconstruct all the data that is needed for this time level to work. This
* likely is the case), preferably at the beginning so that your function
* can take effect of the triangulation already existing.
*/
- virtual void wake_up (const unsigned int wakeup_level);
+ virtual void wake_up (const unsigned int wakeup_level) override;
/**
* This is the opposite function to @p wake_up. It is used to delete data or
* this function from your overloaded version, preferably at the end so that
* your function can use the triangulation as long as you need it.
*/
- virtual void sleep (const unsigned int);
+ virtual void sleep (const unsigned int) override;
/**
* Do the refinement according to the flags passed to the constructor of
* amount memory used by the derived class, and add the result of this
* function to your result.
*/
- virtual std::size_t memory_consumption () const;
+ virtual std::size_t memory_consumption () const override;
/**
* Exception
/**
* Destructor.
*/
- ~ParticleHandler();
+ ~ParticleHandler() override;
/**
* Initialize the particle handler. This function does not clear the
return newline_written_;
}
private:
- int_type overflow(int_type ch)
+ int_type overflow(int_type ch) override
{
newline_written_ = true;
return ch;
}
- int sync()
+ int sync() override
{
flushed_ = true;
return 0;
* we have to have a conversion operator.
*/
virtual
- operator typename Triangulation<dim,spacedim>::cell_iterator () const;
+ operator typename Triangulation<dim,spacedim>::cell_iterator () const override;
/**
* Return the number of degrees of freedom the DoF handler object has to
*/
virtual
types::global_dof_index
- n_dofs_for_dof_handler () const;
+ n_dofs_for_dof_handler () const override;
#include "fe_values.decl.2.inst"
virtual
void
get_interpolated_dof_values (const IndexSet &in,
- Vector<IndexSet::value_type> &out) const;
+ Vector<IndexSet::value_type> &out) const override;
private:
/**
* from and to the same time.
*/
virtual
- operator typename Triangulation<dim,spacedim>::cell_iterator () const;
+ operator typename Triangulation<dim,spacedim>::cell_iterator () const override;
/**
* Implement the respective function of the base class. Since this is not
*/
virtual
types::global_dof_index
- n_dofs_for_dof_handler () const;
+ n_dofs_for_dof_handler () const override;
#include "fe_values.decl.2.inst"
virtual
void
get_interpolated_dof_values (const IndexSet &in,
- Vector<IndexSet::value_type> &out) const;
+ Vector<IndexSet::value_type> &out) const override;
private:
/**
virtual
void
get_interpolated_dof_values (const VEC &in,
- Vector<VEC::value_type> &out) const;
+ Vector<VEC::value_type> &out) const override;
}
const double &reduction,
const Epetra_LinearProblem &linear_problem);
- virtual ~TrilinosReductionControl() = default;
+ virtual ~TrilinosReductionControl() override = default;
virtual bool
- ResidualVectorRequired () const
+ ResidualVectorRequired () const override
{
return status_test_collection->ResidualVectorRequired();
}
CheckStatus (int CurrentIter,
Epetra_MultiVector *CurrentResVector,
double CurrentResNormEst,
- bool SolutionUpdated)
+ bool SolutionUpdated) override
{
// Note: CurrentResNormEst is set to -1.0 if no estimate of the
// residual value is available
}
virtual AztecOO_StatusType
- GetStatus () const
+ GetStatus () const override
{
return status_test_collection->GetStatus();
}
virtual std::ostream &
Print (std::ostream &stream,
- int indent = 0) const
+ int indent = 0) const override
{
return status_test_collection->Print(stream,indent);
}
is_blocked (is_blocked)
{}
- tbb::task *execute ()
+ tbb::task *execute () override
{
work();
is_blocked (is_blocked_in)
{}
- tbb::task *execute ()
+ tbb::task *execute () override
{
tbb::empty_task *root = new( tbb::task::allocate_root() )tbb::empty_task;
const unsigned int evens = task_info.partition_evens[partition];
is_blocked (is_blocked_in)
{}
- tbb::task *execute ()
+ tbb::task *execute () override
{
const unsigned int n_chunks = (task_info.cell_partition_data[partition+1]-
task_info.cell_partition_data[partition]+
do_compress(do_compress)
{}
- tbb::task *execute ()
+ tbb::task *execute () override
{
if (do_compress == false)
worker.vector_update_ghosts_finish();