Queries for linking bird tracks to wind and flow data

From ecology
Revision as of 17:17, 28 July 2014 by Andera (talk | contribs) (Combining devices with birds)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Combining devices with birds

Devices have no information directly about the bird it is attached to, and the 'ee_individual' table for birds does not specify which devices it has. This is logical, because a device may be replaced with another device, so in the tracking data, one bird can have two (or more) devices. Also, device can be used for more than one bird, in the tracking data, one device can have more than one bird. To link devices with birds, the table 'gps.ee_track_session' contains 'sessions' of consecutive periods where one device is attached to one bird. This table can be used to join device information with bird information.

The basic join is as follows:

 SELECT ud.device_info_serial, ts.ring_number
 FROM gps.ee_tracker ud
 LEFT JOIN gps.uva_track_session ts
   ON ud.id = ts.device;

This join can be extended with more joins. The following example shows which devices are connected to Lesser Black-Backed Gulls (Larus fuscus):

 SELECT ud.device_info_serial, ui.species
 FROM gps.ee_tracker ud
 LEFT JOIN gps.ee_track_session ts
   ON ud.id = ts.device
 LEFT JOIN gps.ee_individual ui
   ON ts.individual = ui.id
 LEFT JOIN gps.ee_species s
   ON ui.species = s.id
 WHERE s.latin_name = 'Larus fuscus';

Getting the bird track for one device

The following example gets the position of one bird as a function of the time for one day:

 SELECT date_time, latitude, longitude
 FROM gps.uva_tracking_data101
 WHERE device_info_serial = '330' AND
       date_time >= '2010-05-23 0:00:00' AND
       date_time <= '2010-05-24 0:00:00'
 ORDER BY date_time;

Combining bird track data with flow data

If flow data are available for the location of the bird, flow data can be added to the bird track:

 SELECT date_time, latitude, longitude, (uv).uvx, (uv).uvy FROM (
   SELECT date_time, latitude, longitude, location,
          flow.waddenzee_fijn_uv(location, date_time) as uv
   FROM gps.uva_tracking_data101
   WHERE device_info_serial = '373' AND
         date_time >= '2010-06-24 0:00:00' AND
         date_time <= '2010-06-24 0:20:00'
   ORDER BY date_time
 ) q;


Combining bird track data with flow data and wind data

The bird track data can also be combined with weather forecast data using a more complicated query. The example query below retrieves in one table:

  • the position of one bird (latitude, longitude);
  • the depth-averaged water velocity at the ground location and time of the bird, towards east and north, in m/s, as computed by the 'Waddenzee fijn' model by Deltares (uvx, uvy)
  • the wind velocity at 10 m height at the ground location and time of the bird, towards east and north, in m/s, as computed in the ECMWF forecast model (u10, v10).

The results are computed for the bird with device id 373 for June 24th 2010 from 0:00:00 to 0:20:00. To retrieve the data for other birds and for other dates times, replace the current values with the desired values.

The flow velocities are available for the Waddenzee and a strip of North Sea, from April 1st 2010 to July 21st 2010.

 SELECT date_time,
     latitude,
     longitude,
     (uv).uvx,
     (uv).uvy,
     (fc).u10,
     (fc).v10
 FROM (
   SELECT date_time, latitude, longitude, location,
          flow.waddenzee_fijn_uv(location, date_time) as uv,
          ecmwf.forecast_interpolate(latitude, longitude, date_time) as fc
   FROM gps.uva_tracking_data101
   WHERE device_info_serial = '373' AND
         date_time >= '2010-06-24 0:00:00' AND
         date_time <= '2010-06-24 0:20:00'
   ORDER BY date_time
 ) q;

This query collects the following variables in one table:

  • the position of the bird in geographical coordinates;
  • the eastward (uvx) and nordward (uvy) velocity components of the water velocity in m/s;
  • the eastward (u10) and nordward (v10) velocity components of the wind at 10m height, in m/s.

The flow data were obtained from the depth-averaged Unstruc model by Deltares. Please keep in mind that the water velocity is the average over the depth and that the flow at the surface may differ.