OGS
SmallDeformation/ConstitutiveRelations/Gravity.h
Go to the documentation of this file.
1
9
10#pragma once
11
12#include "BaseLib/StrongType.h"
13#include "SolidDensity.h"
14
16{
17template <int DisplacementDim>
20
21template <int DisplacementDim>
23{
24 explicit GravityModel(
25 Eigen::Vector<double, DisplacementDim> const& specific_body_force)
26 : specific_body_force_(specific_body_force)
27 {
28 }
29
30 void eval(SolidDensity const& rho_SR,
32
33private:
34 // TODO (naumov) Do we need to store this for each integration point?
35 Eigen::Vector<double, DisplacementDim> const specific_body_force_;
36};
37
38extern template struct GravityModel<2>;
39extern template struct GravityModel<3>;
40} // namespace ProcessLib::SmallDeformation
BaseLib::StrongType< double, struct SolidDensityTag > SolidDensity
BaseLib::StrongType< GlobalDimVector< DisplacementDim >, struct GravityTag > VolumetricBodyForce
void eval(SolidDensity const &rho_SR, VolumetricBodyForce< DisplacementDim > &out) const
Eigen::Vector< double, DisplacementDim > const specific_body_force_
GravityModel(Eigen::Vector< double, DisplacementDim > const &specific_body_force)