1 Introduction

Flow control is either passive or active, and can be of tremendous benefit in a number of applications [34]. A robust and energetically efficient way to control fluid flows is active closed-loop control or feedback control, which comprises actuators operating according to real-time information from the flow field obtained by sensors. In the last few decades, efforts have been made to improve the efficiency and effectiveness of feedback control schemes and linear control theory (e.g. optimal control) has received considerable attention, providing a rigorous and systematic approach for designing control laws [23]. However, direct implementation of linear control theory is computationally challenging for most fluid-flow problems due to the high dimensionality of the discretised Navier–Stokes equations.

1.1 Reduced-order modelling

One common approach for solving flow control problems is to form reduced-order models (ROMs) which capture the essential mechanisms in fluid flows. Traditional control design tools can then be directly applied to design low-dimensional controllers. For fluid flows dominated by vortices, e.g. bluff body flows, a simple way of obtaining ROMs is to use vortex models [35, 46, 55]. Another alternative approach to build ROMs is based on the proper orthogonal decomposition (POD) [48], the standard method of balanced truncation [52] or the eigensystem realisation algorithm (ERA) [41]. In particular, POD has shown its effectiveness for flow control of the cylinder wake [32, 60] and of channel flow [36]. The work of Rowley [57] further extended balanced truncation to high-dimensional systems where approximate balanced truncation can be achieved using a snapshot-based algorithm named balanced proper orthogonal decomposition (BPOD). The ERA is a system identification method that is equivalent to BPOD and allows direct application to flow systems using only DNS or experimental data [8, 30, 37, 67, 68] without requiring simulations of the adjoint system. These methods were originally designed for stable systems of large dimension and were subsequently extended to unstable systems either by a state-projection method [1] or by limiting the sampling time [30]. It was also shown that a frequency-domain version of BPOD was directly amenable to unstable systems [27]. For a deeper insight into these methods, a detailed comparison is presented by Ma et al. [49] using the example of the flow past an inclined flat plate. As an alternative strategy, the works of Borggaard et al. applied model reduction methods (e.g. POD) directly to the solution of Chandrasekhar equations [18] and high-rank Lyapunov equations [19], which allows the assembly of low-dimensional Riccati equations associated with large-scale control problems. Stoyanov [63] further extended the method to solve a large variety of Riccati equations that come from large-scale control problems such as the linear feedback control of the cylinder wake [20].

A fundamental goal of reduced-order modelling is to seek a low-dimensional description of a fluid flow. A direct application is the work of Dahan et al. [25] where frequency responses were captured from a series of numerical simulations under harmonic actuation over a broad range of frequencies. Recently, model decomposition based on resolvent analysis has shown good potential for control purposes. The method has been applied to efficiently characterise the input–output behaviour of a broad range of flows, such as cavity flow [33], flat-plate boundary layer flow [61], pipe flow [51] and the flow past a cylinder [64]. The method allows the direct formulation of the flow system in the frequency domain. Therefore, no special treatment is required for unstable systems, and there are no restrictions on the frequency range over which the linear dynamics can be captured.

1.2 Full-dimensional control

Feedback control for two- or three-dimensional fluid flows will typically require some form of model reduction [4]. In the design procedure for full-dimensional control, although no direct model reduction is employed, the number of inputs or outputs (i.e. terminals) in the control problem is generally limited to a small number. This is true for most control problems, even multi-input-multi-output (MIMO) systems, where the number of terminals m is still far less than the dimensionality of the flow system N. This improves the feasibility of a number of algorithms for designing full-dimensional controllers directly from the original system.

Methods that bypass open-loop model reduction for high-dimensional control problems are summarised in Bewley et al. [16], who proposed several Riccati-less control design methods. In particular, the minimum control energy (MCE) algorithm developed by Bewley et al. [17] uses eigenanalysis for full-dimensional optimal control problems under the limitation of an infinite control penalty. The method was then applied as a theoretical analysis tool to investigate the best control performance and the effects of sensor placement in the linear feedback control of the unsteady cylinder wake [21]. In later research, Pralits and Luchini [54] circumvented this limitation using the adjoint of the direct-adjoint (ADA) algorithm which extends adjoint-based optimisation by considering the adjoint of the original problem instead. The dimension of the corresponding optimisation problem can therefore be converted from size N to size m, where \(m\ll N\) denotes the number of outputs. The exact solution of the Riccati equation associated with the original high-dimensional control problem can then be approximated without directly solving the Riccati equation itself. The method has been applied to optimal full-dimensional control design for a boundary layer [59], in which the resulting full-dimensional controllers served as excellent benchmarks for the performance evaluation of the ROM-based controllers. In recent research, Martini et al. presented a full-dimensional method for the optimal flow state estimation by leveraging the resolvent framework [50]. Based on the forcing statistics of the flow, their approach was shown to outperform the truncated response-mode estimation using the dominant resolvent response modes. Various benchmark cases have been tested, demonstrating its feasibility to deal with transitional and turbulent flows [2, 50, 66].

As an alternative, solving Riccati equations to obtain linear quadratic regulators (LQR) is a more direct approach to the design of full-dimensional controllers. A classic method for large-scale Riccati equations is the Chandrasekhar algorithm employed by Kailath [42] where the original problem is replaced by a series of partial differential equations. The method is feasible provided the number of inputs or outputs is much smaller than the dimension of the original system. Efforts have been devoted to improving the efficiency of the algorithm by incorporating iterative methods such as the Newton–Kleinman method [5, 43] and the Krylov subspace projection method [9]. Recently, an efficient solution method formulated by Bänsch et al. [6] extended the original Newton-ADI method for problems governed by ordinary differential equations (ODEs) to those governed by differential algebraic equations (DAEs). The work of Benner et al. [11] further proposed an improved inexact low-rank Newton-ADI method which incorporated many improvements [10, 14, 15, 29]. An extension of the method was then presented by Benner et al. [12] specifically for the Hessenberg index-2 DAE case arising for fluid flow problems, which shows a speed-up of approximately 100 times when compared to the algorithm used in the previous work of Bänsch et al. [6]. These efficient algorithms for solving large-scale, sparse Riccati equations have been incorporated into the M.E.S.S. library [13, 58] which allows one to design full-dimensional optimal estimators and controllers for high-dimensional control problems arising from fluid flows.

1.3 Objectives of the present work

As mentioned above, many previous studies concerning dimension reduction and control design suffer from two major limitations: (i) optimal control based on ROMs usually considers only the open-loop behaviour of the flow; (ii) direct design of full-dimensional controllers is limited to cases with a small number of inputs and outputs. To address these issues, we use a resolvent-based algorithm for full-dimensional control design, which achieves globally optimal performance for various control setups in high-dimensional flow systems. For each feedback control setup, the approach finds optimal solutions to two independent problems. The first problem is the optimal estimation problem in which the objective is to estimate the flow from limited sensor measurements. The second problem is the full-state information control problem in which the entire flow field is known but only limited actuators are available for control. A major contribution of the approach is its handling of the optimal estimation and control problems (i) when disturbances are applied everywhere in the domain (so-called full-state inputs) and (ii) when the flow is measured everywhere (so-called full-state output). The method exploits an iterative scheme and the convergence to the global optima can be shown from the convergence of the closed-loop energy spectra.

In this study, we employ the \(H_2\) optimal control tools established by Doyle et al. [28] to solve the optimal feedback control problem for the two-dimensional flow past a cylinder. A complete introduction to the method can be found in Skogestad and Postlethwaite [62], and a direct application to a one-dimensional flow system can be found in Chen and Rowley [22]. The article is organised as follows. In Sect. 2, we formulate and discretise the time-invariant model governing linear flow perturbations. The optimal estimation and control problems arising from the flow system are presented in Sect. 3. A framework for solving the corresponding high-dimensional Riccati equations is then introduced in Sect. 4. Here, we present an iterative algorithm to obtain the global optimal estimator and controller, which together lead to an optimal feedback controller. In Sect. 5, we test our method for the feedback stabilisation of the two-dimensional cylinder flow in which the feedback setup aims to attenuate linear perturbations around the base flow. Conclusions are drawn in Sect. 6

2 Mathematical formulation

2.1 Governing equations

The feedback control of small-amplitude perturbations is analysed for the two-dimensional (2D) cylinder flow governed by the incompressible Navier–Stokes equations:

$$\begin{aligned} \begin{aligned}&\partial _t{{\varvec{u}}}=-{{\varvec{u}}}\cdot \nabla {{\varvec{u}}}-\nabla \textit{p}+{\textit{Re}}^{-1} \nabla ^2{{\varvec{u}}},\\&\quad \nabla \cdot {{\varvec{u}}}=0, \end{aligned} \end{aligned}$$
(1)

where \({{\varvec{u}}}({{\varvec{x}}},t)\) and \(\textit{p}({{\varvec{x}}},t)\) are the velocity and pressure field, respectively. The Reynolds number \({\textit{Re}}={\textit{U}_{\infty }D}/{\nu }\) is defined using the free-stream velocity \(\textit{U}_{\infty }\), the cylinder diameter D and the kinematic viscosity \(\nu \) to make all variables dimensionless. The nonlinear equations are then linearised about the laminar base flow \(({{\varvec{U}}},\textit{P})\), providing linear governing equations for small-amplitude perturbations:

$$\begin{aligned} \begin{aligned}&\partial _t{{\varvec{u}}}'=- {{\varvec{U}}}\cdot \nabla {{\varvec{u}}}'-{{\varvec{u}}}'\cdot \nabla {{\varvec{U}}} -\nabla \textit{p}'+{\textit{Re}}^{-1}\nabla ^2{{\varvec{u}}}'+{{\varvec{f}}}'({{\varvec{x}}},t),\\&\quad \nabla \cdot {{\varvec{u}}}'=0\ . \end{aligned} \end{aligned}$$
(2)

