18.6.3 Configuring a shape optimization task

Shape optimization determines the displacement of each surface node in an effort to homogenize the stress on the surface and satisfy the objective function and any constraints. You can use the optimization task editor to customize various aspects of the shape optimization and to incorporate durability analysis into the optimization. To locate the editor, select TaskEditoptimization task name from the main menu bar. The default settings for shape tasks provide reasonable results across a variety of optimization models; and, in most cases, you do not need to modify the default settings.

The following topics are covered:

Configuring basic settings

During a shape optimization the Optimization module modifies the surface of your model. If the Optimization module modifies only the surface nodes without adjusting the inner nodes, the layer of surface elements will become distorted. Therefore, the results of the Abaqus analysis will no longer be reliable, and the quality of the optimization will suffer. To maintain the quality of the surface elements, the Optimization module applies mesh smoothing to selected regions, which adjusts the position of the inner nodes in relation to the surface nodes. For more information, see Applying mesh smoothing to a shape optimization” in “Structural optimization: overview, Section 13.1.1 of the Abaqus Analysis User's Guide.

The Optimization module can apply mesh smoothing only to triangular, quadrilateral, and tetrahedral elements. Other element types are ignored during the mesh smoothing.

Note:  It is important to have a good quality finite element mesh before you start the shape optimization, especially in areas where you expect the shape to change.

To configure basic settings:

  1. In the optimization task editor, click the Basic tab.

  2. Choose whether to freeze boundary condition regions.

    Regions to which you have applied a displacement boundary condition in the Load module have the same displacement boundary condition during the optimization. The coordinate system that governs the displacement boundary condition in the Load module is used to govern the boundary condition in the optimization.

  3. By default, the Optimization module freezes boundary conditions for the whole model. If desired, click and select the region in which the boundary conditions should be frozen.

  4. Select the region to which the mesh smoothing will be applied:

    • Select Specify smoothing region (default), and click to select the region. You can apply mesh smoothing to cells or faces.

    • Select Specify first layer, and click to select the faces representing the first layer of elements to smooth. Enter the number of element layers to smooth.

    • Select Smooth six layers using the task region to smooth six layers of elements of the design region.

    It is recommended that you accept the default selection and manually select the region to which mesh smoothing will be applied.

  5. Select the number of layers of nodes adjacent to the design region that should be allowed to move during the mesh smoothing operation:

    • Select Fix all (default) to prevent free surface nodes from moving.

    • Select Fix none to allow all the free surface nodes to move.

    • Select Specify and enter the number of adjacent layers of free surface nodes that should be allowed to move.

Configuring mesh smoothing quality

Mesh smoothing attempts to improve the quality of the mesh despite the mesh distortion that results from the displacement of the design nodes during the shape optimization. You can specify the relative quality of the smoothed mesh, and you can specify the range of angles (quadrilateral and triangular elements) or the range of aspect ratios (tetrahedral elements) that define an element that is considered good quality. Elements that are considered poor are given a quality rating. The poorer an element is rated, the greater the consideration it will be given in improving the element quality.

