Wiki
Clone wikilava / Home
Background | Formal description | Running LAVA | References
Background
The LAVA algorithm provides an optimal blending between data from Lagrangian instruments (drifters or Argo floats) and maps of Eulerian velocity from numerical models or from other data sources such as radars or altimeter. Lava is based on a variational approach (Taillandier et al., 2006), and is truly Lagrangian in nature in the sense that it is based on trajectory positions rather than on pseudo-Eulerian velocities estimated from the positions. The crucial step of the LAVA approach consists in correcting the velocity field at the level where the instruments are transported by the currents (i.e. at the surface for drifters and in the interior ocean for Argo floats), by requiring minimization of the distance between observed positions and positions of numerical trajectories launched in the model (Molcard et al., 2003, Taillandier et al., 2006). The local correction along the trajectory is assumed to be characterized by some basic correlation scales in time and space that characterize the Eulerian persistence of the flow, and the correction is performed over time sequences that are required to be shorter than both the Eulerian and Lagrangian time scales (Molcard et al., 2003). Further details on this procedure are provided below.
Formal description
Drifter (or float) data positions and velocity fields from models or radar are blended together to reconstruct 2D flows. As a priori characterization, the circulation structures to be corrected have a length scale and a time scale , and a Lagrangian time scale . Considering such scaling constant over a well-defined domain (shelf or offshore), the reconstruction consists in computing time-independent sequential velocity corrections for successive sampling sequences in the neighborhood of drifter trajectories. Note that the sequence duration is chosen about for a consistent sampling of the corrected structures, and is typically shorter or of the same order as . Each single-time velocity field is then reconstructed as
, where .
The methodology is based on the resolution of an inverse problem for each single sequence . It evaluates a velocity correction which minimizes the misfit between trajectories simulated using the velocity field and observed positions as explained in Taillandier et al., 2006. This minimization problem is solved using a variational approach formulated by the following procedure:
Step 1: the prediction of the position is performed by a trajectory simulation using the following non linear equation
,
with and with .
This position prediction can be written as , where is a non linear operator acting on the velocity field . The distance between observed and simulated positions is then expressed by the cost function
,
where the superscript ``´´ denotes the vector transpose, which components are assumed independent and associated to Gaussian homogeneous errors.
Step 2: the optimal velocity correction is estimated by minimizing using a steepest descent procedure, along the gradient
,
where is the background error operator, the tangent linear operator associated to , and its adjoint operator.
Running LAVA
LAVA has been extensively re-written under the TOSCA (Tracking Oil Spills & Coastal Awareness network) project toward a more user-friendly version. There are two ways to run test cases:
- using the
run_lava.sh
shell script and a specific initial file (usually with extension*.ini
) - using the executable
lava
file and passing all the needed arguments
For example to run the Toulon test case users may either simply type
#!bash
./run_lava.sh Input/Toulon/toulon.ini
or use the following much longer prompt command
#!bash ./lava -drifters 1,2,3,4,5,6,7 -jpi 45 -jpj 32 -jpt 136 -rdt 3600 -jtlag 4 -lenfil 7000 -NiterOut 9 -NiterInn 10 -velFname Input/Toulon/velToulonModel.dat -grdFname Input/Toulon/gridToulonModel.dat -obsFname Input/Toulon/drifter -outdir Output/Toulon
A specific initial file simply contains a list of the arguments to be passed as inputs to LAVA. For example the initial file for the Toulon case is:
#!bash drifters 1 2 3 4 5 6 7 jpi 45 jpj 32 jpt 136 rdt 3600 jtlag 4 lenfil 7000 NiterOut 9 NiterInn 10 velFname Input/Toulon/velToulonModel.dat grdFname Input/Toulon/gridToulonModel.dat obsFname Input/Toulon/drifter outdir Output/Toulon
Arguments are read and passed to the LAVA executable via the shell script run_lava.sh
.
Reconstruction using only drifters
It may happen that maps of Eulerian velocities (from numerical models, radars or altimeter) are unavailable for a specific area or during a specific time period. In these cases, LAVA can be still used and the reconstruction of the velocity field obtained only from the drifters' positions. The "only-drifter mode" is activated setting the -velFname
argument to the keyword setAllZeros
either in the initial file or in the long prompt command. Through the option -velFname setAllZeros
, the initial input Eulerian velocity field is uniformly set to zero at each timestep within LAVA. For example the only-drifter mode initial file for the Toulon case becomes then:
#!bash drifters 1 2 3 4 5 6 7 jpi 45 jpj 32 jpt 136 rdt 3600 jtlag 4 lenfil 7000 NiterOut 9 NiterInn 10 velFname setAllZeros grdFname Input/Toulon/gridToulonModel.dat obsFname Input/Toulon/drifter outdir Output/Toulon
References
Molcard A., Piterbarg L.I., Griffa A., Özgökmen T.M., Mariano A.J., 2003: Assimilation of drifter positions for the reconstruction of the Eulerian circulation field. Journal of Geophysical Research, 108, C3, 3056, doi:10.1029/2001JC001240.
Taillandier V., Griffa A., Molcard A., 2006: A variational approach for the reconstruction of regional scale Eulerian velocity fields from Lagrangian data. Ocean Modelling, 13, 1-24, doi:10.1016/j.ocemod.2005.09.002.
THE REST OF THE WIKI FOR LAVA IS UNDER COSTRUCTION
,
Updated