# Gaussian cost function#

## Description#

The Bayesian cost function is the basic quadratic form derived from the Gaussian assumption in the application of the Bayesian theorem for data assimilation as described here. The defining equation is:

$J(\mathbf{x}) = \frac{1}{2} (\mathbf{x} - \mathbf{x}^\textrm{b})^\textrm{T} (\mathbf{P}^\textrm{b})^{-1} (\mathbf{x} - \mathbf{x}^\textrm{b}) + \frac{1}{2} (\mathcal{H}(\mathbf{x}) - \mathbf{y}^\textrm{o})^\textrm{T}\mathbf{R}^{-1}(\mathcal{H}(\mathbf{x}) - \mathbf{y}^\textrm{o})$

As a quadratic form on a finite dimension space, it necessary has a global minimum that can be fund with available minimizers (which do not necessarily guarantee that the computed minimum is the global minimum).

The basic Gaussian cost function does not require specifi configuration parameters and the corresponding Yaml paragraph is simply: A Yaml template presents as follows:

simulator:
plugin:
name: gausscost
version: std


## Requirements#

The Bayesian Gaussian cost function requires the following plugins to be executed properly:

1. a control vector to define the control vector shape and corresponding operations; mandatory

2. an observation vector to define observations to be compared with; mandatory

3. an observation operator to compute $$\mathbf{x} \rightarrow \mathcal{H}(\mathbf{x})$$ and its adjoint; optional: default is (standard, std)

The following plugins are indirectly needed to compute a variational inversion:

1. a numerical model; mandatory