Maximize the first natural mode (first eigenvalue)

This section shows you how to maximize the first eigenvalue with the sensitivity based bead optimization approach.

The definition of a maximization of an eigenvalue problem could be done similar to the controller-based bead algorithm. But this is not recommended. In the sensitivity-based algorithm you have more control over the modes.

A problem you usually want to avoid when optimizing eigenmodes is mode-switching because it destabilizes the optimization algorithm. The typical problem is by maximizing the first eigenmode it may "overtake" the second mode - hence, the modes switch place (previous second mode becomes the first mode) and sensitivity algorithm must suddenly take a new mode into consideration.

Mode tracking can of course be used (see Optimization parameters for mode tracking), but the computationally cheapest way to push the first eigenmode up is to use the Kreissel-Meier Steinhauser formulation (Type = DYN_FREQ_KREISSEL):

φ=αkln(j=1Nekfj)

In the formulation fj is the eigenfrequency, e the base of the natural logarithm and α and k are constants.

The following definition will enforce the 5 first modes to keep their sequence. This is usually sufficient to avoid mode switching among the first couple of modes.

DRESP
 ID_NAME = dresp_eig_kreissel
 DEF_TYPE = SYSTEM
 TYPE = DYN_FREQ_KREISSEL
 LC_SET = Modal,All,1-5
END_
OBJ_FUNC
 ID_NAME =  max_dresp_eig_kreissel
 DRESP = dresp_eig_kreissel
 TARGET = MAX
END_

The first mode is maximized (TARGET=MAX) until it comes near the higher modes in which case they are being considered as well.

See also the figure about the iteration history in Differences between bead optimization algorithms at iteration 13-14 where modes almost switch, but do not because of this formulation.