Loading [MathJax]/extensions/MathMenu.js
OGS
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
v
w
z
Enumerations
b
c
d
e
f
g
i
l
m
n
o
p
s
t
u
v
Enumerator
a
b
c
d
e
f
g
h
l
m
n
p
r
s
t
v
y
Classes
Class List
Class Index
Class Hierarchy
Files
File List
File Members
All
a
b
c
d
e
f
g
i
k
m
n
o
p
r
s
t
v
w
x
Functions
a
c
d
e
f
g
i
m
o
p
r
s
t
v
w
Variables
Typedefs
Enumerations
Macros
b
c
g
m
n
o
p
r
s
t
▼
OGS
►
OpenGeoSys 6.5.4-178-g76065a3f85 source code documentation
►
OGS CTests—Project Files
►
OGS Input File Parameters—Quality Assurance
►
OGS Input File Parameters
BulkMappingDocuPage
Todo List
OGS Input File Parameters—List of incomplete documentation pages
Bibliography
►
Namespaces
►
Classes
▼
Files
▼
File List
►
Applications
►
BaseLib
►
build
►
ChemistryLib
Documentation
►
GeoLib
►
InfoLib
►
MaterialLib
►
MathLib
►
MeshGeoToolsLib
►
MeshLib
►
MeshToolsLib
►
NumLib
►
ParameterLib
▼
ProcessLib
►
Assembly
►
BoundaryConditionAndSourceTerm
►
Common
►
ComponentTransport
►
ConstitutiveRelations
►
Deformation
►
Graph
►
HeatConduction
►
HeatTransportBHE
►
HMPhaseField
►
HT
►
HydroMechanics
▼
LargeDeformation
▼
ConstitutiveRelations
►
Base.h
►
ConstitutiveData.h
►
ConstitutiveModels.h
ConstitutiveSetting.cpp
►
ConstitutiveSetting.h
►
CreateConstitutiveSetting.cpp
►
CreateConstitutiveSetting.h
Gravity.cpp
►
Gravity.h
►
Invoke.h
►
MaterialState.h
SolidDensity.cpp
►
SolidDensity.h
SolidMechanics.cpp
►
SolidMechanics.h
►
CreateLargeDeformationProcess.cpp
►
CreateLargeDeformationProcess.h
►
CreateLocalAssemblers.h
►
IntegrationPointData.h
►
LargeDeformationFEM.h
LargeDeformationProcess.cpp
►
LargeDeformationProcess.h
►
LargeDeformationProcessData.h
►
LocalAssemblerInterface.h
►
LIE
►
LiquidFlow
►
Output
►
PhaseField
►
Reflection
►
RichardsComponentTransport
►
RichardsFlow
►
RichardsMechanics
►
SmallDeformation
►
SmallDeformationNonlocal
►
SteadyStateDiffusion
►
StokesFlow
►
SurfaceFlux
►
TES
►
TH2M
►
ThermalTwoPhaseFlowWithPP
►
ThermoHydroMechanics
►
ThermoMechanicalPhaseField
►
ThermoMechanics
►
ThermoRichardsFlow
►
ThermoRichardsMechanics
►
TwoPhaseFlowWithPP
►
TwoPhaseFlowWithPrho
►
Utils
►
WellboreSimulator
►
AbstractJacobianAssembler.h
AnalyticalJacobianAssembler.cpp
►
AnalyticalJacobianAssembler.h
►
AssemblyMixin.cpp
►
AssemblyMixin.h
►
CentralDifferencesJacobianAssembler.cpp
►
CentralDifferencesJacobianAssembler.h
►
CompareJacobiansJacobianAssembler.cpp
►
CompareJacobiansJacobianAssembler.h
►
CoupledSolutionsForStaggeredScheme.cpp
►
CoupledSolutionsForStaggeredScheme.h
►
CreateDeactivatedSubdomain.cpp
►
CreateDeactivatedSubdomain.h
►
CreateForwardDifferencesJacobianAssembler.cpp
►
CreateForwardDifferencesJacobianAssembler.h
►
CreateJacobianAssembler.cpp
►
CreateJacobianAssembler.h
►
CreateProcessData.cpp
►
CreateProcessData.h
►
CreateTimeLoop.cpp
►
CreateTimeLoop.h
DeactivatedSubdomain.cpp
►
DeactivatedSubdomain.h
ForwardDifferencesJacobianAssembler.cpp
►
ForwardDifferencesJacobianAssembler.h
LocalAssemblerInterface.cpp
►
LocalAssemblerInterface.h
►
LocalAssemblerTraits.h
►
Process.cpp
►
Process.h
►
ProcessData.cpp
►
ProcessData.h
►
ProcessVariable.cpp
►
ProcessVariable.h
►
SubmeshAssemblySupport.h
►
TimeLoop.cpp
►
TimeLoop.h
►
VariableTransformation.h
VectorMatrixAssembler.cpp
►
VectorMatrixAssembler.h
►
File Members
Invoke.h
Go to the documentation of this file.
1
10
#pragma once
11
12
#include <boost/mp11.hpp>
13
14
namespace
ProcessLib::LargeDeformation
15
{
16
namespace
detail
17
{
18
template
<
typename
Result,
typename
Class,
typename
... Args>
19
constexpr
bool
areEvalArgumentTypesUnique
(Result (Class::*)(Args...))
20
{
21
using namespace
boost::mp11
;
22
return
mp_is_set<
23
mp_transform<std::remove_cvref_t, mp_list<Args...>>>::value;
24
}
19
constexpr
bool
areEvalArgumentTypesUnique
(Result (Class::*)(Args...)) {
…
}
25
26
template
<
typename
Result,
typename
Class,
typename
... Args>
27
constexpr
bool
areEvalArgumentTypesUnique(Result (Class::*)(Args...)
const
)
28
{
29
using namespace
boost::mp11
;
30
return
mp_is_set<
31
mp_transform<std::remove_cvref_t, mp_list<Args...>>>::value;
32
}
33
}
// namespace detail
16
namespace
detail
{
…
}
34
40
template
<
typename
T>
41
constexpr
bool
areEvalArgumentTypesUnique
()
42
{
43
return
detail::areEvalArgumentTypesUnique
(&T::eval);
44
}
41
constexpr
bool
areEvalArgumentTypesUnique
() {
…
}
45
48
template
<
typename
Model>
49
constexpr
void
assertEvalArgsUnique
(Model
const
&)
50
{
51
static_assert
(
areEvalArgumentTypesUnique<std::remove_cvref_t<Model>
>());
52
}
49
constexpr
void
assertEvalArgsUnique
(Model
const
&) {
…
}
53
54
}
// namespace ProcessLib::LargeDeformation
ProcessLib::LargeDeformation::detail::areEvalArgumentTypesUnique
constexpr bool areEvalArgumentTypesUnique(Result(Class::*)(Args...))
Definition
Invoke.h:19
ProcessLib::LargeDeformation
Definition
Base.h:21
ProcessLib::LargeDeformation::areEvalArgumentTypesUnique
constexpr bool areEvalArgumentTypesUnique()
Definition
Invoke.h:41
ProcessLib::LargeDeformation::assertEvalArgsUnique
constexpr void assertEvalArgsUnique(Model const &)
Definition
Invoke.h:49
boost::mp11
Definition
BoostMP11Utils.h:15
detail
Definition
ElementCoordinatesMappingLocal.cpp:22
ProcessLib
LargeDeformation
ConstitutiveRelations
Invoke.h
Generated by
1.12.0