---
title: Simultaneous Hessenberg Process
url: https://www.emergentmind.com/topics/simultaneous-hessenberg-process
type: topic
---

# Simultaneous Hessenberg Process

The simultaneous Hessenberg process denotes a family of Hessenberg-type Krylov procedures in which a single non-orthogonal basis is constructed once and then reused across a coupled set of problems. In the restarted shifted formulation, the central task is the family of nonsymmetric systems
\[
(A+\sigma_i I)x_i=b,\qquad i=1,\ldots,\nu,
\]
with a common right-hand side, where shift-invariance makes one Krylov basis sufficient for all shifts when the initial guesses are chosen consistently. In the extended block formulation, a single unit lower trapezoidal block basis simultaneously spans positive and negative powers of \(A\) applied to a block \(V\), so that the same projected matrix can be reused for both \(f(A)V\) and shifted systems with multiple right-hand sides. These two formulations give the term “simultaneous” two precise meanings: simultaneous treatment of many shifts, and simultaneous treatment of many right-hand sides together with both \(A\) and \(A^{-1}\) actions [1507.08141; 2401.03330].

## 1. Scope and historical placement

The modern simultaneous Hessenberg viewpoint lies at the intersection of generalized Hessenberg reduction, restarted shifted Krylov methods, and block or extended projection methods. The foundational source identified for the Hessenberg procedure is M. Heyouni’s 1996 thesis. The restarted shifted framework is explicitly connected with V. Simoncini’s restarted full orthogonalization method for shifted systems, while the CMRH line of work of H. Sadok and the later analysis by H. Sadok and D.B. Szyld provide further background. The stability discussion in the literature also invokes J.H. Wilkinson and Howell–Stephens.

In this literature, simultaneous treatment is not tied to orthonormal bases. On the contrary, the distinctive feature of the Hessenberg approach is that it replaces Arnoldi orthonormalization by a pivoted non-orthogonal construction. In the single-vector restarted setting, this yields a Krylov basis \(V_m=[v_1,\ldots,v_m]\) and an upper Hessenberg matrix \(H_m\). In the block-extended setting, it yields a unit lower trapezoidal block basis \(\mathbb{V}_{2m}=[V_1,\ldots,V_{2m}]\) and a block upper Hessenberg projected matrix \(\mathbb{T}_{2m}\) [1507.08141; 2401.03330].

| Formulation | Shared basis object | Small projected problem |
|---|---|---|
| Restarted shifted Hessenberg | \(V_m,\;H_m\) for all \(\sigma_i\) | \((H_m+\sigma_i I_m)y_m^{(\sigma_i)}=\beta e_1\) |
| Extended block Hessenberg | \(\mathbb{V}_{2m},\;\mathbb{T}_{2m}\) for all shifts and block RHS | \((\mathbb{T}_{2m}+\sigma I_{2mp})Y_{2m}^\sigma=E_1\beta_0^\sigma\) or \(f(\mathbb{T}_{2m})\) |

A common misunderstanding is that simultaneous treatment requires building separate Krylov spaces for each shifted problem. The shifted Hessenberg framework uses the opposite fact: when the right-hand side is the same across shifts and initial guesses are chosen consistently, the Krylov subspaces generated by \(A\) and by \(A+\sigma I\) are identical.

## 2. Core Hessenberg relations and shift-invariance

The basic Hessenberg procedure builds a non-orthogonal Krylov basis with pivoting and produces the decomposition
\[
A V_m = V_m H_m + h_{m+1,m} v_{m+1} e_m^T.
\]
This is the analogue of the Arnoldi relation, but it is associated with an oblique projection rather than an orthogonal one. The \(j\)-th basis vector has its first \(j-1\) entries zero by construction, and pivoting is used to maintain numerical robustness [1507.08141].

For shifted problems, the same decomposition immediately yields
\[
(A+\sigma I)V_m = V_m(H_m+\sigma I_m) + h_{m+1,m} v_{m+1} e_m^T.
\]
Because
\[
\mathcal{K}_m(A,b)=\mathcal{K}_m(A+\sigma I,b)
\]
for any \(\sigma\in\mathbb{C}\), a single basis \(V_m\) generated from the seed system is sufficient for all shifts. For each \(\sigma_i\), the projected Galerkin system is
\[
(H_m+\sigma_i I_m)y_m^{(\sigma_i)}=\beta e_1,
\]
with \(\beta=(r_0)_{p(1)}\), and the approximation is updated by
\[
x_m^{(\sigma_i)}=x_0+V_m y_m^{(\sigma_i)}.
\]

