Notation
The notation is used to explain:
typical symbols in equations and formulas (e.g.,
)common types used as parameters in items (e.g.,
PInt
)typical annotation of equations (or parts of it) and symbols (e.g.,
ODE2
)
Common types
Common types are especially used in the definition of items.
These types indicate how they need to be set (e.g., a Vector3D
is set as a list of 3 floats or as a numpy array with 3 floats),
and they usually include some range or size check (e.g., PReal
is checked for being positive and non-zero):
float
a single-precision floating point number (note: in Python, ‘float
‘ is used also for double precision numbers; in EXUDYN, internally floats are single precision numbers especially for graphics objects and OpenGL)Real
a double-precision floating point number (note: in Python this is also of type ‘float
‘)UReal
same asReal
, but may not be negativePReal
same asReal
, but must be positive, non-zero (e.g., step size may never be zero)Index
deprecated, represents unsined integer,UInt
Int
a (signed) integer number, which converts to ‘int
‘ in Python, ‘int
‘ in C++UInt
an unsigned integer number, which converts to ‘int
‘ in PythonPInt
an positive integer number (> 0), which converts to ‘int
‘ in PythonNodeIndex, MarkerIndex, ...
a special (non-negative) integer type to represent indices of nodes, markers, …; specifically, an unintentional conversion from one index type to the other is not possible (e.g., to convertNodeIndex
toMarkerIndex
); see Section Item indexString
a stringArrayIndex
a list of integer numbers (either list or in some casesnumpy
arrays may be allowed)ArrayNodeIndex
a list of node indicesBool
a boolean parameter: eitherTrue
orFalse
(’bool
‘ in Python)VObjectMassPoint
,VObjectRigidBody
,VObjectGround
, etc. represents the visualization object of the underlying object; ‘V’ is put in front of object nameBodyGraphicsData
see Section GraphicsDataVector2D
a list ornumpy
array of 2 real numbersVector3D
a list ornumpy
array of 3 real numbersVector'X'D
a list ornumpy
array of ‘X’ real numbersFloat4
a list of 4 float numbersVector
a list ornumpy
array of real numbers (length given by according object)NumpyVector
a 1Dnumpy
array with real numbers (size given by according object); similar as Vector, but not accepting listMatrix3D
a list of lists ornumpy
array with real numbersMatrix6D
a list of lists ornumpy
array with real numbersNumpyMatrix
a 2Dnumpy
array (matrix) with real numbers (size given by according object)NumpyMatrixI
a 2Dnumpy
array (matrix) with integer numbers (size given by according object)MatrixContainer
a versatile representation for dense and sparse matrices, see Section MatrixContainerPyFunctionGraphicsData
a user function providing GraphicsData, see the user function description of the according objectPyFunctionMbsScalar...
a user function for the according object; the name is chosen according to the interface (arguments containing scalars, vectors, etc.) and is only used internally for code generation; see the according user function description
Note that for integers, there is also the exu.InvalidIndex()
which is used to uniquely mark invalid indices, e.g., for default values of node numbers in objects or for other functions, often marked as invalid (-1)
in the documentation. Currently, the invalid index is set to -1, but it may change in the future!
States and coordinate attributes
The following subscripts are used to define configurations of a quantity, e.g., for a vector of displacement coordinates
in any configuration in reference configuration, e.g., reference coordinates: in initial configuration, e.g., initial displacements: in current configuration in visualization configuration in start of step configuration
As written in the introduction, the coordinates are attributed to certain types of equations and therefore, the following attributes are used (usually as subscript, e.g.,
Time is usually defined as ‘time’ or
in which
The inverse operation is denoted as
For the length of a vector we often use the abbreviation
A vector
Symbols in item equations
The following tables contains the common notation General coordinates are:
python name (or description)
|
symbol
|
description
|
---|---|---|
displacement coordinates (ODE2)
|
vector of
|
|
rotation coordinates (ODE2)
|
vector of
|
|
coordinates (ODE1)
|
vector of
|
|
algebraic coordinates
|
vector of
|
|
Lagrange multipliers
|
vector of
|
|
data coordinates
|
vector of
|
The following parameters represent possible OutputVariable (list is not complete):
python name
|
symbol
|
description
|
---|---|---|
Coordinate
|
||
Coordinate_t
|
time derivative of coordinate vector
|
|
Displacement
|
global displacement vector with 3 displacement coordinates
|
|
Rotation
|
vector with 3 components of the Euler angles in xyz-sequence (
|
|
Rotation (alt.)
|
vector of rotation parameters (e.g., Euler parameters, Tait Bryan angles, …) with
|
|
Identity matrix
|
the identity matrix, very often
|
|
Identity transformation
|
converts body-fixed into global coordinates, e.g.,
|
|
RotationMatrix
|
a 3D rotation matrix, which transforms local (e.g., body
|
|
RotationMatrixX
|
rotation matrix for rotation around
|
|
RotationMatrixY
|
rotation matrix for rotation around
|
|
RotationMatrixZ
|
rotation matrix for rotation around
|
|
Position
|
global position vector with 3 position coordinates
|
|
Velocity
|
global velocity vector with 3 displacement coordinates
|
|
AngularVelocity
|
global angular velocity vector with
|
|
Acceleration
|
global acceleration vector with 3 displacement coordinates
|
|
AngularAcceleration
|
global angular acceleration vector with
|
|
VelocityLocal
|
local (body-fixed) velocity vector with 3 displacement coordinates
|
|
AngularVelocityLocal
|
local (body-fixed) angular velocity vector with
|
|
Force
|
vector of
|
|
Torque
|
vector of
|
The following table collects some typical input parameters for nodes, objects and markers:
python name
|
symbol
|
description
|
---|---|---|
referenceCoordinates
|
||
initialCoordinates
|
initial coordinates with generalized or mixed displacement/rotation quantities (can usually be set at initialization of nodes)
|
|
reference point
|
reference point of body, e.g., for rigid bodies or FFRF bodies, in any configuration; NOTE: for ANCF elements,
|
|
localPosition
|
local (body-fixed) position vector with 3 position coordinates
|