OGS
LocalAssemblerInterface.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <vector>
14
18
19namespace ProcessLib
20{
21namespace ThermoMechanics
22{
23template <int DisplacementDim>
27{
28 virtual std::size_t setIPDataInitialConditions(
29 std::string_view const name, double const* values,
30 int const integration_order) = 0;
31
32 virtual std::vector<double> getSigma() const = 0;
33
34 virtual std::vector<double> getEpsilon() const = 0;
35
36 virtual std::vector<double> getEpsilonMechanical() const = 0;
37
38 virtual std::vector<double> const& getIntPtSigma(
39 const double t,
40 std::vector<GlobalVector*> const& x,
41 std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table,
42 std::vector<double>& cache) const = 0;
43
44 virtual std::vector<double> const& getIntPtEpsilon(
45 const double t,
46 std::vector<GlobalVector*> const& x,
47 std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table,
48 std::vector<double>& cache) const = 0;
49
50 virtual std::vector<double> const& getIntPtEpsilonMechanical(
51 const double t,
52 std::vector<GlobalVector*> const& x,
53 std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table,
54 std::vector<double>& cache) const = 0;
55
56 // TODO move to NumLib::ExtrapolatableElement
57 virtual unsigned getNumberOfIntegrationPoints() const = 0;
58
59 virtual int getMaterialID() const = 0;
60
62 DisplacementDim>::MaterialStateVariables const&
63 getMaterialStateVariablesAt(unsigned /*integration_point*/) const = 0;
64};
65
66} // namespace ThermoMechanics
67} // namespace ProcessLib
virtual std::vector< double > const & getIntPtEpsilon(const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< double > &cache) const =0
virtual std::vector< double > getEpsilonMechanical() const =0
virtual std::vector< double > const & getIntPtSigma(const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< double > &cache) const =0
virtual std::size_t setIPDataInitialConditions(std::string_view const name, double const *values, int const integration_order)=0
virtual MaterialLib::Solids::MechanicsBase< DisplacementDim >::MaterialStateVariables const & getMaterialStateVariablesAt(unsigned) const =0
virtual std::vector< double > const & getIntPtEpsilonMechanical(const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< double > &cache) const =0