deal.II version GIT relicensing-6834-g5b78e6bcdf 2026-10-01 11:20:01+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
incremental_function.h
Go to the documentation of this file.
1// -----------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception OR LGPL-2.1-or-later
4// Copyright (C) 2018 - 2023 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Detailed license information governing the source code and contributions
9// can be found in LICENSE.md and CONTRIBUTING.md at the top level directory.
10//
11// -----------------------------------------------------------------------------
12
13#ifndef dealii_incremental_function_h
14#define dealii_incremental_function_h
15
16
17#include <deal.II/base/config.h>
18
20#include <deal.II/base/mutex.h>
21
22#include <deal.II/lac/vector.h>
23
24
26
27// Forward declaration
28#ifndef DOXYGEN
29template <typename number>
30class Vector;
31#endif
32
33namespace Functions
34{
48 template <int dim, typename RangeNumberType = double>
49 class IncrementalFunction : public Function<dim, RangeNumberType>
50 {
51 public:
56 static constexpr unsigned int dimension = dim;
57
62
74
82 virtual RangeNumberType
83 value(const Point<dim> &p, const unsigned int component = 0) const override;
84
91 virtual void
92 vector_value(const Point<dim> &p,
93 Vector<RangeNumberType> &values) const override;
94
100 void
102
103 private:
108
113
118
123 };
124
125} // namespace Functions
126
127
129
130#endif
typename FunctionTime< typename numbers::NumberTraits< RangeNumberType >::real_type >::time_type time_type
Definition function.h:168
Vector< RangeNumberType > values_old
void set_decrement(const time_type delta_t)
typename Function< dim, RangeNumberType >::time_type time_type
virtual void vector_value(const Point< dim > &p, Vector< RangeNumberType > &values) const override
Function< dim, RangeNumberType > & base
static constexpr unsigned int dimension
virtual RangeNumberType value(const Point< dim > &p, const unsigned int component=0) const override
Definition point.h:111
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:38
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:39