The nonlinear term \({{\varvec{u}}}'\cdot \nabla {{\varvec{u}}}'\) is neglected due to our assumption of small perturbations and \({{\varvec{f}}}'({{\varvec{x}}},t)\) models any external forcing, such as stochastic disturbances or actuation. The governing equations (2) can also be written compactly as

$$\begin{aligned} \dfrac{\partial }{\partial t} \underbrace{ \begin{bmatrix} \text {I}&{}\text {0}\\ \text {0}&{}\text {0} \end{bmatrix}}_{\mathcal {E}} \begin{bmatrix} {{\varvec{u}}}'\\ \textit{p}' \end{bmatrix} = \underbrace{ \begin{bmatrix} \mathcal {L}&{}-\nabla ()\\ -\nabla \cdot ()&{}\text {0} \end{bmatrix}}_{\mathcal {A}} \begin{bmatrix} {{\varvec{u}}}'\\ \textit{p}' \end{bmatrix}+ \underbrace{ \begin{bmatrix} \text {I}\\ \text {0} \end{bmatrix}}_{\mathcal {P}}{{\varvec{f}}}'({{\varvec{x}}},t), \end{aligned}$$
(3)

where the linear operator \(\mathcal {L} = {-{{\varvec{U}}}\cdot \nabla ()} - {()\cdot \nabla {{\varvec{U}}}} + {{\textit{Re}}^{-1}\nabla ^2()}\) and \(\mathcal {A}\) denotes the linearised Navier–Stokes operator around the base flow. The prolongation operator \(\mathcal {P}\) maps a velocity vector \({{\varvec{u}}}'\) to a velocity-zero-pressure vector \([{{\varvec{u}}}',\ \text {0}]^T\).

2.2 The discretised time-invariant model

The linearised Navier–Stokes equations (3) are discretised over the 2D computational domain shown in Fig. 1 using Taylor-Hood mixed finite elements on the computing platform FEniCS [47]. We use a structured mesh with mesh points clustered smoothly near the cylinder and in the wake to appropriately resolve the details of the flow. The mesh consists of \(2.7\times 10^4\) triangles with a minimum wall-normal spacing of 0.01 at the cylinder surface. The compound state vector \({{\varvec{q}}}=[{{\varvec{u}}}',\ \textit{p}']^T\in \mathbb {R}^{N}\) thus corresponds to approximately \(N\approx 1.2\times 10^5\) degrees of freedom.

Having discretised the continuous equations (3), we can now express them in the form of a linear time-invariant state-space model including any inputs and outputs:

$$\begin{aligned} \begin{aligned} \mathbf{E} \dot{{{\varvec{q}}}}&=\mathbf{A} {{\varvec{q}}}+\mathbf{B} {{\varvec{w}}}\\ {{\varvec{y}}}&=\mathbf{C} {{\varvec{q}}}\ . \end{aligned} \end{aligned}$$
(4)

The system matrix \(\mathbf{A} \in \mathbb {R}^{N\times N}\) denotes the discretised linear Navier–Stokes operator and the global mass matrix \(\mathbf{E} =\mathbf{P} {} \mathbf{M} {} \mathbf{P} ^T\) is defined using the prolongation matrix \(\mathbf{P} \in \mathbb {R}^{N\times N_u}\) and the finite element mass matrix \(\mathbf{M} \in \mathbb {R}^{N_u\times N_u}\) associated with the velocity state of size \(N_u\). Note that the superscript \((\cdot )^T\) designates the transpose, and we use \((\cdot )^H\) for the conjugate transpose. The spatial–temporal discretisation of any external forcing \({{\varvec{f}}}'\) (e.g. an actuator at the position \({{\varvec{x}}}_a\)) is characterised by the matrix \(\mathbf{B} \in \mathbb {R}^{N\times 2n_a}\) and the time signal \({{\varvec{w}}}\in \mathbb {R}^{2n_a}\). The measurement \({{\varvec{y}}}\in \mathbb {R}^{2n_s}\) is an output of interest (e.g. velocity \({{\varvec{u}}}'\) at the position \({{\varvec{x}}}_s\)) and is characterised by the sensing matrix \(\mathbf{C} \in \mathbb {R}^{2n_s\times N}\). Here, \(n_a\) and \(n_s\) denote the numbers of actuators and sensors, respectively. A feedback connection between the sensor output and the actuator input is then established to attenuate flow perturbations.

The boundary conditions used for the linear model (4) are summarised in Fig. 1, and have been used in many previous studies [38, 45]. The base flow has the same boundary conditions as those depicted in the figure except at the inlet \(\Gamma _{\text {in}}\) where a uniform freestream velocity (i.e. \({{\varvec{U}}}=[\textit{U}_{\infty },0]\)) is enforced. Note that the laminar base flows and discretised perturbation systems have been validated by comparing them with the stability analysis results [7]. A sparse direct LU solver (MUMPS [3]) and iterative Arnoldi methods (ARPACK [44]) are used for all linear problems encountered in the study.

Fig. 1
figure 1

Computational domain and boundary conditions for the cylinder flow (only the top half segment of the entire domain is shown)

3 Optimal estimator and controller design

The aim of this section is to introduce the optimal estimation and control problems concisely, as these will be used in Sect. 4. We describe the optimal estimation and control problems in Sect. 3.1 and their common governing equations are formulated in Sect. 3.2. The numerical scheme to solve the corresponding optimisation problems is introduced in Sect. 3.3.

3.1 The estimation and control problems

Our objective is to find a control signal from sensor measurements such that the flow perturbation is minimised under the excitation of external disturbances and in the presence of sensor noise. The control that will be optimal in minimisation flow perturbations arises, in one part, from the optimal filtering of any noise that corrupts our signal and, in another part, from the optimal control when the entire flow state is assumed to be known. This corresponds to two separate problems: (i) the optimal estimation (OE) problem and (ii) the full-information control (FIC) problem, which can be solved independently based on Separation Theorem [31]. The optimal feedback control (i.e. input–output control) law can then be constructed once these two problems are solved. Figure 2 shows a summary of the problems investigated.

3.1.1 The optimal estimation (OE) problem

In order to employ feedback, one needs to know the flow state. However, only the sensor measurement is available in any practical control setup. In the optimal estimation (OE) problem, we therefore aim to estimate or observe the whole flow field from limited sensor measurements. More specifically, the flow estimate \({{\varvec{q}}}_e\) is generated by applying the estimator gain \(\mathbf{K} _f\) to the difference between the sensor measurements from the actual flow \({{\varvec{y}}}(t)\) and the estimate \({{\varvec{y}}}_e(t)\), as shown in Fig. 2b. A major challenge for the OE problem is to form the estimator such that the differences between the actual flow field and the estimate are small in the presence of stochastic disturbances \({{\varvec{d}}}\) and sensor noise \({{\varvec{n}}}\). This issue is addressed by solving the optimisation problem that minimises the mean (time-averaged) kinetic energy of the estimation error \({{\varvec{J}}}_{\text {OE}}\):

$$\begin{aligned} {{\varvec{J}}}_{\text {OE}}=\lim _{t\rightarrow \infty }\dfrac{1}{T}\int _0^T{{\varvec{e}}}^T\mathbf{Q} {{\varvec{e}}}\ dt, \end{aligned}$$
(5)

where \({{\varvec{e}}}(t)={{\varvec{q}}}(t)-{{\varvec{q}}}_e(t)\) denotes the estimation error and the matrix \(\mathbf{Q} =\mathbf{P} {} \mathbf{M} {} \mathbf{P} ^T\) represents spatial integration for computing the total kinetic energy.

Fig. 2
figure 2

Separation Theorem [31]. a Input–Output control (IOC) with only limited sensor measurements and limited actuation. b Optimal estimation (OE) of the whole flow field using only limited sensor measurements. c Full-state information control (FIC) using only limited actuators for control when the entire flow field is known

3.1.2 The full-state information control (FIC) problem

The second step in the design of the optimal feedback control involves the solution of an optimal state-feedback control problem in which the entire flow field is assumed to be perfectly measured or estimated (i.e. \({{\varvec{y}}}={{\varvec{q}}}\)). The task of the FIC problem is therefore to attenuate flow perturbations using only limited actuators in the presence of stochastic disturbances \({{\varvec{d}}}\), as shown in Fig. 2c. We aim to find the optimal full-state controller gain \(\mathbf{K} _r\) that minimises flow perturbations while also maintaining a sensible control effort:

$$\begin{aligned} {{\varvec{J}}}_{\text {FIC}}=\lim _{t\rightarrow \infty }\dfrac{1}{T}\int _0^T\left( {{\varvec{q}}}^T\mathbf{Q} {{\varvec{q}}}+{{\varvec{w}}}^T\mathbf{R} {{\varvec{w}}}\right) dt. \end{aligned}$$
(6)

The cost function \({{\varvec{J}}}_{\text {FIC}}\) is composed of two contributions: (i) the kinetic energy of perturbations and (ii) the control cost scaled by a matrix \(\mathbf{R} \). The matrix \(\mathbf{R} \) is a weight matrix that controls the balance between minimising flow perturbations and minimising the control cost.

3.1.3 The input–output control (IOC) problem

Once the above two problems are solved, the optimal control signal \({{\varvec{w}}}\) can be computed by applying the optimal full-state controller to the estimated state, as shown in Fig. 2a. As suggested by the separation principle, the feedback control law constructed from an optimal estimator and an optimal full-state controller is itself optimal. In this case, the optimal estimator provides the best prediction of the entire flow field from limited sensors contaminated by measurement noise. Based on this prediction, the optimal control signal is then generated for limited actuators and gives the best attenuation of flow perturbations while maintaining a sensible control cost, i.e. minimising the cost function \({{\varvec{J}}}_{\text {IOC}}\) defined in the same form as equation (6) for a specific choice of \(\mathbf{R} \).

