OS-T: 1540 Compression of Helical Spring using Self-Contact

This tutorial explains how to use the self-contact to simulate the spring compression.

Before you begin, copy the file(s) used in this tutorial to your working directory.


Figure 1. FE Model
The following steps are included:
  • Import the model into HyperMesh
  • Set up self-contact.
  • Set up nonlinear analysis
  • View the results in HyperView

Launch HyperMesh and Set the OptiStruct User Profile

  1. Launch HyperMesh.
    The User Profile dialog opens.
  2. Select OptiStruct and click OK.
    This loads the user profile. It includes the appropriate template, macro menu, and import reader, paring down the functionality of HyperMesh to what is relevant for generating models for OptiStruct.

Open the Model

  1. Click File > Open > Model.
  2. Select the spring_selfcontact.hm file you saved to your working directory.
  3. Click Open.
    The spring_selfcontact.hm database is loaded into the current HyperMesh session, replacing any existing data. The database contains the spring model with properties assigned to it.

Set Up the Model

Create Set Segments

The set segments will be defined, which will be used later to define the contact groups.

  1. In the Model Browser, right-click and select Create > Set Segment from the context menu.
  2. For Name, enter Secondary.
  3. Click Entity IDs to select the elements on the spring's surface, except the cross-sectional ends.
  4. From the selection panel, select faces from the second drop-down menu.
  5. Select all the faces in the modeling window.


    Figure 2. Select Faces


    Figure 3. Create Set Segments

Create Contact Groups

Here the contact groups will be defined.

  1. In the Model Browser, right-click and select Create > Group from the context menu.
  2. For Name, enter self_contact.
  3. For Card Image, select CONTACT.


    Figure 4.
  4. For Secondary Entity IDs, select Secondary.
  5. For DISCRET, select S2S (Surface to Surface).
  6. For TRACK, select CONSLI.

Apply Loads and Boundary Conditions

In the following steps, you will constrain the nodes 36945 and 36946 (Nodes corresponding to RBE2) in all degrees of freedom and a displacement of -52mm (-ve for compression) is applied on the node 36945. Other load collectors required for Nonlinear Analysis are also defined.

Create SPCS Load Collector

  1. In the Model Browser, right-click and select Create > Load Collector from the context menu.
    A default load collector displays in the Entity Editor.
  2. For Name, enter spcs.
  3. Click BCs > Create > Constraints to open the Constraints panel.
  4. Select the nodes 36945 and nodes on the entire bottom cross sectional end of the spring, and constrain them in all DOF’s.


    Figure 5. Constrain All DOFs of Selected Nodes
    Figure 6. Select Nodes
  5. Click Create.
    This applies the constraints to the selected nodes.

Create Displacement Load Collector

  1. In the Model Browser, right-click and select Create > Load Collector from the context menu.
    A default load collector displays in the Entity Editor.
  2. For Name, enter Displacement.
  3. Click BCs > Create > Constraints to open the Constraints panel.
  4. Select the node 36945.
  5. For load types, enter SPCD.
  6. Select dof2, enter a value of -52.


    Figure 7. Apply Displacement on Node 36945
  7. Click return.

Define CNTSTB Load Collector

  1. In the Model Browser, right-click and select Create > Load Collector from the context menu.
    A default load collector displays in the Entity Editor.
  2. For Name, enter cntstb.
  3. Click Color and select a color from the palette.
  4. For Card Image, select CNTSTB from the drop-down menu.
  5. Click Close.

Create NLPARM Load Step Input

  1. In the Model Browser, right-click and select Create > Load Step Inputs.
  2. For Name, enter NLPARM.
  3. Click Color and select a color from the color palette.
  4. For Config type, select Nonlinear Parameters.
    Type default is NLPARM.

Create NLADAPT Load Step Input

  1. In the Model Browser, right-click and select Create > Load Step Inputs.
  2. For Name, enter NLADAPT.
  3. For Config type, select Time step Parameters.
  4. For Type, the default is NLADAPT.
  5. For NCUTS, enter 10.


    Figure 8. Create NLADAPT Card

Create NLOUT Load Step Input

  1. In the Model Browser, right-click and select Create > Load Step Inputs.
  2. For Name, enter NLOUT.
  3. For Config type, select Output Parameters.
  4. For Type, the default is NLOUT.
  5. For NINT, enter 20.
  6. Activate SVNONCNV.


    Figure 9. Create NLOUT Card

Define Output Control Parameters

  1. From the Analysis page, select control cards.
  2. Click on GLOBAL_OUTPUT_REQUEST.
  3. Below CONTF, DISPLACEMENT, SPCF, and STRESS, set Option to Yes and select H3D for Output format.
  4. Click return twice to go to the main menu.

Activate Nonlinear Monitoring

  1. From the Anaysis page, select Control Cards.
  2. For Control Cards, select PARAM.
  3. For NLMON, select DISP.

Create Load Steps

  1. In the Model Browser, right-click and select Create > Load Step.
    A default load step input displays in the Entity Editor.
  2. For Name, enter SelfContact.
  3. For Analysis Type, select Non-linear static from the drop-down menu.
  4. In the SPC Select Loadcol dialog, select spcs from the list of load collectors and click OK.
    This selects the boundary conditions created above.
  5. In the LOAD Select Loadcol dialog, select Displacement from the list of load collectors and click OK.
    This selects the boundary conditions created above.
  6. For CNTSTB, select cntstb from the list of load collectors and click OK.
  7. Similarly select the NLPARM (LGDISP), NLADAPT, and NLOUT and assign respective load step inputs.

Submit the Job

  1. From the Analysis page, click the OptiStruct panel.

    OS_1000_13_17
    Figure 10. Accessing the OptiStruct Panel
  2. Click save as.
  3. In the Save As dialog, specify location to write the OptiStruct model file and enter spring_selfcontact.hm for filename.
  4. Click Save.
    The input file field displays the filename and location specified in the Save As dialog.
  5. Set the export options toggle to all.
  6. Set the run options toggle to analysis.
  7. Click OptiStruct to submit the job.

View the Results

  1. Once you receive the message Process completed successfully in the command window, click HyperView.
  2. Open the results and plot the displacement and the von Mises stress contour at 100% load.
  3. On the toolbar, click resultsContour-16 (Contour).
  4. Under Result type, from the first drop-down menu, select Element Stresses (2D & 3D)(t).
  5. Under Result type, from the second drop-down menu, select vonMises.


    Figure 11. Contour Panel
  6. Verify that the fields in the Contour panel match those in Figure 11 and click Apply.


    Figure 12. Displacement and Stress Result for the Analysis