The residual formula is the essential structural fact:
\[
r_m^{(\sigma)}=b-(A+\sigma I)x_m^{(\sigma)}
=-h_{m+1,m}[y_m^{(\sigma)}]_m v_{m+1}.
\]
Hence every shifted residual is a scalar multiple of the same next basis vector \(v_{m+1}\). This makes the simultaneous process viable under restart, because the new cycle can be seeded from a common residual direction rather than from \(\nu\) unrelated residual vectors [1507.08141].

## 3. Restarted shifted Hessenberg method

The restarted shifted Hessenberg method is designed for practical settings in which the Krylov dimension must be capped by a restart length \(m\). A cycle begins from \(x^{(\sigma_i)}=x_0\), typically \(0\), with \(r_0=b-Ax_0=b\). The Hessenberg process with pivoting is applied once to build \(V_m\) and \(H_m\). Then, for each unconverged shift, one solves the reduced system \((H_m+\sigma_i I_m)y_m^{(\sigma_i)}=\beta e_1\), updates \(x^{(\sigma_i)}\), computes the scalar
\[
\gamma_i=-h_{m+1,m}[y_m^{(\sigma_i)}]_m,
\]
and sets
\[
r_m^{(\sigma_i)}=\gamma_i v_{m+1}.
\]
Converged systems are removed, and the next cycle is started from the common direction \(v_{m+1}\), appropriately scaled [1507.08141].

The method’s main theorem states that after each cycle all residuals are collinear with \(v_{m+1}\) and therefore with each other. In the unshifted seed system, the Galerkin condition with oblique test space gives
\[
x_m=x_0+V_m y_m,\qquad H_m y_m=\beta e_1,\qquad
r_m=-h_{m+1,m}[y_m]_m v_{m+1}.
\]
For shifted systems the same argument yields the shifted residual formula above, so the restart preserves a single residual direction across all systems. The proof is constructive: inserting the Hessenberg relation into the residual expression eliminates the \(V_m\) contribution and leaves only the next-basis direction.

A polynomial interpretation clarifies restart propagation. Since \(x_m-x_0\in\mathcal{K}_m(A,r_0)\), one has
\[
r_m=p_m(A)r_0
\]
for a monic polynomial \(p_m\) of degree \(m\). Under restart,
\[
r^{(k+1)}=p_m(A)r^{(k)},\qquad
r_\sigma^{(k+1)}=p_m(A+\sigma I)r^{(k)}.
\]
Because the basis for the \(k\)-th cycle is generated from the seed residual \(r^{(k)}\), both the seed and shifted residuals at the end of the cycle remain in the same one-dimensional direction. This is the algebraic reason that simultaneous treatment survives restarting [1507.08141].

This residual-collinearity mechanism sharply distinguishes restarted shifted Hessenberg and restarted shifted FOM from restarted GMRES. GMRES loses collinearity after restart unless additional constraints are imposed, and those constraints compromise minimal residual properties for non-seed shifts and increase cost. FOM preserves collinearity, but its Arnoldi orthonormalization is more expensive per cycle.

## 4. Block and extended simultaneous Hessenberg constructions

The extended block Hessenberg process generalizes the simultaneous idea to a block \(V\in\mathbb{R}^{n\times p}\), with \(p\ll n\), and to an extended Krylov space that contains both positive and negative powers of \(A\). The space used is
\[
\mathbb{K}^e_m(A,V)=\mathrm{range}\{\,V,\,A^{-1}V,\,\ldots,\,A^{m-1}V,\,A^{-m}V\,\}.
\]
This is the sum of two block Krylov subspaces, one for \((A,V)\) and one for \((A^{-1},A^{-1}V)\). The basis is not orthonormal; instead, it is unit lower trapezoidal and is obtained by PLU factorizations with pivoting [2401.03330].

