# Normal Modes Analysis

Normal Modes Analysis, also called eigenvalue analysis or eigenvalue extraction, is a technique used to calculate the vibration shapes and associated frequencies that a structure will exhibit.

It is important to know these frequencies because if cyclic loads are applied at these frequencies, the structure can go into a resonance condition that will lead to catastrophic failure. It is also important to know the shapes in order to make sure that loads are not applied at points that will cause the resonance condition.

Normal modes analysis is also required for modal frequency response and modal transient analysis. In these analyses the problem is transformed from the direct mesh coordinates, where the number of degrees-of-freedom can be in the millions, to the modal coordinates where the number of degrees-of-freedom is just the number of modes used. Typically, the upper bound frequency in this case is 1.5 times the highest loading frequency or response frequency of interest.

In OptiStruct, normal modes analysis can be performed using one of two algorithms: Lanczos or the automated multi-level sub-structuring eigenvalue solution (AMSES). The eigenvalue extraction data for Lanczos is specified on the EIGRL data and for the automated multi-level sub-structuring eigenvalue solution method, the EIGRA data is used.

In addition, OptiStruct has an interface to the AMLS software
developed at the University of Texas. AMLS uses the automated multi-level
sub-structuring method for eigenvalue extraction. The use of AMLS is triggered by
using the PARAM, `AMLS` set to
YES input data in conjunction with the EIGRL
card (only).

## Lanczos Method

The Lanczos method has the advantage that the eigenvalues and associated mode shapes are calculated exactly. This method is efficient for calculations in which the number of modes is small and the full shape of each mode is required. The disadvantage of the Lanczos method is that it is slow for large problems with millions of degrees-of-freedom for which hundreds of modes are required. The run times for these types of problems can easily stretch into days. In these cases, the AMSES or AMLS method must be used.

## Automated Multi-level Sub-structuring Eigenvalue Solution Method (AMSES)

The AMSES method has the advantage that only a portion of the eigenvector needs to be calculated. Since only a portion of the eigenvector is calculated, the disk space and disk I/O is greatly reduced. This leads to much shorter run times. For a typical NVH frequency response analysis there is only about 100 degrees-of-freedom of interest. In these cases, solutions of thousands of modes for meshes of millions of degrees-of- freedom can be solved in just a few hours. The disadvantage of the AMSES method is that the calculations are not exact. However, the modal frequencies are still accurate to a few digits. Also, for NVH analysis it is important that the mode shapes form modal space that covers all possible deformation patterns, but not so important that each individual mode shape is accurate.

## AMSES Usage Guidelines

- The AMSES solution is, generally, much faster than Lanczos, but the results are approximate. Accuracy of the lower modes is very high; therefore, AMSES is a good candidate for solutions with a large number of modes (greater than a few hundred) where an approximated eigen-space is sufficient (as in Frequency Response Analysis and Response Spectrum Analysis). Although approximate, the large number of modes used for modal analysis will encompass the modal space and the resulting motion will match very closely with the Lanczos results. Lanczos is recommended in solutions where accurate mode shapes of a small number of modes are required.
- AMSES is also recommended in cases where: 1) A low number of eigenvalues are
requested but the model consists of more than a million degrees-of-freedom,
and/or; 2) The upper bound (
`V2`) is specified or the number of modes (`ND`) is greater than 50 on the EIGRL entry. In such cases, it is likely that Lanczos runs are slower than AMSES runs. - For optimization runs, if accuracy of the eigenvector is important, normal modes analysis with AMSES can be run first and then Lanczos can be run with precise lower and upper bounds to check the AMSES run for accuracy. The AMSES upper bound can then be adjusted to achieve acceptable accuracy of the desired eigenvectors. Now, AMSES can be used for all optimization runs in this analysis.
- The AMSES solution is much faster for Flexible Body Generation and modal solutions with many residual vectors.
- AMSES should be used cautiously in situations with very large
RBE3's (if the RBE3 is connected
to 1/4
^{th}of the structure). It may be better to eliminate such RBE3's. - AMSES solution speeds depend on the number of eigenvector degrees-of-freedom
(DOF) to be calculated.
`DISP`=ALL will cause the entire eigenvector to be calculated and the speedup will not be large. However, if results for only a few DOF are required (typical for NVH analysis), AMSES can be up to 100 times faster than Lanczos. To improve AMSES run times, it is recommended to request results only for the required DOF. - For an AMSES run with
`V1`,`V2`and`ND`specified on the EIGRA entry, AMSES calculates all the modes up to the specified`V2`(upper bound) regardless of the value of`ND`. Then the`ND`number of requested modes is output. Therefore, reducing`ND`by keeping the upper bound (`V2`) the same will not significantly improve the AMSES run times, the upper bound must also be correspondingly reduced to prevent the extraction of extra modes. - AMSES is also useful in checking for model irregularities. AMSES can be used to print the list of grids associated with a massless mechanism or a singularity.