To configure mesh smoothing quality:

  1. In the optimization task editor for a shape optimization, click the Mesh Smoothing Quality tab.

  2. Do either of the following:

    • Toggle on Target mesh quality, and select a setting (Low, Medium, or High).

      In most cases you should accept the default setting of Low. You should select a higher convergence level only after you have determined the mesh quality is not satisfactory. Even though it is computationally expensive, you may want to select a higher convergence level if your mesh contains a large number of tetrahedral elements; otherwise, the mesh quality may not be acceptable.

      If you are unable to obtain a satisfactory mesh quality, even with a convergence level of High, you should consider reducing the amount of displacement during the shape optimization by reducing the Growth scale factor and the Shrink scale factor, as described in Configuring advanced options” in “Configuring a shape optimization task, Section 18.6.3.

    • Toggle off Target mesh quality to deactivate the algorithm that calculates the element quality.

  3. Toggle on Report poor quality elements to generate a list of elements that fall outside the ranges defined in the element quality table.

  4. Toggle on Report solver quality criteria violation to report elements that Abaqus considers to be of poor quality.

  5. If you toggled on Report solver quality criteria violation, you can choose to stop the optimization process if Abaqus encounters elements of poor quality. It is possible that the Optimization module will generate a poor quality mesh that will not allow the Abaqus analysis to complete successfully, especially as the number of design cycles increases. If Abaqus stops the analysis prematurely, no results are available to the Optimization module, and the optimization ends prematurely. If you allow the Optimization module to stop the optimization because the Abaqus element quality criteria is violated, it will be easier for you to troubleshoot the optimization and determine why it failed.

  6. If you chose to allow the Optimization module to adjust mesh quality, you can use the table to specify the range of angles (quadrilateral and triangular elements) or the range of aspect ratios (tetrahedral elements) that define an element that is considered good quality. You can also enter the maximum skew angle for quadrilateral and tetrahedral elements and the maximum taper for quadrilateral elements. In most cases, you should not modify the default values. Modifying the range of angles or aspect ratios has a minimal effect on the quality of the mesh. You should try to match the acceptable mesh quality in the Optimization module with the acceptable mesh quality in Abaqus. It is preferable to have your optimization process end because of degrading mesh quality rather than allowing Abaqus to end the optimization process or generate meaningless results.

  7. Choose the strategy or algorithm that the mesh smoothing operation will use. By default, the Optimization module uses the Constrained Laplacian mesh smoothing algorithm. If you have a relatively small model (less than 1000 nodes in the mesh smooth area), you can select the Local gradient mesh smoothing algorithm.

  8. If you selected a strategy of Constrained Laplacian, do the following:

    1. Select the Convergence level, a measure of the amount of time the Optimization module should spend trying to improve the quality of the mesh. In most cases you should accept the default value of Low, which results in the Optimization module applying a few iterations with large increments. Selecting Medium or High will result in more iterations with smaller increments; however, the computational time will increase significantly. You should use the Mesh Smoothing Quality tabbed page to adjust the target mesh quality before you modify the convergence level.

    2. Select the Frequency of evaluating geometric restrictions, which determines how often the Optimization module applies any geometric restrictions while the mesh smoothing algorithm is executing. In most cases you should accept the default value of Low. Selecting Medium or High will result in the Optimization module applying the geometric restrictions more often, and the computation time will increase significantly.

  9. If you selected a strategy of Local gradient, enter the Feature recognition angle, which is the angle that the Optimization module uses during the mesh smoothing operation to recognize features by detecting edges and corners. The default value is 30°, which provides good results in most cases.

Configuring advanced options

