OGS
SolidMechanics.h
Go to the documentation of this file.
1
10#pragma once
11
12#include "Base.h"
13#include "FreeEnergyDensity.h"
15#include "MaterialState.h"
18
20{
21namespace ConstitutiveRelations
22{
23template <int DisplacementDim>
29
30template <int DisplacementDim>
33
34template <int DisplacementDim>
36{
39 : solid_material_(solid_material)
40 {
41 }
42
43 void eval(SpaceTimeData const& x_t,
44 Temperature const& temperature,
45 StrainData<DisplacementDim> const& eps_data,
46 PrevState<StrainData<DisplacementDim>> const& eps_data_prev,
48 PrevState<StressData<DisplacementDim>> const& stress_data_prev,
49 StressData<DisplacementDim>& stress_data,
51 FreeEnergyDensityData& free_energy_density_data) const;
52
54 {
55 return solid_material_.getInternalVariables();
56 }
57
58private:
60};
61
62extern template struct SolidMechanicsModel<2>;
63extern template struct SolidMechanicsModel<3>;
64} // namespace ConstitutiveRelations
65} // namespace ProcessLib::SmallDeformation
constexpr auto KMnan()
Returns an expressions for a Kelvin matrix filled with NaN.
KV::KelvinMatrixType< DisplacementDim > KelvinMatrix
Definition Base.h:29
Represents a previous state of type T.
Definition Base.h:21
SolidConstitutiveRelation< DisplacementDim > const & solid_material_
SolidMechanicsModel(SolidConstitutiveRelation< DisplacementDim > const &solid_material)
void eval(SpaceTimeData const &x_t, Temperature const &temperature, StrainData< DisplacementDim > const &eps_data, PrevState< StrainData< DisplacementDim > > const &eps_data_prev, MaterialStateData< DisplacementDim > &mat_state, PrevState< StressData< DisplacementDim > > const &stress_data_prev, StressData< DisplacementDim > &stress_data, SolidMechanicsDataStateless< DisplacementDim > &current_stateless, FreeEnergyDensityData &free_energy_density_data) const