Eigenvalue
The Eigenvalue () study and study step are used to compute the eigenvalues and eigenmodes of a linear or linearized model in a generic eigenvalue formulation where the eigenvalues are not necessarily frequencies. The Eigenvalue study gives you full control of the eigenvalue formulation, in contrast to the eigenfrequency study that is adapted for specific physics interfaces. The Eigenvalue study is typically used for equation-based modeling.
Selecting an Eigenvalue study gives a solver configuration with an Eigenvalue Solver.
The Results While Solving, Physics and Variables Selection, Values of Dependent Variables, Store in Output, Mesh Selection, Adaptation and Error Estimates, and Geometric Entity Selection for Adaptation sections and the Include geometric nonlinearity checkbox are described in Common Study Step Settings. There is also detailed information in the Physics and Variables Selection and Values of Dependent Variables sections.
Study Settings
From the Eigenvalue solver list, choose ARPACK (the default), FEAST, LAPACK (filled matrix), or ARPACK nonlinear:
The ARPACK algorithm is based on an algorithmic variant of an Arnoldi process When the matrix A is symmetric it reduces to a variant of the Lanczos process. For its settings, see Study Settings for ARPACK and ARPACK Nonlinear below.
The FEAST algorithm uses an inverse residual iteration algorithm and seeks to accelerate the convergence of the subspace eigenvalue problem. It can be effective for finding clustered eigenvalues by using an ellipse to search within. For its settings, see Study Settings for FEAST.
The LAPACK algorithm is useful for finding all eigenvalues for a filled matrix. This option is only applicable for small eigenvalue problems. For its settings, see Study Settings for LAPACK (Filled Matrix).
The ARPACK nonlinear algorithm is capable of solving eigenvalue problems that are nonlinear with respect to the eigenvalue. For its settings, see Study Settings for ARPACK and ARPACK Nonlinear below.
For more information about these eigenvalue solvers, see The Eigenvalue Solver Algorithms.
Study Settings for ARPACK and ARPACK Nonlinear
From the Eigenvalue search method list, select a search method:
 Around shift (the default), to specify some search criteria manually. See Around Shift Eigenvalue Search Settings below.
 Rectangle, to define an eigenvalue search region in a complex plane. See Rectangular Eigenvalue Search Region Settings below and The Eigenvalue Solver Algorithms.
