OGS
SourceTerm.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <memory>
14
17
18namespace ProcessLib
19{
21{
22public:
23 virtual void integrate(const double t, GlobalVector const& x,
24 GlobalVector& b, GlobalMatrix* jac) const = 0;
25
26 virtual ~SourceTermBase() = default;
27};
28
30{
31public:
32 explicit SourceTerm(
33 std::unique_ptr<NumLib::LocalToGlobalIndexMap> source_term_dof_table)
34 : _source_term_dof_table{std::move(source_term_dof_table)}
35 {
36 }
37
38protected:
39 std::unique_ptr<NumLib::LocalToGlobalIndexMap> const _source_term_dof_table;
40};
41
42} // namespace ProcessLib
Global vector based on Eigen vector.
Definition EigenVector.h:25
virtual void integrate(const double t, GlobalVector const &x, GlobalVector &b, GlobalMatrix *jac) const =0
virtual ~SourceTermBase()=default
SourceTerm(std::unique_ptr< NumLib::LocalToGlobalIndexMap > source_term_dof_table)
Definition SourceTerm.h:32
std::unique_ptr< NumLib::LocalToGlobalIndexMap > const _source_term_dof_table
Definition SourceTerm.h:39