top of page

Is there any example of used Matlab optimization toolbox and Abaqus to optimize the design of a stru

The key idea is to transfer data (1) from Matlab to Abaqus and (2) from Abaqus to Matlab, in order to enforce a running optimization loop, where Matlab will be the optimizer and Abaqus will be the solver. You need to create a Matlab script which, when run, creates the appropriate Abaqus input file. Besides, you need a way to run Abaqus analysis inside Matlab, without interacting with Abaqus at all. Finally, you need to get the results from the Abaqus results file(s) into Matlab to continue the optimization process.

Each optimization loop consists of the following main operations:

(1) A Matlab script is run (inside Matlab), which creates an input file for Abaqus (*.inp)

(2) After this, the input file is run by Abaqus (inside Matlab) to produce a file in which the results of the analysis are stored. This file is called "results file" and has the extension *.fil. You can look in Abaqus Documentation for more information about this file and the way that the results are stored in it.

(3) Afterwards, the data written in the results file (*.fil) are retrieved by Matlab, by using the new powerful toolbox Abaqus2Matlab. It is a free open source code, which can be downloaded from

After execution of step (3), the optimizer (Matlab) will automatically go again in step (1) and so on, until the optimization process is terminated.

I have set up some optimization procedures by using Abaqus and Matlab according to the above order of steps, two of which concern mainly the classic 10-bar truss and 25-bar truss optimization problems, which are very well known benchmark problems exhaustively solved and used to test the new optimization algorithms.

The two packages (one for the 10-bar truss and one for the 25-bar truss) can be downloaded freely from the following links:

You can watch how the optimization procedure works, and you can even use these two packages as a template to adjust it to fit your own optimization task. Remember that these packages contain only a (rather obsolete) portion of Abaqus2Matlab toolbox, which is a high-level post-processing toolbox linking Matlab and Abaqus. You can use the last to explore the variety its post-processing capabilities, and satisfy your needs in the best way.

Thank you very much for your interest.

Best regards and wishes,

George Papazafeiropoulos

Last Posts
bottom of page