Parallelepiped
#
To define a parallelepiped, give 4 vertices (namely \(p_1\), \(p_2\), \(p_4\) and \(p_5\)), defined as in the following figure :
There is a parameter for each of them: _v1
, _v2
, _v4
, and _v5
taking points or a single value (in this case, it is like a 1D point). _nnodes
parameter can take one single value,
an explicit list of 3 or 12 values or a Numbers
object and _hsteps
parameter can take one real value, an explicit list of 8 real values or a Reals
object.
If required, give names of main domain and side domains as explained in Geometry definition.
At last, give an additional argument: the number of octants to deal with (parameter _nboctants
). Let us explain this with the following figure:
Considering the center of the parallelepiped, and the associated trihedron, symbolized by black dashed arrows, the parallelepiped can be splitted into 8 parallelepipedic parts, corresponding to one octant. Octants having a numbering convention. When giving the number of octants, for instance 5, it means to build intersection of the parallelepiped with octants 1 to 5. The default value is 8, so that the whole parallelepiped is considered.
This is a way to define some specific geometries, such as:
the Fichera Parallelepiped (7 octants):
the thick L-shape (6 octants):
the parallelepiped with 5 octants:
the thin L-shape (3 octants):
Examples:
Point a(0.,0.,0.), b(4.,0.,0.), c(4.,2.,0.), d(0.,2.,0.),
aa(0.,0.,1.), bb(4.,0.,1.), cc(4.,2.,1.), dd(0.,2.,1.);
Parallelepiped p1(_v1=a, _v2=b, _v4=d, _v5=aa,
_nnodes={40,20,40,20,40,20,40,20,10,10,10,10}, _domain_name="Omega");
Parallelepiped p2(_v1=a, _v2=b, _v4=d, _v5=aa, _nnodes={40, 20, 10}, _domain_name="Omega");
Both parallelepipeds of previous examples are identical. This explains the ability to give 3 or 12 values for _nnodes
.
Let’s summarize information about geometrical keys on parallelepipeds:
key(s) |
authorized types |
examples |
---|---|---|
|
|
|
|
single unsigned integer value between 1 and 8 |
|