version 3.11-dev
Loading...
Searching...
No Matches
solidmechanics/hyperelastic_voliso/model.hh
Go to the documentation of this file.
1// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
2// vi: set et ts=4 sw=4 sts=4:
3//
4// SPDX-FileCopyrightText: Copyright © DuMux Project contributors, see AUTHORS.md in root folder
5// SPDX-License-Identifier: GPL-3.0-or-later
6//
52#ifndef DUMUX_SOLIDMECHANICS_HYPERELASTIC_VOLISO_MODEL_HH
53#define DUMUX_SOLIDMECHANICS_HYPERELASTIC_VOLISO_MODEL_HH
54
57
58#include "localresidual.hh"
59#include "variables.hh"
60
61namespace Dumux {
62
63// ============================================================
64// Momentum subdomain traits
65// ============================================================
66
71template<int dim>
73{
74 static constexpr int displacement(int i) { return i; }
75 static constexpr int momentum(int i) { return i; }
76};
77
82template<int dim>
84{
86 static constexpr int numEq() { return dim; }
87};
88
89template<class PV, class MT>
92
93// ============================================================
94// Pressure subdomain traits
95// ============================================================
96
102{
103 static constexpr int pressureIdx = 0;
104 static constexpr int pressureEqIdx = 0;
105};
106
112{
114 static constexpr int numEq() { return 1; }
115};
116
117template<class PV, class MT>
120
121} // end namespace Dumux
122
123// ============================================================
124// Property registrations
125// ============================================================
126namespace Dumux::Properties::TTag {
131struct HyperelasticVolIsoMomentumModel { using InheritsFrom = std::tuple<ModelProperties>; };
136struct HyperelasticVolIsoPressureModel { using InheritsFrom = std::tuple<ModelProperties>; };
137} // end namespace Dumux::Properties::TTag
138
139namespace Dumux::Properties {
140
141template<class TypeTag>
142struct ModelTraits<TypeTag, TTag::HyperelasticVolIsoMomentumModel>
143{
146};
147
148template<class TypeTag>
149struct LocalResidual<TypeTag, TTag::HyperelasticVolIsoMomentumModel>
151
152template<class TypeTag>
160
161template<class TypeTag>
162struct ModelTraits<TypeTag, TTag::HyperelasticVolIsoPressureModel>
164
165template<class TypeTag>
166struct LocalResidual<TypeTag, TTag::HyperelasticVolIsoPressureModel>
168
169template<class TypeTag>
177
178} // end namespace Dumux::Properties
179
180#endif
Momentum local residual for the mixed u–p hyperelastic model.
Definition solidmechanics/hyperelastic_voliso/localresidual.hh:53
Volume variables for the momentum subdomain (displacement).
Definition solidmechanics/hyperelastic_voliso/variables.hh:25
Pressure local residual for the mixed u–p hyperelastic model.
Definition solidmechanics/hyperelastic_voliso/localresidual.hh:189
Volume variables for the pressure subdomain (bulk pressure).
Definition solidmechanics/hyperelastic_voliso/variables.hh:91
Defines a type tags and some fundamental properties for all models.
Defines all properties used in Dumux.
typename GetProp< TypeTag, Property >::type GetPropType
get the type alias defined in the property
Definition propertysystem.hh:296
Type tag for numeric models.
Definition grid.hh:24
The energy balance equation for a porous solid.
Definition common/properties.hh:26
Definition adapt.hh:17
Local residuals for the volumetric-isochoric split hyperelastic mixed u–p model.
Volume variables for the volumetric-isochoric split hyperelastic mixed u–p model.
Index set for the momentum subdomain.
Definition solidmechanics/hyperelastic_voliso/model.hh:73
static constexpr int momentum(int i)
Definition solidmechanics/hyperelastic_voliso/model.hh:75
static constexpr int displacement(int i)
Definition solidmechanics/hyperelastic_voliso/model.hh:74
Model traits for the momentum subdomain ( displacement DOFs per node).
Definition solidmechanics/hyperelastic_voliso/model.hh:84
static constexpr int numEq()
Definition solidmechanics/hyperelastic_voliso/model.hh:86
HyperelasticVolIsoMomentumIndices< dim > Indices
Definition solidmechanics/hyperelastic_voliso/model.hh:85
Definition solidmechanics/hyperelastic_voliso/model.hh:91
MT ModelTraits
Definition solidmechanics/hyperelastic_voliso/model.hh:91
PV PrimaryVariables
Definition solidmechanics/hyperelastic_voliso/model.hh:91
Index set for the pressure subdomain.
Definition solidmechanics/hyperelastic_voliso/model.hh:102
static constexpr int pressureEqIdx
Definition solidmechanics/hyperelastic_voliso/model.hh:104
static constexpr int pressureIdx
Definition solidmechanics/hyperelastic_voliso/model.hh:103
Model traits for the pressure subdomain (1 pressure DOF per node).
Definition solidmechanics/hyperelastic_voliso/model.hh:112
HyperelasticVolIsoPressureIndices Indices
Definition solidmechanics/hyperelastic_voliso/model.hh:113
static constexpr int numEq()
Definition solidmechanics/hyperelastic_voliso/model.hh:114
Definition solidmechanics/hyperelastic_voliso/model.hh:119
MT ModelTraits
Definition solidmechanics/hyperelastic_voliso/model.hh:119
PV PrimaryVariables
Definition solidmechanics/hyperelastic_voliso/model.hh:119
HyperelasticVolIsoMomentumLocalResidual< TypeTag > type
Definition solidmechanics/hyperelastic_voliso/model.hh:150
HyperelasticVolIsoPressureLocalResidual< TypeTag > type
Definition solidmechanics/hyperelastic_voliso/model.hh:167
HyperelasticVolIsoMomentumModelTraits< GetPropType< TypeTag, Properties::GridGeometry >::GridView::dimension > type
Definition solidmechanics/hyperelastic_voliso/model.hh:144
HyperelasticVolIsoPressureModelTraits type
Definition solidmechanics/hyperelastic_voliso/model.hh:163
Type tag for the momentum subdomain of the mixed u–p model.
Definition solidmechanics/hyperelastic_voliso/model.hh:131
std::tuple< ModelProperties > InheritsFrom
Definition solidmechanics/hyperelastic_voliso/model.hh:131
Type tag for the pressure subdomain of the mixed u–p model.
Definition solidmechanics/hyperelastic_voliso/model.hh:136
std::tuple< ModelProperties > InheritsFrom
Definition solidmechanics/hyperelastic_voliso/model.hh:136
GetPropType< TypeTag, Properties::ModelTraits > MT
Definition solidmechanics/hyperelastic_voliso/model.hh:156
HyperelasticVolIsoMomentumVariables< HyperelasticVolIsoMomentumVVTraits< PV, MT > > type
Definition solidmechanics/hyperelastic_voliso/model.hh:157
GetPropType< TypeTag, Properties::PrimaryVariables > PV
Definition solidmechanics/hyperelastic_voliso/model.hh:155
GetPropType< TypeTag, Properties::ModelTraits > MT
Definition solidmechanics/hyperelastic_voliso/model.hh:173
HyperelasticVolIsoPressureVariables< HyperelasticVolIsoPressureVVTraits< PV, MT > > type
Definition solidmechanics/hyperelastic_voliso/model.hh:174
GetPropType< TypeTag, Properties::PrimaryVariables > PV
Definition solidmechanics/hyperelastic_voliso/model.hh:172