3.2 The systems for estimation and control

We now consider the governing equations for the OE, FIC and IOC problems, which can be expressed as a linear time-invariant state-space model \(\mathbf{P} (s)\) shown by the block diagram in Fig. 3:

$$\begin{aligned} \begin{aligned} \mathbf{E} \dot{{{\varvec{x}}}}&=\mathbf{A} {{\varvec{x}}}+\mathbf{B} _q{{\varvec{w}}}+{{\varvec{B}}}_d{{\varvec{d}}}\\ {{\varvec{y}}}&=\mathbf{C} _y{{\varvec{x}}}+\mathbf{D} _n{{\varvec{n}}}\\ {{\varvec{z}}}&=\mathbf{C} _z{{\varvec{x}}}+\mathbf{D} _q{{\varvec{w}}}, \end{aligned} \end{aligned}$$
(7)
Fig. 3
figure 3

Block diagram of the state-space model (7), which is denoted as a transfer function \(\mathbf{P} (s)\) with the Laplace variable s

Table 1 A summary of system states, input and output matrices, and Riccati equations for the OE, FIC and IOC problems

where the system state \({{\varvec{x}}}\) represents the internal state of interest for each of the three problems. Table 1 summarises the system states, inputs, outputs and the performance-measuring matrices for the OE, FIC and IOC problems. In particular, the optimal estimator gain \(\mathbf{K} _f\) and the optimal full-state controller gain \(\mathbf{K} _r\) are formed from the unique solutions of the generalised algebraic Riccati equations associated with the OE and FIC problems, respectively.

Both the disturbances \({{\varvec{d}}}\) and sensor noise \({{\varvec{n}}}\) are modelled as uncorrelated zero-mean Gaussian white noise. We inject stochastic disturbances over the entire velocity field (i.e. as the external forcing), and \({{\varvec{d}}}\) is an \(N_u\)-by-1 vector whose statistical properties are given by \(\mathbf{W} ^{1/2}=\mathbf{P} (\mathbf{M} ^{1/2})^T\) after the spatial discretisation using a finite-element method [24]. Here, \(N_u\) denotes the size of the velocity state and the matrix square root \(\mathbf{M} ^{1/2}\) computed from the Cholesky decomposition satisfies \((\mathbf{M} ^{1/2})^T\mathbf{M} ^{1/2}=\mathbf{M} \). We also include a contribution from sensor noise in the measurement \({{\varvec{y}}}\) and the diagonal matrix is set to \(\mathbf{V} ^{1/2}=\alpha \mathbf{I} \).

The performance of either the estimator or the controller can be expressed by the mean kinetic energy of the output \({{\varvec{z}}}\):

$$\begin{aligned} {{\varvec{J}}}=\lim _{t\rightarrow \infty }\dfrac{1}{T}\int _0^T{{\varvec{z}}}^T{{\varvec{z}}}\ dt. \end{aligned}$$
(8)

Note that we choose \(\mathbf{Q} ^{1/2}=\mathbf{M} ^{1/2}{} \mathbf{P} ^T\) to measure the kinetic energy of the whole perturbation field and \(\mathbf{R} ^{1/2}=\alpha \mathbf{I} \) to equally penalise all control signals.

3.3 Numerical Riccati solver

The state-space models arising from the discretisation of two- or three-dimensional fluid flows are generally of high dimension. Although it is common to perform numerical simulations for high-dimensional systems (i.e. \(N>10^5\)), traditional control design tools (e.g. Riccati solvers) typically become computationally intractable for \(N>10^3\). The challenge of solving the large sparse Riccati equations associated with the OE and FIC problems has been partially overcome by a sparse Riccati solver in the M.E.S.S. library [13, 58] using an extended low-rank method. However, a major limitation of the method is that the number of inputs and outputs (so-called terminals) m should be much smaller than the dimension of the control problem, i.e. \(m \ll \textit{N}\). For problems with either many inputs (e.g. disturbances applied everywhere) or many outputs (e.g. perturbations measured everywhere), no efficient numerical tools are available to directly handle large-scale systems and some special ‘terminal reduction’ techniques need to be considered to properly construct low-rank matrices \(\mathbf{W} ^{1/2}\) and \(\mathbf{Q} ^{1/2}\) for the OE and FIC problems, respectively. In the next section, we will present an iterative algorithm that combines resolvent analysis and proper orthogonal decomposition (POD) for full-dimensional optimal estimator and controller design.

4 Resolvent-based performance optimisation

To overcome the challenges associated with many inputs and outputs, we now introduce a ‘terminal reduction’ technique that allows the design of optimal full-dimensional estimators and controllers in the presence of disturbances everywhere (i.e. input \({{\varvec{d}}}\)) and when measurements are applied everywhere (i.e. output \({{\varvec{z}}}\)). The method is developed based on resolvent analysis for mode selection (Sect. 4.1) and the proper orthogonal decomposition (POD) in frequency space for efficient construction of low-rank orthonormal bases (Sect. 4.2). The covariance and weight matrices appearing in the Riccati equations are then replaced by these low-rank linear bases. In Sect. 4.3, we employ the method iteratively to find globally optimal estimators and controllers.

4.1 Linear optimal forcing and response modes

4.1.1 The \(H_2\) norm

The \(H_2\) norm of the transfer function \(\mathbf{Z} (s)\) is a common way to quantify the performance of estimators or full-state information controllers, which can be considered as the summation of the squared \(H_2\) norms of two subsystems:

$$\begin{aligned} {{\varvec{J}}}=\Vert \mathbf{Z (s)}\Vert ^2_2=\Vert \mathbf{Z _1(s)}\Vert ^2_2+\Vert \mathbf{Z _2(s)}\Vert ^2_2, \end{aligned}$$
(9)

where \({{\varvec{J}}}\) denotes the cost function defined for the OE problem (see (5)) or the FIC problem (see (6)). The subsystem \(\mathbf{Z} _2(s)\) represents the transfer function that governs either the effect of sensor noise in the OE problem or the control cost in the FIC problem (see Eqs. (19, 20) in Appendix A). Note that the dimensionality of \(\mathbf{Z} _2(s)\) is determined by the number of sensors or actuators, which is generally small and thus computing its norm is feasible and well-handled by the Riccati solver. However, \(\mathbf{Z} _1(s)\) represents the high-dimensional transfer function from the disturbances \({{\varvec{d}}}\) to either the estimation error \({{\varvec{e}}}\) in the OE problem or the perturbations \({{\varvec{q}}}\) in the FIC problem. The corresponding \(H_2\) norm squared is:

(10)

where \(\sigma _i(j\omega )\) are the singular values of the transfer function \(\mathbf{Z} _1(s)\) at frequency \(\omega \) arranged in descending order. The singular values of a transfer function can be considered as energy gains between a series of inputs and the corresponding outputs. We thus aim to minimise the integrated energy gain (10) for inputs and outputs over all frequencies and all possible directions.

However, it is not feasible to consider all inputs or outputs while designing estimators or controllers for a high-dimensional flow system (e.g. \(N>10^5\)). Instead, we consider an alternative cost function \(\gamma ^2{(k,\omega _n)}\) which only considers a limited number of inputs and outputs within a specified frequency range:

$$\begin{aligned} \gamma ^2(k,\omega _n)=\dfrac{1}{2\pi }\int _{-\omega _n}^{\omega _n}\sum _{i=1}^{k}\sigma ^2_i(j\omega )\ d\omega +\Vert \mathbf{Z _2(s)}\Vert ^2_2, \end{aligned}$$
(11)

in which only the first k orthogonal inputs and outputs across a limited frequency range \(\omega \in [-\omega _n,\ \omega _n]\) are considered. This cost function is constructed based on two facts: (i) for fluid flows, only a limited number of dominant physical mechanisms occur within a finite frequency range, e.g. the instability of the linearised cylinder flow occurs around \(\omega _c\approx 0.8\); (ii) these physical mechanisms can be approximated by a small number of orthogonal inputs and outputs that have large energy gains \(\sigma _i^2\), which are also the most significant for estimation or control. Instead of minimising all energy gains over all frequencies and all possible directions as described by the original cost function (9), it is more feasible to use the cost function (11) that considers a significantly smaller number of inputs and outputs. Note that by choosing a sufficient number of orthogonal inputs and outputs over a sufficient frequency range, the performance of the estimator or controller should converge to the true global optimum.

Fig. 4
figure 4

Resolvent analysis of the cylinder flow at \({\textit{Re}}=90\). The first three energy spectra (\(\sigma _i^2\)) and the corresponding optimal input and output modes (transverse component, real part) at the unstable frequency \(\omega \approx 0.76\) are shown for comparison

4.1.2 Resolvent analysis

We now introduce the framework of resolvent analysis which forms the optimal forcing that maximises the energy gain of the response. This is achieved using the generalised singular value decomposition of the transfer function \(\mathbf{Z} _1(s)\):

$$\begin{aligned} \mathbf{Z} _1(s)=\mathbf{Q} ^{1/2}(s\mathbf{E} -\mathbf{A} )^{-1}{} \mathbf{W} ^{1/2} =\left( \mathbf{Q} ^{1/2}\hat{\mathbf{U }}\right) \Sigma \left( \hat{\mathbf{F }}^H\mathbf{P} ^T\mathbf{W} ^{1/2}\right) . \end{aligned}$$
(12)

