Model Module#

Model Class#

The Model class serves as a container for all the entities that comprise a MotionSolve model. Interacting with the model is possible through the numerous methods that are listed below.

Model.control

Defines a control command for one or more simulations.

Model.generate_abcd

Generate a state space representation of the model in the form of state matrices A, B, C, and D in the desired format.

Model.generate_eigensolution

Perform eigen-analysis of the model, generate eigenvalues and mode shapes.

Model.simulate_frequencyResponse

Performs a frequency response analysis of the model

Model.generateOutput

Creates plt and animation h3d files.

Model.reset

Reset the model.

Model.runSimulationEvents

Run SimulationEvent objects sequentially.

Model.save_model

Saves a snapshot of the model.

Model.simulate

Sends the model to the solver and runs the simulation.

Model.verify

Sends the model to solver and performs a verification analysis.

Model Entities#

The entities listed below are fundamental building blocks for creating your models. These elements reside within the Model class and interact with each other according to well-defined relationships to simulate realistic multibody systems.

Core#

Debug

Outputs data that helps you debug your simulation.

Dv

Defines a special type of solver state variable.

Equilibrium

Specifies error tolerances and other parameters for static and quasi-static equilibrium analyses.

FlexBody

Defines a flexible body object in MotionSolve.

Grid

Defines a set of nodal coordinates in 3D space.

Gse

Defines a generic dynamic system.

H3dOutput

Defines the parameters for the animation output file.

Integrator

Specifies parameters that control the dynamic analysis integrator.

Linear

Specifies the solver parameters that control the linear analysis.

Lse

Defines a linear dynamic system.

Marker

Defines an orthonormal, right-handed coordinate system and reference frame in MotionSolve.

NuCMS

Creates a set of flexible body properties with the goal to more accurately capture the mode shapes based on Predictive Component Mode Synthesis theory.

Output

Specifies if the plt, abf, mrf files are to be generated during the solver run.

Part

Defines a rigid body object in MotionSolve.

PointMass

Defines an entity that has mass but no inertia properties.

ProximitySensor

Defines a sensor between two bodies which monitors their minimum separation.

Request

Defines an output request entity in MotionSolve.

Rv

Defines a special type of solver state variable.

Scope

Defines a Scope Plot.

Sensor

Defines an event sensor in the model.

SimulationEvent

Defines an event in MotionSolve and adds it to a list.

Transient

Specifies parameters that control the time-domain-based nonlinear dynamic analysis.

Units

Defines the units for the model.

Uposts

Defines a user-written Post-Subroutine.

UserMsg

Defines a user-written Message-Subroutine.

Forces#

The following classes represent physical forces applied between model elements. These entities are used to simulate mechanical interactions, such as springs, dampers, and user-defined forces.

Accgrav

Defines the acceleration due to gravity along the global X, Y, and Z directions.

Beam

Defines a straight, massless beam of uniform cross-section acting between two Markers, i and j that belong to two different bodies.

Bushing

Defines a massless bushing between two Markers, i and j that belong to two different bodies.

Contact

Defines a 3-D contact force between geometries on two rigid or flexible bodies.

Fforce

Defines a force or torque in the frequency domain.

Field

Applies a translational and rotational action-reaction force between two markers.

Friction

Applies frictional forces in a joint.

Gforce

Defines a general force and torque acting between two markers.

Mforce

Defines a distributed force on a FlexBody in MotionSolve.

Cforce

Creates a force element which establishes linear force-displacement (stiffness) and/or force-velocity (damping) relationships between markers connected by higher-pair constraints.

Nforce

Creates a multi-point force element which establishes linear force-displacement (stiffness) and/or force-velocity (damping) relationships between many markers.

Pforce

Defines a penalty force whose purpose is to maintain a soft constraint in the system.

Sforce

Defines a force or torque acting between two Marker.

SpringDamper

Defines a spring damper acting between two Marker.

Vforce

Defines a vector force that consists of three orthogonal components.

Vtorque

Defines a vector torque that consists of three orthogonal components.

Ptdcvf

Creates a contact force between a Marker

Dcvcvf

Creates a contact force between two instances of DeformableCurve.

Dcvsff

Creates a contact force between a DeformableCurve and a DeformableSurface.

Gdsff

Creates a contact force between a Graphics and a DeformableSurface.

Gdcvf

Creates a contact force between a Graphics and a DeformableCurve.

Dsfsff

Creates a contact force between two DeformableSurface.

Ptdsff

Creates a soft constraint (force) that attempts to maintain a Marker on a DeformableSurface.

Constraints#

These classes impose kinematic constraints between parts of the model.

Coupler

Defines an algebraic relationship between the degrees of freedom of two or three joints.

Cvcv

Defines a (Curve to Curve) higher pair constraint.

Gear

Defines a gear constraint between two bodies.

Gcon

Specifies a user defined general constraint.

Joint

Creates an idealized connector between two bodies.

Jprim

Removes degrees of freedom between two bodies by specifying conditions in which the relative translational or rotational motion can occur.

Motion

Specifies a system degree of freedom as an explicit function of time.

Ptcv

Defines a (Point to Curve) higher pair constraint.

Ptdcv

Defines a (Point to Deformable Curve) higher pair constraint.

