OGS
Gravity.h
Go to the documentation of this file.
1
10
#pragma once
11
12
#include "
BaseLib/StrongType.h
"
13
#include "
SolidDensity.h
"
14
15
namespace
ProcessLib::LargeDeformation
16
{
17
template
<
int
DisplacementDim>
18
using
VolumetricBodyForce
=
19
BaseLib::StrongType<GlobalDimVector<DisplacementDim>
,
struct
GravityTag>;
20
21
template
<
int
DisplacementDim>
22
struct
GravityModel
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,
31
VolumetricBodyForce<DisplacementDim>
& out)
const
;
32
33
private
:
34
// TODO (naumov) Do we need to store this for each integration point?
35
Eigen::Vector<double, DisplacementDim>
const
specific_body_force_
;
36
};
37
38
extern
template
struct
GravityModel<2>
;
39
extern
template
struct
GravityModel<3>
;
40
}
// namespace ProcessLib::LargeDeformation
SolidDensity.h
StrongType.h
ProcessLib::LargeDeformation
Definition
Base.h:21
BaseLib::StrongType
Definition
StrongType.h:25
ProcessLib::LargeDeformation::GravityModel
Definition
Gravity.h:23
ProcessLib::LargeDeformation::GravityModel::eval
void eval(SolidDensity const &rho_SR, VolumetricBodyForce< DisplacementDim > &out) const
Definition
Gravity.cpp:15
ProcessLib::LargeDeformation::GravityModel::GravityModel
GravityModel(Eigen::Vector< double, DisplacementDim > const &specific_body_force)
Definition
Gravity.h:24
ProcessLib::LargeDeformation::GravityModel::specific_body_force_
Eigen::Vector< double, DisplacementDim > const specific_body_force_
Definition
Gravity.h:35
ProcessLib
LargeDeformation
ConstitutiveRelations
Gravity.h
Generated by
1.10.0