modelFlexBeamEAGJ

Model of flexible beam

Information

This block provides an Euler-Bernoulli model of a flexible beam. It is recommended that this model not be used directly. Instead, use DeployStructLib.Parts.Beam and set the "useEAGJ" flag to true.

Copyright © 2018
ATA ENGINEERING, INC.
ALL RIGHTS RESERVED

Parameters

TypeNameDefaultDescription
Booleananimationtrue= true, if animation shall be enabled
SI.LengthLBeam length
EAGJ_BeamPropertyEAGJpropBeam properties in EAGJ format
SI.Massmassif DSLglb.quasiStatic then DSLglb.quasiStaticFactor*EAGJprop.rhoA*L else EAGJprop.rhoA*LBeam mass
RealqsFacRif DSLglb.quasiStatic then 1/DSLglb.quasiStaticFactor else 1.0Quasi-static factor
RealalphaEAGJprop.alphaRayleigh damping coefficient (mass proportional)
RealbetaEAGJprop.betaRayleigh damping coefficient (stiffness proportional)
BooleansteadyStateDSLglb.SteadyStateInitialize to steady state?
BooleanuseLumpedMassMatrixfalse=true, use a lumped mass matrix formulation else use a consistent mass matrix formulation
BooleanuseGravityfalse=true, use gravity in the simulation (computational speedup if not used)
SI.Position[3]r{L, 0, 0}Vector from frame_a to undeformed frame_b resolved in frame_a
Realdim2sqrt(12*EAGJprop.EIzz/EAGJprop.EA)
Realdim3sqrt(12*EAGJprop.EIyy/EAGJprop.EA)
Types.RotationSequencesequence{1, 2, 3}Angles are returned to rotate frame_a around axes sequence[1], sequence[2] and finally sequence[3] into frame_b
RealKff{{EAGJprop.EA/L, 0, 0, 0, 0, 0}, {0, 12*EAGJprop.EIzz/L^3, 0, 0, 0, -6*EAGJprop.EIzz/L^2}, {0, 0, 12*EAGJprop.EIyy/L^3, 0, 6*EAGJprop.EIyy/L^2, 0}, {0, 0, 0, EAGJprop.GJ/L, 0, 0}, {0, 0, 6*EAGJprop.EIyy/L^2, 0, 4*EAGJprop.EIyy/L, 0}, {0, -6*EAGJprop.EIzz/L^2, 0, 0, 0, 4*EAGJprop.EIzz/L}}
RealMffif useLumpedMassMatrix then {{mass/2, 0, 0, 0, 0, 0}, {0, mass/2, 0, 0, 0, 0}, {0, 0, mass/2, 0, 0, 0}, {0, 0, 0, L*EAGJprop.MOIxx/2, 0, 0}, {0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0}} else {{mass/2, 0, 0, 0, 0, 0}, {0, mass*13/35, 0, 0, 0, -mass*11*L/210}, {0, 0, mass*13/35, 0, mass*11*L/210, 0}, {0, 0, 0, L*EAGJprop.MOIxx/2, 0, 0}, {0, 0, mass*11*L/210, 0, mass*L*L/105, 0}, {0, -mass*11*L/210, 0, 0, 0, mass*L*L/105}}
SI.Inertia[3]Itt_CM{L*EAGJprop.MOIxx, L*EAGJprop.MOIyy, L*EAGJprop.MOIzz}Inertia tensor of body box with respect to center of mass, parallel to frame_a
SI.Inertia[3]IttItt_CM + mass*{0, (L/2)^2, (L/2)^2}Inertia tensor of body box with respect frame_a
Animation › if animation = true
Types.ShapeTypeshapeType"box"Type of shape
Initialization
SI.Position[3]r_0_start{0, 0, 0}Initial values of position of frame_a
SI.Angle[3]angles_start{0, 0, 0}Initial values of angles to rotate frame_a around 'sequence_start' axes into frame_b

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
Types.ColorcolorModelica.Mechanics.MultiBody.Types.Defaults.RodColorColor of shape
Types.SpecularCoefficientspecularCoefficientworld.defaultSpecularCoefficientReflection of ambient light (= 0: light is completely absorbed)
SI.Position[6]qf
Real[6]dqf
Real[6]ddqf
SI.Velocity[3]v
SI.Velocity[3]v0
SI.Acceleration[3]a
SI.AngularVelocity[3]w
SI.AngularAcceleration[3]z
SI.Force[3]Fb_a
SI.Torque[3]Tb_a
Frames.OrientationR_relRelative orientation object from frame_a to frame_b
RealQeR
RealQet
RealQvR
RealQvt
RealQef
RealQvf
RealQeg
Realr_CM
SI.Acceleration[3]g_0Gravity acceleration resolved in world frame
SI.Position[3]r_0Position vector from origin of world frame to origin of frame_a
SI.Angle[3]phiDummy or 3 angles to rotate world frame into frame_a of body
SI.AngularVelocity[3]phi_d= der(phi)