14.12. Eigenvalue and Eigenvector Extraction

The eigenvalue and eigenvector problem needs to be solved for mode-frequency and buckling analyses. It has the form of:

(14–214)

where:

[K] = structural stiffness matrix
= eigenvector
λi = eigenvalue
[M] = structural mass matrix

For prestressed modal analyses, the [K] matrix includes the stress stiffness matrix [S]. For eigenvalue buckling analyses, the [M] matrix is replaced with the stress stiffness matrix [S]. The discussions given in the rest of this section assume a modal analysis (ANTYPE,MODAL) except as noted, but also generally applies to eigenvalue buckling analyses.

The eigenvalue and eigenvector extraction procedures available include the Block Lanczos, PCG Lanczos, Supernode, Subspace, unsymmetric, damped, and QR damped methods (MODOPT and BUCOPT commands) outlined in Table 14.1: Procedures Used for Eigenvalue and Eigenvector Extraction. Each method is discussed subsequently. Shifting, applicable to most methods, is discussed in a later section (see Shifting).

Table 14.1: Procedures Used for Eigenvalue and Eigenvector Extraction

ProcedureInputUsagesApplicable Matrices++ReductionExtraction Technique
Supernode MODOPT, SNODESymmetric (but not applicable to buckling)[K], [M]NoneInternally uses node grouping, reduced, and Lanczos methods
Block Lanczos MODOPT, LANBSymmetric[K], [M]NoneLanczos which internally uses QL algorithm
PCG Lanczos MODOPT, LANPCGSymmetric (but not applicable for buckling)[K], [M]NoneLanczos which internally uses QL algorithm
Subspace MODOPT, SUBSPSymmetric[K], [M]NoneInternally uses Subspace method with auto-shift
Unsymmetric MODOPT, UNSYMUnsymmetric matrices[K*], [M*]NoneLanczos which internally uses QR algorithm
Damped MODOPT, DAMPSymmetric or unsymmetric damped systems[K*], [C*], [M*]NoneLanczos which internally uses QR algorithm
QR Damped MODOPT, QRDAMPSymmetric or unsymmetric damped systems[K*], [C*], [M]ModalQR algorithm for reduced modal damping matrix
++ [K] = stiffness matrix, [C] = damping matrix, [M] = mass or stress stiffening matrix, * = can be unsymmetric

The Block Lanczos and PCG Lanczos methods both use Lanczos iterations to extract the requested eigenvalues. However, the Block Lanczos method uses the sparse direct solver, while the PCG Lanczos method uses the PCG iterative solver internally to solve the necessary system of equations at each Lanczos iteration.

14.12.1. Supernode Method

The Supernode (SNODE) solver is used to solve large, symmetric eigenvalue problems for many modes (up to 10,000 and beyond) in one solution. A supernode is a group of nodes from a group of elements. The supernodes for the model are generated automatically by the solver. This method first calculates eigenmodes for each supernode in the range of 0.0 to FREQE*RangeFact (where RangeFact is specified by the SNOPTION command and defaults to 2.0), and then uses the supernode eigenmodes to calculate the global eigenmodes of the model in the range of FREQB to FREQE (where FREQB and FREQE are specified by the MODOPT command). Typically, this method offers faster solution times than Block Lanczos or PCG Lanczos if the number of modes requested is more than 200.

The Supernode eigensolver uses an approximate method compared to the Block Lanczos and PCG Lanczos solutions. The accuracy of the Supernode solution can be controlled by the SNOPTION command. By default, the eigenmode accuracy is based on the frequency range used (assuming no rigid body modes are in the model), as shown in the following table.

Frequency Range Accuracy of Supernode solution
0 - 100 Hz0.01 percent error
100 - 200 Hz0.05 percent error
200 - 400 Hz0.20 percent error
400 - 1000 Hz1.00 percent error
1000 Hz and higher3.0 - 5.0 percent error

Typically, the reason for seeking many modes is to perform a subsequent mode-superposition or PSD analysis to solve for the response in a higher frequency range. The error introduced by the Supernode eigensolver (shown in the table above, assuming no rigid body modes are in the model) is small enough for most engineering purposes. You can use the SNOPTION command to increase the accuracy of the solution, but at the cost of increased computing time. Increasing the value of RangeFact (on the SNOPTION command) results in a more accurate solution.

In each step of the Supernode eigenvalue calculation, a Sturm check is performed. The occurrence of missing modes in the Supernode calculation is rare.

