OST: 2010 Design Concept for an Automotive Control Arm
In this tutorial you will use OptiStruct's topology optimization functionality to create a design concept for an automotive control arm required to meet performance specifications.
 Objective
 Minimize volume.
 Constraints
 SUBCASE 1. Resultant displacement of the point where loading is applied must be less than 0.05mm.
 Design Variables
 Element density (and corresponding stiffness of the element) of each element in the design space.
Launch HyperMesh and Set the OptiStruct User Profile
Open the Model
Set Up the Model
Create the Material
Create the Property
Assign a Material and Property to the nondesign Component
Apply Loads and Boundary Conditions
Create Load Collectors
Apply Constraints
Apply Forces to the Brake, Corner and Pothole Loadcases
Create Load Steps
 In the Model Browser, rightclick and select from the context menu.
 For Name, enter Brake.
 Set Analysis type to linear static.

Define SPC.
 For SPC, click .
 In the Select Loadcol dialog, select SPC and click OK.

Define LOAD.
 For LOAD, click .
 In the Select Loadcol dialog, select Brake and click OK.

Repeat the above steps to create load steps named Corner and Pothole.
 For the Corner load step, set SPC to SPC and LOAD to Corner.
 For the Pothole load step, set SPC to SPC and LOAD to Pothole.
Set Up the Optimization
Create Topology Design Variables
 From the Analysis page, click optimization.
 Click topology.
 Select the create subpanel.
 In the desvar= field, enter design_prop.
 Set type: to PSOLID.
 Using the props selector, select design_prop.
 Click create.
 Click return.
Create Optimization Responses
 From the Analysis page, click optimization.
 Click Responses.

Create the volume response, which defines the volume fraction of the design
space.
 In the responses= field, enter vol.
 Below response type, select volume.
 Set regional selection to total and no regionid.
 Click create.

Create the displacement response.
 Click return to go back to the Optimization panel.
Create Constraints on Displacement Responses
 Click the Dconstraints panel.

Create the first constraint.
 In the constraint= field, enter constr1.
 Check the box next to upper bound, then enter 0.05.
 Click response= and select disp1.
 Using the loadsteps selector, select Brake.
 Click create.

Create the second constraint.
 In the constraint= field, enter constr2.
 Check the box next to upper bound, then enter 0.02.
 Click response= and select disp1.
 Using the loadsteps selector, select Corner.
 Click create.

Create the third constraint.
 In the constraint= field, enter constr3.
 Check the box next to upper bound, then enter 0.05.
 Click response= and select disp1.
 Using the loadsteps selector, select Pothole.
 Click create.
 Click return to go back to the Optimization panel.
Define the Objective Function
 Click the objective panel.
 Verify that min is selected.
 Click response= and select vol.
 Click create.
 Click return twice to exit the Optimization panel.
Check the Optimization Problem
 Is the optimization problem set up correctly?
 Refer to the Optimization Problem Parameters section.
 Is the objective function set up correctly?
 Refer to the Problem Parameters section.
 Are the constraints set up correctly?
 Refer to the Optimization Problem Parameters section.
 What is the recommended amount of RAM for an InCore solution?
 Refer to the Memory Estimation Information section.
 Is there enough disk space to run the optimization?
 Refer to the Disk Space Estimation Information section.
Run the Optimization
 carm_complete.res
 HyperMesh binary results file.
 carm_complete.HM.comp.cmf
 HyperMesh command file used to organize elements into components based on their density result values. This file is only used with OptiStruct topology optimization runs.
 carm_complete.out
 OptiStruct output file containing specific information on the file setup, the setup of the optimization problem, estimates for the amount of RAM and disk space required for the run, information for all optimization iterations, and compute time information. Review this file for warnings and errors that are flagged from processing the carm_complete.fem file.
 carm_complete.sh
 Shape file for the final iteration. It contains the material density, void size parameters and void orientation angle for each element in the analysis. This file may be used to restart a run.
 carm_complete.hgdata
 HyperGraph file containing data for the objective function, percent constraint violations, and constraint for each iteration.
 carm_complete.oss
 OSSmooth file with a default density threshold of 0.3. You may edit the parameters in the file to obtain the desired results.
 carm_complete.stat
 Contains information about the CPU time used for the complete run and also the breakup of the CPU time for reading the input deck, assembly, analysis, convergence, and so on.
 carm_complete.his_data
 The OptiStruct history file containing iteration number, objective function values and percent of constraint violation for each iteration.
 carm_complete.HM.ent.cmf
 HyperMesh command file used to organize elements into entity sets based on their density result values. This file is only used with OptiStruct topology optimization runs.
 carm_complete.html
 HTML report of the optimization, giving a summary of the problem formulation and the results from the final iteration.
View the Results
Element density results are output to the carm_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_complete_s#.h3d files, where # specifies the sub case ID.