1. Reference problem#
1.1. Geometry#

Ray |
\(R\mathrm{=}10.m\) |
Thickness |
\(t\mathrm{=}0.04\) |
Coordinates of the points:
\(A\) |
|
|
|
\(x\) |
|||
\(y\) |
|||
\(z\) |
1.2. Material properties#
The hemisphere is composed of concrete reinforced by grids. As the objective is only to test controls, the same properties are given to concrete and to grids.
\(E\mathrm{=}200000\mathit{Pa}\), \(\nu \mathrm{=}0.3\)
1.3. Boundary conditions and loads#
Over a quarter of the hemisphere:
Point \(C\) |
no move in \(z\) |
Side \(\mathrm{AC}\) |
symmetry with respect to plane \(\mathit{xz}\) |
Side \(\mathrm{BC}\) |
symmetry with respect to plane \(\mathit{yz}\) |
Side \(\mathrm{AB}\) |
free |
Internal pressure: \(P\mathrm{=}10.\mathit{Pa}\)
1.4. Orientation problem#
It is desired that the reinforcing grids be oriented circumferentially with respect to the given axis. However, given the hemispherical shape considered, a Python function is proposed to achieve it.
The principle is as follows:
the axis of the hemisphere is noted \(Z\)
for each cell, we calculate the vector indicating the ciconferential direction by \(V\mathrm{=}Z\mathrm{\wedge }N\) where \(N\) is the normal to the mesh. Note \(V\mathrm{=}\mathrm{[}\mathit{Vx},\mathit{Vy},\mathit{Vz}\mathrm{]}\) and define its projection on the \((\mathit{XOY})\) plane by \(W\mathrm{=}\mathrm{[}\mathit{Vx},\mathit{Vy}\mathrm{,0}\mathrm{]}\)
we calculate the values of ANGL_REP to be assigned to the current mesh by \(\alpha =\mathrm{arctan}(\mathrm{Vy}/\mathrm{Vx})\) and \(\beta \mathrm{=}\mathrm{-}\mathrm{arctan}(\mathit{Vz}\mathrm{/}\mathit{norm}(W))\)
The function called LIST_CARA_CIRCONF loops through all grid cells, computes \(\alpha\) and \(\beta\), and creates the keywords:
_F (SECTION =20.0,
MAILLE =Current_Mesh-Name,
EXCENTREMENT =0.0, ANGL_REP =(,)),
COEF_RIGI_DRZ =1.E-10
),
and he adds them to a list. This list is then provided to AFFE_CARA_ELEM. So we get the commands:
LIST_GRI = LIST_CARA_CIRCONF (
GROUP_MA =” GRILLE “,
AXE =( 0.,0.,1. ),
MODELE = MODEL,
GRILLE =_F (SECTION =20. , EXCENTREMENT =0.,)
)
CARA_COQ = AFFE_CARA_ELEM (
MODELE = MODEL,
COEF_RIGI_DRZ =0.,),
GRILLE = LIST_GRI,
)
Finally, note that, formally, LIST_CARA_CIRCONF obeys the following catalog:
LIST_CARA_CIRCONF (
GROUP_MA = SIMP (status=”o”, typ=grma, max=”**”),
AXE = SIMP (status=”o”, typ=”R”, max=3, min=3),
MODE = SIMP (status=”o”, typ=modele_sdaster),
GRILLE = FACT (status=”f”, max=1,
SECTION = SIMP (status=”o”, typ=”R”),
EXCENTREMENT = SIMP (status=”f”, typ=”R”),
COEF_RIGI_DRZ = SIMP (status=”f”, typ=”R”),
),
)