The lumped mass matrix option (LUMPM,ON) is not allowed when using the Supernode mode extraction method. The consistent mass matrix option will be used regardless of the LUMPM setting.

The Supernode eigensolver has the following known limitations:

  • If rigid body modes are present in the model and are part of the eigen-solution, the accuracy of the lower flexible modes is slightly deteriorated due to the rigid body modes present and the theoretical limitation of the Supernode eigensolver. In this case, you should increase the value of RangeFact to be higher than 2.0 (default) and smaller than 10.0 to achieve better accuracy for the lower flexible modes.

  • If duplicate modes are present in the eigensolution, the accuracy of the duplicate modes may be less than desired. In this case, you should increase the value of RangeFact to be higher than 2.0 (default) to achieve better accuracy for the duplicate modes.

  • Since the supernodes are formed arbitrarily and automatically, differences in domain decomposition (that is, using a different number of cores with distributed-memory parallel processing) slightly affects the solution accuracy. However, the resulting inaccuracy is normally less than 0.1 % in the eigenvalue solution.

  • The Supernode eigensolver does not use equation pivoting logic to process or factorize local equations. Therefore, any finite element formulation that requires pivoting to achieve an equation solution, such as an element formulation with Lagrangian multipliers (u-P formulation), is not supported. In this situation, the program automatically switches to the Block Lanczos modal solution.

14.12.2. Block Lanczos

The Block Lanczos eigenvalue extraction method (accessed with MODOPT,LANB or BUCOPT,LANB) is available for large symmetric eigenvalue problems.

The block shifted Lanczos algorithm is a variation of the classical Lanczos algorithm, where the Lanczos recursions are performed using a block of vectors, as opposed to a single vector. Additional theoretical details on the classical Lanczos method can be found in Rajakumar and Rogers([198]).

A block shifted Lanczos algorithm, as found in Grimes et al.([197]) is the theoretical basis of the eigensolver. The Block Lanczos method employs an automated shift strategy to extract the number of eigenvalues requested.

At the end of the Block Lanczos calculation, the solver can perform a Sturm sequence check if requested by the user. (The Sturm check is off by default and is not needed for most applications.) This check computes the number of negative pivots encountered in the range that the minimum and maximum eigenvalues encompass. This number will match the number of converged eigenvalues unless some eigenvalues have been missed. Block Lanczos will report the number of missing eigenvalues, if any.

Use of the Block Lanczos method for solving larger models (1,000,000 DOF, for example) with many constraint equations (CE) and 3D solid elements can require a significant amount of computer memory. The alternative method of PCG Lanczos, which internally uses the PCG solver, could result in savings of memory and computing time.

14.12.3. PCG Lanczos

The theoretical basis of this eigensolver is found in Grimes et al.([197]), which is the same basis for the Block Lanczos eigenvalue extraction method. However, the implementaion differs somewhat from the Block Lanczos eigensolver, in that the PCG Lanczos eigensolver:

  • does not employ an automated shift strategy during the eigenvalue analysis.

  • is only available for modal analyses and is not applicable to buckling analyses.

14.12.4. Unsymmetric Method

The unsymmetric eigensolver (accessed with MODOPT,UNSYM) is applicable whenever the system matrices are unsymmetric. For example, an acoustic fluid-structure interaction problem using FLUID30 elements results in unsymmetric matrices. Also, certain problems involving the input matrix element MATRIX27 and/or COMBI214 element, such as in brake squeal problems, can give rise to unsymmetric system matrices. A generalized eigenvalue problem given by the following equation:

(14–215)

can be setup and solved using the mode-frequency analysis (ANTYPE,MODAL). The matrices [K] and [M] are the system stiffness and mass matrices, respectively. Either or both [K] and [M] can be unsymmetric. {ϕi} is called the eigenvector. It represents the right eigenvector. The left eigenvector, which is extracted for mode-superposition harmonic analysis (MODOPT with ModType = BOTH), satisfies the following equation:

(14–216)

where:

= ith left eigenmode

The method employed to solve the unsymmetric eigenvalue problem is a subspace approach based on a method designated as Frequency Derivative Method. The FD method uses an orthogonal set of Krylov sequence of vectors:

(14–217)

To obtain the expression for the sequence of vectors, the generalized eigenvalue Equation 14–215 is differentiated with respect to λi to get:

