Mixed Elasticity
Notations and units
Notation |
Quantity |
\$\mathcal A\$ |
compliance operator |
\$\lambda\$ |
first Lamé parameter |
\$\mu\$ |
second Lamé parameter |
\$\rho\$ |
mass density |
Equations
Mixed Elasticity equations are
The compliance operator is defined as follow:
where
MixedElasticity Toolbox
The model is described in a json file which path is given by the option mixedelasticity.model_json
.
The construction of this file is detailed in the following sections.
Models
The models are not considered for now.
"Model": "HDG"
Materials
In this part we define the two Lamé parameters \$\lambda\$ and \$\mu\$ and the mass density \$\rho\$. It is always necessary to define also the material we work on.
"Materials":
{
"<marker>":
{
"name": "copper",
"rho":"1",
"lambda":"1",
"mu":"1"
}
}
Boundary Conditions
All boundary conditions are described in the same way
"BoundaryConditions":
{
"<field>":
{
"<bc_type>":
{
"<marker>":
{
"<option1>":"<value1>",
"<option2>":"<value2>",
// ...
}
}
}
}
Different types of boundary condition are available.
Dirichlet condition
Field |
Type |
Option |
Value |
|
|
|
\$\ug_D\$ |
Neumann condition
Field |
Type |
Option |
Value |
|
|
|
\$\ug_DN\$ |
Integral boundary condition
Field |
Type |
Option |
Value |
|
|
|
\$\underline{\mathbf{F}}_{target}\$ |
Source Term
The source term \$\underline{\mathbf{F}}_{ext}\$ is treated as a boundary condition.
Field |
Type |
Option |
Value |
|
|
|
\$\underline{\mathbf{F}}_{ext}\$ |
Post Process
Two fields can be exported, the displacement \$\uu\$ and the stress \$\usigma\$.
"PostProcess":
{
"Fields":["displacement","stress"]
}
Moreover it is possible to apply a scaling after the computation and then export the scaled field, in particular we define in the material section the scale factor for the elements with a specific marker.
"Materials":
{
"<marker>":
{
"scale_displacement":"1",
"scale_stress":"1:
}
}
"PostProcess":
{
"Fields":["displacement","stress","scaled_displacement","scaled_stress"]
}
Create applications
In order to solve linear elasticity problem, an application should contain at least
typedef FeelModels::MixedElasticity<FEELPP_DIM,FEELPP_ORDER> me_type;
auto ME = me_type::New("mixedelasticity");
ME->init();
ME->solve();
ME->exportResults();
The assembling for the constant part is inside the initialization, while the assembling of the non-constant part (e.g. the right hand side) is in the solve method.
Run simulations
Programme available to run simulations:
feelpp_toolbox_mixed-elasticity-model_3DP{<polynomial_order>}_G{<geometric_order>}
with