BodyCylinder
Rigid body with cylinder shape. Mass and animation properties are computed from cylinder data and density (12 potential states)
Library
Modelica/Mechanics/MultiBody/Parts
Description
Rigid body with cylinder shape.The mass properties of the body (mass, center of mass,inertia tensor) are computedfrom the cylinder data. Optionally, the cylinder may be hollow.The cylinder shape is by default used in the animation.The two connector frames frame_a and frame_bare always parallel to each other. Example of componentanimation (note, thatthe animation may be switched off via parameter animation = false):
A BodyCylinder component has potential states. For details of thesestates and of the "Advanced" menu parameters, see modelMultiBody.Parts.Body.
Parameters
Name | Label | Description | Data Type | Valid Values |
---|---|---|---|---|
mo_animation | animation | = true, if animation shall be enabled (show cylinder between frame_a and frame_b) | Scalar | true |
mo_r | r | Vector from frame_a to frame_b, resolved in frame_a | Vector of size 3 | |
mo_r_shape | r_shape | Vector from frame_a to cylinder origin, resolved in frame_a | Vector of size 3 | |
mo_lengthDirection | lengthDirection | Vector in length direction of cylinder, resolved in frame_a | Vector of size 3 | |
mo_length | length | Length of cylinder | Scalar | |
mo_diameter | diameter | Diameter of cylinder | Scalar | |
mo_innerDiameter | innerDiameter | Inner diameter of cylinder (0 <= innerDiameter <= Diameter) | Scalar | |
mo_density | density | Density of cylinder (e.g., steel: 7700 .. 7900, wood : 400 .. 800) | Scalar | |
mo_radius | radius | Radius of cylinder | Scalar | |
mo_innerRadius | innerRadius | Inner-Radius of cylinder | Scalar | |
mo_mo | mo | Mass of cylinder without hole | Scalar | |
mo_mi | mi | Mass of hole of cylinder | Scalar | |
mo_I22 | I22 | Inertia with respect to axis through center of mass, perpendicular to cylinder axis | Scalar | |
mo_m | m | Mass of cylinder | Scalar | |
mo_R | R | Orientation object from frame_a to frame spanned by cylinder axis and axis perpendicular to cylinder axis | FromModelica('Modelica.Mechanics.MultiBody.Frames.Orientation') | |
mo_r_CM | r_CM | Position vector from frame_a to center of mass, resolved in frame_a | Vector of size 3 | |
mo_I | I | Inertia tensor of cylinder with respect to center of mass, resolved in frame parallel to frame_a | Matrix of size 3x3 | |
mo_color | color | Color of cylinder | Vector of size 3 | |
mo_specularCoefficient | specularCoefficient | Reflection of ambient light (= 0: light is completely absorbed) | Scalar |
Name | Label | Description | Data Type | Valid Values |
---|---|---|---|---|
mo_r_0 | r_0 | r_0 | Structure | |
mo_r_0/fixed | fixed | Cell of vectors of size 3 | true | |
mo_r_0/start | start | Cell of vectors of size 3 | ||
mo_v_0 | v_0 | v_0 | Structure | |
mo_v_0/fixed | fixed | Cell of vectors of size 3 | true | |
mo_v_0/start | start | Cell of vectors of size 3 | ||
mo_a_0 | a_0 | a_0 | Structure | |
mo_a_0/fixed | fixed | Cell of vectors of size 3 | true | |
mo_a_0/start | start | Cell of vectors of size 3 | ||
mo_angles_fixed | angles_fixed | = true, if angles_start are used as initial values, else as guess values | Scalar | true |
mo_angles_start | angles_start | Initial values of angles to rotate frame_a around 'sequence_start' axes into frame_b | Vector of size 3 | |
mo_sequence_start | sequence_start | Sequence of rotations to rotate frame_a into frame_b at initial time | Vector of size 3 | |
mo_w_0_fixed | w_0_fixed | = true, if w_0_start are used as initial values, else as guess values | Scalar | true |
mo_w_0_start | w_0_start | Initial or guess values of angular velocity of frame_a resolved in world frame | Vector of size 3 | |
mo_z_0_fixed | z_0_fixed | = true, if z_0_start are used as initial values, else as guess values | Scalar | true |
mo_z_0_start | z_0_start | Initial values of angular acceleration z_0 = der(w_0) | Vector of size 3 |
Name | Label | Description | Data Type | Valid Values |
---|---|---|---|---|
mo_enforceStates | enforceStates | = true, if absolute variables of body object shall be used as states (StateSelect.always) | Scalar | true |
mo_useQuaternions | useQuaternions | = true, if quaternions shall be used as potential states otherwise use 3 angles as potential states | Scalar | true |
mo_sequence_angleStates | sequence_angleStates | Sequence of rotations to rotate world frame into frame_a around the 3 angles used as potential states | Vector of size 3 |
Name | Label | Description | Data Type | Valid Values |
---|---|---|---|---|
mo__nmodifiers | Number of Modifiers | Specifies the number of modifiers | Number | |
mo__modifiers | Modifiers | Add new modifier | Structure | |
mo__modifiers/varname | Variable name | Cell of strings | ||
mo__modifiers/attribute | Attribute | Cell of strings | 'start' | |
mo__modifiers/value | Value |
Ports
Name | Type | Description | IO Type | Number |
---|---|---|---|---|
frame_a | implicit | Coordinate system fixed to the component with one cut-force and cut-torque | input | 1 |
frame_b | implicit | Coordinate system fixed to the component with one cut-force and cut-torque | output | 1 |