OGS
ProcessLib/BoundaryConditionAndSourceTerm/SourceTerm.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 <memory>
7
8
#include "
NumLib/DOF/LocalToGlobalIndexMap.h
"
9
#include "
ParameterLib/Parameter.h
"
10
11
namespace
ProcessLib
12
{
13
class
SourceTermBase
14
{
15
public
:
16
virtual
void
integrate
(
const
double
t,
GlobalVector
const
& x,
17
GlobalVector
& b,
GlobalMatrix
* jac)
const
= 0;
18
19
virtual
~SourceTermBase
() =
default
;
20
};
21
22
class
SourceTerm
:
public
SourceTermBase
23
{
24
public
:
25
explicit
SourceTerm
(
26
std::unique_ptr<NumLib::LocalToGlobalIndexMap> source_term_dof_table)
27
:
_source_term_dof_table
{std::move(source_term_dof_table)}
28
{
29
}
30
31
protected
:
32
std::unique_ptr<NumLib::LocalToGlobalIndexMap>
const
_source_term_dof_table
;
33
};
34
35
}
// namespace ProcessLib
GlobalMatrix
MathLib::EigenMatrix GlobalMatrix
Definition
GlobalMatrixVectorTypes.h:17
GlobalVector
MathLib::EigenVector GlobalVector
Definition
GlobalMatrixVectorTypes.h:16
LocalToGlobalIndexMap.h
Parameter.h
ProcessLib::SourceTermBase
Definition
ProcessLib/BoundaryConditionAndSourceTerm/SourceTerm.h:14
ProcessLib::SourceTermBase::integrate
virtual void integrate(const double t, GlobalVector const &x, GlobalVector &b, GlobalMatrix *jac) const =0
ProcessLib::SourceTermBase::~SourceTermBase
virtual ~SourceTermBase()=default
ProcessLib::SourceTerm::SourceTerm
SourceTerm(std::unique_ptr< NumLib::LocalToGlobalIndexMap > source_term_dof_table)
Definition
ProcessLib/BoundaryConditionAndSourceTerm/SourceTerm.h:25
ProcessLib::SourceTerm::_source_term_dof_table
std::unique_ptr< NumLib::LocalToGlobalIndexMap > const _source_term_dof_table
Definition
ProcessLib/BoundaryConditionAndSourceTerm/SourceTerm.h:32
ProcessLib
Definition
ProjectData.h:40
ProcessLib
BoundaryConditionAndSourceTerm
SourceTerm.h
Generated by
1.14.0