modelBodyCylinder

Rigid body with cylinder shape. Mass and animation properties are computed from cylinder data and density (12 potential states)

Information

Rigid body with cylinder shape. The mass properties of the body (mass, center of mass, inertia tensor) are computed from 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_b are always parallel to each other. Example of component animation (note, that the animation may be switched off via parameter animation = false):

Parts.BodyCylinder

A BodyCylinder component has potential states. For details of these states and of the "Advanced" menu parameters, see model MultiBody.Parts.Body.

Parameters

TypeNameDefaultDescription
Booleananimationtrue= true, if animation shall be enabled (show cylinder between frame_a and frame_b)
SI.Position[3]rVector from frame_a to frame_b, resolved in frame_a
SI.Position[3]r_shape{0, 0, 0}Vector from frame_a to cylinder origin, resolved in frame_a
Modelica.Mechanics.MultiBody.Types.AxislengthDirectionto_unit1(r - r_shape)Vector in length direction of cylinder, resolved in frame_a
SI.LengthlengthModelica.Math.Vectors.length(r - r_shape)Length of cylinder
SI.Distancediameterlength/world.defaultWidthFractionDiameter of cylinder
SI.DistanceinnerDiameter0Inner diameter of cylinder (0 <= innerDiameter <= Diameter)
SI.Densitydensity7700Density of cylinder (e.g., steel: 7700 .. 7900, wood : 400 .. 800)
SI.Distanceradiusdiameter/2Radius of cylinder
SI.DistanceinnerRadiusinnerDiameter/2Inner-Radius of cylinder
SI.Massmodensity*pi*length*radius*radiusMass of cylinder without hole
SI.Massmidensity*pi*length*innerRadius*innerRadiusMass of hole of cylinder
SI.InertiaI22(mo*(length*length + 3*radius*radius) - mi*(length*length + 3*innerRadius*innerRadius))/12Inertia with respect to axis through center of mass, perpendicular to cylinder axis
SI.Massmmo - miMass of cylinder
Frames.OrientationRFrames.from_nxy(r, {0, 1, 0})Orientation object from frame_a to frame spanned by cylinder axis and axis perpendicular to cylinder axis
SI.Position[3]r_CMr_shape + normalizeWithAssert(lengthDirection)*length/2Position vector from frame_a to center of mass, resolved in frame_a
SI.Inertia[3,3]IFrames.resolveDyade1(R, diagonal({(mo*radius*radius - mi*innerRadius*innerRadius)/2, I22, I22}))Inertia tensor of cylinder with respect to center of mass, resolved in frame parallel to frame_a
Initialization
Booleanangles_fixedfalse= true, if angles_start are used as initial values, else as guess values
SI.Angle[3]angles_start{0, 0, 0}Initial values of angles to rotate world frame around 'sequence_start' axes into frame_a
Types.RotationSequencesequence_start{1, 2, 3}Sequence of rotations to rotate world frame into frame_a at initial time
Booleanw_0_fixedfalse= true, if w_0_start are used as initial values, else as guess values
SI.AngularVelocity[3]w_0_start{0, 0, 0}Initial or guess values of angular velocity of frame_a resolved in world frame
Booleanz_0_fixedfalse= true, if z_0_start are used as initial values, else as guess values
SI.AngularAcceleration[3]z_0_start{0, 0, 0}Initial values of angular acceleration z_0 = der(w_0)
Advanced
BooleanenforceStatesfalse= true, if absolute variables of body object shall be used as states (StateSelect.always)
BooleanuseQuaternionstrue= true, if quaternions shall be used as potential states otherwise use 3 angles as potential states
Types.RotationSequencesequence_angleStates{1, 2, 3}Sequence of rotations to rotate world frame into frame_a around the 3 angles used as potential states

Connectors

TypeNameDefaultDescription
Interfaces.Frame_aframe_aCoordinate system fixed to the component with one cut-force and cut-torque
Interfaces.Frame_bframe_bCoordinate system fixed to the component with one cut-force and cut-torque

Components

TypeNameDefaultDescription
Modelica.Mechanics.MultiBody.Types.ColorcolorModelica.Mechanics.MultiBody.Types.Defaults.BodyColorColor of cylinder
Types.SpecularCoefficientspecularCoefficientworld.defaultSpecularCoefficientReflection of ambient light (= 0: light is completely absorbed)
SI.Position[3]r_0Position vector from origin of world frame to origin of frame_a
SI.Velocity[3]v_0Absolute velocity of frame_a, resolved in world frame (= der(r_0))
SI.Acceleration[3]a_0Absolute acceleration of frame_a resolved in world frame (= der(v_0))
Bodybody
FixedTranslationframeTranslation