To configure advanced options:

  1. In the optimization task editor, click the Advanced tab.

  2. Enter values specifying the Growth scale factor and the Shrink scale factor. The growth scale factor is applied to the displacement of nodes that are growing (increasing the volume of the model) as a result of the shape optimization. The shrink scale factor is applied to the displacements of nodes that are shrinking (decreasing the volume of the model) as a result of the shape optimization.

    It is recommended that you perform an optimization with default scale factors of 1.0 and examine the results before you attempt an optimization with modified scale factors. A value greater than 1.0 increases the incremental displacement of nodes and accelerates the optimization. Conversely, a value less than 1.0 decreases the incremental displacement of nodes and slows down the optimization.

    You should consider increasing the scale factors if the first few iterations of the optimization produce little change in the position of the surface nodes; for example, if you have a dense mesh with small element edge lengths. Conversely, if the scale factor is too large, mesh quality will suffer, individual elements may collapse, and the optimization may not be able to converge on the optimal solution.

    You should consider decreasing the scale factors if the original model is close to being optimal. Decreasing the scale factor and slowing down the optimization is also beneficial when the optimization includes many geometric restrictions and when the beginning mesh quality is poor.

    To optimize regions that are in contact, you may want to enter a negative value to reverse the direction of the optimization. As a result, areas of high stress will shrink and areas of low stress will grow.

  3. Choose whether to update the optimization shape vectors after every optimization cycle (default) or only after the first cycle.

    The Optimization module determines an optimization displacement vector for every node in the design area. The vector lies along the normal to the outer surface at the node and indicates the direction of displacement during the optimization. If you choose to update the optimization shape vectors after every optimization cycle, the Optimization module adjusts the vectors to account for changing conditions, such as changes in the shape of the structure, the mesh quality, and design variable restrictions. If you choose to update the optimization shape vectors only after the first optimization cycle, the vectors remain fixed in subsequent cycles.

    In most cases, the default value of updating the optimization shape vectors after every optimization cycle provides better results because the mesh smoothing algorithm is less restricted, resulting in an improved mesh quality.

  4. Choose whether the step size should be determined by the minimum displacement of the nodes in the design area during the optimization or the average displacement.

    The Optimization module examines your mesh and limits the amount of displacement of the nodes in the design area during each optimization cycle. This limit prevents the large displacement of one node from causing the collapse of a neighboring element. In addition, the condition-based optimization algorithm provides control of the displacement of the nodes in the design area after every design cycle—the step size. The step size depends on the limit that the Optimization module has applied to the nodes. For example, if the Optimization module decreases the allowed displacement, the condition-based optimization algorithm decreases the increment size.

    This option allows you to choose which displacement is used by the condition-based optimization algorithm to determine the step size. You can choose the average value of the allowed displacement of the nodes in the design area during the optimization or the minimum value (default). Selecting the average value results in a larger step size and a faster calculation of the optimum solution. However, selecting the average value can result in limited displacement of nodes for which only small displacements are allowed causing undesirable corners in the design area.

  5. Choose the method that the Optimization module will use to interpolate the midside nodes.

    If you select Linearly by position (default), the optimization linearly interpolates the position of the midside node from the optimized position of the connected corner nodes. If you select By optimization displacement of corner nodes, the optimization interpolates the position of the midside node from the optimization displacement of the connected corner nodes.

    If the nodes are in their original position, the midside node sits on the line between the corner nodes and there is no difference between the two interpolation methods. However, to prevent element bending, you must select By optimization displacement of corner nodes.

  6. If desired, toggle on Edge length for movement vector and enter a value.

    The Optimization module modifies the displacement of nodes in areas of high curvature to prevent the mesh from collapsing because of a large volume change. In effect, sharp corners are smoothed out. The default value of the minimum element edge length that triggers smoothing is 5.0. A larger value results in a larger radius for the smoothed region.

  7. The Optimization module can use a filter to smooth out local stress peaks. You can define the filter function by toggling on Max. influence radius for equivalent stress and entering the following:

    • A value for the maximum distance between nodes that are influenced by the filter.

    • A value that determines how much the local surface curvature will be used to adjust the maximum distance between nodes that are influenced by the filter. The default value is 0.2; a smaller value increases the effect of the surface curvature.

    • A weighting value that controls the effect of the filter depending on the distance from the node.

  8. Volume is the only constraint you can apply to a shape optimization, and you can specify that the volume be reduced to a specified value or to a fraction of the initial value. The Equality constraint tolerance specifies the minimum difference between the specified volume constraint and the calculated volume that results in the Optimization module assuming the solution has converged. The Optimization module compares the absolute value of the difference with the tolerance value you enter. The default value is 0.001.

Configuring durability options

Typically, you use shape optimization to modify the surface geometry of a component to minimize stress concentrations. In most cases reducing the stress levels leads to a significant increase in durability. However, it is possible that the regions of peak stress identified by a static analysis differ from the regions of maximum damage identified from a durability (or damage) analysis and using shape optimization alone to modify the surface geometry may decrease the durability. To avoid this situation, you can incorporate a durability solver in the optimization loop to ensure that you are both reducing stress levels and increasing durability.

To include durability in your optimization, you must enable durability analysis in the optimization task editor and configure the selected durability solver. In addition, you must create a damage design response that will be used as an objective. The objective must attempt to minimize the maximum damage in the critical areas.

To configure durability options:

  1. In the optimization task editor, click the Durability tab.

  2. Select Optimize based on durability analysis.

  3. Select the Durability solver.

    The Optimization module supports only the fe-safe and FEMFAT durability solvers. If you select any of the other solvers, you must ensure the durability solver has access to the required files. Contact your SIMULIA support office for more information.

    Select Custom to use a Tosca Structure optimization neutral file generated by a durability analysis (ONF 600 or ONF 601). Contact your SIMULIA support office for more information about the format of this file.

  4. Select the durability input files that will be read by the durability solver. The durability input files must be located in the working directory.

  5. Enter the name of any additional files in the working directory that will be read by the durability solver. If a file is stored outside the working directory, you must provide the path to the file along with the name of the file.