ProjectedResidualBeliefUpdate¶
- class itergp.methods.belief_updates.ProjectedResidualBeliefUpdate¶
Bases:
LinearSolverBeliefUpdateGaussian belief update given projected residual information.
Updates the belief over the quantities of interest of a linear system \(Ax=b\) given a Gaussian prior over the solution \(x \sim \mathcal{N}(x_i, A^{-1} - C_i)\), such that \(x_i = C_ib\) and information of the form \(s^\top r_i = s^\top (b - Ax_i)=s^\top A(x- x_i)\). The belief update computes the posterior belief about the solution, given by \(p(x \mid y) = \mathcal{N}(x; x_{i+1}, \Sigma_{i+1})\), such that
\[\begin{split}\begin{align} x_{i+1} &= x_i + \Sigma_i A^\top s (s^\top A \Sigma_i A^\top s)^\dagger s^\top r_i\\ \Sigma_{i+1} &= \Sigma_i - \Sigma_i A^\top s (s^\top A \Sigma_i A s)^\dagger s^\top A \Sigma_i \end{align}\end{split}\]Methods Summary
A_update(A_normalized_search_dir, solver_state)Update the system matrix approximation.
Ainv_update(normalized_search_dir, solver_state)Update the system matrix approximation.
__call__(solver_state)Update the belief about the quantities of interest of a linear system.
updated_linsys_belief(search_dir, ...)Update the belief over the quantities of interest.
Methods Documentation
- A_update(A_normalized_search_dir, solver_state)[source]¶
Update the system matrix approximation.
- Parameters
A_normalized_search_dir (ndarray) – \(A\) multiplied normalized search direction \(\fraction{1}{\sqrt{s_i^\top A \Sigma_{i-1} A s_i}}As_i\).
solver_state (probnum.linalg.solvers.LinearSolverState) – State of the linear solver.
- Return type
- Ainv_update(normalized_search_dir, solver_state)[source]¶
Update the system matrix approximation.
- Parameters
normalized_search_dir (ndarray) – Normalized search direction \(\fraction{1}{\sqrt{s_i^\top A \Sigma_{i-1} A s_i}}As_i\).
solver_state (probnum.linalg.solvers.LinearSolverState) – State of the linear solver.
- Return type
- __call__(solver_state)[source]¶
Update the belief about the quantities of interest of a linear system.
- Parameters
solver_state (probnum.linalg.solvers.LinearSolverState) – Current state of the linear solver.
- Return type
- updated_linsys_belief(search_dir, A_search_dir, gram_pinv, solver_state)[source]¶
Update the belief over the quantities of interest.
- Parameters
search_dir (ndarray) – Search direction \(\Sigma_{i-1}As_i\).
A_search_dir (ndarray) – \(A\)-multiplied search direction \(A\Sigma_{i-1}As_i\).
gram_pinv (generic) – Pseudo inverse of the Gramian, i.e. the normalization constant \(\fraction{1}{\sqrt{s_i^\top A \Sigma_{i-1} A s_i}}\)
solver_state (probnum.linalg.solvers.LinearSolverState) – State of the linear solver.
- Return type