Short review of NPM for reduced order basis
Let’s consider for illustration purpose a PDE having the following semi-discrete formulation:
$$\begin{aligned} {[}M][\ddot{y}(t)]+[C][\dot{y}(t)]+[K][y(t)]+[F(t)]=0, \end{aligned}$$
(1)
with t being the time domain, and the solution [y] can be projected on a reduced basis [V] such as:
$$\begin{aligned} {[}y(t)]=[V][q(t)] \end{aligned}$$
(2)
The variable [q(t)] is the solution of the PDE equation depicted in Eq. (1) in the reduced coordinate system, after projection on the reduced order basis, and solving as a function of the time. The NPM method consists of replacing a reduced order basis \([V]\in \mathbb {R}_{(N,n)}\) by a stochastic counterpart \([\mathbf {V}]\in \mathbb {R}_{(N,n)}\), where N is the number of degrees of freedom in the HDM model, and n is the dimension of the built reduced basis. Considering a set of constraints or Dirichlet boundary conditions defined by a matrix \([B] \in \mathbb {R}_{(N,N_{BC})}\), the reduced basis [V] should satisfy the following orthogonality and boundary conditions constraints:
$$\begin{aligned} \left\{ \begin{array}{l} {[}V]^T[M] [V]=[I_n] \\ {[}B]^T [V] =[0] \end{array} \right. \end{aligned}$$
(3)
where \([I_n]\) being the identity matrix in a domain having the dimension of the reduced basis n, and \([M]\in [N,N]\) the mass matrix of the problem in question. Therefore, the stochastic reduced basis should satisfy the same constraints as the initial reduced basis:
$$\begin{aligned} \left\{ \begin{array}{l} {[}\mathbf {V}]^T[M] [\mathbf {V}]=[I_n] \\ {[}B]^T [\mathbf {V}] =[0] \end{array} \right. \end{aligned}$$
(4)
Using NPM, the stochastic basis \([\mathbf {V}]\) is constructed using the maximum entropy principle, while variation of [V] to construct \([\mathbf {V}]\) should be performed on the tangent vector \(T_v\) space defined by [45]:
$$\begin{aligned} T_v=\left\{ [\mathbf {Z}] \in \mathsf {R}_{(N,n)} : [\mathbf {V}]^T [M] [\mathbf {Z}] + [\mathbf {Z}]^T[M] [\mathbf {V}]=[0] \right\} \end{aligned}$$
(5)
with [Z] being therefore the first derivative of [V] using the inner product \(<<V_1,V_2>>=tr\left\{ [V_1]^T [M] [V_2]\right\} \). Therefore, [Z] can be built in the following form:
$$\begin{aligned} {[}\mathbf {Z}]=[\mathbf {V}][\mathbf {a}]+ [\mathbf {V}_{\perp }][\mathbf {b}] \end{aligned}$$
(6)
Defining \([\mathbf {a}]\), \([\mathbf {b}]\) and \([\mathbf {V}_\perp ]\) leads to the following construction algorithm [45]:
$$\begin{aligned} \left\{ \begin{array}{l} {[}\mathbf {U}]=[\mathbf {G}(\beta )][\sigma ]\\ {[}\mathbf {A}]=[\mathbf {U}]-[B]([B]^T[\mathbf {U}])\\ {[}\mathbf {D}]=\left( [V]^T [M] [\mathbf {A}]+ [\mathbf {A}]^T[M][V]\right) /2\\ {[}\mathbf {Z}]=[\mathbf {A}]-[V][\mathbf {D}]\\ {[}\mathbf {H}]=\left( [I_n]+s^2 [\mathbf {Z}]^T[M] [\mathbf {Z}]\right) ^{-1/2}\\ {[}\mathbf {V}]=\left( [V]+s[\mathbf {Z}]\right) [\mathbf {H}] \end{array} \right. \end{aligned}$$
(7)
with \([\sigma ]\) being an \(n\times n\) upper diagonal matrix of hyper-parameters \(\in \mathsf {R}\) to be identified, \([\mathbf {G}(\beta )]\) is a second order centered random matrix \(\in \mathsf {R}_{(N,n)}\) built from two uniform random distributions as well as the hyper-parameter \(\beta \in [0;1]\), as described in the appendix D in [45]. \(s\in [0;1]\) is also a hyper-parameter to define. The problem hyper-parameters are found using the following minimization problem:
$$\begin{aligned} \begin{array}{l} \left( [\sigma ],\beta ,s\right) =argmin\left\{ w \int _\Omega E\left( \mathcal {O}([\mathbf {V}],t) \right) -E_{exp} d\Omega + \right. \\ \qquad \qquad \qquad \left. (1-w)\int _\Omega \sqrt{Var\left( \mathcal {O}([\mathbf {V}],t) \right) }-\sqrt{Var_{exp}} d\Omega \right\} \end{array} \end{aligned}$$
(8)
We define \(w\in [0;1]\) as a weight to insure as much as possible a convexity in the cost function. \(E(\cdot )\) defines the mean of a distribution, \(Var(\cdot )\) define the standard deviation of a given distribution. \(E_{exp}\) and \(Var_{exp}\) are the experimental values of the target values of the quantities of interest \(\mathcal {O}([\mathbf {V}],t)\), t being the time domain. The quantities of interest are defined as a function of the solution of the PDE equations of the modeled problem:
$$\begin{aligned} \mathcal {O}([\mathbf {V}])=\mathcal {H}([\mathbf {V}][p(t)],t), \end{aligned}$$
(9)
with \([p(t)]\in \mathsf {R}[n,m]\) the solution of the PDE in the reduced order basis coordinate system, m being the length of the mesh in the time domain. Computing [p(t)] would require a direct solution of the PDE (1) in the reduced coordinate system, for every variation of the reduced basis \([\mathbf {V}]\). This gets even more time consuming when the derivatives are to be computed numerically during the optimization process. Interested readers are referred to the [15, 45, 46] and their references therein.
To evaluate stochastic quantities of interests of the generated stochastic solution \(\mathbf {y}\), derived from the expression of NPM, one may need to repeat the algorithm (7) m times, to construct several solutions for different selection values of \([\mathbf {G}(\beta )]\). In fact, \([\mathbf {G}(\beta )]\) is the only random distribution, generated out of two uniform random distributions as explained in the appendix of [45]. Therefore, one evaluation of the cost function depicted in (8) requires m solutions of the problem depicted in the reduced basis \([\mathbf {V}]\). Such approach can lead to prohibitive calculation times when solving complex PDEs in a large computation domain expressing multiple number of reduced coordinates.
NPM method for PGD solutions
The PGD solutions are computed in a separated form such as [11]:
$$\begin{aligned} y(q_1;q_2;\cdots ;q_\mathcal {D})=\sum \limits _{i=1}^{i=\mathcal {N}} \prod \limits _{j=1}^{j=\mathcal {D}} \mathcal {Q}_{ij}(q_{j}), \end{aligned}$$
(10)
with \(q_j\) the separated coordinates of the problem, and \(\mathcal {Q}_{ij}(q_j)\) the recurrent solutions in the domain \(q_j\). In a discrete form, \(\mathcal {Q}_{ij}\) becomes a matrix \([Q]_j \in \mathsf {R}[N_j,\mathcal {N}]\), with \(N_j\) the number of degrees of freedom in \(q_j\) domain, and \(\mathcal {N}\) the number of products of functions required to converge the PGD solution of the problem. Using NPM, we choose to enrich some (or all) of the PGD reduced coordinates solution using the same algorithm depicted in Eq. (7). The results for a reduced basis of a domain \([q_j]\) results in the following:
$$\begin{aligned} \left\{ \begin{array}{l} {[}\mathbf {U}]=[\mathbf {G}(\beta )][\sigma ]\\ {[}\mathbf {A}]=[\mathbf {U}]-[B]([B]^T[\mathbf {U}])\\ {[}\mathbf {D}]=\left( [Q]_j^T [M] [\mathbf {A}]+[\mathbf {A}]^T[M][Q]_j\right) /2\\ {[}\mathbf {Z}]=[\mathbf {A}]-[Q]_j[\mathbf {D}]\\ {[}\mathbf {H}]=\left( [I_n]+s^2 [\mathbf {Z}]^T[M] [\mathbf {Z}]\right) ^{-1/2}\\ {[}\mathbf {Q}_j]=\left( [Q]_j+s[\mathbf {Z}]\right) [\mathbf {H}] \end{array} \right. \end{aligned}$$
(11)
The algorithm illustrated in Eq. (11) represents an enrichment of one dimension in the PGD solution domain. The same algorithm can be designed to enrich as much dimensions as required, by generating the random basis \([\mathbf {G}(\beta )]\) as a higher dimensionality array. The number of hyper-parameters of the problem with increase accordingly.
In the optimization process, evaluating the quantities of interests \(\mathcal {O}([\mathbf {Q}],t)\) do not require any solution of the PDE problem, as the PGD defines a surrogate model replacing the PDE with a product of functions defined in every dimension of the domain. For instance, the evaluation of the quantities of interest for any solution requires only the knowledge of the solution y defined by:
$$\begin{aligned} y(q_1;q_2;\cdots ;q_\mathcal {D})=\sum \limits _{i=1}^{i=\mathcal {N}} \prod \limits _{j\in \mathcal {D}_d} \mathcal {Q}_{ij}(q_{j})\prod \limits _{j\in \mathcal {D}_p} \mathbf {Q}_{ij}(q_{j}), \end{aligned}$$
(12)
where \(\mathcal {D}_d\) are the deterministic, non-enriched basis, while \(\mathcal {D}_p\) are the probabilistic basis, enriched using NPM. Therefore, one solution and thus one evaluation of the quantities of interests, is computed only by using the product and sum of matrices.