Rayleigh–Ritz method

The Rayleigh–Ritz method is a direct numerical method of approximating eigenvalues, originated in the context of solving physical boundary value problems and named after Lord Rayleigh and Walther Ritz.

In this method, an infinite-dimensional linear operator is approximated by a finite-dimensional compression, on which we can use an eigenvalue algorithm.

It is used in all applications that involve approximating eigenvalues and eigenvectors, often under different names. In quantum mechanics, where a system of particles is described using a Hamiltonian, the Ritz method uses trial wave functions to approximate the ground state eigenfunction with the lowest energy. In the finite element method context, mathematically the same algorithm is commonly called the Ritz-Galerkin method. The Rayleigh–Ritz method or Ritz method terminology is typical in mechanical and structural engineering to approximate the eigenmodes and resonant frequencies of a structure.

Naming and attribution
The name of the method and its origin story have been debated by historians. It has been called Ritz method after Walther Ritz, since the numerical procedure has been published by Walther Ritz in 1908-1909. According to A. W. Leissa, Lord Rayleigh wrote a paper congratulating Ritz on his work in 1911, but stating that he himself had used Ritz's method in many places in his book and in another publication. This statement, although later disputed, and the fact that the method in the trivial case of a single vector results in the Rayleigh quotient make the case for the name Rayleigh–Ritz method. According to S. Ilanko, citing Richard Courant, both Lord Rayleigh and Walther Ritz independently conceived the idea of utilizing the equivalence between boundary value problems of partial differential equations on the one hand and problems of the calculus of variations on the other hand for numerical calculation of the solutions, by substituting for the variational problems simpler approximating extremum problems in which a finite number of parameters need to be determined. Ironically for the debate, the modern justification of the algorithm drops the calculus of variations in favor of the simpler and more general approach of orthogonal projection as in Galerkin method named after Boris Galerkin, thus leading also to the Ritz-Galerkin method naming.

Method
Let $$T$$ be a linear operator on a Hilbert space $$\mathcal{H}$$, with inner product $$(\cdot, \cdot)$$. Now consider a finite set of functions $$\mathcal{L} = \{\varphi_1, ...,\varphi_n\}$$. Depending on the application these functions may be:


 * A subset of the orthonormal basis of the original operator;
 * A space of splines (as in the Galerkin method);
 * A set of functions which approximate the eigenfunctions of the operator.

One could use the orthonormal basis generated from the eigenfunctions of the operator, which will produce diagonal approximating matrices, but in this case we would have already had to calculate the spectrum.

We now approximate $$T$$ by $$T_{\mathcal{L}}$$, which is defined as the matrix with entries

$$(T_{\mathcal{L}})_{i,j} = (T \varphi_i, \varphi_j).$$

and solve the eigenvalue problem $$T_{\mathcal{L}}u = \lambda u$$. It can be shown that the matrix $$T_{\mathcal{L}}$$ is the compression of $$T$$ to $$\mathcal{L}$$.

For differential operators (such as Sturm-Liouville operators), the inner product $$(\cdot, \cdot)$$ can be replaced by the weak formulation $$\mathcal{A}(\cdot, \cdot)$$.

If a subset of the orthonormal basis was used to find the matrix, the eigenvectors of $$T_{\mathcal{L}}$$ will be linear combinations of orthonormal basis functions, and as a result they will be approximations of the eigenvectors of $$T$$.

Spectral pollution
It is possible for the Rayleigh–Ritz method to produce values which do not converge to actual values in the spectrum of the operator as the truncation gets large. These values are known as spectral pollution. In some cases (such as for the Schrödinger equation), there is no approximation which both includes all eigenvalues of the equation, and contains no pollution.

The spectrum of the compression (and thus pollution) is bounded by the numerical range of the operator; in many cases it is bounded by a subset of the numerical range known as the essential numerical range.

