OGS
Extrapolator.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include <Eigen/Core>
7#include <vector>
8
11
12namespace NumLib
13{
15
19{
20public:
22 virtual void extrapolate(
23 const unsigned num_components,
24 ExtrapolatableElementCollection const& extrapolatables,
25 const double t,
26 std::vector<GlobalVector*> const& x,
27 std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table) = 0;
28
35 virtual void calculateResiduals(
36 const unsigned num_components,
37 ExtrapolatableElementCollection const& extrapolatables,
38 const double t,
39 std::vector<GlobalVector*> const& x,
40 std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table) = 0;
41
44 virtual GlobalVector const& getNodalValues() const = 0;
45
48 virtual GlobalVector const& getElementResiduals() const = 0;
49
50 virtual ~Extrapolator() = default;
51};
52
53} // namespace NumLib
MathLib::EigenVector GlobalVector
virtual ~Extrapolator()=default
virtual GlobalVector const & getNodalValues() const =0
virtual void extrapolate(const unsigned num_components, ExtrapolatableElementCollection const &extrapolatables, const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table)=0
Extrapolates the given property from the given local assemblers.
virtual GlobalVector const & getElementResiduals() const =0
virtual void calculateResiduals(const unsigned num_components, ExtrapolatableElementCollection const &extrapolatables, const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table)=0