ABOUT_FLOATS Historical dataset of eddy-resolving subsurface floats. _______________________________________________________________________ _______________________________________________________________________ FLOATS.MAT and FLOATS.NC contain all available historical eddy- resolving subsurface float data, as distributed online at NOAA's Atlantic Oceanographic and Meteorological Laboratory (AOML) http://www.aoml.noaa.gov/phod/float_traj/data.php and described by Ramsey, Furey, and Bower (2018) at https://eos.org/project-updates/... deep-floats-reveal-complex-ocean-circulation-patterns. A list of experiments can be found at http://www.aoml.noaa.gov/phod/float_traj/files/... FloatDatabaseTable.pdf. FLOATS is a slightly reprocessed version of the Matlab file distributed by AOML, modified to make the dataset more amenable to time series analysis, which require continuous, uniformly spaced fields. FLOATS.MAT is a Matlab version, while FLOATS.NC is a NetCDF version. FLOATS is distributed as a part of JDATA, a supplement to the software toolbox JLAB, and is available at http://www.jmlilly.net. _______________________________________________________________________ Additional processing The following processing steps have been applied to AOML's version: 1. All data points lacking a valid position are removed 2. Trajectories are split at gaps exceeding two days 3. Trajectory segments less than two weeks in duration are removed 4. Data are interpolated onto a uniformly spaced time grid 5. Trajectory segments with 12.5% or more missing data are removed 6. Velocities are computed by central differencing position Step 4 handles the fact that not all data are uniformly spaced. The interpolation onto a uniformly spaced time grid using the median value of the sample interval for each data segment as the time spacing. Step 5 removes 7 floats, all from the from the same experiment, which have nearly half of their data missing within the uniform time grid. Step 6 forms velocities by calling the jLab function LATLON2UV. _______________________________________________________________________ Matlab version LOAD FLOATS loads the structure FLOATS, with the following fields: floats.about Pointer to this document floats.experiment Experiment names {52 x 1 cell} floats.expid Experiment id number [3091 x 1 array] floats.type Float types {5 x 1 cell} floats.typeid Type id number [3091 x 1 array] floats.id Float id number [3091 x 1 array] floats.dt Sample interval in days [3091 x 1 array] floats.num Date in DATENUM format {3091 x 1 cell} floats.lat Latitude {3091 x 1 cell} floats.lon Longitude {3091 x 1 cell} floats.u Eastward velocity in cm/s {3091 x 1 cell} floats.v Northward velocity in cm/s {3091 x 1 cell} floats.p Pressure in decibar {3091 x 1 cell} floats.t Temperature in centigrade {3091 x 1 cell} floats.filled True if gap was filled {3091 x 1 cell} ID is the float number, the same as 'indexFlt' in AOML's dataset. EXPID is the experiment number, the same as 'expNum' in AOML's dataset. Unlike in AOML's dataset, here floats trajectories may be split into multiple segements in order to avoid having long gaps. Thus, there are 3091 trajectory segments, but only 2193 different floats. Missing data points in P and T are filled with INFs. There is no missing data in the other fields. The field FILLED is true if a gap was filled during processing Step 4 listed above. Information on gaps filled during upstream processing in forming the fields that compose the AOML dataset is not available. The last eight field are all cell arrays, with one drifter per cell. See JCELL for a number of tools for working with this type of data. In particular, CELLPLOT will plot such data. After 'load floats, type 'use floats' to map the structure fields into named variables in the workspace--id, num, lat, lon, etc. To convert the cell arrays into one long column vector, with a NAN separating each float, type 'cell2col(num,lat,lon,u,v,t,p);'. The experiment names are found by experiment(expid(100)), for example, which returns the experiment name of the 100th trajectory segment. This will match the listing in the table FloatDatabaseTable.pdf. The float type for a particular segment is similarly returned by e.g. type(typeid(100)). The types are as follows: 1) SOFAR 2) Bobber SOFAR 3) RAFOS 4) RAFOS - VOCHA and 5) APEX. To generate the above figure of the dataset, type 'about_floats --f'. FLOATS.MAT is distributed as a part of JDATA, a supplement to the software toolbox JLAB, and is available at http://www.jmlilly.net. __________________________________________________________________ NetCDF version The NetCDF version is basically the same as the mat-file version, but (i) lacking the 'experiment' and 'type' variables, which are cell arrays of strings, and (ii) having all the other cell array fields stored as column arrays with separating NaNs, see COL2CELL. The experiment names corresponding to 'expid' can be found in the document FloatDatabaseTable.pdf, while the type names are given above. Use the JLAB routine NCLOAD to load the NetCDF file and convert all the NaN-separated columns into cells, i.e. 'ncload floats'. __________________________________________________________________ Dataset creation For completeness, the m-file ABOUT_FLOATS also contains the processing steps used in the creation of FLOATS.MAT and FLOATS.NC. If you wish to recreate these yourself, with JLAB on your search path, 'about floats --create' will create FLOATS.MAT and FLOATS.NC by reading in allFloats_12122017.mat as downloaded from AOML. This dataset therefore needs to be on your search path. __________________________________________________________________ See also JDATA, ABOUT_DRIFTERS. 'about_floats --f' generates the sample figure shown above. Usage: about_floats about_floats --create __________________________________________________________________ This is part of JLAB --- type 'help jlab' for more information (C) 2014--2019 J.M. Lilly --- type 'help jlab_license' for details