For matrix eigenvalue problems
In numerical linear algebra, the Rayleigh–Ritz method is commonly applied to approximate an eigenvalue problem $$ A \mathbf{x} = \lambda \mathbf{x}$$ for the matrix $$ A \in \mathbb{C}^{N \times N}$$ of size $$N$$ using a projected matrix of a smaller size $$m < N$$, generated from a given matrix $$ V \in \mathbb{C}^{N \times m} $$ with orthonormal columns. The matrix version of the algorithm is the most simple:


 * 1) Compute the $$ m \times m $$ matrix $$ V^* A V $$, where $$V^*$$ denotes the complex-conjugate transpose of $$V$$
 * 2) Solve the eigenvalue problem $$ V^* A V \mathbf{y}_i = \mu_i \mathbf{y}_i$$
 * 3) Compute the Ritz vectors $$\tilde{\mathbf{x}}_i = V \mathbf{y}_i$$ and the Ritz value $$\tilde{\lambda}_i=\mu_i$$
 * 4) Output approximations $$(\tilde{\lambda}_i,\tilde{\mathbf{x}}_i)$$, called the Ritz pairs, to eigenvalues and eigenvectors of the original matrix $$A$$.

If the subspace with the orthonormal basis given by the columns of the matrix $$ V \in \mathbb{C}^{N \times m} $$ contains $$ k \leq m $$ vectors that are close to eigenvectors of the matrix $$A$$, the Rayleigh–Ritz method above finds $$k$$ Ritz vectors that well approximate these eigenvectors. The easily computable quantity $$ \| A \tilde{\mathbf{x}}_i - \tilde{\lambda}_i \tilde{\mathbf{x}}_i\|$$ determines the accuracy of such an approximation for every Ritz pair.

In the easiest case $$m = 1$$, the $$ N \times m $$ matrix $$V$$ turns into a unit column-vector $$v$$, the $$ m \times m $$ matrix $$ V^* A V $$ is a scalar that is equal to the Rayleigh quotient $$\rho(v) = v^*Av/v^*v$$, the only $$i = 1$$ solution to the eigenvalue problem is $$y_i = 1$$ and $$\mu_i = \rho(v)$$, and the only one Ritz vector is $$v$$ itself. Thus, the Rayleigh–Ritz method turns into computing of the Rayleigh quotient if $$m = 1$$.

Another useful connection to the Rayleigh quotient is that $$\mu_i = \rho(v_i)$$ for every Ritz pair $$(\tilde{\lambda}_i, \tilde{\mathbf{x}}_i)$$, allowing to derive some properties of Ritz values $$\mu_i$$ from the corresponding theory for the Rayleigh quotient. For example, if $$A$$ is a Hermitian matrix, its Rayleigh quotient (and thus its every Ritz value) is real and takes values within the closed interval of the smallest and largest eigenvalues of $$A$$.

Example
The matrix $$A = \begin{bmatrix} 2 & 0 & 0 \\ 0 & 2 & 1 \\ 0 & 1 & 2 \end{bmatrix}$$ has eigenvalues $$1, 2, 3$$ and the corresponding eigenvectors $$\mathbf x_{\lambda=1} = \begin{bmatrix} 0 \\ 1 \\ -1 \end{bmatrix}, \quad \mathbf x_{\lambda=2} = \begin{bmatrix} 1 \\ 0 \\ 0 \end{bmatrix}, \quad \mathbf x_{\lambda=3} = \begin{bmatrix} 0 \\ 1 \\ 1 \end{bmatrix}.$$ Let us take $$V = \begin{bmatrix} 0 & 0 \\ 1 & 0 \\ 0 & 1 \end{bmatrix},$$ then $$V^* A V = \begin{bmatrix} 2 & 1 \\ 1 & 2 \end{bmatrix}$$ with eigenvalues $$1, 3$$ and the corresponding eigenvectors $$\mathbf y_{\mu=1} = \begin{bmatrix} 1 \\ -1 \end{bmatrix}, \quad \mathbf y_{\mu=3} = \begin{bmatrix} 1 \\ 1 \end{bmatrix},$$ so that the Ritz values are $$1, 3$$ and the Ritz vectors are $$\mathbf \tilde{x}_{\tilde{\lambda}=1} = \begin{bmatrix} 0 \\ 1 \\ -1 \end{bmatrix}, \quad \mathbf \tilde{x}_{\tilde{\lambda}=3} = \begin{bmatrix} 0 \\ 1 \\ 1 \end{bmatrix}.$$ We observe that each one of the Ritz vectors is exactly one of the eigenvectors of $$A$$ for the given $$V$$ as well as the Ritz values give exactly two of the three eigenvalues of $$A$$. A mathematical explanation for the exact approximation is based on the fact that the column space of the matrix $$V$$ happens to be exactly the same as the subspace spanned by the two eigenvectors $$\mathbf x_{\lambda=1}$$ and $$\mathbf x_{\lambda=3}$$ in this example.

