Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
MoReFEM
CoreLibrary
MoReFEM
Commits
a6b84ff1
Commit
a6b84ff1
authored
Nov 10, 2016
by
GILLES Sebastien
Browse files
#1049
Fix RivlinCube model.
parent
edf636c8
Changes
4
Hide whitespace changes
Inline
Side-by-side
Data/Lua/demo_input_rivlin_cube_hexahedra.lua
View file @
a6b84ff1
...
...
@@ -351,6 +351,43 @@ Domain8 = {
}
-- Domain8
Domain9
=
{
-- Index of the geometric mesh upon which the domain is defined (as defined in the present file). Might be
-- left empty if domain not limited to one mesh; at most one value is expected here.
-- Expected format: {VALUE1, VALUE2, ...}
mesh_index
=
{
1
},
-- List of dimensions encompassed by the domain. Might be left empty if no restriction at all upon
-- dimensions.
-- Expected format: {VALUE1, VALUE2, ...}
-- Constraint: ops_in(v, {0, 1, 2, 3})
dimension_list
=
{
},
-- List of mesh labels encompassed by the domain. Might be left empty if no restriction at all upon mesh
-- labels. This parameter does not make sense if no mesh is defined for the domain.
-- Expected format: {VALUE1, VALUE2, ...}
mesh_label_list
=
{
},
-- List of geometric element types considered in the domain. Might be left empty if no restriction upon
-- these. No constraint is applied at Ops level, as some geometric element types could be added after
-- generation of current input parameter file. Current list is below; if an incorrect value is put there it
-- will be detected a bit later when the domain object is built.
-- The known types when this file was generated are:
-- . Point1
-- . Segment2, Segment3
-- . Triangle3, Triangle6
-- . Quadrangle4, Quadrangle8, Quadrangle9
-- . Tetrahedron4, Tetrahedron10
-- . Hexahedron8, Hexahedron20, Hexahedron27.
-- Expected format: {"VALUE1", "VALUE2", ...}
geometric_element_type_list
=
{
"Triangle3"
}
}
-- Domain9
EssentialBoundaryCondition1
=
{
-- Name of the boundary condition (must be unique).
...
...
Data/Lua/demo_input_rivlin_cube_tetrahedra.lua
View file @
a6b84ff1
...
...
@@ -351,6 +351,42 @@ Domain8 = {
}
-- Domain8
Domain9
=
{
-- Index of the geometric mesh upon which the domain is defined (as defined in the present file). Might be
-- left empty if domain not limited to one mesh; at most one value is expected here.
-- Expected format: {VALUE1, VALUE2, ...}
mesh_index
=
{
1
},
-- List of dimensions encompassed by the domain. Might be left empty if no restriction at all upon
-- dimensions.
-- Expected format: {VALUE1, VALUE2, ...}
-- Constraint: ops_in(v, {0, 1, 2, 3})
dimension_list
=
{
},
-- List of mesh labels encompassed by the domain. Might be left empty if no restriction at all upon mesh
-- labels. This parameter does not make sense if no mesh is defined for the domain.
-- Expected format: {VALUE1, VALUE2, ...}
mesh_label_list
=
{
},
-- List of geometric element types considered in the domain. Might be left empty if no restriction upon
-- these. No constraint is applied at Ops level, as some geometric element types could be added after
-- generation of current input parameter file. Current list is below; if an incorrect value is put there it
-- will be detected a bit later when the domain object is built.
-- The known types when this file was generated are:
-- . Point1
-- . Segment2, Segment3
-- . Triangle3, Triangle6
-- . Quadrangle4, Quadrangle8, Quadrangle9
-- . Tetrahedron4, Tetrahedron10
-- . Hexahedron8, Hexahedron20, Hexahedron27.
-- Expected format: {"VALUE1", "VALUE2", ...}
geometric_element_type_list
=
{
"Triangle3"
}
}
-- Domain9
EssentialBoundaryCondition1
=
{
-- Name of the boundary condition (must be unique).
...
...
Sources/ModelInstances/RivlinCube/InputParameterList.hpp
View file @
a6b84ff1
...
...
@@ -47,7 +47,8 @@ namespace HappyHeart
face4
=
5
,
face5
=
6
,
face6
=
7
,
face456
=
8
face456
=
8
,
full_mesh
=
9
};
...
...
@@ -107,6 +108,7 @@ namespace HappyHeart
InputParameter
::
Domain
<
EnumUnderlyingType
(
DomainIndex
::
face5
)
>
,
InputParameter
::
Domain
<
EnumUnderlyingType
(
DomainIndex
::
face6
)
>
,
InputParameter
::
Domain
<
EnumUnderlyingType
(
DomainIndex
::
face456
)
>
,
InputParameter
::
Domain
<
EnumUnderlyingType
(
DomainIndex
::
full_mesh
)
>
,
InputParameter
::
DirichletBoundaryCondition
<
EnumUnderlyingType
(
BoundaryConditionIndex
::
face1
)
>
,
InputParameter
::
DirichletBoundaryCondition
<
EnumUnderlyingType
(
BoundaryConditionIndex
::
face2
)
>
,
...
...
Sources/ModelInstances/RivlinCube/VariationalFormulation.cpp
View file @
a6b84ff1
...
...
@@ -12,6 +12,8 @@
#include "HappyHeart/Utilities/Filesystem/File.hpp"
#include "HappyHeart/ThirdParty/Wrappers/Petsc/Vector/AccessVectorContent.hpp"
#include "HappyHeart/Geometry/Domain/DomainManager.hpp"
#include "HappyHeart/ParameterInstances/Compound/Solid/Solid.hpp"
#include "HappyHeart/FormulationSolver/Private/InitialCondition/InitThreeDimensionalInitialCondition.hpp"
...
...
@@ -43,17 +45,18 @@ namespace HappyHeart
void
VariationalFormulation
::
SupplInit
(
const
InputParameterList
&
input_parameter_data
)
{
const
auto
&
god_of_dof
=
GetGodOfDof
();
const
auto
&
geometric_mesh_region
=
god_of_dof
.
GetGeometricMeshRegion
();
decltype
(
auto
)
domain
=
DomainManager
::
GetInstance
().
GetDomain
(
EnumUnderlyingType
(
DomainIndex
::
full_mesh
));
const
auto
&
felt_space_highest_dimension
=
god_of_dof
.
GetFEltSpace
(
EnumUnderlyingType
(
FEltSpaceIndex
::
highest_dimension
));
solid_
=
std
::
make_unique
<
Solid
>
(
input_parameter_data
,
geometric_mesh_regio
n
,
domai
n
,
felt_space_highest_dimension
.
GetQuadratureRulePerTopology
()
);
static_pressure_
=
InitScalarParameterFromInputData
<
InputParameter
::
Source
::
StaticPressure
>
(
"StaticPressure"
,
geometric_mesh_regio
n
,
input_parameter_data
);
domai
n
,
input_parameter_data
);
{
const
auto
&
numbering_subset
=
GetNumberingSubset
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment