OGS
VolumetricSourceTerm.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <memory>
14#include <vector>
15
16#include "SourceTerm.h"
18
19namespace ProcessLib
20{
21class VolumetricSourceTerm final : public SourceTerm
22{
23public:
25 unsigned const bulk_mesh_dimension,
26 MeshLib::Mesh const& source_term_mesh,
27 std::unique_ptr<NumLib::LocalToGlobalIndexMap> source_term_dof_table,
28 unsigned const integration_order, unsigned const shapefunction_order,
29 ParameterLib::Parameter<double> const& source_term_parameter);
30
31 void integrate(const double t, GlobalVector const& x, GlobalVector& b,
32 GlobalMatrix* jac) const override;
33
34private:
36 std::vector<std::unique_ptr<VolumetricSourceTermLocalAssemblerInterface>>
38};
39
40} // namespace ProcessLib
Global vector based on Eigen vector.
Definition EigenVector.h:25
ParameterLib::Parameter< double > const & _source_term_parameter
VolumetricSourceTerm(unsigned const bulk_mesh_dimension, MeshLib::Mesh const &source_term_mesh, std::unique_ptr< NumLib::LocalToGlobalIndexMap > source_term_dof_table, unsigned const integration_order, unsigned const shapefunction_order, ParameterLib::Parameter< double > const &source_term_parameter)
void integrate(const double t, GlobalVector const &x, GlobalVector &b, GlobalMatrix *jac) const override
std::vector< std::unique_ptr< VolumetricSourceTermLocalAssemblerInterface > > _local_assemblers