For matrix singular value problems
Truncated singular value decomposition (SVD) in numerical linear algebra can also use the Rayleigh–Ritz method to find approximations to left and right singular vectors of the matrix $$ M \in \mathbb{C}^{M \times N}$$ of size $$M \times N$$ in given subspaces by turning the singular value problem into an eigenvalue problem.

Using the normal matrix
The definition of the singular value $$\sigma$$ and the corresponding left and right singular vectors is $$M v = \sigma u$$ and $$M^* u = \sigma v$$. Having found one set (left of right) of approximate singular vectors and singular values by applying naively the Rayleigh–Ritz method to the Hermitian normal matrix $$ M^* M \in \mathbb{C}^{N \times N}$$ or $$ M M^* \in \mathbb{C}^{M \times M}$$, whichever one is smaller size, one could determine the other set of left of right singular vectors simply by dividing by the singular values, i.e., $$u = Mv / \sigma$$ and $$v = M^* u / \sigma$$. However, the division is unstable or fails for small or zero singular values.

An alternative approach, e.g., defining the normal matrix as $$ A = M^* M \in \mathbb{C}^{N \times N}$$ of size $$N \times N$$, takes advantage of the fact that for a given $$N \times m$$ matrix $$ W \in \mathbb{C}^{N \times m} $$ with orthonormal columns the eigenvalue problem of the Rayleigh–Ritz method for the $$m \times m$$ matrix $$ W^* A W = W^* M^* M W = (M W)^* M W$$ can be interpreted as a singular value problem for the $$N \times m$$ matrix $$M W$$. This interpretation allows simple simultaneous calculation of both left and right approximate singular vectors as follows.


 * 1) Compute the $$ N \times m $$ matrix $$ M W $$.
 * 2) Compute the thin, or economy-sized, SVD $$ M W = \mathbf {U} \Sigma \mathbf V_h,$$ with $$N \times m$$ matrix $$\mathbf U$$, $$m \times m$$ diagonal matrix $$\Sigma$$, and $$m \times m$$ matrix $$\mathbf {V}_h$$.
 * 3) Compute the matrices of the Ritz left $$U = \mathbf U$$ and right $$V_h = \mathbf {V}_h W^*$$ singular vectors.
 * 4) Output approximations $$U, \Sigma, V_h$$, called the Ritz singular triplets, to selected singular values and the corresponding left and right singular vectors of the original matrix $$M$$ representing an approximate Truncated singular value decomposition (SVD) with left singular vectors restricted to the column-space of the matrix $$W$$.

The algorithm can be used as a post-processing step where the matrix $$W$$ is an output of an eigenvalue solver, e.g., such as LOBPCG, approximating numerically selected eigenvectors of the normal matrix $$ A = M^* M$$.