## Governing Equations

### Normal Modes Analysis

- $K$
- Stiffness matrix of the structure
- $M$
- Mass matrix

The solution of the eigenvalue problem yields $n$ eigenvalues $\lambda $, where $n$ is the number of degrees-of-freedom. The vector $A$ is the eigenvector corresponding to the eigenvalue.

The eigenvalue problem is solved using Lanczos, AMSES, or AMLS.

## Input Specification

In order to run a normal modes analysis, an EIGRL or EIGRA Bulk Data Entry needs to be given to define the number of modes to be extracted.

EIGRL or EIGRA data needs to be referenced by a METHOD statement in a SUBCASE in the Subcase Information Entry section.

It is not necessary to define boundary conditions using an SPC statement. If no boundary conditions are applied, a zero eigenvalue is computed for each rigid body degree of freedom of the model.

It is possible to request the computation of residual vectors in conjunction with a
normal modes analysis. Residual vectors are static displacements ortho-normalized
with the eigenvectors to be used in an external Frequency Response Analysis. In
order to get this output, users have to define degrees-of-freedom using
USET and USET1. The degrees-of-freedom are
then used to define loads in the unit load method to compute the residual vectors.
`RESVEC`=YES needs to be defined in the normal
modes subcase, if the Lanczos eigensolver is used. Residual vectors associated with
USET and USET1 data are always created, if
the AMSES or AMLS eigensolvers are used. Boundary conditions defined using
SPC or Inertia Relief must be applied to
create residual vectors.

Mode tracking for optimization with eigenvalue analysis is available using either PARAM,MODETRAK or MODTRAK Subcase Information/Bulk Data Entry pair.

### Subcase Definition

A normal modes subcase may be explicitly identified by setting
ANALYSIS=`MODES`, but it is also implicitly
chosen for any subcase containing the METHOD data selector (when
the ANALYSIS entry is not present).

### Bulk Data

- EIGRL
- Specifies the modes to be calculated and solution parameters for the Lanczos eigenvalue extraction method.
- EIGRA
- Specifies the modes to be calculated and solution parameters for the AMSES eigenvalue extraction method.
- PARAM,
`AMLS`,YES - Specifies that the AMLS software will be used for eigenvalue extraction based on the modal parameters on the EIGRL or EIGRA data.
- SPC, SPC1, and SPCADD
- Specify the base where excitation is applied and other constraints.
- MPC and MPCADD
- Specify multi-point constraints.

### Example: Input

```
SUBCASE 100
SPC = 5
METHOD = 24
$
BEGIN BULK
$
EIGRL, 24, 0.0, 1000.
ENDDATA
$
```

## Output

Results of interest from eigenvalue extraction include maximum displacement, modal stresses, energies and multi-point constraint forces.

These are requested via the I/O Option Entries DISPLACEMENT, EKE, ESE, STRESS, GPSTRESS and MPCFORCE, respectively.