Mate

Specifies general mating constraints between geometric primitives based on

Ptsf

Defines a (Point to Surface) higher pair constraint.

Ptdsf

Defines a (Point to Deformable Surface) higher pair constraint.

Cvsf

Defines a (Curve to Surface) higher pair constraint.

Sfsf

Defines a (Surface to Surface) higher pair constraint.

Graphics#

The following classes define visual representations of physical objects or forces. They do not affect simulation results but are useful for debugging, animation, and visualization.

Arc

Generates an arc graphic defined by a center marker, a radius or reference marker, and an angle.

Box

Creates a rectangular 3D graphic.

Circle

Creates a circle graphic defined by a center marker and a radius.

CurveGraphic

Creates a curve graphic that represents a Curve.

Cylinder

Creates a 3D graphic with straight parallel sides and a circular cross-section along the z-axis of the cm Marker.

DeformableCurveGraphic

Creates a curve graphic that represents a DeformableCurve.

DeformableSurfaceGraphic

Creates a surface graphic that represents a DeformableSurface.

Ellipsoid

Creates a 3D graphic where its cross-sectional planes consist of ellipses or circles, with the center aligned to the cm Marker.

External

Creates a graphic object defined using an external file.

ForceGraphic

Creates an arrow representing a force acting on the specified entity.

Frustum

Creates a 3D graphic of a portion of a cone.

LineMesh

Creates a graphic that connects a number of vertices with straight lines.

Outline

Creates line segments between the various cm Marker.

Plane

Creates a plane graphic expressed in respect to the rm Marker.

PointGraphic

Creates a graphic point located at the origin of the reference Marker.

RotAxis

Calculate and display the instantaneous axis of rotation.

Sphere

Creates a 3D graphic whose plane sections are circles and cm Marker at its center.

SpringDamperGraphic

Creates a spring damper geometry.

SurfaceGraphic

Creates a surface graphic that represents a Surface.

Triamesh

Creates a graphic object defined using 'Nodes' and 'Faces'. You can populate

UserGraphic

Creates a user-defined (Grasub) geometry.

Control#

The following classes provide convenient methods to create, manage and modify controllers in your models.

ActivateCoSim

Activate CoSimulation class

CoSim

Performs a one-/two-way coupled Leader/Follower simulation by instantiating separate MotionSolve processes.

Diff

Creates a user-defined state variable and defines a first-order differential equation that describes it.

Fmu

Creates a Functional Mock-up Interface used for Model Exchange and Co-Simulation.

Pinput

Defines the inputs (type Variable) to a mechanical system or plant.

Poutput

Defines a list of outputs (type Variable) to a mechanical system or plant.

Pstate

Creates a container for Solver Variables that are used in generating a linear representation of a model about an operating point.

Tfsiso

Defines a transfer function as a ratio of two polynomials in the Laplace domain.

Reference Data#

The following classes defined in the ReferenceData module provide reusable data entities like arrays, matrices, curves, and splines, supporting external data input and functional mappings within a MotionSolve model.

Array

Specifies a list of instances of type Variable (used by other MotionSolve modeling elements) or numerical constants.

Curve

Defines a parametric curve in 3D space.

DeformableCurve

Specifies a deformable curve that is made to pass through the origins of a specified set of markers, using CUBIC spline interpolation.

DeformableSurface

Specifies a deformable surface that is made to pass through the origins of a specified set of markers, using CUBIC spline interpolation.

FrequencyInput

Defines a frequency excitation.

Matrix

Defines a general, real-valued, M x N matrix for use in MotionSolve.

Spline

Defines a 2D or 3D spline for use in MotionSolve.

String

Defines a user defined text string in MotionSolve.

Surface

Defines a parametric surface element in 3D space.

Variable

Defines a variable in terms of a scalar algebraic equation in MotionSolve.


Base Classes#

Base classes are used in class derivation. They group model entities according to their functionality and they cannot be used standalone.

AnalysisParameters

Base class for analysis settings objects.

Body

Base class for Body objects.

Command

Base class for command objects.

Control

Base class for control modeling elements.

CoSimulation

Base class for CoSimulation.

Constraint

Base class for constraint objects.

Force

Base class for force objects.

Generic

Base class for generic modeling elements.

Graphics

Base class for graphic objects.

PlottingMixin

Base class for SimulationResults and SimulationResultsHistory.

ReferenceData

Base class for reference data objects.

SolverOutput

Base class for output objects.

Class Aliases#

Class aliases are alternative names for specific model entities.

Dcurve

alias of DeformableCurve

DeformCurve

alias of DeformableCurveGraphic

DeformSurface

alias of DeformableSurfaceGraphic

Dsurface

alias of DeformableSurface

Flex_Body

alias of FlexBody

GraCurve

alias of CurveGraphic

GraForce

alias of ForceGraphic

GraPoint

alias of PointGraphic

GraSurface

alias of SurfaceGraphic

ParamCurve

alias of CurveGraphic

ParamCurveGraphic

alias of CurveGraphic

ParamSurface

alias of SurfaceGraphic

ParamSurfaceGraphic

alias of SurfaceGraphic

PlantState

alias of Pstate

Point_Mass

alias of PointMass

Spdp

alias of SpringDamperGraphic