Example
The matrix $$M = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 2 & 0 & 0 \\ 0 & 0 & 3 & 0 \\ 0 & 0 & 0 & 4 \\ 0 & 0 & 0 & 0 \end{bmatrix}$$ has its normal matrix $$A = M^* M = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 4 & 0 & 0 \\ 0 & 0 & 9 & 0 \\ 0 & 0 & 0 & 16 \\ \end{bmatrix},$$ singular values $$1, 2, 3, 4$$ and the corresponding thin SVD $$A = \begin{bmatrix} 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \\ 0 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \end{bmatrix} \begin{bmatrix} 4 & 0 & 0 & 0 \\ 0 & 3 & 0 & 0 \\ 0 & 0 & 2 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \\ 0 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 \end{bmatrix},$$ where the columns of the first multiplier from the complete set of the left singular vectors of the matrix $$A$$, the diagonal entries of the middle term are the singular values, and the columns of the last multiplier transposed (although the transposition does not change it) $$ \begin{bmatrix} 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \\ 0 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 \end{bmatrix}^* \quad = \quad \begin{bmatrix} 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \\ 0 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 \end{bmatrix} $$ are the corresponding right singular vectors.

Let us take $$W = \begin{bmatrix} 1 / \sqrt{2} & 1 / \sqrt{2} \\ 1 / \sqrt{2} & -1 / \sqrt{2} \\ 0 & 0 \\ 0 & 0 \end{bmatrix}$$ with the column-space that is spanned by the two exact right singular vectors $$\begin{bmatrix} 0 & 1 \\ 1 & 0 \\ 0 & 0 \\ 0 & 0 \end{bmatrix}$$ corresponding to the singular values 1 and 2.

Following the algorithm step 1, we compute $$MW = \begin{bmatrix} 1 / \sqrt{2} & 1 / \sqrt{2} \\ \sqrt{2} & -\sqrt{2} \\ 0 & 0 \\ 0 & 0 \end{bmatrix},$$ and on step 2 its thin SVD $$ M W = \mathbf {U}\mathbf {V}_h$$ with $$ \mathbf {U} = \begin{bmatrix} 0 & 1 \\ 1 & 0 \\ 0 & 0 \\ 0 & 0 \\ 0 & 0 \end{bmatrix}, \quad \Sigma = \begin{bmatrix} 2 & 0 \\ 0 & 1 \end{bmatrix}, \quad \mathbf {V}_h = \begin{bmatrix} 1 / \sqrt{2} & -1 / \sqrt{2} \\ 1 / \sqrt{2} & 1 / \sqrt{2} \end{bmatrix}. $$ Thus we already obtain the singular values 2 and 1 from $$\Sigma$$ and from $$\mathbf {U}$$ the corresponding two left singular vectors $$u$$ as $$[0, 1, 0, 0, 0]^*$$ and $$[1, 0, 0, 0, 0]^*$$, which span the column-space of the matrix $$W$$, explaining why the approximations are exact for the given $$W$$.

Finally, step 3 computes the matrix $$V_h = \mathbf {V}_h W^*$$ $$\mathbf {V}_h = \begin{bmatrix} 1 / \sqrt{2} & -1 / \sqrt{2} \\ 1 / \sqrt{2} & 1 / \sqrt{2} \end{bmatrix} \, \begin{bmatrix} 1 / \sqrt{2} & 1 / \sqrt{2} & 0 & 0 \\ 1 / \sqrt{2} & -1 / \sqrt{2} & 0 & 0 \end{bmatrix} = \begin{bmatrix} 0 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 \end{bmatrix}$$ recovering from its rows the two right singular vectors $$v$$ as $$[0, 1, 0, 0]^*$$ and $$[1, 0, 0, 0]^*$$. We validate the first vector: $$M v = \sigma u$$ $$ \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 2 & 0 & 0 \\ 0 & 0 & 3 & 0 \\ 0 & 0 & 0 & 4 \\ 0 & 0 & 0 & 0 \end{bmatrix} \, \begin{bmatrix} 0 \\ 1 \\ 0 \\ 0 \end{bmatrix} = \, 2 \, \begin{bmatrix} 0 \\ 1 \\ 0 \\ 0 \\ 0 \end{bmatrix} $$ and $$M^* u = \sigma v$$ $$ \begin{bmatrix} 1 & 0 & 0 & 0 & 0 \\ 0 & 2 & 0 & 0 & 0 \\ 0 & 0 & 3 & 0 & 0 \\ 0 & 0 & 0 & 4 & 0 \end{bmatrix} \, \begin{bmatrix} 0 \\ 1 \\ 0 \\ 0 \\ 0 \end{bmatrix} = \, 2 \, \begin{bmatrix} 0 \\ 1 \\ 0 \\ 0 \end{bmatrix}. $$ Thus, for the given matrix $$W$$ with its column-space that is spanned by two exact right singular vectors, we determine these right singular vectors, as well as the corresponding left singular vectors and the singular values, all exactly. For an arbitrary matrix $$W$$, we obtain approximate singular triplets which are optimal given $$W$$ in the sense of optimality of the Rayleigh–Ritz method.

