The extrusion constraints method allows you to perform an optimization problem with extrusion constraints to obtain a constant cross section along a given path, particularly in the case of parts manufactured through an extrusion process. By using extrusion manufacturing constraints in topology optimization, constant cross-section designs can be obtained for solid models – regardless of the initial mesh, boundary conditions, or loads.
This tutorial show the steps involved in defining topology optimization over a curved beam, simulating a rail, over which a vehicle is moving. Both ends of the beam are supported. A point load is applied over the length of the rail in seven independent load cases, simulating the movement of the vehicle. The rail should be manufactured through extrusion. The steps taken to define the topology design space, the extrusion-manufacturing constraints and the optimization parameters (responses, objective and constraints) using HyperMesh are shown.
In this tutorial, you will perform topology optimization on a curved beam so that the extruded rail will be stiffer and have less material. The optimization problem is stated as:
Objective:
|
Minimize weighted compliance
|
Constraints:
|
Volume fraction < 0.3
|
Design variables:
|
The density of each element in the design space
|
The DTPL (Design Variable for Topology Optimization) card is used for this optimization.
The finite element mesh of the curved beam is shown in the following.
Finite element mesh of the curved beam showing loads and boundary conditions
The exercises covered in this tutorial include:
• | Setting up Extrusion Constraints in HyperMesh |
• | Setting up the optimization problem |
• | Post-processing the optimization results with extrusion constraints |
Exercise
Step 1: Launch HyperMesh, Set the User Profile, and Retrieve a File
1. | Launch HyperMesh Desktop. |
2. | Click the Import Solver Deck icon . An Import tab is added to the tab menu. |
3. | Select the rail_complete.fem file you saved to your working directory from the optistruct.zip file. Refer to Accessing the Model Files. |
Setting Up Extrusion Constraints in HyperMesh
Step 2: Create the Topology Design Variables
1. | From the Analysis page, enter the optimization panel. |
2. | Enter the topology panel. |
3. | Make sure the create subpanel is selected using the radio buttons on the left-hand side of the panel. |
4. | Click desvar=, enter design_solid, and press ENTER. |
5. | Click props , select new_solid from the list of props, and click select. |
7. | Click Create. A topology design space definition, design_solid, has been created. All elements organized in this design property collector are now included in the design space. |
8. | Click return twice to go back to the main menu. |
Step 3: Define Extrusion Problem and Extrusion Path
1. | From the Tool page, enter the numbers panel. |
2. | Click nodes and select by id. |
3. | Enter numbers 71559,70001 and press ENTER, check the display box, then click on. |
The numbers 71559 and 70001 should be displayed on the screen.
5. | From the Analysis page, enter optimization panel. |
7. | Make sure the extrusion subpanel is selected using the radio buttons on the left-hand side of the panel. |
8. | Double-click desvar = and select design_solid. |
9. | Switch the toggle to no twist. |
Extrusion constraints can be applied to domains characterized by non-twisted cross-sections or twisted cross-sections by using the NOTWIST or TWIST parameters, respectively.
10. | Select the primary path by selecting node list and clicking by path. |
It is necessary to define a ‘discrete’ extrusion path by entering a series of grids. The curve between these grids is then interpolated using parametric splines. The minimum amount of grids depends on the complexity of the extrusion path. Only two grids are required for a linear path, but it is recommended that at least 5-10 grids be used for more complex curves.
11. | First, select node 71559 and then select node 70001. |
Extrusion path definition
A line of nodes starting from 71559 and ending with node 70001 should be highlighted, indicating the extrusion path.
It is not required to select as many nodes to define the curve. This is an exercise to show that the nodes by path option can also be used.
13. | Click return to go back to the optimization panel. |
Setting Up the Optimization Problem
Step 4: Create the Volume Fraction and Weighted Compliance Response
1. | Enter the responses panel. |
2. | Click response = and enter volfrac. |
3. | Click on the switch below response type and select volumefrac from the pop-up menu. |
4. | Ensure the regional selection is set to total (this is the default). |
5. | Click create. A response, volfrac, is defined for the total volume of the model. |
6. | Click response = and enter wcomp1. |
7. | Click on the switch below response type and select weighted comp from the pop-up menu. |
8. | Click loadsteps and select step1, step2, step3, step4, step5, step6, and step7 from the extended entity selection menu that appears. |
10. | Click create. A response, wcomp1, is defined for the weighted compliance. |
11. | Click return to go back to the optimization panel. |
Step 5: Create Constraints on Volume Fraction Response
In this step, setting the upper and lower bound constraint criteria for this analysis is demonstrated.
Constraint set up
1. | Enter the dconstraints panel. |
2. | Click constraint= and enter constr1. |
3. | Check the box for upper bound only. |
4. | Click upper bound= and enter 0.3. |
5. | Select response= and set it to volfrac. |
7. | Click return to go to the main menu. |
Step 6: Define the Objective
1. | Enter the objective panel. |
2. | The switch on the left should be set to min. |
3. | Click response= and select wcomp1. |
5. | Click return to exit the optimization panel. |
Step 7: Submit the Job to OptiStruct
1. | From the Analysis page, select the OptiStruct panel. |
2. | Click save as following the input file: field. |
3. | Select the directory where you would like to write the OptiStruct model file and enter the name for the model, rail_complete_extrusion.fem, in the File name: field. .fem is the suggested extension for OptiStruct input decks. |
The name and location of the rail_complete_extrusion.fem file displays in the input file: field.
5. | Make sure the memory options: toggle and set upper limit in Mb = to 2000 Mb. |
6. | Click the run options: switch and select optimization. |
7. | Make sure the export options: toggle is set to all. |
8. | Click OptiStruct. This launches the OptiStruct job. |
If the job was successful, new results files can be seen in the directory where the OptiStruct model file was written. The rail_complete_extrusion.out file is a good place to look for error messages that will help to debug the input deck if any errors are present. Solving time for this extrusion constraint problem takes about 2 hours.
Post-processing the Optimization Results with Extrusion Constraints
Step 8: Load Results File and Post-process
1. | Click HyperView to launch a new HyperView window with the results from the optimization. |
2. | In the Subcase Selection section of the Results browser, change Iteration 0 which shows your results at the beginning of the optimization to the last iteration, as shown below, which has the final analysis results for this optimization. |
3. | Go to the Iso icon and set the Result type: to Element Densities. |
5. | Set Current Value: to 0.3. |
Isosurface plot of a curved beam rail layout of the topology optimization with extrusion constraints
As expected, the result with manufacturing extrusion constraints permits a constant cross section for the entire length of the model.
Step 9: View a Section Cut of the Extrusion Component
The Section Cut panel allows you to cut planar sections through a model. This is useful when you want to see details inside of a model.
1. | Go to the Section Cut panel on the View toolbar on the left side of the graphics area next to the Results browser. |
2. | Click Add to add a new section cut. |
3. | For Define plane:, select Y Axis. |
4. | Click Base to active it, and click on any corner at the center of the model. |
6. | Move the slider bar below Y Axis to scroll though the model. |
7. | Under Display options:, use the slider bar next to Width to change the Cross section width. |
Contour plot of a section cut on x-z plane of the curved beam.
As expected, the result with manufacturing extrusion constraints shows constant cross section through the length of the model.
See Also:
OptiStruct Tutorials