You are on page 1of 5

Frequently asked questions on the Abaqus/CAE Optimization Module (ATOM)

Frequently asked questions on Abaqus/CAE Optimization Module (ATOM)

Answer

(The following applies to Abaqus 6.11 and later.)

The optimization module (ATOM) has been introduced with the general release of
Abaqus/CAE 6.11. The module provides a user friendly interface to interactively set up
topology and shape optimization tasks and submit the optimization processes for
analysis.You can also view the optimization results in the Visualization module of
Abaqus/CAE.

The following is a set of Frequently Asked Questions on the optimization module of


Abaqus/CAE.

1. Can ATOM be used with Abaqus/Standard and Abaqus/Explicit?

Currently ATOM can only be used with Abaqus/Standard.

2. Which analysis procedures are supported with ATOM?

Linear and nonlinear static stress/displacement, static linear perturbation, and


natural frequency extraction.

3. Why does this warning sometimes appear in the ATOM .out file, even though the
optimization runs to completion?

(Warning) FIL file Opt-Process-1-Job.fil not found

ATOM reads the element matrices from the results (.fil) file. By default,
the necessary output request will always be written to the input file. However
for some element types (e.g. the incompatible modes family) the element
matrices are not written. If all the elements of the model are of the type that
does not permit the output of element matrices, then no .fil file will be
generated. The SAVE.inp and _000.inp files can be examined to see if the
element matrix requests are present. Future releases of ATOM will recognize
that no element matrices are present and will use alternative equations for
calculating different quantities.

4. How are weighting factor values determined in the objective function of an


optimization?

Most use cases have design responses that have the same physical
characteristic and thus a weighting factor of 1.0 is used; other physical
characteristics are then added as constraints. If design responses with different
physical characteristics are used in the objective function then it will not make
sense to have weighting factors of 1.0 and you will have to change them to
balance the effect of an objective function that may dominate the optimization.
For example, stress and mass have different units and the optimization would
not be correct if weighting factors of 1.0 are used in the objective function.

5. Which files are required for a surface extraction?

The files needed for the surface extraction are mentioned in *_surface.par file.
They are, for example:

RESULT = "Opt-Process-1\SAVE.onf\TP_001.onf"
MODEL = "Opt-Process-1\SAVE.onf\Opt-Process-1-Job_fem.onf"
GROUP_FILE = "Opt-Process-1\SAVE.onf\GROUPS.onf"

The RESULT file depends on the design cycle in which you want to extract the surface.

6. When an optimization process was running I killed the atom_perl.exe process in the
Task Manager. That resulted in the end of the optimization run but the Optimization
process in the Model Tree had a status of Completed instead of Aborted.

atom_perl.exe is one of the top level processes and if you kill it, several of the child
processes will become orphaned and the behavior can be unpredictable. That causes
the issue with the optimization process status.

7. In a topology optimization using the stiffness based (controller based) algorithm, I


have an objective function to minimize the strain energy (to maximize the global
stiffness) and also have a volume constraint as 70% of the initial volume. Why do the
results show that strain energy is increasing over the design cycles?

The strain energy is increasing because the volume is not kept constant but it
is decreasing. If the volume stays constant the strain energy will decrease
during the process and will converge to the value reached by the controller.
The global stiffness obtained at the end of the optimization process is the most
optimum configuration available for the structure with the reduced volume.

8. Is it possible to submit multiple optimization processes so that they run one-by-one?

Yes it is possible, the optimizationProcess object has the


waitForCompletion() method, similar to that of the Job object.

9. Are there any recommendations about mesh refinement?

We do not have any specific guidelines for deciding what kind of mesh to use
with optimization. However, mesh refinement does have a limit and beyond a
certain level additional mesh density does not change the optimization result.

Mesh Quality Optimization Result


Mesh is coarse enough that FEA
Optimization results are also unreliable.
results are not reliable.
Very coarse mesh, but FEA results Optimization result may vary with different
might be adequate. meshing.
Optimization results remain the same among
Fine mesh
different fine meshes
Optimization results remain the same among
Even finer mesh
different fine meshes