Here, we are considering the open-loop system (i.e. before any estimators or controllers are designed). The Laplace variable s is evaluated at a particular frequency \(j\omega \) and \(\Sigma \) is a diagonal matrix containing the singular values \(\sigma _i\) in descending order. The input and output matrices \(\hat{\mathbf{F }}\) and \(\hat{\mathbf{U }}\) each form an orthonormal basis with respect to the matrices \(\mathbf{W} \) and \(\mathbf{Q} \).

Figure 4 shows the first three singular values for the cylinder flow at \({\textit{Re}}=90\), and compares the corresponding input and output modes at the unstable frequency \(\omega \approx 0.76\). The first two output modes correspond to vortex shedding. In particular, the leading output mode \(\hat{{{\varvec{u}}}}_1\) corresponds to the amplification of upstream inputs, while the second output mode corresponds to local amplification of disturbances. There exists a large separation between the first (\(\sigma _1^2\)) and second (\(\sigma _2^2\)) energy gains. The third output mode, however, consists of waves that are concentrated in the free-stream. For estimation and control, we might expect that the physical mechanisms represented by the first two resolvent modes (e.g. vortex shedding) are the most important. It is therefore acceptable to neglect free-stream modes and other less energetic modes while designing optimal estimators and controllers.

In the OE problem, the white noise disturbances \({{\varvec{d}}}\) can be thought of as random combinations of the input basis in time, as given by \(\mathbf{W} ^{1/2}=\mathbf{P} {} \mathbf{M} \hat{\mathbf{F }}\). It is worthwhile to note that there are usually large separations between singular values \(\sigma _i\) such that only a limited number of forcing modes give rise to energetic responses that are important for estimation. This allows us to consider only a truncated input matrix \(\hat{\mathbf{F }}_k\) (with only the first k columns) for optimal estimator design. Note that accounting for the accurate forcing colour of the flow is critical to achieving optimal flow estimation. Recent research also highlighted this point by proposing a Riccati-less estimator design method based on known forcing statistics which outperformed truncation approaches using only the leading response modes [2, 50]. As for the FIC problem with perturbation measurements everywhere, the system states can be considered as linear combinations of the output basis as \(\mathbf{Q} ^{1/2}=\hat{\mathbf{U }}^H\mathbf{E} \). A truncated output matrix \(\hat{\mathbf{U }}_k\) can thus be used to reduce the number of outputs for optimal controller design since a significant proportion of the energy of the flow’s response is usually concentrated in the first few output modes.

Fig. 5
figure 5

a Leading resolvent output modes (transverse component, real part) at the sampled frequencies when \({\textit{Re}}=90\). b The corresponding POD modes computed from the leading resolvent output modes. Note that these POD modes form an orthonormal basis that can reproduce resolvent modes via linear combinations

4.2 Low-rank input–output bases

In the previous section, we used truncated resolvent input and output matrices at one specified frequency (e.g. the unstable frequency) to approximate the covariance and weight matrices appearing in the OE and FIC problems. This is because (i) resolvent input and output modes are optimally ranked in terms of energy gain so that the first few modes capture the most energetic structures in fluid flows; (ii) resolvent input–output modes are orthonormal with respect to the mass matrix and the truncated matrix forms a low-rank orthonormal basis that can be directly substituted into the Riccati equations. Note that it is important to use orthonormal bases because the original OE and FIC problems consider uncorrelated disturbances and independent measurements over the whole domain.

However, it is important to note that we aim to minimise the energy gain integrated over a wide frequency range, as defined by the cost function (11). The truncated input and output matrices \(\hat{\mathbf{F }}_k\) and \(\hat{\mathbf{U }}_k\) capture the most important features of the system at one specific frequency and may not be appropriate at other frequencies. This is most clearly shown in Fig. 5a in which the leading resolvent output modes at different frequencies show significant differences. Therefore, we would like to construct a low-rank orthonormal basis that is appropriate across a range of frequencies. One way to achieve this is to perform proper orthogonal decomposition (POD) of the resolvent modes across a wide frequency range, which will result in an orthonormal basis that is ranked by the energy norm. For example, Fig. 5b shows the POD modes computed from the leading resolvent output modes sampled at several frequencies, as shown in Fig. 5a. The leading resolvent output mode at each sampled frequency can be represented by a linear combination of these POD modes.

To construct the orthonormal basis, we first consider a series of truncated input matrices \(\hat{\mathbf{F }}^{(\omega )}_k\) or output matrices \(\hat{\mathbf{U }}^{(\omega )}_k\) at sampled frequencies \(\omega \in \{\omega _1,\ \cdots ,\ \omega _n\}\) as well as their complex conjugates. We choose the first k resolvent modes from each input or output matrix so that the most important dynamics at each frequency are included. Therefore, we can build complex-valued matrices containing all information across the sampled frequencies:

$$\begin{aligned} \hat{\mathbf{H }}_{\text {F}}&= \begin{bmatrix} \hat{\mathbf{F }}^{(\omega _1)}_k&\hat{\mathbf{F }}^{(-\omega _1)}_k&\cdots&\hat{\mathbf{F }}^{(\omega _n)}_k&\hat{\mathbf{F }}^{(-\omega _n)}_k \end{bmatrix} \in \mathbb {C}^{N_u\times 2nk}, \end{aligned}$$
(13a)
$$\begin{aligned} \hat{\mathbf{H }}_{\text {U}}&= \begin{bmatrix} \hat{\mathbf{U }}^{(\omega _1)}_k&\hat{\mathbf{U }} ^{(-\omega _1)}_k&\cdots&\hat{\mathbf{U }}^{(\omega _n)}_k&\hat{\mathbf{U }}^{(-\omega _n)}_k \end{bmatrix} \in \mathbb {C}^{N\times 2nk}, \end{aligned}$$
(13b)
$$\begin{aligned} \hat{\mathbf{H }}_{\Sigma }&=\mathbf{diag} \begin{bmatrix} \Sigma ^{(\omega _1)}_k&\Sigma ^{(-\omega _1)}_k&\cdots&\Sigma ^{(\omega _n)}_k&\Sigma ^{(-\omega _n)}_k \end{bmatrix} \in \mathbb {C}^{2nk\times 2nk}, \end{aligned}$$
(13c)

where \(\mathbf{diag} [\cdot ]\) indicates a block-diagonal matrix. Now, we want to find the smallest linear subspace of each matrix and then construct an orthonormal basis for this subspace. Notice that a complex vector \({\varvec{\psi }}\) and its complex conjugate \(\varvec{\psi }^H\) are both linear combinations of the real part and the imaginary part with complex coefficients. That is, the linear span of these vectors has \(span\{\varvec{\psi },\varvec{\psi }^H\}=span\{\text{ Re }(\varvec{\psi }),\text{ Im }(\varvec{\psi })\}\). Thus, by replacing each complex conjugate pair of truncated matrices with a real-valued pair, one can build real-valued subspaces without losing any information:

$$\begin{aligned} \mathbf{H} _{\text {F}}&= \begin{bmatrix} \text{ Re }(\hat{\mathbf{F }}^{(\omega _1)}_k)&\text{ Im }(\hat{\mathbf{F }}^{(\omega _1)}_k)&\cdots&\text{ Re }(\hat{\mathbf{F }}^{(\omega _n)}_k)&\text{ Im }(\hat{\mathbf{F }}^{(\omega _n)}_k) \end{bmatrix}\hat{\mathbf{H }}_{\Sigma }^{1/2} \in \mathbb {R}^{N_u\times 2nk}, \end{aligned}$$
(14a)
$$\begin{aligned} \mathbf{H} _{\text {U}}&= \begin{bmatrix} \text{ Re }(\hat{\mathbf{U }}^{(\omega _1)}_k)&\text{ Im }(\hat{\mathbf{U }}^{(\omega _1)}_k)&\cdots&\text{ Re }(\hat{\mathbf{U }}^{(\omega _n)}_k)&\text{ Im }(\hat{\mathbf{U }}^{(\omega _n)}_k) \end{bmatrix}\hat{\mathbf{H }}_{\Sigma }^{1/2} \in \mathbb {R}^{N\times 2nk}. \end{aligned}$$
(14b)

Here, each subspace is weighted by the square root of the diagonal matrix \(\hat{\mathbf{H }}_{\Sigma }\) and forms an eigenvalue problem of the symmetric, positive-semidefinite matrix (i.e. \(\mathbf{H} _{\text {F}}^T\mathbf{M} {} \mathbf{H} _{\text {F}}\) or \(\mathbf{H} _{\text {U}}^T\mathbf{Q} {} \mathbf{H} _{\text {U}}\)) with a smaller dimension 2nk:

$$\begin{aligned} \mathbf{H} _{\text {F}}^T\mathbf{M} {} \mathbf{H} _{\text {F}}\Phi _{\text {F}}&=\Lambda ^2_{\text {F}}\Phi _{\text {F}}, \end{aligned}$$
(15a)
$$\begin{aligned} \mathbf{H} _{\text {U}}^T\mathbf{Q} {} \mathbf{H} _{\text {U}}\Phi _{\text {U}}&=\Lambda ^2_{\text {U}}\Phi _{\text {U}}, \end{aligned}$$
(15b)

where \(\Lambda _{\text {F}}\) and \(\Lambda _{\text {U}}\) are diagonal matrices with real and nonnegative energy norms \(\lambda _i\) in descending order, and the columns of \(\Phi _{\text {F}}\) or \(\Phi _{\text {U}}\) are real, orthonormal eigenvectors. The orthonormal projection bases (either with respect to \(\mathbf{M} \) or \(\mathbf{Q} \)) of (13), known as the POD modes, are given by

