next up previous contents
Next: Electric Node Up: Nodes Previous: Nodes   Contents

Subsections


Structural Node

The 6 dof structural node can be static, dynamic, modal or dummy.


Static Node

The static keyword means no inertia is related to that node, so it must be appropriately constrained or attached to elastic elements. Static nodes are useful when there is no need to apply inertia to them, thus saving 6 degrees of freedom.


Dynamic Node

The dynamic keyword means inertia can be attached to the node, so it provides linear and angular momenta degrees of freedom, and automatically generates the so-called automatic structural elements.


Modal Node

The modal node is basically a regular dynamic node that must be used to describe the rigid reference motion of a modal joint. See Section 8.16.31 for further details.


Syntax

    <additional_args> ::= { , static | dynamic | modal } ,
        (Vec3)              <absolute_position> ,
        (OrientationMatrix) <absolute_orientation_matrix> ,
            [ orientation description , <orientation_description> , ]
        (Vec3)              <absolute_velocity> ,
        (Vec3)              <absolute_angular_velocity>
        [ , assembly
          , (scalar) <position_initial_stiffness>
          , (scalar) <velocity_initial_stiffness>
          , (flag)   <omega_rotates?> ]
    <orientation_description> ::=
        { euler123 | euler313 | euler321
             | orientation vector | orientation matrix }
The omega_rotates parameter determines whether the initial angular velocity should follow or not the node as it is rotated by the initial assembly procedure; it may assume the values yes/no or 0/nonzero.

The stiffness parameters, and the omega_rotates flag, override the default values. They are optional, but they must be supplied all together if at least one is to be input.
The omega_rotates flag can take values yes or no; a numerical value of 0 (no) or 1 (yes) is supported for backwards compatibility, but its use is deprecated.

The dynamic and the modal node types allow the optional output keyword accelerations after the standard node output parameters:

    <extra_arglist> ::= accelerations
to enable the output of the linear and angular accelerations of the node. Since this is a postprocessing, it is not required by the regular analysis, so it should be enabled only when strictly required.

Also note that accelerations may be inaccurate, since they are reconstructed from the momentum and the momenta moment derivatives through the inertia associated to the node.

Also dummy nodes allow the keyword accelerations, but honor it only if provided by the nodes they are related to.

Accelerations output can be controlled by means of the default output statement.

If the static model type is used in the control data block, all dynamic structural nodes are actually treated as static. This is a shortcut to ease running static analyses without the need to modify each node of a dynamic model.


Dummy Node

The dummy structural node has been added to ease the visualization of the kinematics of arbitrary points of the system. It does not provide any degrees of freedom, and it must be attached to another node.

Two dummy structural node types are available.

    <additional_args> ::= , dummy , <base_node> , <type> , <dummy_node_data>

Dummy nodes take the label of the base_node they are attached to, followed by the type of dummy node, possibly followed by specific data. The following dummy types are available:

Example.

    set: real Omega = 1.;
    structural: 1, static, null, eye, null, 0.,0.,Omega;
    structural: 1000, dummy, 1, offset, 1.,0.,0., eye;
    structural: 1001, dummy, 1, relative frame, 1000;
    structural: 2000, dynamic,
        0.,0.,1.,
        1, 1.,0.,0., 2, 0.,0.,1.,
        null,
        null,
        accelerations;


Output.

Structural nodes generate two kinds of output files:

The .mov Output File.
The first refers to the kinematics of the node; its extension is .mov, and for each time step it contains one row for each node whose output is required. The rows contain:

1 the label of the node
2-4 the three components of the position of the node
5-7 the three Euler angles that define the orientation of the node
8-10 the three components of the velocity of the node
11-13 the three components of the angular velocity of the node
14-16 the three components of the linear acceleration of the dynamic nodes (optional)
17-19 the three components of the angular acceleration of the dynamic nodes (optional)


All the quantities are expressed in the global frame, except for the dummy relative frame node type, whose quantities are, by definition, in the relative frame.

There exist two variants of this output. The output of the orientation can be modified by requesting either the three components of the Euler vector, or the nine components of the orientation matrix.

When the Euler vector is requested, columns 5 to 7 contain its components. Beware that it is not possible to discriminate between the original output and this format without knowing what output type was requested.

When the orientation matrix is requested, columns 5 to 13 contains the elements of the matrix, written row-wise, that is: r11, r12, r13, r21, ..., r33. Note that in this case the total column count, if accelerations are not requested, corresponds to that of a structural node with optional accelerations, so it might be hard to discriminate as well.

This ambiguity is resolved when results are output in NetCDF format. See Section A.1.3 for details.

Note: actually, the angles denoted as ``Euler angles'' are the three angles that describe a rotation made of a sequence of three steps: first, a rotation about global axis 1, followed by a rotation about axis 2 of the frame resulting from the previous rotation, concluded by a rotation about axis 3 of the frame resulting from the two previous rotations. To consistently transform this set of parameters into some other representation, see the tools eu2rot(1), rot2eu(1), rot2eup(1), rot2phi(1). The functions that compute the relationship between an orientation matrix and the set of three angles and vice versa are MatR2EulerAngles() and EulerAngles2MatR(), in matvec3.h.

The .ine Output File.
The second output file refers only to dynamic nodes, and contains their inertia; its extension is .ine. For each time step, it contains information about the inertia of all the nodes whose output is required. Notice that more than one inertia body can be attached to one node; the information in this file refers to the sum of all the inertia related to the node.

The rows contain:

1 the label of the node
2-4 item the three components of the momentum in the absolute reference frame
5-7 item the three components of the momenta moment in the absolute reference frame, with respect to the coordinates of the node, thus to a moving frame
8-10 the three components of the derivative of the momentum
11-13 the three components of the derivative of the momentum moment



Private Data.

The following data is available:
all structural nodes:
1.
"X[1]" position in global direction 1
2.
"X[2]" position in global direction 2
3.
"X[3]" position in global direction 3
4.
"x[1]" position in direction 1, in the reference frame of the node
5.
"x[2]" position in direction 2, in the reference frame of the node
6.
"x[3]" position in direction 3, in the reference frame of the node
7.
"Phi[1]" orientation vector in global direction 1
8.
"Phi[2]" orientation vector in global direction 2
9.
"Phi[3]" orientation vector in global direction 3
10.
"XP[1]" velocity in global direction 1
11.
"XP[2]" velocity in global direction 2
12.
"XP[3]" velocity in global direction 3
13.
"xP[1]" velocity in direction 1, in the reference frame of the node
14.
"xP[2]" velocity in direction 2, in the reference frame of the node
15.
"xP[3]" velocity in direction 3, in the reference frame of the node
16.
"Omega[1]" angular velocity in global direction 1
17.
"Omega[2]" angular velocity in global direction 2
18.
"Omega[3]" angular velocity in global direction 3
19.
"omega[1]" angular velocity in direction 1, in the reference frame of the node
20.
"omega[2]" angular velocity in direction 2, in the reference frame of the node
21.
"omega[3]" angular velocity in direction 3, in the reference frame of the node
22.
"E[1]" Cardan angle 1 (about global direction 1)
23.
"E[2]" Cardan angle 2 (about local direction 2)
24.
"E[3]" Cardan angle 3 (about local direction 3)
25.
"E313[1]" Cardan angle 1 (about global direction 3)
26.
"E313[2]" Cardan angle 2 (about local direction 1)
27.
"E313[3]" Cardan angle 3 (about local direction 3)
28.
"E321[1]" Cardan angle 1 (about global direction 3)
29.
"E321[2]" Cardan angle 2 (about local direction 2)
30.
"E321[3]" Cardan angle 3 (about local direction 1)
31.
"PE[0]" Euler parameter 0
32.
"PE[1]" Euler parameter 1
33.
"PE[2]" Euler parameter 2
34.
"PE[3]" Euler parameter 3
dynamic nodes only:
35.
"XPP[1]" acceleration in global direction 1
36.
"XPP[2]" acceleration in global direction 2
37.
"XPP[3]" acceleration in global direction 3
38.
"xPP[1]" acceleration in direction 1, in the reference frame of the node
39.
"xPP[2]" acceleration in direction 2, in the reference frame of the node
40.
"xPP[3]" acceleration in direction 3, in the reference frame of the node
41.
"OmegaP[1]" angular acceleration in global direction 1
42.
"OmegaP[2]" angular acceleration in global direction 2
43.
"OmegaP[3]" angular acceleration in global direction 3
44.
"omegaP[1]" angular acceleration in direction 1, in the reference frame of the node
45.
"omegaP[2]" angular acceleration in direction 2, in the reference frame of the node
46.
"omegaP[3]" angular acceleration in direction 3, in the reference frame of the node

Note: Euler parameters actually do not take into account the whole orientation of a node, since they are post-processed from the orientation matrix. As a consequence, they only parametrize the minimum norm orientation that yields the current orientation matrix of the node. The same applies to the orientation vector $ \varphi$.

Note: if accelerations are requested using the string form, their computation is enabled even if it was not explicitly enabled when the node was instantiated. However, if the index form is used, their computation must have already been explicitly enabled.

Note: dummy nodes based on dynamic nodes inherit the capability to provide access to linear and angular accelerations.


next up previous contents
Next: Electric Node Up: Nodes Previous: Nodes   Contents
MBDyn: MultiBody Dynamics Software
Document version: 1.3.13
Last update: Wed Mar 3, 2010
Maintained by mbdyn@aero.polimi.it