#
__I. Introduction.__

##
What is data assimilation ?

Data assimilation is the process which is used to constraint
a model and its previsions to get closer to the observations. If the model
was perfect, and the modelised system perfectly known at the beginning
of the time interval, the results of the model and of the observations
would be the same.

The main idea of the data assimilation method is
to minimize a function to find the most appropriate value (3D-VAR) :

x_b is the value given by the model and y is an observation at the same
time.

The importance of one of these two values can be showed by balancing
the terms of the former equation, it gives :

by introducing matrix of errors for the observations (R) and for the
model (P), the following equation is obtained :

The result of the minimisation gives :

It is possible to take into account the dynamic of the modelised phenomenon
with the extension of the temporal dimension of the 3D-VAR, the considered
equation to mminimize is then (4D-VAR) :

##
The PALM Software :

The PALM project aims at launching and synchronizing
the different components of the data assimilation system MERCATOR. MERCATOR
plans to use a system of simulation and prevision of the global ocean with
a high resolution assimilating datas from satellites and *in situ *datas.
The philosophy of PALM is to decompose every assimilation method into fondamental
steps and treat them differently depending if they deal with physics or
algebra. Each step linked with the physical problem (model, observations,
variance and covariance matrix....) is seen as a box (called unit) which
is linked to the structure with PALM but can be removed and replaced by
any other box with the same function. That is why it is possible to change
easily the way datas are assimilated.

PALM deals with the algebric part of the assimilation problem preparing
the chaining of the appropriate units.

This image comes from PREPALM which is the graphic interface of PALM.
It deals with the definition of the communications between the subroutines
of a program. Each arrow represents a communication or more (the number
of communication is written on each arrow). It is possible to stock informations
in the buffer and even to make operations (addition, substraction or substitution)
on values.

Go to next page