r5.01.04 Procedure for counting eigenvalues#

Summary

Whether to study the vibrations of a structure or to search for its buckling modes, the mechanic must often solve a modal problem: either generalized (GEP) [R5.01.01], or quadratic (QEP) () [R5.01.02]. To do this, Code_Aster offers several algorithms and methodologies through the CALC_MODES operator, not including the support operators: INFO_MODE and NORME_MODE.

Often these operators use an enumeration procedure before or after processing. Because some of their functionalities require the number of eigenvalues included within an interval (if they are real) or a disk (if they are complex). In the first case, concerning only real GEPs symmetrics, we have the traditional Sturm method. In the second case, looking at any GEPs and QEPs, the situation is much less favorable. This numerical problem is still the subject of active research and no completely satisfactory solution has yet emerged.

After testing several variants of these methods, we finally industrialized one in the code: the APM variant \(\mathrm{LDLT}\) method. It is currently only available in INFO_MODE [U4.52.01] (METHODE =” APM “), in addition to Sturm’s method (METHODE =” STURM”). This method is still being researched. It is reserved for simplified problems of small size (< to \({10}^{4}\) degrees of freedom).

In the most frequent case of real symmetric GEP, it is strongly recommended to pre-calibrate your modal calculation via estimates INFO_MODE preconditions [U4.52.01]. Thanks to their**two levels of parallelism [1] _ , these INFO_MODE can be « almost free »! On a hundred processors, it is possible to obtain time accelerations of the order of 70 and memory peak reductions of the order of 2.

In the first part of this document we summarize the problem of counting eigenvalues. Then, before detailing the various existing solutions, we specify their main digital ingredients. A specific chapter details the implementation of multi-level parallelism. Finally, we conclude with a summary of the algorithms actually available in the code and their settings.

. toctree:
hidden:

Self