====== 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 [[doc:user:geometry:user:points|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 [[doc:user:general:fonctions]] of p1 | | ''p2'' | reference [[doc:user:geometry:user:points|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 [[doc:user:general:fonctions]] 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'' | [[doc:user:general:fonctions]] (time dependence) | | ''p1'' | reference [[doc:user:geometry:user:points|Point]] at the origin of the axis | | ''p2'' | reference [[doc:user:geometry:user:points|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'' | [[doc:user:general:fonctions]] (can depend on time and position) | | ''p1'' | reference [[doc:user:geometry:user:points|Point]] at the origin of the axis | | ''p2'' | reference [[doc:user:geometry:user:points|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'' | [[doc:user:general:fonctions]] 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'' | [[doc:user:general:fonctions]] 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''.