In quantum physics
In quantum physics, where the spectrum of the Hamiltonian is the set of discrete energy levels allowed by a quantum mechanical system, the Rayleigh–Ritz method is used to approximate the energy states and wavefunctions of a complicated atomic or nuclear system. In fact, for any system more complicated than a single hydrogen atom, there is no known exact solution for the spectrum of the Hamiltonian.

In this case, a trial wave function, $$\Psi$$, is tested on the system. This trial function is selected to meet boundary conditions (and any other physical constraints). The exact function is not known; the trial function contains one or more adjustable parameters, which are varied to find a lowest energy configuration.

It can be shown that the ground state energy, $$E_0$$, satisfies an inequality: $$ E_0 \le \frac{\langle \Psi | \hat{H}| \Psi \rangle}{\langle \Psi | \Psi \rangle}. $$

That is, the ground-state energy is less than this value. The trial wave-function will always give an expectation value larger than or equal to the ground-energy.

If the trial wave function is known to be orthogonal to the ground state, then it will provide a boundary for the energy of some excited state.

The Ritz ansatz function is a linear combination of N known basis functions $$\left\lbrace\Psi_i\right\rbrace$$, parametrized by unknown coefficients: $$ \Psi = \sum_{i=1}^N c_i \Psi_i. $$

With a known Hamiltonian, we can write its expected value as $$ \varepsilon = \frac{\left\langle \displaystyle\sum_{i=1}^N c_i\Psi_i \right| \hat{H} \left| \displaystyle\sum_{i=1}^Nc_i\Psi_i \right\rangle}{\left\langle \left. \displaystyle\sum_{i=1}^N c_i\Psi_i \right| \displaystyle\sum_{i=1}^Nc_i\Psi_i \right\rangle} = \frac{\displaystyle\sum_{i=1}^N\displaystyle\sum_{j=1}^Nc_i^*c_jH_{ij}}{\displaystyle\sum_{i=1}^N\displaystyle\sum_{j=1}^Nc_i^*c_jS_{ij}} \equiv \frac{A}{B}. $$

The basis functions are usually not orthogonal, so that the overlap matrix S has nonzero nondiagonal elements. Either $$\left\lbrace c_i \right\rbrace$$ or $$\left\lbrace c_i^* \right\rbrace$$ (the conjugation of the first) can be used to minimize the expectation value. For instance, by making the partial derivatives of $$\varepsilon$$ over $$\left\lbrace c_i^* \right\rbrace$$ zero, the following equality is obtained for every k = 1, 2, ..., N: $$ \frac{\partial\varepsilon}{\partial c_k^*} = \frac{\displaystyle\sum_{j=1}^Nc_j(H_{kj}-\varepsilon S_{kj})}{B} = 0, $$ which leads to a set of N secular equations: $$\sum_{j=1}^N c_j \left( H_{kj} - \varepsilon S_{kj} \right) = 0 \quad \text{for} \quad k = 1,2,\dots,N. $$

