Remarks for Sensitivity-Based Optimizations

Additional remarks concerning sensitivity-based optimizations with Abaqus are summarized in this section.

Using design response values and sensitivities calculated by Abaqus

In context of topology optimization, design response values and the corresponding sensitivities can be calculated directly by the solver Abaqus. This option can be activated in the parameter file using the following commands:

OPTIONS
   ....
   USE_ABQ_SENS=YES
   ....
END_

The advantages of setting this option for topology optimization are:

  • For stress design responses (TYPE=SIG_TOPO_MISES) all structural element types as well as material and geometrical nonlinearities are supported.
  • For reaction and internal force design responses all coupling types (for example, *mpc, *equation and *kinematic in *coupling ) and all element types are supported.
  • All prescribed acceleration types are supported.
  • Magnitude-design responses are supported for 2D models.
  • The addition of a primal solution from the general step to the primal solution of the following step perturbation (with or without load case) for the design responses is supported.
  • The LCP solver for efficient optimization of small-sliding frictionless contact models is supported.
  • The option fixed in command *boundary is supported.
  • For *plasticity materials better accuracy in sensitivity analysis can be achieved.
  • Distributed load type label CENT (centrifugal loads) is supported.
  • Distributed load type label CORIO (coriolis force loading) is supported.
  • To define operator design responses (TYPE=OPER) responses of SINGLE nodes from different load cases can be used.

The current limitations are:

  • Mode tracking can be performed only when the number of eigenfrequencies calculated by the solver is not changing between the optimization iterations. The number of requested eigenfrequencies should be specified by the user in the solver input file. The request of the eigenfrequencies range is not supported. Mode tracking can only be performed if Abaqus is run in HOT/SIMULTANEOUS mode.
  • If the *model change command is used in the solver input file, you should set the option ABQ_SENS_ABSENT_SET_ZERO=YES.
  • Currently quantities on slave nodes of mpcs can not be used to define design responses. The corresponding sensitivity will be just zero.

The differences are:

  • Von Mises stress constraints and the corresponding sensitivities are calculated taking the following relation into account:

    Maxelem|σvonf(ρi)|σref

    The reference stress value on the right side of this equation is the constraint value. On the left side the Von Mises stress is scaled by some interpolation function depending on the current values of pseudo density.
  • Von Mises stress terms in objective function and the corresponding sensitivities are calculated taking the following relation into account:

    OBJ=α1Maxelem|σvon,1f(ρi)σref,1|+α2Maxelem|σvon,2f(ρi)σref,2|+...=α1DRESP1σref,1+α2DRESP2σref,2+...

    In cases where the user is not giving reference values for stress objective terms the initial design response values (from iteration zero) are used:

    OBJ=α1DRESP1DRESP1,iter=0+α2DRESP2DRESP2,iter=0+...

    It is always recomented to give reference for the stress objective terms. Otherways the objective values reported by Tosca will be difficult to interpret or will be not interpretable at all.

Note: the default is USE_ABQ_SENS=NO.

Important: currently Abaqus sensitivities are available only for design responses from static and modal analyses.

Prescribed Accelerations for Sensitivity-Based Topology Optimization

Prescribed acceleration loading are often caused by gravity fields, centrifugal loading and rotary acceleration loads. This chapter defines which kind of acceleration types for the Abaqus solvers is feasible for sensitivity-based topology optimization.

The following commands are supported for acceleration loading:

  • GRAV: Gravity loading.
  • CENTRIF: Centrifugal load
  • ROTA: Rotary acceleration load

The following are not supported:

  • CENT: Centrifugal load is not supported.
  • CORIO: Coriolis force loading is not supported.

Several CPU-Processors in Combination with Sensitivity-Based Topology Optimization

Abaqus fails to deliver all results requested by SIMULIA Tosca Structure sensitivity-based topology optimization when an Abaqus analysis is executed using more than one CPU-processor in combination with SIMULIA Tosca Structure sensitivity-based topology optimization. Abaqus failing to deliver all results requested by SIMULIA Tosca Structure sensitivity-based topology optimization is solved by adding the following in the OPT_PARAM command,

OPT_PARAM
   ....
   PROCESSORS = MULTI
   ....
END_

Note:

Default is PROCESSORS = SINGLE.

Important:

Design responses for reaction forces and internal forces cannot be applied when PROCESSORS = MULTI is activated.

Temperature Loading

The following commands are supported for temperature loading exclusively in sensitivity-based topology optimization: *TEMPERATURE.

Note:

When reading temperatures from the results or output database file (FILE) then the temperature (FILE) should be the same in each optimization iteration.

Cyclic Symmetry Model

The *CYCLIC SYMMETRY MODEL command is not supported in sensitivity-based topology and sizing optimization using sensitivities calculated by Tosca. Using sensitivities calculated by Abaqus (USE_ABQ_SENS=YES) this limitation can be avoided.