Initialization is already block-structured:
\[
P_1V=L_1\Gamma_{1,1},\qquad
V_1=P_1^TL_1=V\Gamma_{1,1}^{-1}.
\]
The second block is formed from \(A^{-1}V\) after removing coupling with the first block, followed by another PLU factorization. Thereafter, for each step \(j=1,\ldots,m\), the process generates a pair of blocks: \(V_{2j+1}\) from the positive direction \(A V_{2j-1}\), and \(V_{2j+2}\) from the negative direction \(A^{-1}V_{2j}\). Galerkin-like orthogonality is imposed not by Gram–Schmidt but against selector matrices \(E_k\) that correspond to pivot rows.

The resulting block decomposition can be written through the left-inverse
\[
\mathbb{V}_{2m}^L=\mathbb{L}_{2m}^{-1}\mathbb{P}_{2m}^T,\qquad
\mathbb{V}_{2m}^L\mathbb{V}_{2m}=I_{2mp},
\]
and the projected matrix
\[
\mathbb{T}_{2m}=\mathbb{V}_{2m}^L A\mathbb{V}_{2m}.
\]
The simultaneous Hessenberg relation is then
\[
A\mathbb{V}_{2m}=\mathbb{V}_{2m}\mathbb{T}_{2m}+V_{2m+1}\tau_m E_m^T.
\]
A corresponding relation also holds for \(A^{-1}\).

This construction supports two major tasks. For matrix functions, the approximation is
\[
\mathbb{I}_{2m}(f)=\mathbb{V}_{2m}f(\mathbb{T}_{2m})E_1\Gamma_{1,1}.
\]
The approximation is exact for Laurent polynomials of positive degree \(\le m-1\) and negative degree \(\le m\), and for \(f(t)=\exp(t)\) with \(A\) dissipative the paper gives an a priori bound involving the residual block \(V_{2m+1}\tau_m E_m^T\). For shifted systems with multiple right-hand sides, one seeks
\[
X_{2m}^\sigma=X_0^\sigma+\mathbb{V}_{2m}Y_{2m}^\sigma
\]
with reduced problem
\[
(\mathbb{T}_{2m}+\sigma I_{2mp})Y_{2m}^\sigma=E_1\beta_0^\sigma,
\]
and residual
\[
R_{2m}^\sigma
= C-(A+\sigma I_n)X_{2m}^\sigma
=-V_{2m+1}\tau_m E_m^T Y_{2m}^\sigma.
\]
Thus one block basis and one projected matrix can be reused across many shifts \(\sigma\) and all \(p\) right-hand sides simultaneously [2401.03330].

## 5. Arithmetic cost, storage, and numerical behavior

The principal advantage of the Hessenberg process over Arnoldi is lower orthogonalization cost. In the restarted shifted single-vector setting, the per-cycle basis-construction cost is
\[
2mNz + m(m+1)n - \frac{m(m-1)(m+1)}{2}
\]
operations, compared with
\[
2mNz + 2m(m+1)n
\]
for Arnoldi/FOM/GMRES. Storage is \(n\times m\) for \(V_m\) plus \(m\times m\) for \(H_m\). For \(\nu\) shifts, the projected stage requires \(\nu\) independent \(m\times m\) solves; if factored independently, this is \(O(\nu m^3)\), which is cheap when \(m\) is moderate. Residual norms are available without forming full residual vectors:
\[
\|r_m\|_2 = |h_{m+1,m}[y_m]_m|\,\|v_{m+1}\|_2,
\]
and analogously for shifted systems [1507.08141].

In the extended block case, the paper enumerates block costs explicitly: \(A V_{2j-1}\) costs \(p\,Nz\); applying \(A^{-1}\) to a block via LU/backslash costs \(n(n+1)p\); LU factorization of an \(n\times p\) matrix costs \(p^2(n-p/3)\); computing each \(H_{i,j}\) via LU on \(V_i(p_i,:)\) costs \(\tfrac{5}{3}p^3+p^2\); and multiplying \(V_iH_{i,j}\) costs \(np^2\). The resulting total flop estimate for EBHA is given explicitly in the paper, while storage is \(O(npm)\) for the \(2m\) basis blocks together with the block upper Hessenberg matrix [2401.03330].