In the above equations, energy $$\varepsilon$$ and the coefficients $$\left\lbrace c_j \right\rbrace$$ are unknown. With respect to c, this is a homogeneous set of linear equations, which has a solution when the determinant of the coefficients to these unknowns is zero: $$\det \left( H - \varepsilon S \right) = 0, $$ which in turn is true only for N values of $$\varepsilon$$. Furthermore, since the Hamiltonian is a hermitian operator, the H matrix is also hermitian and the values of $$\varepsilon_i$$ will be real. The lowest value among $$\varepsilon_i$$ (i=1,2,..,N), $$\varepsilon_0$$, will be the best approximation to the ground state for the basis functions used. The remaining N-1 energies are estimates of excited state energies. An approximation for the wave function of state i can be obtained by finding the coefficients $$\left\lbrace c_j \right\rbrace$$ from the corresponding secular equation.

In mechanical engineering
The Rayleigh–Ritz method is often used in mechanical engineering for finding the approximate real resonant frequencies of multi degree of freedom systems, such as spring mass systems or flywheels on a shaft with varying cross section. It is an extension of Rayleigh's method. It can also be used for finding buckling loads and post-buckling behaviour for columns.

Consider the case whereby we want to find the resonant frequency of oscillation of a system. First, write the oscillation in the form, $$y(x,t) = Y(x) \cos\omega t$$ with an unknown mode shape $$Y(x)$$. Next, find the total energy of the system, consisting of a kinetic energy term and a potential energy term. The kinetic energy term involves the square of the time derivative of $$y(x,t)$$ and thus gains a factor of $$\omega ^2$$. Thus, we can calculate the total energy of the system and express it in the following form: $$E = T + V \equiv A[Y(x)] \omega^2\sin^2 \omega t + B[Y(x)] \cos^2 \omega t$$

By conservation of energy, the average kinetic energy must be equal to the average potential energy. Thus, $$\omega^2 = \frac{B[Y(x)]}{A[Y(x)]} = R[Y(x)]$$ which is also known as the Rayleigh quotient. Thus, if we knew the mode shape $$Y(x)$$, we would be able to calculate $$A[Y(x)]$$ and $$B[Y(x)]$$, and in turn get the eigenfrequency. However, we do not yet know the mode shape. In order to find this, we can approximate $$Y(x)$$ as a combination of a few approximating functions $$Y_i(x)$$ $$Y(x) = \sum_{i=1}^N c_i Y_i(x)$$ where $$c_1,c_2,\cdots,c_N$$ are constants to be determined. In general, if we choose a random set of $$c_1,c_2,\cdots,c_N$$, it will describe a superposition of the actual eigenmodes of the system. However, if we seek $$c_1,c_2,\cdots,c_N$$ such that the eigenfrequency $$\omega^2$$ is minimised, then the mode described by this set of $$c_1,c_2,\cdots,c_N$$ will be close to the lowest possible actual eigenmode of the system. Thus, this finds the lowest eigenfrequency. If we find eigenmodes orthogonal to this approximated lowest eigenmode, we can approximately find the next few eigenfrequencies as well.

In general, we can express $$A[Y(x)]$$ and $$B[Y(x)]$$ as a collection of terms quadratic in the coefficients $$c_i$$: $$B[Y(x)] = \sum_i \sum_j c_i c_j K_{ij} = \mathbf{c}^\mathsf{T} K \mathbf{c}$$ $$A[Y(x)] = \sum_i \sum_j c_i c_j M_{ij} = \mathbf{c}^\mathsf{T} M \mathbf{c}$$ where $$K$$ and $$M$$ are the stiffness matrix and mass matrix of a discrete system respectively.

The minimization of $$\omega^2$$ becomes: $$\frac{\partial \omega^2}{\partial c_i} = \frac{\partial}{\partial c_i} \frac{\mathbf{c}^\mathsf{T} K \mathbf{c}}{\mathbf{c}^\mathsf{T} M \mathbf{c}} = 0$$

