Material models that provide accurate simulation results matching experimental data are foundational to successful FEA simulation of real-world applications. Calibration of a material model to experimental data is an optimization problem where the "distance" between simulation and truth signals is minimized, indicating how "close" the model fits experiment. In this example, we will perform an overview of an example calibration, completing the spring-steel model calibration example model from Ansys Help using Ansys optiSLang and Mechanical from within Workbench. Please refer to optiSLang documentation for details about aspects of the process that we skip for purposes of brevity.
The material model that will be used to "match" the experimental data is a nonlinear isotropic hardening model have a Voce hardening law given by the equation
where the unknown material parameters are
with resulting stress-strain curve
In Ansys Workbench Engineering Data, we parametrize the according material model parameters as shown here:
The test specimen and experimental force-displacement curve (truth) are displayed below:
The experimental data will be stored as a text file named force_displacement_ref.txt in the Workbench model user_files folder from where it will be referenced by optiSLang throughout the optimization process. A snippet of the file is shown below, noting that the Reference keyword is important for distinguishing these data from the simulation results:
The finite element model consists of the thin body tensile specimen mesh with solid elements, subject to an end displacement with the other end fixed, thus simulating a standard tension test. The mesh and applied boundary conditions are shown here:
The resulting force and displacement of the gauge section is written to a file called force_displacement_sim.txt for each run via an APDL command snippet. The format of the force_displacement_sim.txt file is identical to the force_displacement_ref.txt file with the exception that the word "Reference" is replaced with "Simulation", which allows optiSLang to differentiate between the two data sets. Additionally, an image of the plastic strain field is written to file.
The final Workbench project schematic that we will develop is
The Data Send component is used to manage which data is copied and saved for each Design Point run. By carefully selecting which files to save for each run, the project size can remain relatively small, thus it is not recommended to select large files, such as, results files, otherwise the project size can become prohibitively large. The following shows that we only need the following files to be saved for each run:
The Signal Processing component is where all aspects of data handling and computations are defined. The following tabs in the Signal Processing wizard are explained in the following sections.
Here we define how the force_displacement_ref.txt and force_displacement_sim.txt files are handled. The setup for these files is shown in the following images, noting that the details are explained in optiSLang help documentation:
The setup of the Files tab is shown here:
The Variables tab is where data and variables resulting from computations on data are defined. The layout of the Variables tab for this example is shown here, where variables are designated as responses by clicking on Add Variable, highlighted in yellow:
Reiterating that the goal for this example is to calibrate the signal from the simulation response to the reference signal, we need to define several signal conditioning and signal comparison operations. The following steps are defined, resulting in variables and/or responses - note that variables that are designated as responses are highlighted in green:
Run options setting defaults are used in this example. However, depending on licensing, parallel simulations may be conducted to reduce time to results.
The final parameter table is shown here, noting that two additional parameters for plastic strain are added from the Static Structural analysis:
A metamodel, also known as response surface, is a statistical model that relates the response to the inputs, generated by smart choice of the location of a small number of data points. The resulting surface is the mean of the response given the relatively sparse data. An adaptive metamodel enhances the standard metamodel by strategically adding input locations in order to minimize the variance in response prediction. Here, we utilize the AMOP as defined as follows.
The input parameter values, types, and ranges are defined as shown here:
This is blank since we are starting from scratch.
Here, the optimization criteria are defined as shown in the Criteria pane below:
We allow for a maximum of 150 design points to generate the AMOP:
For the definition of the MOP, we use most of the defaults, selecting the type of Tested metamodels as shown here:
We leave the defaults in the Other tab.
This table, initially empty, shows the results of the design points. Note that some designs are considered infeasible as the minimum gradient constraint is violated in these (constraint column shown in the 2nd image).
Here is a screenshot of some of the results that are available from an AMOP run:
If we focus on the Signal Plot in the top middle, we see that the "best design" (red trace) reasonably matches the reference signal (green trace). Furthermore, the Residual plot shows that the variance between the reference signal and AMOP predictions is small, thus indicating a good fit.
There are many more plots and diagnostics that one can use to determine goodness of fit. Refer to the optiSLang manual for more details.
The evolutionary algorithm is "nature inspired optimization" according to optiSLang. We use the top 10 best designs from the AMOP as start designs, making the optimization process more targeted and efficient. The Parameter settings are the same as for the AMOP, with the other settings detailed here below:
Start designs were chosen as the top 10 feasible AMOP design having the lowest var_RSE. The (partial) table is shown here:
The Criteria are identical to that of the AMOP.
The algorithm and other settings are shown here, where we allow for a maximum of 10,000 designs:
The number of resulting designs was 1,830 for this example, not all feasible. The resulting table, sorted by var_RSE is shown here, noting that the top 2 designs are not feasible:
Here is a plot of the typical results output for an Evolutionary Algorithm. Note that the best design (#1629) is an even better fit than that found just from the AMOP:
The simplex method is another optimization method that is often used to refine a prior optimization. Thus, we are going to apply the best evolutionary design (#1629) as the start design. The same criteria, parameter ranges, etc., will be applied as before.
The simplex optimizer ran 183 more designs. The results are shown in the following image, noting that the value of var_RSE is lower than that of the Evolutionary Algorithm:
Finally, the results from the simplex optimization, focused on the best design (#180).
In this article, we showed how Ansys Mechanical and optiSLang can be used to calibrate a material model to experimental data all within Ansys Workbench. Here, we completed an Ansys tutorial model, only scratching the surface of optiSLang's capabilities, skipping over many details for the sake of brevity. We invite you to download the supplied model and use it as a foundation for optimizing your own design.
Ansys 2025 R1 Workbench Model Archive