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

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



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 from the optistruct.zip file. Refer to Access the Model Files.
  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 contact surfaces 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 corresponding to the spring.
  4. From the selection panel, select add solid faces from the drop-down menu.
  5. Select all the faces corresponding to the faces.


    Figure 2. 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 Card Image, select CONTACT.
  3. For Name, enter Self Contact.
  4. For Selection Type, select Contact surfaces.
  5. For Secondary (SSID), select Self contact.
  6. For DISCRET, select S2S (Surface to Surface).

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 36946 and constrain them in all DOF’s.


    Figure 3. Constrain All DOFs of Selected 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 and and enter a value of -52.


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

Create NLPARM Load Collector

  1. In the Model Browser, right-click and select Create > Load Collector.
  2. For Name, enter NLPARM.
  3. Click Color and select a color from the color palette.
  4. For Card Image, select NLPARM from the drop-down menu.

Create NLADAPT Load Collector

  1. In the Model Browser, right-click and select Create > Load Collector.
  2. For Name, enter NLADAPT.
  3. For Card Image, select NLADAPT from the drop-down menu.
  4. For NCUTS, enter 10.


    Figure 5. Create NLADAPT Card
  5. In the Model Browser, right-click and select Create > Load Collector.
  6. For Name, enter NLADAPT2.
  7. For DTMAX, enter 0.025.
  8. For DTMIN, enter 1e-6.

Create NLOUT Load Collector

  1. In the Model Browser, right-click and select Create > Load Collector.
  2. For Name, enter NLOUT.
  3. For Card Image, select NLOUT from the drop-down menu.
  4. For NINT, enter 20.
  5. Activate SVNONCNV.


    Figure 6. 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 YES.

Create Load Steps

  1. In the Model Browser, right-click and select Create > Load Step.
    A default load collector displays in the Entity Editor.
  2. For Name, enter SelfContact.
  3. In the SPC Select Loadcol dialog, select SPC from the list of load collectors and click OK.
    This selects the boundary conditions created above.
  4. In the LOAD Select Loadcol dialog, select Displacement from the list of load collectors and click OK.
    This selects the boundary conditions created above.
  5. Similarly select the NLPARM (LGDISP), NLADAPT, and NLOUT and assign respective load collectors.

Submit the Job

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

    OS_1000_13_17
    Figure 7. 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 8. Contour Panel
  6. Verify that the fields in the Contour panel match those in Figure 8 and click Apply.


    Figure 9. Displacement and Stress Result for the Analysis