(14–218)

Substituting Equation 14–218 into Equation 14–215 and rearranging after applying a shift s, the starting expression for generating the sequence of vectors is given by:

(14–219)

(14–220)

where:

s = an initial shift

The general expression used for generating the sequence of vectors is given by:

(14–221)

This matrix equation is solved by a sparse matrix solver (EQSLV, SPARSE). However, an explicit specification of the equation solver (EQSLV command) is not needed.

The subspace made of these derivatives allows the program to find the closest eigensolutions from this shift point. The shift value s is initially determined using the FREQB value on the MODOPT command.

For a large number of eigenvalues, the UNSYM extraction algorithm is able to move automatically to a new shift if the first solve only finds a subset of eigensolutions. This process will be repeated until all the required eigenvalues are found, unless the algorithm fails several times to find any accurate eigenvalues.

A subspace transformation of Equation 14–215 is performed using the sequence of orthogonal vectors which leads to the reduced eigenproblem:

(14–222)

where:

[K*] = [Q]T[K] [Q]
[M*] = [Q]T[M] [Q]

The eigenvalues of the reduced eigenproblem (Equation 14–222) are extracted using a direct eigenvalue solution procedure. The eigenvalues μi are the approximate eigenvalues of the original eigenproblem and they converge to λi with increasing subspace size m. The converged eigenvectors are then computed using the subspace transformation equation:

(14–223)

This method does not perform a Sturm Sequence check for possible missing modes. At the lower end of the spectrum close to the shift (input as FREQB on MODOPT command), the frequencies usually converge without missing modes.

If the eigensolutions are real, the frequency (Hz) is output as:

If the eigensolutions are complex, the complex frequency (Hz) is output as:

For more information, see Complex Eigensolutions.

14.12.5. Subspace Method

The subspace eigensolver (accessed with BUCOPT,SUBSP and MODOPT,SUBSP) is applicable for buckling and modal analyses in which the system matrices are symmetric. This eigensolver uses basically the same algorithm as the unsymmetric eigensolver (accessed with MODOPT,UNSYM) to solve the generalized eigenvalue problem given by the following equation.

For buckling analysis:

(14–224)

where:

[K] = structural stiffness matrix
[S] = stress stiffness matrix
λi = ith eigenvalue (used to multiply the loads that generated [S])
i} = ith eigenvector of displacements

For modal analysis:

(14–225)

where:

[K] = structural stiffness matrix
[M] = mass matrix
λi = ith eigenvalue
i} = ith eigenvector of displacements

The advantage of the SUBSP method over the Block Lanczos method is that both the [K] and [S] / [M] matrices can be indefinite at the same time.

Buckling Analysis

Using the options of the BUCOPT command, the program can find the eigenvalues in one of two ways:

  • In a specified load multiplier range of interest (RangeKey = RANGE), or

  • Around an initial shift (RangeKey = CENTER).

Note that when using the CENTER option, the automatic (internal) shifting strategy of the algorithm is disabled. The eigenvalues found around the initial shift (CENTER value) are available; the solver may not find eigenvalues far away from the CENTER value.

Modal Analysis

Some options of the subspace algorithm can be set using the SUBOPT command. These include memory management and Sturm sequence check. By default, the Sturm check is turned off.

14.12.6. Damped Method

The damped eigensolver (accessed with MODOPT,DAMP) is applicable only when the system damping matrix needs to be included in Equation 14–214, where the eigenproblem becomes a quadratic eigenvalue problem given by:

(14–226)

where:

[C] = damping matrix

Matrices may be symmetric or unsymmetric.

The method employed to solve the damped eigenvalue problem is the same as for the UNSYM option. We first transform the initial quadratic equation (Equation 14–226) in a linear form applying the variable substitutions:

To form the equivalent UNSYM eigenvalue problem.

(14–227)

Solutions of Equation 14–226 and Equation 14–227 are equivalent, except that only the first-half part of the eigenvectors is considered.

The UNSYM method uses Equation 14–227. The default blocksize value to solve a Quadratic Damp Eigenproblem is set to four. This value can be controlled using the blocksize parameter of the MODOPT command.

This method does not perform a Sturm Sequence check for possible missing modes. At the lower end of the spectrum, close to the shift (input as FREQB on the MODOPT command), the frequencies usually converge without missing modes. By default, this method does not employ any shift strategy during the eigenvalue analysis. Use the DAMPOPT,SHIFT command to activate or deactivate the automated shift strategy.