$$\begin{aligned} \tilde{\mathbf{F }}&=\mathbf{H} _{\text {F}}\Phi _{\text {F}}\Lambda _{\text {F}}^{-1}\in \mathbb {R}^{N_u\times 2nk}, \end{aligned}$$
(16a)
$$\begin{aligned} \tilde{\mathbf{U }}&=\mathbf{H} _{\text {U}}\Phi _{\text {U}}\Lambda _{\text {U}}^{-1}\in \mathbb {R}^{N\times 2nk}. \end{aligned}$$
(16b)

These POD modes are sorted in descending order based on the magnitude of each \(\lambda _i\), which indicate the importance of each mode. A further truncation can be made so that we only need to consider the first m POD modes for each case, as denoted by \(\tilde{\mathbf{F }}_m\) and \(\tilde{\mathbf{U }}_m\). In this study, we allow a relative mismatch of less than \(10^{-6}\) across the specified frequency range and m is chosen such that \(\sum _{i=1}^{m}\lambda ^2_i\approx (1-10^{-6})\ \mathrm {tr}(\Lambda ^2)\) to capture a sufficient fraction of the total energy norm.

4.3 Performance optimisation

figure b
Fig. 6
figure 6

Flowchart of optimal estimator design. a Initialising: construct resolvent operator \(\mathcal {H}(j\omega )\) and perform resolvent analysis across sampled frequencies; b Solving: construct low-rank input basis \(\tilde{\mathbf{F }}_m\) by applying POD analysis to the leading resolvent input modes \(\hat{\mathbf{F }}_k\) and solve the Riccati equation; c Iterating: update the low-rank input basis \(\tilde{\mathbf{F }}_m\) by including new resolvent input modes \(\hat{\mathbf{F }}_k\) and solve the Riccati equation

In general, using a low-rank basis results in a local optimum for the optimal design problem with full-state inputs and full-state outputs. This is because the low-rank basis that is good enough for the open-loop system may not appropriately approximate the most important input-output directions of the closed-loop system. Therefore, we need to perform POD not only for the open-loop system but also for the closed-loop system and iterate until the estimation or control performance converges. The detailed steps of designing the global optimal estimator are summarised in Algorithm 1, which illustrates the design procedure in three stages: (a) initialising; (b) solving and (c) iterating. The optimal full-state information controller can be designed analogously.

At the initial stage, the resolvent operator \(\mathcal {H}(j\omega )\) is constructed from the frequency-domain Navier–Stokes equations linearised about the base flow. The singular value decomposition of the weighted global resolvent \(\mathbf{Z} _1(j\omega )\) is performed at each sampled frequency, which results in the truncated input and output matrices \(\hat{\mathbf{F }}^{(\omega )}_k\) and \(\hat{\mathbf{U }}^{(\omega )}_k\) each consisting of orthonormal modes ranked by their energy gains \(\sigma _i\) in the diagonal matrix \(\mathbf {\Sigma }^{(\omega )}_k\). Note that only the first k resolvent modes are considered for the estimator optimisation and the most responsive resolvent input modes at each sampled frequency are stacked together in the matrix \(\mathbf{H} _F\) (see Eq. (14a)).

Solving the large-scale Riccati equation associated with the OE problem is handled by a sparse Riccati solver [58] which is capable of solving high-dimensional system matrices (i.e. \(\mathbf{A} ,\ \mathbf{E} \in \mathbb {R}^{N\times N}\)) but the number of inputs (i.e. the size of disturbances \({{\varvec{d}}}\)) is limited to be small. Therefore, we consider approximating full-velocity-state random disturbances \({{\varvec{d}}}\in \mathbb {R}^{N_u}\) by reduced random disturbances \({{\varvec{d}}}_m\in \mathbb {R}^m\) which disturb the system through linear combinations of the input basis \(\tilde{\mathbf{F }}_m\) ( i.e. \({{\varvec{d}}}\approx \tilde{\mathbf{F }}_m{{\varvec{d}}}_m\)). Here, the low-rank orthonormal input basis \(\tilde{\mathbf{F }}_m\) is constructed from the leading POD modes of the matrix \(\mathbf{H} _{\text {F}}\). By setting the covariance matrix \(\mathbf{W} ^{1/2}=\mathbf{P} {} \mathbf{M} \tilde{\mathbf{F }}_m\), the solution of the Riccati equation is obtained to form the optimal estimator \(\mathbf{K} _{f}\) that minimises the estimation error under the stimulation of the dominant resolvent input modes across the specified frequency range.

However, disturbance reduction is performed based on the open-loop system, and a number of possible inputs discarded during the construction of the low-rank basis might become critical for the closed-loop estimation error system. Therefore, we update the closed-loop resolvent operator and include the corresponding resolvent input modes in the matrix \(\mathbf{H} _{\text {F}}\):

$$\begin{aligned} \mathbf{H} _{\text {F}}=\left[ \sqrt{\text {Trace}\{\hat{\mathbf{H }}^{\text {t}}_{\Sigma }\}/\textit{m}}\ \tilde{\mathbf{F }}_m\ \ \mathbf{H} _{\text {F}}^{\text {t}}\right] , \end{aligned}$$
(17)

where matrices \(\mathbf{H} _{\text {F}}^{\text {t}}\) and \(\hat{\mathbf{H }}^{\text {t}}_{\Sigma }\) consist of the resolvent input modes and the corresponding singular values at the current iteration t. Note that we also include the previous low-rank basis \(\tilde{\mathbf{F }}_m\) in the matrix \(\mathbf{H} _{\text {F}}\), scaled by the coefficient \(\sqrt{\text {Trace}\{\hat{\mathbf{H }}^{t}_{\Sigma }\}/\textit{m}}\) so that it has the same total energy norm as \(\mathbf{H} _{\text {F}}^{\text {t}}\).

An iterative strategy is employed to further optimise the estimation performance \(\gamma ^2(k,\omega _n)\). In particular, the POD analysis of the updated matrix \(\mathbf{H} _{\text {F}}\) leads to a new low-rank input basis \(\tilde{\mathbf{F }}_m\). We monitor the relative change of the estimation performance until it reaches the stopping criterion \(\theta _c\). A detailed flowchart of implementing Algorithm 1 is shown in Fig. 6. Note that resolvent analysis is central to this design method, as it is able to predict dominant coherent structures even for higher Reynolds numbers [56, 65]. By choosing a sufficient number of resolvent modes over a sufficiently large frequency range, the method should result in an optimal estimator that converges to the global optimal performance.

5 Numerical Results

