# Frequently Asked Questions

What is Automatic Differentiation?

Automatic Differentiation (AD) is a technology for automatically augmenting computer programs, including arbitrarily complex simulations, with statements for the computation of derivatives (tangent linear, adjoint, Hessian, etc.), also known as sensitivities. In ECCO, the adjoint model is obtained by an AD tool. AD tools in our context provide source-to-source transformation of a function, given as computer code, to generate efficient and accurate (truncation-free) code for computing first, second and higher-order derivatives of the given function.

What is Adjoint Method?

Adjoint method is an algorithmic technique to solve a constrained
optimization problem. The adjoint of the constraint (e.g., model) provides a
computationally efficient means to evaluate the gradient (sensitivity)
of what is being optimized, such as model-data differences, with
respect to the problem's independent variables (controls). To solve
the problem, the adjoint method uses this information in
gradient-based optimization algorithms (e.g., steepest descent,
quasi-Newton, conjugate gradient methods). 4dvar (4-dimensional
variational method) is synonymous with adjoint method."

What are Kalman Filter and RTS Smoother?

Filters and smoothers are sequential techniques to correct models with
observations. They are "sequential" as the correction takes place
sequentially in time; e.g., model state at time "n" is corrected,
followed by that at time "n+1". Filters correct models using
observations formally in the past; smoothers use observations both
formally in the future as well as the past. A Kalman filter and
Rauch-Tung-Striebel (RTS) smoother are particular forms of these
recursive least-squares estimators.

What is State Estimation?

State estimation is an act of inferring the state of a dynamic system
from observations of that system. State estimation belongs to the
field of estimation and control theories, well-established
mathematical subjects with roots in engineering applications (e.g.,
ballistics).

What is Data Assimilation?

Data assimilation is a process of correcting dynamical models with
observations. Data assimilation has roots in numerical weather
forecasting; viz., the process of using observations to initialize
numerical weather models for forecasting. As such, data assimilation
is largely a filtering problem.

What are issues with Closing Budgets?

Filtered solutions do not satisfy model constraints due to the
filters' corrections using data. These constraints include
conservation laws embodied in models. As such, filtered property
budgets cannot be closed in terms of processes that the models
resolve, making causal mechanisms underlying filtered solutions
difficult to ascertain.

Smoothed solutions, in comparison, generally do satisfy model constraints as they include estimates of model error sources consistent with corrections to the state. Among ECCO products, those using either the adjoint method or the RTS smoother are such smoothed solutions that allow budget closures.

Smoothed solutions, in comparison, generally do satisfy model constraints as they include estimates of model error sources consistent with corrections to the state. Among ECCO products, those using either the adjoint method or the RTS smoother are such smoothed solutions that allow budget closures.