From the Unit list, choose a suitable unit (default rad/s).
Around Shift Eigenvalue Search Settings
By default, the physics interfaces suggest a suitable number of eigenvalues to search for. To specify the number of eigenvalues, select the checkbox in front of the Desired number of eigenvalues field to specify the number of eigenvalues you want the solver to return (default: 6).
By default, the physics interfaces suggest a suitable value around which to search for eigenvalues. To specify the value to search for eigenvalues around (shift), select the checkbox in front of the Search for eigenvalues around shift field; you can then specify a value or expression around which the eigenvalue solver should look for solutions to the eigenvalue equation (default: 0).
Use the Search method around shift list to control how the eigenvalue solver searches for eigenvalues around the specified shift value:
Select Closest in absolute value (the default value) to search for eigenvalues that are closest to the shift value when measuring the distance as an absolute value.
Select Larger real part to search for eigenvalues with a larger real part than the shift value.
Select Smaller real part to search for eigenvalues with a smaller real part than the shift value.
Select Larger imaginary part to search for eigenvalues with a larger imaginary part than the shift value.
Select Smaller imaginary part to search for eigenvalues with a smaller imaginary part than the shift value.
Rectangular Eigenvalue Search Region Settings
Use the Approximate number of eigenvalues field to specify the approximate number of eigenvalues you want the solver to return (default: 20). The value of the Approximate number of eigenvalues will affect the Dimension of Krylov space used by the algorithm; see the Advanced section of the Eigenvalue Solver. It means that increasing the value of the Approximate number of eigenvalues will increase the memory requirement and the computational time. If the solver indicates that the value of the Approximate number of eigenvalues is smaller than the actual number of eigenvalues in the given region, it will perform a search for more eigenvalues, which increases the computational time; see The Eigenvalue Region Algorithm. Within limits it is often more efficient to provide a too large value of Approximate number of eigenvalues than a too small.
In the Maximum number of eigenvalues field, you can specify a maximum number of eigenvalues to limit the eigenvalue solver’s search for additional eigenvalues (default: 200).
Under Rectangle search region, you define the size of the search region for eigenvalues as a rectangle in the complex plane by specifying the Smallest real part, Largest real part, Smallest imaginary part, and Largest imaginary part in the respective text fields. The search region also works as an interval method if the Smallest imaginary part and Largest imaginary part are equal; the eigenvalue solver then only considers the real axis and vice versa.
The Perform consistency check checkbox is available and selected by default to increase confidence that the solver finds all eigenvalues in the search region. The work required for performing the consistency check constitutes a significant part of the total work of the eigenvalue computation
Symmetry and Consistency Settings
Eigenvalue computations can be performed with a nonsymmetric solver or, if applicable, a real symmetric solver. From the Use real symmetric eigenvalue solver list, choose Automatic (the default) or Off. For the Automatic option there is the option to select the Real symmetric eigenvalue solver consistency check checkbox. This consistency check increases the computational time and memory requirements but provides a rigorous check of the applicability of the real symmetric solver.
Additional Settings for ARPACK Nonlinear
The following settings are only available when you have chosen ARPACK nonlinear from the Eigenvalue solver list.
Use the Taylor expansion truncation list to specify in which way to truncate the Taylor expansion in order to approximate the nonlinear dependence in λ with a polynomial. There are two options: Tolerance and Fixed truncation.
With the Tolerance option, specifying a Maximum degree of the Taylor expansion (default: 5), all the latest Taylor coefficients that are smaller then the specified Tolerance (default: 1·e12) will be disregarded.
With the Fixed truncation option, the number of Taylor coefficients to keep is specified in Degree of the Taylor expansion (default: 3), and no further approximation is performed.
The eigenvalue scaling factor is useful in certain applications where the nonlinear dependence has a small scale in the equations but not in the solution. In this case, the eigenvalue scaling factor is changing λ with c·λ where c is specified in the Eigenvalue scaling factor field (default: 1). This scaling is only done for internal computation, and the output is scaled back.
Study Settings for FEAST
Using the FEAST eigenvalue solver, you can define an ellipse to explicitly exclude the eigenvalues outside the ellipse. Choosing a suitable search region determines which eigenvalues that will be returned for results analysis.
From the Eigenvalue search method list, select a search method:
Ellipse (the default), to define an eigenvalue search contour as an ellipse in a complex plane. See Ellipse Search Region settings below.
Half ellipse (Hermitian problem), to define an eigenvalue search contour by half of the whole ellipse. See Half Ellipse Search Region below.
For an eigenvalue problem for which you know how many eigenvalues there are, the solver can compute the eigenvalues directly. For that case, choose Manual from the Number of eigenvalues list and enter the desired number of eigenvalues in the Approximate number of eigenvalues field. If you do not know the number of eigenvalues in the defined region, there are two cases: You can just estimate the number of eigenvalues without computing them, or you can let the software estimate the number of eigenvalues and then compute them automatically afterward. The former is achieved by clicking the Stochastic Estimation button () at the top right of the Study Settings section. The latter is achieved by choosing Stochastic estimation from the Number of eigenvalues list, and then click Compute. Both cases require doing stochastic estimation, which needs the setting of an Approximate number of eigenvalues field as an initial guess in the estimation stage.
There is an option to select the Store linear system factorization checkbox. If selected, linear system factorizations are stored from the first FEAST iteration and reused in later iterations.
If the Study > Batch and Cluster checkbox is selected in the Show More Options dialog, select the Distribute linear system solution checkbox to run the FEAST eigenvalue solver in parallel. See Running FEAST in a Parallel MPI Mode for more information.
From the Unit list, choose a suitable unit (default rad/s).
Ellipse Search Region
You define the Ellipse by specifying the Center, Real semiaxis, Imaginary semiaxis, and Rotation angle in the respective text fields. It is important that the real semiaxis that you specify in the Real semiaxis field is large enough to enclose the eigenvalues of interest. In the Imaginary semiaxis field, you specify the imaginary semiaxis in a similar way. In the Rotation angle field, specify the rotation angle in degrees from the vertical axis in the range of 180 degrees to 180 degrees.
The Stochastic Estimation works as a Compute to Selected step. Because the Stochastic Estimation action does not solve the eigenvalue problem, there will not be any valid solution from this action. So, if the Stochastic Estimation action is done for a single step or the first step in a multistep study, there will not be any solution that can be used for postprocessing and results analysis. If the action is done for a step after the first step in a multistep study, the main solution of the sequence corresponds to the study step right before the eigenstep for which the estimation is done.
Half Ellipse Search Region
You define the Half ellipse (Hermitian problem) by specifying the Smallest real part, Largest real part, and Imaginary semiaxis in the respective text fields.
Symmetry and Consistency Settings
For the Ellipse eigenvalue search method, eigenvalue computations can be performed with a nonsymmetric solver or, if applicable, a real symmetric solver. From the Use real symmetric or Hermitian eigenvalue solver list, choose Automatic (the default) or Off. For the Automatic option there is the option to select the Real symmetric or Hermitian eigenvalue solver consistency check checkbox. This consistency check increases the computational time and memory requirements but provides a rigorous check of the applicability of the real symmetric solver.
Study Settings for LAPACK (Filled Matrix)
To specify a shift to use in the modes computation, select the Shift used in the modes computation checkbox and then enter a shift (in rad/s) in the associated text field.
In the Maximum matrix size field, enter an upper limit on the matrix size (default: 2000).
From the Unit list, choose a suitable unit (default: rad/s).
Values of Linearization Point
Use the settings in this section to specify a linearization point.
From the Settings list, choose Physics controlled (the default) to use linearization point settings controlled by the physics interfaces. Choose User defined to specify the linearization point using the Method list. Select:
Initial expression to use the expressions specified on the Initial Values nodes under a specific physics interface as a linearization point.
 Solution to use a solution as a linearization point.