10. Should I maximize or minimize the strain energy design response in an objective
function to ensure maximization of stiffness?

For force or pressure loading, the strain energy (compliance) design response
should be minimized for determining the maximum stiffness, and maximized
when you have prescribed non-zero displacements. It should be noted that, if
both the prescribed loading and displacements are different from zero then it is
not clear if the strain energy should be maximized or minimized. In that case it
would make sense to formulate the stiffness problem using displacements and
reaction forces.

11. Is it possible to change the optimization algorithm after creating a topology


optimization task?

Currently not. You will have to delete the topology optimization task and
create a new one to select a different optimization algorithm. If you change the
algorithm, it affects the validity of the other objects and their values. This is
similar to changing the step type in an Abaqus analysis.

12. Where can I find the optimization history (i.e., values of the objective function and
constraints for each design cycle)?

ATOM writes the optimization history to file optimization_report.csv.


The file can be accessed using a text editor or Microsoft Excel. The file is
located in the optimization process directory (which is named after the
optimization process) that gets created in the Abaqus/CAE working directory.
The file has the values of the objective function and constraints for each
design cycle. These values can also be accessed within the visualization
module of Abaqus/CAE.

13. Is there any way to plot design responses and optimization constraints over design
cycles?

When an optimization is submitted, history output requests for objective functions and
optimization constraints are automatically generated. The optimization output
database (.odb) file will thus have the output variables that can plotted against the
number of design cycles. The following field variables are automatically written to
the .odb for shape optimization: CTRL_INPUT(OPT), DISP_OPT, and
DISP_OPT_VAL. For topology optimization, MAT_PROP_NORMALIZED is
additionally written.

14. Why does the optimization_report.csv file not get updated if it is open during the
optimization run?
If optimization_report.csv is kept open it will not be updated for the remaining
design cycles, because Microsoft Excel locks the file when it is open and the results
are not recorded for the remaining optimization design cycles.

15. I ran an ATOM analysis but did not save the Abaqus/CAE database, is there any way
I can extract a surface using the optimization results?

You can open a new Abaqus/CAE session, and run the replay file after
removing the optimization process submission commands. Once the
optimization process is created you can extract a surface using the
optimization process manager.

16. I submitted an optimization process via LSF. Is there a way in which I can extract the
results (*.stl and *.inp) once the optimization process is done?

Yes, if you have a .cae model with an optimization process defined with a
name. For example, given optimization process Opt-Process-1-MBB, perform
a data check to create a folder named Opt-Process-1-MBB. Once the
optimization process has completed, delete the local folder Opt-Process-1-
MBB and replace it with the one where results are stored. Now in
Abaqus/CAE if you right click on the optimization process Opt-Process-1-
MBB you should be able to extract the results for the optimization task in
*.stl and *.inp format. One thing you might have to correct is the design
cycle number (default -1).

17. I have more than one instance in my model. After running the optimization process,
why does the .odb display only one instance?

It is by design. You can workaround this by creating different assembly level


sets for each instance during preprocessing, and during postprocessing those
sets can be visualized using the display group functionality.

18. Can I submit an optimization process using a –noGUI script?

Yes, optimization processes can be submitted using a –noGUI script.

19. Are there any guidelines for using Minimum Thickness as a Member Size geometric
restriction?

There should be at least three to four elements in the thickness in order for the
Minimum Thickness to work effectively.

20. I created D-Response-1 and D-Response-2 as single term design responses and D-
Response-3 as a combined term design response using D-Response-1 and D-
Response-2. When I edit D-Response-3 I find that I have an option of selecting D-
Response-3 in the Edit Design Response dialog, as shown below. Why is this?
This is by design. If you select D-Response-3 in this case and validate/submit
the optimization process an error is thrown:

The check is done at a later stage because you could later do a series of
operations (such as rename) to create a dependency that can be missed if the
check is done at the earlier stage.

You might also like