- Examples
This is an old revision of the document!
This optimization program allows the identification of the values of parameters likely to minimize a function representing the difference between two curves. The program will take a reference curve as an input (an experimental curve for instance) and will attempt to approach this curve with the finite element code Lagamine using different parameters obtained through the Levenberg-Marquardt algorithm.
The optimization process is iterative and stops once a stop criterion is met, such as the stabilization of the objective function for instance.
The code gives the possibility to optimize a set of parameters using several curves for one simulation, or several simulations at a time. All the curves are then concatenated in one global curve for the computation of the objective function.
The objective function to be minimized by the algorith is the following:
$S=\sqrt{\displaystyle\sum_{i=1}^{n_{total}} (u_i^{FE}-u_i^{REF})^2}$
Where:
One should be careful on the range on which the objective function is calculated. This range goes from $x_A$ to $x_F$ where:
The objective function is the square root of the sum of the squares of the residuals. The function must however be modified in the case where several curves of different orders of magnitude are used. The objective function is then rewritten as:
$S=\sqrt{\displaystyle\sum_{i=1}^{n_{total}} \left(\frac{u_i^{FE}-u_i^{REF}}{u_i^{REF}}\right)^2}$ if $|u_i^{REF}|>tolerance$
$S=\sqrt{\displaystyle\sum_{i=1}^{n_{total}} \left({u_i^{FE}-u_i^{REF}}\right)^2}$ if $|u_i^{REF}|<tolerance$