Ellipses & disks#
Ellipse
#
The definition of an elliptical surface requires the plane where it is and the axis parameters.
To define the plane, give the center point (parameter _center
) and 2 other points, in order to have 3 unaligned points.
These points are supposed to be both apogees of the ellipse (parameters _v1
and _v2
), namely \(c\), \(v_1\) and \(v_2\) in the following figure:
These parameters take 2D or 3D points.
When apogees are along x-axis and y-axis respectively, give the axis lengths by using _xlength
and _ylength
keys or semi-axis lengths by using _xradius
and _yradius
keys.
_nnodes
can take one single value, an explicit list of 4 values (or a Numbers
object), one for each quarter of ellipse. _hsteps
can take one real value, an explicit list of 4 real values (or a Reals
object).
If required, give the names of main domain and side domains as explained in Geometry definition.
Furthermore, an elliptical sectors can be defined by specifying two additionnal parameters: _angle1
and _angle2
keys.
Values of angles are given in radian and can be any values, under the following behavior:
Difference between angle values has to be smalller than \(2\pi\), but can be greater or equal than \(\pi\).
Modulos will be automatically used so that
_angle2
will be greater than_angle1
.If the angular sector is greater or equal than \(\pi\), an intermediate point is built at the intersection of the ellipse and the bisector of the sector.
Default value for
_angle1
is 0.Default value for
_angle2
is \(2\pi\).
If required, then give names of main domain and side domains as explained in Geometry definition.
Ellipse e1(_center=Point(0.,0.), _v1=Point(2.,0.), _v2=Point(0.,1.),_nnodes={5, 10, 5, 10}, _domain_name="Omega", _side_names={"Gamma5", "Gamma10", "Gamma5", "Gamma10"});
Ellipse e2(_center=Point(0.,0.,0.), _v1=Point(1.,0.,1.), _v2=Point(0.,1.,1.), _nnodes=40, _domain_name="Omega", _side_names="Gamma");
Ellipse e3(_center=Point(0.,0.), _xlength=2, _ylength=3.5, _nnodes=40, _domain_name="Omega", _side_names="Gamma");
Let’s summarize information about geometrical keys on ellipses:
key(s) |
authorized types |
examples |
---|---|---|
|
|
|
|
single unsigned integer or real positive value; angles in radian |
|
Hint
Parametrization of the ellipse sector (center \(c\), first and second apogee \(v_1,\ v_2\), angles \(\theta_1,\ \theta_2\)) is:
Disk
#
The definition of a disk requires to give the plane where it is and the radius parameters. To define the plane, give the center point and 2 other points, in order to have 3 unaligned points. These points are supposed to be doing a right angle with the center of the disk (as if they were apogees of an ellipse).
To do so, Disk
object uses parameters _center
, _v1
and _v2
taking 2D or 3D points. Furthermore, to define disk sectors, two additional parameters: _angle1
and _angle2
. Whe
- Whole disks:
- Inward circular sectors:
- Outward circular sectors:
-
_nnodes
can take one single value, an explicit list of 3 or 4 values or aNumbers
object._hsteps
can take one real value, an explicit list of 3 or 4 real values or aReals
object.Tip
When setting 3 values for an outward circular sector, the middle one stands for sn2 and sn3
Then, you can set names of the main domain and the side domains as explained in Geometry definition:
Disk d1(_center=Point(0.,0.), _v1=Point(1.,0.), _v2=Point(0.,1.), _nnodes={5, 10, 5, 10}, _domain_name="Omega", _side_names={"Gamma5", "Gamma10", "Gamma5", "Gamma10"});
Disk d2(_center=Point(0.,0.,0.), _v1=Point(1.,0.,1.), _v2=Point(0.,1.,1.), _nnodes=40, _domain_name="Omega", _side_names="Gamma");
Disk d3(_center=Point(0.,0.), _radius=2.5, _nnodes=40, _domain_name="Omega", _side_names="Gamma");
Let’s summarize information about geometrical keys on disks:
key(s) |
authorized types |
examples |
---|---|---|
|
|
|
|
single unsigned integer or real positive value |
|
Hint
Parametrization of the disk sector (center \(c\), first and second apogee \(v_1,\ v_2\), angles \(\theta_1,\ \theta_2\)) is: