D3PLOT 22.1

REFERENCE_NODES Calculating Results with Respect to One or Three Nodes

REFERENCE_NODES Calculating Results with Respect to One or Three Nodes

FIX_NODE and SHIFT_DEFORMED above affect only how the current image is displayed, they do not change the computed values which are contoured or reported.

REFERENCE_NODES , on the other hand, does not affect the display at all, rather it modified the values that are computed to make them relative to those at the nodes chosen. This feature allows intrusion or relative deformation to be contoured. Two mutually exclusive options are available:

  • Single node : Displacement, Velocity and Acceleration values are reported relative to that node.
  • Three nodes : Displacement only is reported relative to node 1, in the coordinate system formed by N1N2N3.

In the Three nodes case results can be reported in either the global or the local (N1N2N3) coordinate system.

The " Single " and " Three " node cases are mutually exclusive, you cannot have both active at one time.

Defining one or three nodes

Single Node

You pick a single node <N 0 >.

Displacements, Velocities and Accelerations are calculated with respect to the value at that node. For example if V is a velocity vector:

V' N = V N - V 0

V' N = modified velocity vector at node <n>
V N = original velocity vector at node <n>
V 0 = current velocity vector at reference node <N 0 >.

Three Nodes

You pick three nodes <N 1 ,N 2 ,N 3 >. N 1 is the origin, and the nodes form a right-handed coordinate as for SHIFT_DEFORMED above.

Displacements (only) are calculated with respect to this system such that for displacement vector D:

D' N = R . [D N - D O ]

D' N = modified displacement vector at node <n>
D N = original displacement vector at node <n>
D 0 = current displacement vector at reference node <N 0 >
R = the rotation matrix to transform back to the selected coordinate system

Using REFERENCE_NODE (single node case)

Here is an example showing how a single REFERENCE_NODE might be used.

In this case we have a dummy in a sled test, as above, where a crash is simulated by pulling the sled backwards. However what we are interested in is the velocity of the dummy relative to the sled, since in a real crash the sled (= car) would be more or less stationary, while the dummy would still be travelling forwards.

We can achieve this by picking a node on the (rigid) sled as our reference node, and displaying all velocities relative to that.

Here is the "raw" image, showing that the sled is moving rapidly backwards.



REFERENCE_NODE now switched on .

Here is the revised velocity plot now that the REFERENCE_NODE has been switched on.

The velocities of the sled at node 9018 have been subtracted from all velocities, making those on the dummy effectively relative to the sled.

(Should we wish to fix the sled in model space, and to draw the deformed shape of the dummy relative to that throughout an animation, we could also use FIXED_NODE. However the two operations are independent and do not have to be combined.)


Using REFERENCE_NODES (3 node case)

The following example shows how REFERENCE_NODES (3 nodes) works, and how it is related to SHIFT_DEFORMED.

Here is the basic model.

It is a crush tube shown in its final state, with the undeformed geometry overlaid.

The loading platens at each end are pushed together, but they are free to rotate. The problem is to determine the maximum "end to end" deformation.

It is clear from this plot that the blue end moves and rotates, and this makes it difficult to determine the deformation relative to that end. The sequence below shows how to overcome this problem.

Three nodes (N1, N2, N3) have been chosen on the loading platen at the blue end, and they form a local coordinate system as shown.

SHIFT_DEFORMED turned on .

This is the same model at the same state, but now SHIFT_DEFORMED has been switched on, and the model has been rotated back to the coordinate system formed by N1N2N3, translated back to origin at N1.

Note that the rotation and translation are back to the undeformed locations of nodes N1 to N3.

( This step is not necessary in order to calculate data relative to reference nodes, but it makes the example much clearer.)

Contours of X displacement now shown.

This plot shows global X displacement, which is approximately along the length of the tube.

However because both ends of the tube have rotated it is difficult to estimate the movement of the two ends relative to one another. We can see that it approximately 177.66 + 36.74 = 214.4, but this may not be good enough.

In order to obtain a more accurate value it is necessary to express the displacements in terms of the coordinate system formed by N1N2N3.

Remember: SHIFT_DEFORMED only affects the deformations drawn, it has no effect on the values that are contoured or written out.

REFERENCE_NODES turned on, and contours of local Z' displacement shown.

By switching on REFERENCE_NODES, and selecting output in the local system, we can now plot displacements in the local Z' direction relative to the left hand end.

It is now clear that the actual peak movement at end two is actually 227.23, somewhat higher than our estimate from the approximate global X plot above.

This technique is very useful when calculating "knock-back" and "intrusion" displacements at particular locations in a model.

SHIFT_DEFORMED turned off, but REFERENCE_NODES left on.

This plot demonstrates that while SHIFT_DEFORMED and REFERENCE_NODES are related, and share the same nodes, they can act independently.

SHIFT_DEFORMED has been turned off, so the deformed shape is now the "true" shape, but the contours are still expressed in the local Z' of the axis system defined by N1N2N3.

This is a harder plot to understand, because the axis system of the plotted results is not that easy to discern.

Reference node settings in WRITE and XY_DATA output


By default the scalar output of nodal coordinates in WRITE and XY_DATA will not take into account any reference node values, but selecting the option to use reference values causes them to be considered, giving numerical values equivalent to those that appear in the plots.

  • For a single node coordinates will be in the global cartesian system with the coordinates of node N1 subtracted, ie the effective origin [0,0,0] is at the coordinates of node N1 at the reference state.

  • For three nodes the coordinates will be reported in the local system N1N2N3, with the effective origin [0,0,0] offset to coordinates of N1 at the reference state.

Additionally, there is an option to WRITE coordinates as [undeformed] + [displacement in local system].

WARNING :

Since reference nodes can be defined on a "per-window" basis, but WRITE and XY_DATA are "per-model", there is a potential ambiguity if multiple windows on a model have been defined as having different reference nodes - which window's settings will be used for the written/graphical output?

The answer is those of the most recently drawn window, which is not easy to determine reliably. Therefore if you are planning to use this option you are strongly advised:


either :
Only to have a single window open on the model
or :
If you have multiple windows open, to ensure that all of them have the same reference node settings.