**make_springs#

Description#

This command is supplied as a convenient means of adding spring elements to a mesh 1In Zebulon, 2 node springs are truss elements. 1 node elements are not drawn in Zmaster, and 2 node elements appear as lines.. In particular, one node springs which resist motion from the initial position can be added to nsets which is often a useful means of achieving stability in structures which are initially unstable for a quasi-static solution (e.g. soft springs added to a contact problem to allow a solution before contact begins).

Syntax#

**make_springs spring-type  new-elset \(~\,\) [ *connect_points vector1  vector2 ] \(~\,\) [ *connect_nodes node1  node2 ] \(~\,\) [ *nset nset-name ] \(~\,\) [ *nset_pair nset1  nset2 ] \(~\,\) [ *load_pmpc_eqn file-name ] \(~\,\) [ *proximity prox-val ] \(~\,\) [ *start_ele_id id-val ]

The algorithm checks the spring geometry whether is is a one or two node spring, and uses the given options valid for that spring geometry.

*connect_points

used for 2 node elements, this command will link the two nodes closest to the given coordinates with a spring. The command may be given as many times as required.

*connect_nodes

used for 2 node springs, connecting by node id number rather than position. The command may be repeated.

*nset

used for 1 node springs. Springs of the new set will be attached to each node contained in the node set.

*nset_pair

Join nodes between the two sets with a 2 node spring.

*proximity

sets the algorithm to do a “proximity matching” between the two given nsets (thus *nset_pair must be used). For each node of the 1st nset the closest node at most prox-val away is linked up. So not all nodes in the 1st nset are required to be attached to springs, and each will have only one spring attached. The 2nd nset may however have multiple springs attached to one node.

*start_ele_id

uses the given id number as the starting number for the new spring elements.

Examples#

Example 1#

A simple example adding one node springs follows.

**nset spring_set
 *nodes
        % Bolts, nuts (horiz)
        136 164 163    43 70 38
        633 609 610    637 638 661

        % bolts (vert)
        1622 1623 1635 1620
        1686 1688 1699 1700
**make_springs l3d1 SPR
 *nset spring_set

Example 2#

Here specific locations are connected with 2 node springs.

**make_springs l2d2 springs
 *connect_points (0. 0. 0.) (1. 1. 1.)
 *connect_nodes  25  341

Example 3#

The last example uses proximity matching for frontal renumbering across a discontinuous mesh. The spring connectors are deleted right after doing the renumbering.

****mesher
 ***shell Zrun -B make_springs_renum
 ***mesh make_springs_renum
  **open make_springs_renum.geof
  **make_springs l2d2 springs
   *nset_pair face_outside face_inside
   *proximity 8.5
  **renumbering frontal_only
  **delete_elset springs
****return