Solving this, $$\mathbf{c}^\mathsf{T} M \mathbf{c}\frac{\partial \mathbf{c}^\mathsf{T} K \mathbf{c}}{\partial \mathbf{c}} - \mathbf{c}^\mathsf{T} K \mathbf{c} \frac{\partial \mathbf{c}^\mathsf{T} M \mathbf{c}}{\partial \mathbf{c}} = 0$$ $$K \mathbf c - \frac{\mathbf{c}^\mathsf{T} K \mathbf{c}}{\mathbf{c}^\mathsf{T} M \mathbf{c}}M\mathbf{c} = \mathbf{0}$$ $$K \mathbf{c} - \omega^2 M \mathbf{c} = \mathbf{0}$$

For a non-trivial solution of c, we require determinant of the matrix coefficient of c to be zero. $$\det(K - \omega^2 M)=0$$

This gives a solution for the first N eigenfrequencies and eigenmodes of the system, with N being the number of approximating functions.

Simple case of double spring-mass system
The following discussion uses the simplest case, where the system has two lumped springs and two lumped masses, and only two mode shapes are assumed. Hence $M = [m_{1}, m_{2}]$ and $K = [k_{1}, k_{2}]$.

A mode shape is assumed for the system, with two terms, one of which is weighted by a factor B, e.g. Y = [1, 1] + B[1, −1]. Simple harmonic motion theory says that the velocity at the time when deflection is zero, is the angular frequency $$\omega$$ times the deflection (y) at time of maximum deflection. In this example the kinetic energy (KE) for each mass is $\frac{1}{2}\omega^2 Y_1^2 m_1$ etc., and the potential energy (PE) for each spring is $\frac{1}{2} k_1 Y_1^2$  etc.

We also know that without damping, the maximal KE equals the maximal PE. Thus, $$\sum_{i=1}^2 \left(\frac{1}{2} \omega^2 Y_i^2 M_i\right)=\sum_{i=1}^2 \left(\frac{1}{2} K_i Y_i^2\right)$$

The overall amplitude of the mode shape cancels out from each side, always. That is, the actual size of the assumed deflection does not matter, just the mode shape.

Mathematical manipulations then obtain an expression for $$\omega$$, in terms of B, which can be differentiated with respect to B, to find the minimum, i.e. when $$d\omega/dB=0$$. This gives the value of B for which $$\omega$$ is lowest. This is an upper bound solution for $$\omega$$ if $$\omega$$ is hoped to be the predicted fundamental frequency of the system because the mode shape is assumed, but we have found the lowest value of that upper bound, given our assumptions, because B is used to find the optimal 'mix' of the two assumed mode shape functions.

There are many tricks with this method, the most important is to try and choose realistic assumed mode shapes. For example, in the case of beam deflection problems it is wise to use a deformed shape that is analytically similar to the expected solution. A quartic may fit most of the easy problems of simply linked beams even if the order of the deformed solution may be lower. The springs and masses do not have to be discrete, they can be continuous (or a mixture), and this method can be easily used in a spreadsheet to find the natural frequencies of quite complex distributed systems, if you can describe the distributed KE and PE terms easily, or else break the continuous elements up into discrete parts.

This method could be used iteratively, adding additional mode shapes to the previous best solution, or you can build up a long expression with many Bs and many mode shapes, and then differentiate them partially.

In dynamical systems
The Koopman operator allows a finite-dimensional nonlinear system to be encoded as an infinite-dimensional linear system. In general, both of these problems are difficult to solve, but for the latter we can use the Ritz-Galerkin method to approximate a solution.

The relationship with the finite element method
In the language of the finite element method, the matrix $$H_{kj}$$ is precisely the stiffness matrix of the Hamiltonian in the piecewise linear element space, and the matrix $$S_{kj}$$ is the mass matrix. In the language of linear algebra, the value $$\epsilon$$ is an eigenvalue of the discretized Hamiltonian, and the vector $$c$$ is a discretized eigenvector.