Documentation for the SHEBA partial "column model" data organization
7 Jan 02 MGM
The following was developed as means of identifying particular events
during the SHEBA drift, and assembling in one place data necessary
for driving and verifying ice/ocean models. It does not include cloud
or precipitation data.
A graphical overview of the drift and oceanograpic profiler data (T/S
and ADP velocities) is given in the 33 page pdf document
ocean_summary.pdf
Matlab functions and data file names are case sensitive, and this can
lead to problems with cdrom formats and file transfer, so the
directory is stored as a "tar" archive file.
unpack with
%mrc tar xvf tar_lowercolumn
(includes this file as events/README_lowercolumn)
The simplest way to use this data compilation is through the matlab
function: assemble_data.m in the 'events' directory. However, there is
considerably more information available than is returned by
assemble_data. These data are embedded in the subdirectories, as listed
below.
Time: the convention adopted for time is decimal days of 1997 UT where
1200UT on 1 Jan 98 is 366.500
example: From p. 28 of the ocean_summary document, the period 597 to 602
(20-25 Aug 1998) is one of especially fast drift. In the events directory
>> DATA=assemble_data(597,602);
Save data structure? n y WOULD SAVE AS ASDATA597_602.mat
>> DATA
met: [1x1 struct]
spo: [1x1 struct]
nav: [1x1 struct]
ice: [1x1 struct]
ocean: [1x1 struct]
>> DATA.met MET TOWER DATA STRUCTURE
t120: [120x1 double] time vector, hourly centered
W: [120x2 double] complex in direction of wind vector [2.5m 10 m]
pres: [120x1 double]
temp: [120x2 double] [2.5m 10m]
LWd: [120x1 double] longwave downwelling
LWu: [120x1 double] longwave upwelling
SWd: [120x1 double] shortwave downwelling
SWu: [120x1 double] shortwave upwelling
ustar: [120x3 double] [flux bulk2.5m bulk10m]
hfs: [120x3 double] sensible heat flux same desc as ustar
hsl: [120x3 double] latent heat flux same desc as ustar
>> DATA.spo SPO TOWERS DATA STRUCTURE
t120: [120x1 double] time vector, hourly centered
W: [120x2 double] [2m 10m]
pres: [120x1 double]
temp: [120x2 double] [2m 10m]
LWd: [120x1 double]
SWd: [120x1 double]
>> DATA.nav NAVIGATION, BATHYMETRY DATA
tvp: [241x6 double] [time (half hr) uE vN lat long okflag]
okflag=1 if there were enough fixes for the complex demodulation
0 for linear interplolation
Vice: [241x1 double] complex ice velocity, no inertial component
fcor: [241x1 double] Coriolis parameter s^{-1}
zbot: [241x1 double] bottom elevation
>> DATA.ice ICE, INTERFACE DATA
tprof: [...] times of ice profiles
zprof: [1x50 double] measurement elevation wrt to initial ice surface
Tprof: [5x50 double] ice temperature profiles
bot_el: [5x1 double] bot elevation wrt initial ice surface
dTdz: [5x1 double] estimate of gradT from temperature in the
lower 50 cm of the ice column
sal: [2.7000 1.3000] mean and std deviation of ice salinities
for multiyear ice cores at depths > 150 cm
from Melnikov's samples
mastdraft: [6x2 double] estimate of ice draft at turbulence mast site
us0_logz0: [8x3 double] estimate of LOCAL u*0, z0 at ice/ocean interface
>> DATA.ocean
Prof: [1x1 struct]
Trb: [1x3 struct]
TSmast: [1x3 struct]
ADP: [1x1 struct]
>> DATA.ocean.Prof OCEAN PROFILER TEMPERATURE, SALINITY
t: [25x1 double]
T: [151x25 double] avg T profiles, every 3 hr
S: [151x25 double] avg S
Tst: [151x25 double] T std dev at each level
Sst: [151x25 double] S std dev
Tn: [25x1 double] no. of T profiles in each avg
Sn: [25x1 double] no. of S profiles
z: [1x151 double] vertical coordinate (from surface)
>> DATA.ocean.Trb TURBULENCE CLUSTER DATA
>> DATA.ocean.Trb(1) [3 or 4 element array of data structures]
cluster: 1
t: [8x1 double] time
T: [8x1 double] mean T, 3 hr avg
S: [8x1 double] mean S
U: [8x1 complex] mean velocity, real east, imag north
depth: [8x1 double] cluster depth (subtract ice draft for
distance from interface)
ustar: [8x1 double] square root of Reynolds stress
q: [8x1 double] (__++)^1/2
wT: [8x1 double] , heat flux/rho*cp
wS: [8x1 double] use caution, this is estimated by
lagging the SBE04 conductivity measurements,
as correlated with microC measurements
For Site 2, after March, there were two clusters, but 3 are shown.
The third cluster refers to the data using the microC sensor, but
should not be used without confirming from the original data
>> DATA.ocean.ADP DOPPLER PROFILER DATA (SEE NOTES BELOW)
day: [1x0 double]
lat: [1x0 double] ADP navigation data
long: [1x0 double]
posok: [1x0 double] position quality flag
maghd: [1x0 double]
magok: [1x0 double]
magdec: [1x0 double]
Uice: [1x0 double] complex ice velocity
viceok: [1x0 double]
Urel: [205x0 double] complex velocity in each ADP bin, measured
relative to ice
dep: [205x1 double] bin depths
If unfamiliar with matlab data structures, to plot ice velocity, for
example, one would simply type
>> vice=DATA.nav.tvp(:,2:3);
>> t98=DATA.nav.tvp(:,1)-365;
>> plot(t98,vice);grid on;
>> legend('U(east)','V(north)')
>> title('Ice Velocity from Complex Demodulation of GPS positions')
>> xlabel('Day of 1998');ylabel('m s^{-1}')
to include velocity without the inertial component, add
>> hold on
>> plot(t98,[real(DATA.nav.Vice) imag(DATA.nav.Vice)],'--','linewidth',2)
************************************************************************
************************************************************************
The data are arranged in matlab binary files (.mat suffix, V 5) and often
presented as matlab data structures. For more detailed descriptions,
refer to the metafiles at CODIAC.
In the "data" directory, there are 7 subdirectories:
met
ice
sheba_gpsdata
turb_mast
profiler
ADP
bathymetry
1. met
this directory contains matlab data files from both the Sheba Project Office
(sbo) and meteorological tower (met).
all times are for 1-hr averages CENTERED on the given time
hourly.mat matlab version of the met tower data compilation from CODIAC
HDR 1x41 4246 cell array => identifies the columns
y 8112x41 2660736 double array => 41 column data matrix
wind_hr.mat => spo wind at 2, 10 m, complex vector in the direction of surface wind,
plus times in days of 19120 (366=1 Jan 98)
W10 8601x1 137616 double array (complex)
W2 8619x1 137904 double array (complex)
time10 8601x1 68808 double array
time2 8619x1 68952 double array
temp_hr.mat => temperature at 2 and 10 m plus time vectors
other_met_hr.mat => other data from the SPO towers (not met tower)
RH 8619x2 137904 double array => rel humid at 2 levels
dlw 8619x1 68952 double array => downwelling longwave
dsw 8619x1 68952 double array => downwelling shortwave
pres 8619x1 68952 double array => surface air pressure
tday 8619x1 68952 double array => time in days of 19120
2. ice
These data are partial compilations from the CRREL cdrom
there are 3 matlab data files
ICE_DRAFT.mat => used to determine distance of turbulence clusters from
interface
idraft1 134x1 double array => ice draft at the turbulence mast hole,
1st site
idraft2 175x1 double array => ice draft at the turbulence mast hole,
2nd site
tdraft1 134x1 double array => times in days of 19120
tdraft2 175x1 double array
PITT_GAUGES.mat => 4 element array of data structures with data from site Pittsburgh
>> A(1)
gauge: 53
site: 'Pittsburgh'
date: {1x71 cell}
t120: [71x1 double] => time in days of 19120
sn: [71x1 double] => snow measure
itop: [71x1 double] => ice top elevation, rel to initial placement
ibot: [71x1 double] => ice bot elevation, rel to initial top
pd: [71x1 double] => ?? all NaNs
PTherm.mat => thermistor string temperatures at Pittsburgh
>> PTherm => data structure
t120: [1x339 double]
z: [1x50 double]
T: [339x50 double]
(3) sheba_gpsdata
PHASORS_ALL.mat => complex demodulation phasors calculated every 3 hrs from
ocean city GPS with gaps filled by met gps where available
see function fetch_tvp.m for extracting EN velocity and position data
from these files
(4)turb_mast
there are Site1_3hr.mat and Site2_3hr.mat data containing data structure
arrays
Site1_3hr:
B 1x4 4862784 struct array
>> B(1)
id: [1 285 450 0.1250 4] => cluster ts te avg_time min_15realization
t: [391x1 double]
dmn: [391x6 double] => mean quantities
[T S u v depth theta]
u and v are east and north components (true), where compass
headings have been corrected using the Canadian Geomagnetic
Reference Field Model
depth is from the pressure gauge adjusted for atmospheric pres
theta rotation angle about the horizontal, mainly a diagnostic
dmnsd: [391x6 double] => sample std dev from 15 min realizations
nsam: [391x1 double] => no. of 15 min realization in each avg
dtrb: [391x9 double] => turbulence quantitities
__`
dtrbsd: [391x9 double] => sample std dev from 15 min realizations
spc: [391x30x6 double] => log10(weighted (slope) spectral densities),
averaged in evenly spaced logarithmic wavenumber bins (see
kb): T S u v w err, where here
u is the downstream, v is cross-stream, w is vertical
spcst: [391x30x6 double] std dev, used for error estimates
kb: [1x30 double] log10(wavenumbers)
(5) profiler
The mon_clean.mat files contain data structures with all of the casts
from TS1M, despiked and otherwise cleaned up.
See fix_month.m and message_profiler.m routines
Example:
>> load nov_clean
>> whos
Name Size Bytes Class
A 1x1 1881764 struct array
>> A
td: [1x773 double]
yr: [1x773 double]
T: [151x773 double]
S: [151x773 double]
z: [1x151 double]
in November there were 773 profiles (these are all downcasts) from 0 to 150m
the upper few bins bins have been filled with the first value unaffected
by the startup transients and hydrohole water
COR_ALL3hr. mat includes for each 3 hr block in the project the average
T/S for each cluster and average profiles The T/S values have been
corrected via the cross calibrations detailed in sheba_matdata/TSonly
Note that the in COR_ALL3hr cluster T/S values are NOT taken from the
turb_mast data (4 above) but rather from a separate analysis of all
the SBE sensor data regardless of whether all current meters are turning
>> load COR_ALL3hr
>> whos
B 1x4 614912 struct array
P 1x1 121207432 struct array
Cluster data:
>> B(3) [refers to cluster 3, note that for Site 2 this is the same
as cluster 2 except that the microC sensor is used instead of
SBE04
t: [2672x1 double] day of 19120
d: [2672x1 double] cluster depth
T: [2672x1 double] temperature, after cross calibration
Tst: [2672x1 double] T std dev
nT: [2672x1 double] number of samples in each average, 0 means
no data
S: [2672x1 double] salinity, after cross calibration
Sst: [2672x1 double] S std dev
nS: [2672x1 double] number of samples in each average
Profile 3 hr data
>> P
t: [2672x1 double] day of 19120
T: [151x2672 double] T profiles
S: [151x2672 double] S profiles
Tst: [151x2672 double] T std dev
Sst: [151x2672 double] S std dev
Tn: [2672x1 double] number of profiles in the 3 hr avg
Sn: [2672x1 double] number of profiles in the 3 hr avg
z: [1x151 double] vertical coord
(6) ADP
contains the original low frequency doppler profiler data from Scripps,
see matlab function fetch_ADPsubset.m for extracting a time series of
velocities. It will also provide a complex demod estimate of ice velocity
where the scripps gps data are missing
Please use care in interpretation of the ADP data: (a) read Chris
Halle's notes (codiac); and (b) still be cautious of excessive shear
in the upper part of the mixed layer (sometimes as far down as bins
6-8 (12-16 m))
(7) bathymetry
see README for descriptions of the two bathymetries (ETOPO5 or IBCAO beta)
covering the SHEBA drift. There are substantial differences along the
SHEBA track
`