doc:user:conditions:rotations
Table of Contents
Prescribed Rotations
Loading in cylindrical frame : prescribed rotations - radial displacements (around a moving axis)
Displacements and rotations imposed with respect to an axis are extensions of imposed displacements (translations) and are used to rotate/move a set of nodes around an axis, which can be in motion too. As for displacements, this is done with LoadingSet
. The motion of the axis is also defined in the LoadingSet
.
Translation of the axis
If the axis is defined by points p1
and p2
, its motion can be defined by commands similar to the following ones:
loadingset.define(p1, Field1D(TX,RE), dx1, fctX1) loadingset.define(p1, Field1D(TY,RE), dy1, fctY1) loadingset.define(p1, Field1D(TZ,RE), dz1, fctZ1) loadingset.define(p2, Field1D(TX,RE), dx2, fctX2) loadingset.define(p2, Field1D(TY,RE), dy2, fctY2) loadingset.define(p2, Field1D(TZ,RE), dz2, fctZ2)
p1 | reference Point at the origin of the axis |
dx1 , dy1 , dz1 | amplitudes of the x,y,z displacements of point p1 |
fctX1 , fctY1 , fctZ1 | x,y,z displacement Functions y=f(t) of p1 |
p2 | reference Point at the end of the axis |
dx2 , dy2 , dz2 | amplitudes of the x,y,z displacements of point p2 |
fctX2 , fctY2 , fctZ2 | x,y,z displacement Functions y=f(t) of p2 |
Case #1: Radial displacement imposed with respect to the axis
loadingset.defineRad(gObject, Field1D(TX,RE), p1, p2, ampl, fct)
gObject | Geometric entity |
field | name of the variable which is concerned by the motion |
ampl | amplitude |
fct | Functions y=f(t) (time dependence) |
p1 | reference Point at the origin of the axis |
p2 | reference Point at the end of the axis |
Case #2: Rotation imposed around the axis
loadingset.defineRot(gObject, field, p1, p2, option, ampl, fct)
gObject | Geometric entity |
field | name of the variable which is concerned by the motion (only Field3D(TXTYTZ,RE) is allowed) |
ampl | amplitude |
fct | Functions y=f(t) (can depend on time and position) |
p1 | reference Point at the origin of the axis |
p2 | reference Point at the end of the axis |
option | = False : the boundary condition is a given angle, in degrees = True : the boundary condition is a given angular speed, in degrees/second |
Case #3: 2 successive Rotations imposed around 2 axes
loadingset.defineRot2(gObject, field, axe1, ampl1, fct1, axe2, ampl2, fct2, option)
gObject | Geometric entity |
field | name of the variable which is concerned by the motion (only Field3D(TXTYTZ,RE) is allowed) |
axe1 | first axis of rotation (Axe object). |
ampl1 | amplitude of the first rotation |
fct1 | Functions y=f(t) of the first rotation (can only depend on time) |
axe2 | second axis of rotation (Axe object). The motion of this axis drives the global translation of the object |
ampl2 | amplitude of the second rotation |
fct2 | Functions y=f(t) of the second rotation (can only depend on time) |
option | = False : the boundary condition is a given angle, in degrees = True : the boundary condition is a given angular speed, in degrees/second |
The geometry is transformed in the following way:
- the rotation around the FIRST axis is applied to the object,
- then, the object is translated according to the SECOND axis motion,
- finally, the geometry is rotated around the SECOND axis.
In other words, it means that the second axis of defineRot2
behaves as the single axis of defineRot
.
doc/user/conditions/rotations.txt · Last modified: 2022/04/28 17:17 by boman