# Research areas

Our research interests are mainly:

- Automatic Differentiation
- Parallel, Distributed and Cloud Computing
- High-Performance Computing
- Scientific Problem Solving Environments
- Computational Engineering

# Automatic differentiation

*Automatic Differentiation* (AD) is a set of techniques based on the mechanical application of the chain rule to obtain derivatives of a function given as a computer program. AD exploits the fact that every computer program, no matter how complicated, executes a sequence of elementary arithmetic operations such as additions or elementary functions such as exp(). By applying the chain rule of derivative calculus repeatedly to these operations, derivatives of arbitrary order can be computed automatically, and accurate to working precision.

Conceptually, AD is different from *symbolic differentiation* and numerical approximations by *divided differences*.

AD is used in the following areas:

- Numerical Methods
- Sensitivity Analysis
- Design Optimization
- Data Assimilation & Inverse Problems

We develop an AD tool for the Matlab language, ADiMat. You can find more information on AD via the web portal on automatic differentiation, www.autodiff.org.