In order to test our numerical method for the optimal estimation and control of fluid flows, we consider linear feedback control of the cylinder wake at \({\textit{Re}}=90\) as an example. Here, we choose a single sensor placed downstream at \({{\varvec{x}}}_s=(7.70,\ 0.73)\) to measure the perturbation velocity \({{\varvec{u}}}'({{\varvec{x}}}_s, t)\) and a single actuator placed near the cylinder surface (at \({{\varvec{x}}}_a=(2.56,\ 1.18)\)) to stimulate the flow in the streamwise and transverse directions independently (i.e. \(n_s=n_a=1\)). Note that this choice is merely for demonstration and the algorithm is valid for any reasonable choices of sensor and actuator placements. Based on this method, a recent investigation has also been conducted to reveal the optimal control placements and the key physical mechanisms that limit feedback control performance [39].

This section is organised as follows. The validation of low-rank bases and a convergence analysis of Algorithm 1 are presented in Sect. 5.1 using different parameter choices. The implementation of the feedback control design is then presented, which consists of three parts: (i) optimal estimator design when only a single sensor is available for measurement; (ii) optimal full-state information controller design when only a single actuator is available for control; (iii) feedback control with a single sensor for measurement and a single actuator for control.

Fig. 7
figure 7

Comparison of a the first singular value \(\sigma _1\), b the third singular value \(\sigma _3\), c the sixth singular value \(\sigma _6\) and d the ninth singular value \(\sigma _9\) as a function of frequency. They are computed either from the standard perturbation system (\(\circ \)) or from the terminal-reduced systems (lines). The terminal reduction is performed using different choices of k and \(\omega _n\) which correspond to including the first k resolvent input modes within the frequency range \([-\omega _n,\ \omega _n]\)

5.1 Validation and convergence analysis

The algorithm for solving the OE and FIC problems is based on an iterative strategy. Each step consists of the projection of the original system onto a low-rank orthonormal basis and gives a terminal-reduced system that retains only the most energetic mechanisms. For the sake of validation, we consider the terminal-reduced system’s ability to capture the dynamics of the original system by comparing their resolvent spectra. For brevity, we consider input reduction in the open-loop system (12) where the size of the random disturbances is reduced to m after setting the matrix \(\mathbf{W} ^{1/2}=\mathbf{P} {} \mathbf{M} \tilde{\mathbf{F }}_m\). The construction of the low-rank orthonormal basis \(\tilde{\mathbf{F }}_m\) relates to two parameters: k and \(\omega _n\) which correspond to including the first k resolvent input modes over the frequency range \([-\omega _n, \omega _n]\). With a good choice of parameters, any largely amplified linear inputs, as well as their energy gains, can be well-modelled by the terminal-reduced system.

Figure 7 compares resolvent spectra from the standard perturbation system (\(\circ \)) to those from the terminal-reduced systems (lines) using four different parameter choices. As can be seen from the figure, the terminal-reduced system is better able to capture the dynamics of the original system for a wider frequency range if larger values of k and \(\omega _n\) are chosen. In particular, the comparisons from Fig. 7 indicate two important features of the terminal-reduced system. First of all, the first k resolvent spectra from the terminal-reduced system well-match those from the original system within the frequency range \(\omega \in [0,\ \omega _n]\) (i.e. relative error less than \(10^{-6}\)). Second, the remaining resolvent spectra, which correspond to resolvent input modes that are excluded in the terminal-reduction procedure, poorly fit those from the original system. For example, the dash-dotted lines, which correspond to the parameter choice \(k=3\) and \(\omega _n=6\ rad/s\), match the circle markers reasonably well for the first and third resolvent spectra within the frequency range \([0,6]\ rad/s\), as shown in Fig. 7(\(\textit{a}\), \(\textit{b}\)). Nevertheless, in Fig. 7(\(\textit{c}\), \(\textit{d}\)), which shows a comparison of the sixth spectra \(\sigma ^2_6\) and the ninth spectra \(\sigma ^2_9\), the dash-dotted lines in no case are following the circle markers.

Fig. 8
figure 8

Convergence of the iterative Algorithm 1 with four different parameter choices. a The convergence of the cost function \(\gamma ^2_t(k,\omega _n)\). b The convergence of the relative change of the cost function \(\theta _t\). The red dashed line indicates the chosen stop criterion \(\theta _c\)

We further consider the implementation of Algorithm 1 using the four above-mentioned parameter choices for convergence analysis. In Fig. 8(a, b), the cost function \(\gamma ^2_t(k,\omega _n)\) and the corresponding relative change \(\theta _t\) are shown as a function of the iteration number t. We notice that different choices of k and \(\omega _n\) show similar convergence features and each cost function converges to a constant after only two iterations. Their relative errors drop below the stop criterion \(\theta _c=10^{-4}\) after four iterations, which is deemed sufficient to guarantee the converged estimator gain \(\mathbf{K} _f\). As already mentioned, each iteration includes a resolvent-based terminal reduction procedure (see Sect. 4.2) as well as iteratively solving a nonlinear Riccati equation [58]. Choosing either a higher-value truncation criterion (e.g. capture more than 99.5\(\%\) energy norm while truncating POD matrices) or a lower Riccati solver tolerance will lead to further decrease in the relative error \(\theta _t\).

The results of the output reductions, as well as the convergence features of the FIC problem, are similar to those presented above, in which the convergence of the controller is always guaranteed after four iterations. The choice of parameters k and \(\omega _n\) is critical to the design of optimal estimators and controllers. We will show further details about their effects on estimation and control performance in the following sections.

5.2 Optimal estimator design

5.2.1 Parameters and estimation performance

Table 2 Rank of the reduced disturbance m, the cost function for the optimal estimator design \(\gamma ^2{(k,\omega _n)}\) and the mean energy of the total estimation error \({{\varvec{J}}}_{\text {OE}}\) (random disturbances applied everywhere) are listed for different parameter choices (k, \(\omega _n\)). The optimal estimators are designed at \({\textit{Re}}=90\) with a sensor placed at \({{\varvec{x}}}_s=(7.70,0.73)\) and sensor noise of magnitude \(\alpha =10^{-4}\)

We now consider optimal estimator design at \({\textit{Re}}=90\) by implementing Algorithm 1 with four different choices of the parameters k and \(\omega _n\). The sensor noise has a negligible magnitude of \(\alpha =10^{-4}\). With this small choice of \(\alpha \), the performance of the estimator remains insensitive to the sensor noise, and thus we are able to analyse the effects of disturbances on the estimation error. Table 2 lists the rank of the reduced disturbances m, the cost function for the optimal estimator design \(\gamma ^2{(k,\omega _n)}\) and the resulting estimation performance \({{\varvec{J}}}_{\text {OE}}\) for different choices of k and \(\omega _n\). The cost function \(\gamma ^2{(k,\omega _n)}\) is a norm squared when considering a limited number of system inputs and outputs (i.e. low-rank inputs and outputs), whereas \({{\varvec{J}}}_{\text {OE}}\) represents the estimation error when random disturbances are applied everywhere in the domain (i.e. full-rank inputs and outputs).

We immediately see that the rank of the reduced disturbances m increases with increasing values of k and \(\omega _n\). The physical meaning of the cost function \(\gamma ^2{(k,\omega _n)}\) is the mean energy of the estimation error, while the system is excited by the first k resolvent input modes across the frequency range \([-\omega _n,\ \omega _n]\). As expected, a larger rank of the reduced disturbance m, i.e. considering more input directions, gives rise to a larger cost function \(\gamma ^2{(k,\omega _n)}\). By performing numerical simulations, we are able to evaluate the estimation performance \({{\varvec{J}}}_{\text {OE}}\) based on the definition of the original OE problem: the mean energy of the estimation error when random disturbances are applied everywhere in the domain. With estimators designed with larger values of k and \(\omega _n\), we observe that the total estimation error \({{\varvec{J}}}_{\text {OE}}\) decreases and eventually converges to a constant (relative change converges around \(10^{-4}\)).

Fig. 9
figure 9

Spatial distribution of the estimation error \(\epsilon _{\text {OE}}(x,y)\) with a sensor placed at \((7.70,\ 0.73)\), which is marked by a blue dot (blue dot). The optimal estimators are designed using parameters a \(k=1\), \(\omega _n=3\); b \(k=3\), \(\omega _n=6\); c \(k=9\), \(\omega _n=12\) and d \(k=9\), \(\omega _n=18\). e The estimation error \(\epsilon _{\text {OE}}\) when disturbances are applied everywhere over the domain. (f) The differences of the estimation error \(\epsilon _{\text {OE}}\) between d and e (i.e. between \(\gamma ^2{(k,\omega _n)}\) and \({{\varvec{J}}}_{\text {OE}}\)). All plots share the same linear colour scale \([0,\ 10.5]\)

It is also insightful to see the energy distribution of the estimation error throughout the domain and the effect of the disturbances applied. Thus, we define a root-mean-square value \(\epsilon _{\text {OE}}(x,y)\) such that

$$\begin{aligned} \gamma ^2{(k,\omega _n)}=\int _{\varOmega }\epsilon ^2_{\text {OE}}(x,y)\ d\varOmega , \end{aligned}$$
(18)

where \(\epsilon _{\text {OE}}(x,y)\) denotes the contribution of the estimation error throughout the domain (see Appendix B). The contour plots of \(\epsilon _{\text {OE}}(x,y)\) for the four cases listed in table 2 are shown in Fig. 9(a, b, c, d), respectively. We notice that these contour plots show quite similar structures. In particular, the most significant contributions to the estimation error are concentrated in two horizontal streaks which are approximately symmetric and located around \(y\approx 0.7\). As expected, the smallest \(\epsilon _{\text {OE}}\) occurs at the sensor location (blue dot) which divides the two streaks into two regions: a near-wake area (between the cylinder and the sensor) and a far-wake area (downstream of the sensor). The only difference among these plots is the slightly larger magnitude of \(\epsilon _{\text {OE}}\) for cases with larger k and \(\omega _n\). This can be most clearly seen by comparing Fig. 9a to the remaining three plots. We further consider the spatial distribution \(\epsilon _{\text {OE}}\) from numerical simulations when disturbances are applied everywhere, i.e. \(\epsilon _{\text {OE}}\) defined using \({{\varvec{J}}}_{\text {OE}}\), which is shown in Fig. 9e. Here, we use the same estimator as that used in case (d) but we apply random disturbances everywhere in the domain instead of the reduced disturbances of rank m. By comparing Fig. 9d, e, we see that the reduced disturbances produce lower estimation error in the freestream but give almost the same characteristic structures (streaks described above) as the case with disturbances applied everywhere. This can be more clearly seen in Fig. 9f, which plots the difference between Fig. 9d and e: the region in which the streaks lie is white in space whereas the ‘background’ or ‘freestream’ area is of approximately uniform colour.

Fig. 10
figure 10

Comparison of a the first singular value \(\sigma _1\), b the second singular value \(\sigma _2\), c the third singular value \(\sigma _3\) and d the fourth singular value \(\sigma _4\) from resolvent analysis of the open-loop system (\(\circ \)) and the closed-loop systems \(\mathbf{Z} (s)\) (lines) at \({\textit{Re}}=90\). Estimators are designed for a sensor placed at \((7.70,\ 0.73)\) using four different parameter choices

To quantitatively characterise the estimation performance, Fig. 10 compares the first four resolvent spectra computed from the open-loop system (without estimator) to those from the closed-loop error system \(\mathbf{Z} (s)\) for the four cases. A comparison of the four plots reveals two important facts: first, with increasing values of k and \(\omega _n\), the resolvent spectra of the closed-loop error system eventually converge, as shown by the matched dashed lines (\(k=6,\ \omega _n=12\)) and solid lines (\(k=9,\ \omega _n=18\)); second, the estimator significantly changes the first two resolvent spectra but barely modifies either the third or the fourth singular spectra. These two observations further validate the iterative method for solving the OE problem: it is unnecessary to optimise all energy gains over the whole frequency range and a reasonable choice of k and \(\omega _n\) should give convergence to the global optimal estimator. Note that \(\gamma ^2{(k,\omega _n)}\) is defined as the integral over the first k resolvent spectra within the frequency range \([-\omega _n,\omega _n]\), whereas \({{\varvec{J}}}_{\text {OE}}\) is over all resolvent spectra across all frequencies. The gap between the cost function \(\gamma ^2{(k,\omega _n)}^2\) and \({{\varvec{J}}}_{OE}\) represents the effect of ‘background’ or ‘free-stream’ modes which do not affect the estimator design. In other words, the reduced disturbances used for the optimal estimator design procedure allow us to ignore these ‘background’ modes (which are not important for estimation) and thus reduce the complexity of computation.

5.2.2 Effect of sensor noise

The choice of sensor noise also affects the optimal estimation performance. The magnitude of the sensor noise is determined by the matrix \(\mathbf{V} ^{1/2}=\alpha \mathbf{I} \) where the positive scalar \(\alpha \) represents the relative size of the sensor noise \({{\varvec{n}}}\) to the disturbances \({{\varvec{d}}}\). To quantify their contribution to the total estimation error, we compute the \(H_2\) norm squared of the corresponding transfer functions individually from numerical simulations. Here, let \(\mathbf{Z} _1(s)\) be the transfer function from the disturbances \({{\varvec{d}}}\) to the estimation error, and let \(\mathbf{Z} _2(s)\) be the transfer function from the sensor noise \({{\varvec{n}}}\) to the estimation error. It can be shown that \(||\mathbf{Z} _1(s)||_2^2+||\mathbf{Z} _2(s)||_2^2={{\varvec{J}}}_{\text {OE}}\). The performance of the optimal estimator for different choices of \(\alpha \) and the corresponding contributions from \({{\varvec{d}}}\) and \({{\varvec{n}}}\) are summarised in Fig. 11.

Fig. 11
figure 11

Performance of the optimal estimator designed for different magnitudes of the sensor noise. a The total cost function \({{\varvec{J}}}_{\text {OE}}\) as a function of the noise magnitude \(\alpha \). The grey area indicates the contribution of the sensor noise (\(||\mathbf{Z} _2(s)||_2^2\)) to the total cost function. b The mean energy of the estimation error due to unitary sensor noise

In Fig. 11a, we can see that for \(\alpha <1\), the estimation performance is insensitive to the precise choice of \(\alpha \). With further increasing values of \(\alpha \), the estimation error energy \({{\varvec{J}}}_{\text {OE}}\) increases logarithmically. The deterioration of the estimation performance is owing not only to the contribution of the sensor noise, as indicated by the grey area, but also to the contribution of disturbances (lower bound of the grey area). The value of \(\alpha \) controls the balance between measurement uncertainty and model uncertainty in the estimation problem. The estimator tends to reduce the effect of the measurement uncertainty if it is designed using a larger value of \(\alpha \), as shown by Fig. 11b. The normalised energy norm \(||\mathbf{Z} _2(s)||_2^2/\alpha ^2\), which reflects the effect of unitary measurement uncertainty on the estimator performance, decreases with increasing values of \(\alpha \). As can be seen from the figure, under the same amount of measurement uncertainty, the optimal estimator designed using a larger value of \(\alpha \) is more effective at reducing the estimation error due to sensor noise. In practice, one should choose \(\alpha \) based on a trade-off between the uncertainty of the measurements and the uncertainty of the model.

5.3 Optimal full-state information controller design

Analogous to the OE problem, the FIC problem can be solved by Algorithm 1 and replacing \(\mathbf{Q} ^{1/2}=\tilde{\mathbf{U }}^{T}_m\mathbf{E} \) in the Riccati equation. The number of outputs in the performance measure \(\mathbf{Z} _1(s)\) is thus reduced to the rank of the POD basis m. In this section, we consider the optimal full-state information controller design for the actuator placement \({{\varvec{x}}}_a=(2.56,1.18)\) at \({\textit{Re}}=90\). The control penalty is chosen to be \(\beta =10^{-4}\) to allow the most aggressive controller that minimises the energy gains of the closed-loop system for the first k resolvent output modes across the frequency range \([-\omega _n, \omega _n]\). The rank of the reduced performance measuring m, the cost function for the optimal control design \(\gamma ^2{(k,\omega _n)}\) and the resulting control performance \({{\varvec{J}}}_{\text {FIC}}\) for different choices of parameters k and \(\omega _n\) are summarised in Table 3.

Table 3 Rank of the reduced performance measuring m, the cost function \(\gamma ^2{(k,\omega _n)}\) for the optimal control design and the resulting control performance \({{\varvec{J}}}_{\text {FIC}}\) are listed with different parameter choices (k, \(\omega _n\)). The optimal FIC controllers are designed at \({\textit{Re}}=90\) with an actuator placed at \({{\varvec{x}}}_a=(2.56,1.18)\) and the control penalty is chosen to be \(\beta =10^{-4}\)

As expected, the rank of the reduced performance measuring m as well as the cost function \(\gamma ^2{(k,\omega _n)}\) increases with increasing values of k and \(\omega _n\) since more resolvent output modes and their energy gains are considered. We further perform numerical simulations of the closed-loop system to evaluate the original control performance \({{\varvec{J}}}_{\text {FIC}}\) defined by (6). We observe that the control performance \({{\varvec{J}}}_{\text {FIC}}\) slightly decreases with increasing values of k and \(\omega _n\) and eventually converges to a constant with a relative change around \(10^{-4}\). For the cost function in the FIC problem, a root-mean-square value \(\epsilon _{\text {FIC}}(x,y)\) can also be defined as in (18) (see Appendix B). In this case, \(\epsilon _{\text {FIC}}(x,y)\) indicates the contribution of every single disturbance to the energy norm of the performance measure \(\mathbf{Z} (s)\). In other words, it shows the spatial distribution of the receptivity to disturbances applied in the closed-loop system and the region with larger values of \(\epsilon _{\text {FIC}}\) has higher receptivity and is more sensitive to disturbances (worst disturbance rejection ability) under the control of the actuator.

Fig. 12
figure 12

Spatial distribution of the receptivity to disturbances \(\epsilon _{\text {FIC}}(x,y)\) under the control of the actuator placed at \((2.56,\ 1.18)\), which is marked by a blue dot (blue dot). The optimal full-state information controllers are designed using parameters a \(k=1\), \(\omega _n=3\); b \(k=3\), \(\omega _n=6\); c \(k=9\), \(\omega _n=12\) and d \(k=9\), \(\omega _n=18\). e The receptivity \(\epsilon _{\text {FIC}}\) with full-rank performance measuring. (f) The differences of the receptivity \(\epsilon _{\text {FIC}}\) between (d) and (e) (i.e. between \(\gamma ^2{(k,\omega _n)}\) and \({{\varvec{J}}}_{\text {FIC}}\)). All plots share the same linear colour scale \([0,\ 30]\)

In Fig. 12a–d, we plot the receptivity \(\epsilon _{\text {FIC}}\) defined from the cost function \(\gamma ^2{(k,\omega _n)}\) for the four cases listed in Table 3. We first notice that the receptivity of all four cases has almost the same spatial distribution regardless of the values of k and \(\omega _n\). In particular, the minimum of \(\epsilon _{\text {FIC}}\) occurs near the actuator position where linear perturbations are best controlled. Another significant observation from these contour plots is that the spatial distribution of \(\epsilon _{\text {FIC}}\) can also be divided into two regions: the first is near the cylinder and the second is in the far wake (downstream of the actuator). Analogous to the OE problem, the only difference among these plots is the slightly larger magnitude of \(\epsilon _{\text {FIC}}\) for those cases with larger k and \(\omega _n\). This can be most clearly seen by comparing Fig. 12a, d. In Fig. 12e, we further consider the receptivity of the perturbation system controlled by the same controller designed for case (d) but with full-state performance measuring. That is, \(\epsilon _{\text {FIC}}\) is defined from \({{\varvec{J}}}_{\text {FIC}}\), which can be computed from numerical simulations of the corresponding adjoint system (see “Appendix B”). From a comparison of Fig. 12d, e, their differences only occur in the ‘freestream’ area and the receptivity defined from \(\gamma ^2{(k,\omega _n)}\) (with output reduction) exactly reproduces the characteristic structures found using \({{\varvec{J}}}_{\text {FIC}}\) (without any reductions). This can be most clearly seen in Fig. 12f where regions with high values of \(\epsilon _{\text {FIC}}\) are white (negligible difference between (d) and (e)), whereas the ‘freestream’ area is of approximately uniform colour.

Fig. 13
figure 13

Comparison of a the first singular value \(\sigma _1\), b the second singular value \(\sigma _2\), c the third singular value \(\sigma _3\) and d the fourth singular value \(\sigma _4\) from resolvent analysis of the open-loop system (\(\circ \)) and the closed-loop systems \(\mathbf{Z} (s)\) (lines) at \({\textit{Re}}=90\). Controllers are designed for an actuator placed at \((2.56,\ 1.18)\) using four sets of parameters

Figure 13 shows comparisons of the first four resolvent spectra between the open-loop system and the closed-loop system \(\mathbf{Z} (s)\) for the four cases listed in Table 3. We observe that the resolvent spectra of the closed-loop system converge for larger values of k and \(\omega _n\), as shown by the matched dashed lines (\(k=6,\ \omega _n=12\)) and solid lines (\(k=9,\ \omega _n=18\)). In Fig. 13c, d, the third and the fourth singular spectra of the closed-loop system are almost identical to those from the open-loop system regardless of the values of k and \(\omega _n\). Analogous to the OE problem, it is unnecessary to optimise all energy gains over the whole frequency range to solve the FIC problem, and a reasonable choice of k and \(\omega _n\) is sufficient to obtain a converged controller that achieves globally optimal performance. The cost function \(\gamma ^2{(k,\omega _n)}\), which excludes the effect of ‘background’ or ‘freestream’ modes (that do not need to be controlled for good performance), reduces the complexity of the original FIC problem and makes feasible the optimal full-state information controller design procedure.

5.3.1 Effect of control penalty

We now consider the effect of the control penalty on the optimal controller design. The control performance is composed of two parts: (i) a contribution from the flow perturbations \({{\varvec{z}}}_1=\mathbf{Q} ^{1/2}{{\varvec{q}}}\) and (ii) the control signal \({{\varvec{z}}}_2=\mathbf{R} ^{1/2}{{\varvec{w}}}\), where \(\mathbf{Q} ^{1/2}=\mathbf{M} ^{1/2}{} \mathbf{P} ^T\) and \(\mathbf{R} ^{1/2}=\beta \mathbf{I} \). The balance between minimising perturbations \({{\varvec{q}}}\) and minimising the control signal \({{\varvec{w}}}\) is thus controlled by the positive scalar \(\beta \). To quantify their contributions individually, the \(H_2\) norm squared of the corresponding transfer functions \(\mathbf{Z} _1(s)\) and \(\mathbf{Z} _2(s)\) are computed from numerical simulations of the closed-loop system. It can be shown that \(||\mathbf{Z} _1(s)||_2^2+||\mathbf{Z} _2(s)||_2^2={{\varvec{J}}}_{\text {FIC}}\). For controllers designed using different values of \(\beta \), the contributions from \({{\varvec{q}}}\) and \({{\varvec{w}}}\) are shown in Fig. 14 as well as the total control performance \({{\varvec{J}}}_{\text {FIC}}\).

From Fig. 14a, we observe that with a small value of \(\beta <1\), the control performance is insensitive to the precise choice of \(\beta \). This is consistent with previous findings for a spatially developing one-dimensional flow [22]. A larger value of \(\beta \) is not only less effective at reducing the perturbation magnitude (lower bound of the grey area), but also gives a control cost that increases logarithmically with \(\beta \) (grey area). Both of these contributions result in the logarithmic deterioration of the control performance \({{\varvec{J}}}_{\text {FIC}}\).

A measure of the control signal is given by the normalised \(H_2\) norm squared \(||\mathbf{Z} _2(s)||_2^2/\beta ^2\) (i.e. control effort) and a controller tends to stabilise the perturbation system with a smaller control signal if it is designed using a larger value of \(\beta \), i.e. less aggressive control. This can be most clearly seen in Fig. 14b where the norm squared of the control signal decreases with increasing values of \(\beta \) and tends to converge to a constant for \(\beta \gg 1\). However, the control design algorithm may diverge and fail to find the solution of the optimal control problem when the control penalty becomes extremely large (i.e. \(\beta \rightarrow \infty \)). With an infinite control penalty, the optimal control problem is referred to as the minimum energy stabilising control feedback that can be solved by the Minimum Control Energy (MCE) algorithm proposed by Bewley et al. [17]. In this case, control leaves those stable modes of the system alone and swings the unstable eigenvalues of the system into the left-half plane (LHP) using the minimum amount of control effort. In practice, one should choose \(\beta \) based on a trade-off between minimising perturbations while maintaining reasonably sized control inputs.

Fig. 14
figure 14

Performance of the optimal controller designed using different control penalties. a The total cost function \({{\varvec{J}}}_{\text {FIC}}\) as a function of the control penalty \(\beta \). The grey area indicates the contribution of the control cost (\(||\mathbf{Z} _2(s)||_2^2\)) to the total cost function. b The normalised control cost as a function of the control penalty \(\beta \)

5.4 Optimal feedback controller design

We now turn our attention to the IOC problem where the optimal estimator and the optimal full-state information controller are combined to form a feedback controller as shown in Fig. 2a. In particular, we consider feedback control of the cylinder flow at \({\textit{Re}}=90\) where a single sensor is placed at \({{\varvec{x}}}_s=(7.7,0.73)\) with sensor noise of magnitude \(\alpha =10^{-4}\) and a single actuator is placed at \({{\varvec{x}}}_a=(2.56,1.18)\) with control penalty \(\beta =10^{-4}\). In this case, we aim to minimise the energy gain of the performance measure \(\mathbf{Z} (s)\) defined in table 1 for the IOC problem. The cost function \(\gamma ^2{(k,\omega _n)}\) for the optimal feedback control design and the resulting control performance \({{\varvec{J}}}_{\text {IOC}}\) for different choices of k and \(\omega _n\) are summarised in Table 4.

Table 4 Cost function \(\gamma ^2{(k,\omega _n)}\) for the optimal feedback control design and the resulting feedback control performance \({{\varvec{J}}}_{\text {IOC}}\) are listed for different parameter choices (k, \(\omega _n\)). The feedback controllers are found from solutions of the OE and FIC problems at \({\textit{Re}}=90\) with a sensor placed at \({{\varvec{x}}}_s=(7.70,0.73)\) and an actuator placed at \({{\varvec{x}}}_a=(2.56,1.18)\). The sensor noise and control penalty are chosen to be \(\alpha =\beta =10^{-4}\)

Similar to the OE and FIC problems, the cost function \(\gamma ^2{(k,\omega _n)}\) increases with increasing values of k and \(\omega _n\) for the IOC problem since more resolvent modes and their energy gains are considered. The feedback controllers designed for the four cases are implemented in numerical simulations with random disturbances applied everywhere, and the control performance \({{\varvec{J}}}_{\text {IOC}}\) is evaluated according to (6), which is summarised in table 4. We first notice the convergence of \({{\varvec{J}}}_{\text {IOC}}\) with increasing values of k and \(\omega _n\), and the final relative change decreases to around \(10^{-3}\), which is larger than those observed in the OE and FIC problems. This is mainly caused by the iterative algorithm which leads to converged results but with small relative errors when compared to the true optimum. Moreover, the control performance rapidly deteriorates when the control setup is switched from the optimal actuation or sensing (\({{\varvec{J}}}_{OE}\) or \({{\varvec{J}}}_{FIC}\)) to the feedback control problem (\({{\varvec{J}}}_{\text {IOC}}\)). In this case, the deterioration of control performance is due not only to the reduced ability of actuation and sensing, but also to the severe time delay between the actuator and the sensor [38, 53].

Fig. 15
figure 15

Comparison of a the first singular value \(\sigma _1\), b the second singular value \(\sigma _2\), c the third singular value \(\sigma _3\) and d the fourth singular value \(\sigma _4\) from resolvent analysis of the open-loop system (\(\circ \)) and closed-loop systems \(\mathbf{Z} (s)\) (lines) at \({\textit{Re}}=90\). The feedback controller is assembled from the optimal estimator and the optimal full-state information controller designed at \({\textit{Re}}=90\) with a sensor placed at \({{\varvec{x}}}_s=(7.70,0.73)\) and an actuator placed at \({{\varvec{x}}}_a=(2.56,1.18)\)

In this study, we characterise the control performance \({{\varvec{J}}}_{\text {IOC}}\) using the energy gains between orthonormal inputs and outputs (i.e. resolvent analysis) over the whole frequency space. Therefore, Fig. 15 shows comparisons of the first four resolvent spectra between the open-loop system and the closed-loop system \(\mathbf{Z} (s)\) for the four cases listed in table 4. Analogous to the OE and FIC problems, we first observe the convergence of the resolvent spectra for larger values of k and \(\omega _n\), as shown by the matched dashed lines (\(k=6,\ \omega _n=12\)) and solid lines (\(k=9,\ \omega _n=18\)). Furthermore, in the first two resolvent spectra, i.e. Fig. 15a, b, we observe large separations between the open-loop system (\(\circ \)) and the closed-loop systems (lines). Although slight deviations are observed in the third resolvent spectra for \(\omega <1.6\), Fig. 15c, d shows almost identical resolvent spectra for the open-loop system and the closed-loop systems regardless of the values of k and \(\omega _n\). Together with similar observations for the OE and FIC problems, these findings are consistent with those of [26, 40] where two types of resolvent modes were identified: (i) those corresponding to important physical mechanisms in the flow system that are required to be estimated and controlled and (ii) those representing the advection and diffusion of perturbations in the freestream that can be ignored in the optimal control design procedure.

6 Conclusions

We proposed a novel method to design \(H_2\)-optimal estimators and controllers for high-dimensional fluid flows. This involves solving high-dimensional Riccati equations with the full-rank covariance matrices (i.e. \(\mathbf{W} \) and \(\mathbf{Q} \)) which is challenging for existing numerical solvers. This challenge has been overcome by exploiting low-rank orthonormal bases that are constructed by performing a proper orthogonal decomposition of resolvent modes across a wide frequency range. We have thus transformed the problem from one of minimising energy gains between inputs and outputs over all frequencies and all possible directions to one of minimising the first few resolvent spectra over a specified frequency range. An iterative algorithm was implemented to update the low-rank orthonormal bases at each iteration using resolvent modes from the closed-loop system. Our numerical results indicate that by choosing sufficiently many resolvent modes over a sufficiently large frequency range, the performance converges to the global optimum in a few iterations.

We demonstrated the effectiveness of the algorithm by considering the linear feedback stabilisation problem arising from the two-dimensional cylinder flow using a single sensor and a single actuator. The optimal feedback controller is solved by considering two basic problems: (i) an optimal estimation (OE) problem and (ii) a full-state information control (FIC) problem. In the OE problem, the optimal estimation performance is robust when the sensor noise is smaller than stochastic disturbances (i.e. \(\alpha <1\)). Similarly, the optimal FI control performance is insensitive to the control penalty if we take minimising the perturbation magnitude as the priority (i.e \(\beta <1\)).

The algorithm has been implemented for different choices of parameters, i.e. the number of resolvent spectra k and the frequency range \(\omega _n\). The convergence of the corresponding results was shown by comparing the resolvent spectra for the original open-loop system and the closed-loop systems resulting from four different choices of k and \(\omega _n\). We observed that the optimal estimators and controllers affect only the first few resolvent spectra within a specified frequency range regardless of the parameter choice. This links directly to the findings of [26, 40] where two types of resolvent modes were identified: (i) those accounting for important physical mechanisms in the flow system that are required to be estimated and controlled and (ii) those representing the advection and diffusion of perturbations in the freestream that can be ignored in the design procedure. We therefore see that although the discretised Navier–Stokes equations are high-dimensional, only a limited number of physical mechanisms are important for effective estimation and control.