Products: Abaqus/Standard Abaqus/CAE
This example uses the Optimization module to optimize the design of an automotive control arm by reducing the volume of the control arm while maximizing its stiffness.
This example illustrates topology optimization of an automotive control arm. During a topology optimization, the material properties of the elements in the design area are modified (effectively removing elements from or adding elements to the Abaqus analysis) until the optimal solution is achieved. For more information, see “Topology optimization” in “Structural optimization: overview,” Section 13.1.1 of the Abaqus Analysis User's Guide.
The control arm model is a single orphan mesh part that was meshed with quadratic tetrahedral (C3D10) elements. The control arm is symmetric about the X–Y plane, and only one half of the model is studied.
The control arm is made of an elastic material with a Young's modulus of 210 GPa and a Poisson’s ratio of 0.3.
The center of the model is constrained to be symmetric about the Y–Z plane. The upper left and upper right ends of the control arm are outside the design area and are fixed in all three translation degrees of freedom. The lower bearing center is also outside the design area, and its translation is constrained along the z-direction.
The center node of the lower bearing is loaded with a concentrated force of 70000 N in the x-direction and –70000 N in the y-direction.
The topology optimization is configured as described in the following sections.
This example creates a topology optimization task that is governed by the condition-based optimization algorithm.
The design area of the model is the region that will be modified during the optimization, as shown in Figure 11.1.1–1. Some regions are excluded from the design area because they are required for fixtures and for applying loads. The material properties of the elements excluded from the design area remain unchanged.
A design response is created that calculates the sum of the strain energy over all the elements in the design area. A second design response calculates the volume of the design area.
Objective functions define the objective of the optimization. In this example a single objective function attempts to minimize the sum of the strain energy of the design area. Since compliance is defined as the sum of the strain energy, and stiffness is the reciprocal of compliance, the objective function is equivalent to maximizing the stiffness of the design area.
Optimization constraints constrain the optimization process from making changes to the topology of the model. Constraints must allow the optimization to arrive at a solution that is both feasible and acceptable. In this example a single constraint is created that specifies that the optimized model should contain 57% of the initial volume of the original control arm.
You can apply geometric restrictions to further constrain the topology optimization process to consider only designs that can be manufactured using standard techniques, such as casting or forging. The control arm is manufactured by forging. The demold control geometric restriction shown in Figure 11.1.1–1 ensures that the structure formed by the topology optimization can be removed from the forging die and does not contain undercuts. This example also introduces a frozen area geometric restriction to limit the material that is removed from the upper arm of the structure, as shown in Figure 11.1.1–2.
This example imports the model in the form of an orphan mesh from an input file. The input file contains the element sets that define the regions of the model that are used by the optimization, such as the design area and the frozen area. The example creates an optimization process with a global stop criterion of 17 design cycles.
A Python script is included that reproduces the model using the Abaqus Scripting Interface in Abaqus/CAE. The Python script (control_arm_topology_optimization.py) imports the input file (control_arm.inp) and builds the optimization model. The Python script can be run interactively or from the command line. Both the script and the input file must be available from your working directory.
When the script completes, you can use the Optimization module to review the topology optimization model that was created in Abaqus/CAE. To run the optimization, you can submit the optimization process from the Optimization Process Manager in the Job module. You can use the Optimization Process Manager to monitor the progression of the optimization and to view the results of the topology optimization in the Visualization module.
The results are available in the output database file created by the optimization process. The step contains 17 optimization iterations that correspond with the 17 design cycles of the optimization process. Figure 11.1.1–3 shows a history output plot of the strain energy and volume design responses over the 17 design cycles. The control arm is optimized such that the maximum stiffness is achieved while satisfying the specified target volume. Although the strain energy design response increases (the overall stiffness decreases) as the volume of the control arm is reduced, the optimized design achieves a topology with only 57% of the initial volume. Figure 11.1.1–4 shows how the topology optimization progressively removes material from the control arm while it seeks an optimized solution.
Python script to import the orphan mesh from the input file and create the topology optimization.
Input file to create the orphan mesh control arm and the element sets that are used by the optimization.