The price of these savings is non-orthogonality. The Hessenberg process with pivoting is not provably backward stable in finite precision, but the reported backward errors are usually small in practice, and pivoting is used specifically to mitigate near-breakdowns. If \(h_{j+1,j}=0\) before \(j=m\), the process terminates early and the current subspace may already deliver convergence. In the block-extended case, breakdown is described as “very rare” for small \(m\). Numerical safeguards mentioned in the literature include partial or mild reorthogonalization, re-normalization of \(v_{m+1}\), monitoring of the \(\gamma_i\), and increased pivoting vigilance [1507.08141; 2401.03330].

Preconditioning is delicate. In shifted systems, preserving shift-invariance requires a preconditioner \(M\) such that \(\mathcal{K}_m(AM^{-1},b)\approx \mathcal{K}_m((A+\sigma I)M^{-1},b)\) across shifts. Polynomial preconditioners or nested Krylov strategies can be effective, but flexible preconditioning may destroy collinearity unless it is specially designed. In the extended block setting, repeated \(A^{-1}\) applications are intrinsic; the paper uses LU/backslash and notes that factorizing \(A\) once and reusing sparse triangular solves is essential to efficiency.

## 6. Applications and empirical profile

The restarted shifted Hessenberg method was tested on UF sparse matrices with real negative shifts, on QCD Dirac operator discretizations with complex shifts, on a \(2\)D heat equation matrix-exponential action computed through the rational approximation
\[
\exp(tA)u \approx \sum_j w_j (z_j I-A)^{-1}u,
\]
and on fractional convection–diffusion–reaction problems using the Carathéodory–Fejér rational approximation for \(E_{\gamma,1}(-A)u_0\). In these experiments, \(s\)Hessen\((m)\) consistently required similar or fewer matrix-vector products than \(s\)FOM\((m)\) and notably less CPU time, while weighted \(s\)FOM frequently failed to converge. In the heat-equation experiment, the setup used \(\nu=16\) complex shifts and \(m=40\). In the fractional problem, \(s\)Hessen\((m=30)\) outperformed the competing methods, and several short-recurrence methods failed on some instances. Typical settings were \(\mathrm{tol}=10^{-8}\), maximum MVP counts capped at values such as \(4000\), and restart lengths \(m=30\)–\(40\) [1507.08141].

The extended block Hessenberg paper reports matrix-function experiments with \(n=5000\) and \(p=5\) for
\[
f(x)\in\{\exp(x),\sqrt{x},\exp(-\sqrt{x}),\log(x),\exp(-x)/x\}.
\]
For \(m=10\) and \(m=15\), MF-EBH required less CPU time than MF-EBA while producing relative errors in the \(10^{-7}\)–\(10^{-14}\) range, depending on the function and \(m\). In a stiff tridiagonal example with \(\mathrm{cond}\approx 1.25\cdot 10^7\), MF-EBH reached the target relative error \(2\cdot 10^{-9}\) in fewer seconds than MF-EBA, although MF-EBA converged in slightly fewer iterations. For shifted systems with \(500\) shifts in \([0,5]\) and \(p=5\), restarted-EBH required fewer seconds than restarted-EBA on PDE-like discretizations and the SuiteSparse matrices add32, epb1, and memplus, with comparable numbers of restarts and residuals near \(2\cdot 10^{-8}\). Both iterative methods significantly outperformed direct Gaussian elimination over all shifts [2401.03330].

Taken together, these results identify the simultaneous Hessenberg process as a computational strategy rather than a single narrow algorithm. Its defining principle is the reuse of one Hessenberg-type basis across a structured family of problems. In the shifted single-vector case, the structure is residual collinearity across shifts and across restarts. In the extended block case, the structure is simultaneous representation of multiple right-hand sides together with positive and negative powers of \(A\). A plausible implication is that the method is most attractive when basis construction and orthogonalization dominate wall-clock time, when many shifts or right-hand sides are present, and when the reduced problems remain small enough that their independent solution is negligible relative to sparse matvecs or sparse triangular solves.

Source: https://www.emergentmind.com/topics/simultaneous-hessenberg-process