The complex frequency (Hz) is output as:

For more information, see Complex Eigensolutions.

14.12.7. QR Damped Method

The QR damped method (accessed with MODOPT,QRDAMP) is a procedure for determining the complex eigenvalues and corresponding eigenvectors of damped linear systems. This eigensolver allows for nonsymmetric [K] and [C] matrices. The eigensolver is computationally efficient compared to the damped eigensolver (MODOPT,DAMP). This method employs the modal orthogonal coordinate transformation of system matrices to reduce the eigenvalue problem into the modal subspace. The QR algorithm is then used to calculate eigenvalues of the resulting quadratic eigenvalue problem in the modal subspace.

The equations that follow apply to Rayleigh and element-based damping in a QR Damped modal analysis. For the equations with constant structural damping (input with DMPSTR or MP,DMPS), refer to QR Damped Method with Constant Structural Damping.

The equations of elastic structural systems without external excitation can be written in the following form:

(14–228)

(See Equation 15–5 for definitions).

It has been recognized that performing computations in the modal subspace is more efficient than in the full eigenspace. The stiffness matrix [K] can be symmetrized by rearranging the unsymmetric contributions; that is, the original stiffness matrix [K] can be divided into symmetric and unsymmetric parts. By dropping the damping matrix [C] and the unsymmetric contributions of [K], the symmetric eigenvalue problem is first solved to find real eigenvalues and the corresponding eigenvectors. In the present implementation, the unsymmetric element stiffness matrix is zeroed out for the symmetric eigenvalue problem. Following is the coordinate transformation (see Equation 14–124) used to transform the full eigenvalue problem into modal subspace:

(14–229)

where:

[Φ] = eigenvector matrix normalized with respect to the mass matrix [M]
{y} = vector of modal coordinates

By using Equation 14–229 in Equation 14–228, we can write the differential equations of motion in the modal subspace as follows:

(14–230)

where:

2] = a diagonal matrix containing the first n eigen frequencies ωi

For classically damped systems, the modal damping matrix [Φ]T[C][Φ] is a diagonal matrix with the diagonal terms being 2ξiωi, where ξi is the damping ratio of the i-th mode. For non-classically damped systems, the modal damping matrix is either symmetric or unsymmetric. Unsymmetric stiffness contributions of the original stiffness are projected onto the modal subspace to compute the reduced unsymmetric modal stiffness matrix [Φ]T [Kunsym] [Φ].

Introducing the 2n-dimensional state variable vector approach, Equation 14–230 can be written in reduced form as follows:

(14–231)

where:

(14–232)

(14–233)

The 2n eigenvalues of Equation 14–231 are calculated using the QR algorithm (Press et al.([254])). The inverse iteration method (Wilkinson and Reinsch([354])) is used to calculate the complex modal subspace eigenvectors. The full complex eigenvector, {ψ}, of the original system is recovered using the following equation:

(14–234)

14.12.7.1. QR Damped Method with Constant Structural Damping

When a constant structural damping ratio is defined or an element generating a complex stiffness is present in a QR damped modal analysis with the complex mode shapes requested (Cpxmod = YES on MODOPT), the state-space matrix from Equation 14–233 becomes complex. This can be written as:

(14–235)

where:

= constant structural damping coefficient (input with DMPSTR)
= number of materials with MP,DMPS input
= constant structural damping coefficient for material j (input with MP,DMPS)
= portion of structural stiffness matrix based on material j
= number of elements with specified imaginary stiffness matrix
= imaginary element stiffness matrix

14.12.7.2. QR Damped Method Output

The QR Damped Method calculates 2n solutions, but only n solutions are output for post-processing: only the positive imaginary solution (positive frequency) is retained. In the case of high damping, all overdamped modes are also retained.

The complex frequency (Hz) is output as:

(14–236)

For more information, see Complex Eigensolutions.

14.12.8. Shifting

Various shifting strategies are used by most of the extraction methods in an effort to improve the accuracy, robustness, and efficiency of the algorithms. The logic on how those shift values are chosen is discussed in this section.

In some cases it is desirable to shift the values of eigenvalues either up or down. These fall in two categories:

  1. Shifting down, so that the solution of problems with rigid body modes does not require working with a singular matrix.

  2. Shifting up, so that the bottom range of eigenvalues will not be computed, because they had effectively been converted to negative eigenvalues. This will, in general, result in better accuracy for the higher modes. The shift introduced is:

(14–237)

where:

λ = desired eigenvalue
λ0 = eigenvalue shift
λi = eigenvalue that is extracted

λ0, the eigenvalue shift is computed as:

(14–238)

When using the Block Lanczos or PCG Lanczos method, if no user input is given for SHIFT (BUCOPT command) or FREQB (MODOPT command), the following logic is used:

(14–239)

where Mii and Kii are the diagonals of the [M] and [K] matrices, respectfully. The summation is taken over all terms where Kii ≠ 0 and where < 10e4. The number of such terms is n.

When using the PCG Lanczos method, if a Lev_Diff value of 1, 2, 3, or 4 is chosen (either automatically or by the user, see PCGOPT), then -λ0 from Equation 14–239 is used when rigid body modes are detected in order to avoid working with indefinite matrices with the PCG iterative solver. When using Lev_Diff = 5, λ0 is used as with the Block Lanczos method.

Equation 14–237 is combined with Equation 14–214 to give:

(14–240)

Rearranging,

(14–241)

or

(14–242)

where:

[K]' = [K] - λ0 [M]

It may be seen that if [K] is singular, as in the case of rigid body motion, [K]' will not be singular if [M] is not totally zero (which is normally true) and if λ0 is input as a non-zero number.

Once λi is computed, λ is computed from Equation 14–237 and reported.

14.12.9. Repeated Eigenvalues

Repeated eigenvalues occur, for example, for a thin, axisymmetric pole. Two independent sets of orthogonal motions are possible corresponding to the same frequency.

In this case, the eigenvectors are not unique, as there is an infinite number of correct solutions. The repeated eigenvectors can be computed accurately when all are extracted.

In the special case of two or more identical but disconnected structures run as one analysis, eigenvectors may include components from more than one substructure. To reduce confusion in such cases, you should run a separate analysis for each structure.

14.12.10. Complex Eigensolutions

For problems involving spinning structures with gyroscopic effects, and/or damped structural eigenfrequencies, the eigensolutions obtained with the Damped Method and QR Damped Method are complex. For problems involving frictional contact, such as brake squeal analyses, or problems involving structural damping, the eigensolutions obtained with the Damped Method, QR Damped Method, or Unsymmetric Method are also complex. The eigenvalues are given by:

(14–243)

where:

= complex eigenvalue (rd/s)
σi = real part of the eigenvalue (stability value)
ωi = imaginary part of the eigenvalue (damped frequency)
j =

Complex eigenvalues generally come in complex conjugate pairs, except when system matrices are unsymmetric and structural damping is present.

The complex eigenvectors can be mass normalized using the following equation:

(14–244)

where:

= complex transpose of
= mass normalized complex eigenvector

The eigenvectors can also be normalized to unity using MODOPT,,,,,,ON. The largest component value is 1.0 in this case. This is done by first finding the location of the maximum absolute value of the eigenvector. The complex component of the eigenvector at this location is denoted as . The unit-normalized eigenvector is given by:

(14–245)

where:

= unit normalized complex eigenvector

Note that when normalizing the damped eigenvectors, the normalization is performed on the first half of the eigenvectors and the original (non-augmented) mass matrix. See Damped Method for details on the augmented method for damped eigensolutions.

The dynamic response of the system is given by:

(14–246)

where:

t = time

The ith eigenvalue is stable if σi is negative and unstable if σi is positive. This does not apply to the UNSYM eigensolver when the eigenvalue is purely real. In this case, the sign of σi is not significant.

Complex Frequency

The complex frequency (Hz) is expressed as:

(14–247)

Modal damping ratio

The modal damping ratio is given by:

(14–248)

where:

αi = modal damping ratio of the ith eigenvalue

It is the ratio of the actual damping to the critical damping.

Logarithmic decrement

The logarithmic decrement represents the logarithm of the ratio of two consecutive peaks in the dynamic response (Equation 14–246). It can be expressed as:

(14–249)

where:

δi = logarithmic decrement of the ith eigenvalue
Ti = damped period of the ith eigenvalue defined by:

(14–250)

The logarithmic decrement defined in Equation 14–249 is consistent with the API (American Petroleum Institute) standards for rotating machinery. It is positive for stable motion and obtained by setting STABVAL = 3 on the PLCAMP and PRCAMP commands.