Use the Study list to specify which solution to use from the available studies. Select:
Zero solution to use a linearization point that is identically equal to zero.
Any other available solution to use it as a linearization point. It can be the current solution in the sequence, or a solution from another sequence, or a solution that was stored with the Solution Store node. You select a stored solution by changing Use to the name of the stored solution. Choose a solution using the Selection list (see Values of Dependent Variables under Common Study Step Settings).
Filtering and Sorting
Filtering
The eigenvalues can be excluded if there is a filter expression that they do not satisfy. In the table below, in the Filter expression (store if true or >0) column, add expressions for the filtering Those expressions can be functions of the eigenvalue lambda or eigenfrequency freq and can be logical expressions such as lambda>10. If desired, add some descriptive text in the Description column for the expressions.
The Store solutions list is always available: Choose All converged solutions (the default) or First Nth for the first Nth solutions. Then specify that number in the Maximum number of stored solutions field (default: 1000).
Sorting
The eigenvalues can be sorted in Ascending (the default) or Descending order depending on the Ordering setting. When the Sorting method is Predefined, you can choose to Sort primarily based on the Real part, Imaginary part, Real part magnitude, Imaginary part magnitude, or Absolute value. The same settings are available for the Sort secondly option, which is used to resolve conflicts. The defaults for eigenvalues are Real part for Sort primarily and Imaginary part magnitude for Sort secondly. For eigenfrequencies, the defaults are Imaginary part for Sort primarily and Imaginary part magnitude for Sort secondly. Also, the Sort based on transformed eigenvalues checkbox is selected by default to take and eigenvalue transformation into account when sorting.
Alternatively, Manual can be chosen for the Sorting method and then an arbitrary number of (ordered) custom sorting priority expressions can be defined in the table that appears. In the Sorting priority expression column, add expressions for the sorting, in order of priority. Those expressions can be functions of the eigenvalue lambda or eigenfrequency freq. For example, you can specify an expression such as abs(freq-1) to sort according to the distance from a given shift (1 in this case). If desired, add some descriptive text in the Description column for the expressions.
The Conjugate-pair consecutive sort checkbox is selected by default to make sure that complex-conjugate eigenpairs appear one after the other, regardless of the sorting rules.
Study Extensions
This section contains some optional extensions of the study, such as auxiliary sweeps (see Common Study Step Settings). Adding an auxiliary parametric sweep adds an Eigenvalue Parametric attribute node to the Eigenvalue Solver.
ARPACK Settings
If you have selected ARPACK as the Eigenvalue solver and selected the Auxiliary sweep checkbox, these additional settings are available:
With the ARPACK eigenvalue solver, you can supply a starting vector for the eigenvalue computation. Doing so can accelerate convergence if a series of closely related problems are to be solved. More precisely, the convergence and the computation time can be reduced if an approximation of the solution is given. In this case, the starting vector should be a linear combination of the given approximation of the eigenvectors, and the shift should be located close to the given approximation of the eigenvalues. The following settings are related to ARPACK:
From the ARPACK starting vector list, choose Default, giving a random starting vector, or From previous eigenvectors. If you chose From previous eigenvectors, a From previous eigenvectors list appears, where you can choose Summation of all eigenvectors (the default) or Eigenvector with eigenvalue closest to the shift as the new starting vector. These options can always be used without compromising the convergence. Use Summation of all eigenvectors when more than one eigenpair is requested. Use Eigenvector with eigenvalue closest to the shift when only one eigenpair is requested.
From the ARPACK shift list, choose As specified (the default) or Based on eigenvalues for last parameter. If you chose Based on eigenvalues for last parameter, also choose an option from the From previous eigenvalues list that appears: Choose Average of converged eigenvalues (the default) or Eigenvalue closest to the previous shift. In the case where the eigenvalue shift value has not been parameterized, these options could be useful, but use them only if the eigenvalues are expected to have a small variation between two consecutive parameters. If this is not the case, ARPACK may converge to unwanted eigenpairs. Use Average of converged eigenvalues when the wanted eigenvalues are “around” the shift. More precisely, when the shift is an “internal point” of the convex hull of the wanted eigenvalues. Use Eigenvalue closest to previous shift if the shift is an “external point” of the convex hull of the wanted eigenvalues. For example, if the eigenvalues are known to have positive real part and the shift is set to zero.
The shift corresponds to the value of the Search for eigenvalues around field in the Study Settings section. The eigenpairs, computed with respect to the previous parameter, are ordered from the closest to the shift to the one farthest from the shift.
Distribute Parametric Solver
If you are running an auxiliary sweep and want to distribute it by sending one parameter value to each compute node, select the Distribute parametric solver checkbox. To enable this option, click the Show More Options button () and select Batch and Cluster in the Show More Options dialog.