OS-T: 2060 Symmetry and Draw Direction Constraints Applied Simultaneously

In this tutorial you will perform a topology optimization on an automotive control arm with the simultaneous application of symmetry and draw direction constraints.

Before you begin, copy the file(s) used in this tutorial to your working directory.
This tutorial uses the same optimization problem considered in OS-T: 2010 Design Concept for an Automotive Control Arm, except that a refined mesh will be used in order to better capture the effect of applying symmetric and draw manufacturing constraints simultaneously. The finite element mesh of the structural model containing the designable (blue) and the non-designable (red) regions, along with the loads and constraints applied.
Figure 1.

2060_model
The optimization problem is stated as:
Objective
Minimize volume.
Constraints
SUBCASE 1: The resultant displacement of the point where loading is applied must be less than 0.05 mm.
SUBCASE 2: The resultant displacement of the point where loading is applied must be less than 0.02 mm.
SUBCASE 3: The resultant displacement of the point where loading is applied must be less than 0.04 mm.
Design Variables
Element density.

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.

Import the Model

  1. Click File > Import > Solver Deck.
    An Import tab is added to your tab menu.
  2. For the File type, select OptiStruct.
  3. Select the Files icon files_panel.
    A Select OptiStruct file browser opens.
  4. Select the carm_draw_symm.fem file you saved to your working directory.
  5. Click Open.
  6. Click Import, then click Close to close the Import tab.

Set Up the Optimization

Define the Symmetry and Draw Direction Manufacturing Constraints

  1. From Analysis page, click the optimization panel.
  2. Click the topology panel.
  3. Defining minimum member size.
    1. Click review and select solid.
    2. Select the parameters subpanel.
    3. Toggle minmemb off to mindim, and enter 16.0.
      This forces the diameter or thickness of any structural member to be higher than 16 mm; if this is not user-defined, OptiStruct automatically selects a minimum member size based on the average mesh size (if a manufacturing constraint is selected).
      Figure 2.

      2060_parameters_subpanel
    4. Click update to confirm the minimum member size set up.
  4. Defining the draw direction.
    1. Select the draw subpanel.
    2. Set draw type to single.
    3. Using the anchor node and first node selectors, select the nodes indicated in Figure 3.
      Together, these two nodes define a vector in the positive Z direction. This defines that the die draw direction is along the positive Z direction.
      Figure 3.


    4. Using the obstacle: props selector, select the nondesign property.
  5. Define the symmetry constraint.
    1. Select the pattern grouping subpanel.
    2. Set the pattern type to 1-pln sym.
    3. Click anchor node, and enter 1 in the id= field.
      The node with the ID of 1 is selected.
    4. Click first node, and enter 2 in the id= field.
      The node with the ID of 2 is selected.
    5. Click update.
      Together, these two nodes define a vector in the negative Z direction. Hence, the symmetry plane is defined as the plane perpendicular to the Z-axis (which is the same as the Y-Z plane), and passing through the anchor node.
  6. Click return twice to go back to the Analysis page.

Run the Optimization

  1. From the Analysis page, click OptiStruct.
  2. Click save as.
  3. In the Save As dialog, specify location to write the OptiStruct model file and enter carm_draw_symm_complete for filename.
    For OptiStruct input decks, .fem is the recommended extension.
  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 optimization.
  7. Toggle memory options to upper limit in Mb and enter 2000.
  8. Click OptiStruct to run the optimization.
    The following message appears in the window at the completion of the job:
    OPTIMIZATION HAS CONVERGED.
    FEASIBLE DESIGN (ALL CONSTRAINTS SATISFIED).
    OptiStruct also reports error messages if any exist. The file carm_draw_symm_complete.out can be opened in a text editor to find details regarding any errors. This file is written to the same directory as the .fem file.
  9. Click Close.

View the Results

Element density results are output to the carm_draw_symm_complete_des.h3d file from OptiStruct for all iterations. In addition, Displacement and Stress results are output for each subcase for the first and last iterations by default into carm_draw_symm_complete_s#.h3d files, where # specifies the sub case ID.

Review the Contour Plot of the Density Results

It is helpful to view the deformed shape of a model to determine if the boundary conditions are defined correctly, and also to find out if the model is deforming as expected. The analysis results are available in pages 2, 3, and 4. The optimization iteration results (Element Densities) are loaded in the first page.
  1. From the OptiStruct panel, click HyperView.
    HyperView launches inside of HyperMesh Desktop, and all three .h3d files are loaded in a different page.
  2. In the top, right of the application, click pagePrevious-24 to return to the Design History page, indicating that the results correspond to optimization iterations.
  3. From the Results toolbar, click resultsContour-24 to open the Contour panel.
  4. Verify that the Result type is set to Element Densities[s] and Density.
    This should be the only result type in the carm_draw_symm_complete_des.h3d file.
  5. Set the Averaging method to Simple.
  6. Click Apply to display the density contour.
    The contour is all blue because the results are on the first design step or Iteration 0.
  7. In the Results Browser, select the last iteration listed.
    Each element of the model is assigned a legend color, indicating the density of each element for the selected iteration.
    Figure 4.

    2060_contour_plot

View an Iso Value Plot of Element Densities

An Iso Value plot provides the information about the element density. Iso Value retains all of the elements at and above a certain density threshold. Pick the density threshold providing the structure that suits your needs.
  1. From the Results toolbar, click resultsIso-24 to open the Iso Value panel.
  2. Set the Result type to Element Densities.
  3. Click Apply.
    An Iso Plot displays.
  4. Change the density threshold.
    • In the Current value field, enter 0.2.
    • Under Current value, move the slider.
    When you update the density threshold, the Iso value displayed in the modeling window updates interactively. Use this tool to get a better look at the material layout and the load paths from OptiStruct.
    The parts of the model with densities greater than the specified value of 0.2 display.
    Figure 5. Iso Value Plot of Element Densities

    2060_iso_value_plot
Review questions:
Have most of your elements converged to a density close to 1 or 0?
If there are many elements with intermediate densities, the DISCRETE parameter may need to be adjusted. The DISCRETE parameter (set in the opti control panel on the Optimization panel) can be used to push elements with intermediate densities toward 1 or 0, so that a more discrete structure is given.
In this model, refining the mesh should provide a more discrete solution; however, for the purposes of this tutorial, the current mesh and results are sufficient.
Regions that need reinforcement tend towards a density of 1.0. Areas that do not need reinforcement tend towards a density of 0.0.
Is the max= field showing 1.0e+00?
In this case, it is.
If it is not, the optimization has not progressed far enough. Allow more iterations and/or decrease the OBJTOL parameter (also set in the opti control panel).
If adjusting the discrete parameter, refining the mesh, and/or decreasing the objective tolerance does not yield a more discrete solution (none of the elements progress to a density value of 1.0), review the set up of the optimization problem. Some of the defined constraints may not be attainable for the given objective function (or vice versa).
Has the volume been minimized for the given constraints?
Have the displacement constraints been met?