Reference documentation for deal.II version 9.3.3
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
incremental_function.h
Go to the documentation of this file.
1// ---------------------------------------------------------------------
2//
3// Copyright (C) 2018 - 2021 by the deal.II authors
4//
5// This file is part of the deal.II library.
6//
7// The deal.II library is free software; you can use it, redistribute
8// it, and/or modify it under the terms of the GNU Lesser General
9// Public License as published by the Free Software Foundation; either
10// version 2.1 of the License, or (at your option) any later version.
11// The full text of the license can be found in the file LICENSE.md at
12// the top level directory of deal.II.
13//
14// ---------------------------------------------------------------------
15
16#ifndef dealii_incremental_function_h
17#define dealii_incremental_function_h
18
19
20#include <deal.II/base/config.h>
21
24
25#include <deal.II/lac/vector.h>
26
27
29
30// Forward declaration
31#ifndef DOXYGEN
32template <typename number>
33class Vector;
34#endif
35
36namespace Functions
37{
51 template <int dim, typename RangeNumberType = double>
52 class IncrementalFunction : public Function<dim, RangeNumberType>
53 {
54 public:
59 static const unsigned int dimension = dim;
60
65
77
85 virtual RangeNumberType
86 value(const Point<dim> &p, const unsigned int component = 0) const override;
87
94 virtual void
95 vector_value(const Point<dim> & p,
96 Vector<RangeNumberType> &values) const override;
97
103 void
105
106 private:
111
116
121
126 };
127
128} // namespace Functions
129
130
132
133#endif
typename FunctionTime< typename numbers::NumberTraits< RangeNumberType >::real_type >::time_type time_type
Definition: function.h:170
Vector< RangeNumberType > values_old
void set_decrement(const time_type delta_t)
typename Function< dim, RangeNumberType >::time_type time_type
IncrementalFunction(Function< dim, RangeNumberType > &base)
virtual void vector_value(const Point< dim > &p, Vector< RangeNumberType > &values) const override
Function< dim, RangeNumberType > & base
virtual RangeNumberType value(const Point< dim > &p, const unsigned int component=0) const override
static const unsigned int dimension
Definition: point.h:111
Definition: vector.h:110
#define DEAL_II_NAMESPACE_OPEN
Definition: config.h:402
#define DEAL_II_NAMESPACE_CLOSE
Definition: config.h:403