Reference

Explore program methods, definitions, data conventions, and publications

There are a variety of data types that can be loaded.  The specific data types are described below.  See the tutorial on Direction Conventions for information of how wind and wave directions are stored and displayed.

 

1. Raw Wind and Wave Data

 

Raw data are the original wind and wave data files that are loaded.  Raw wave spectrum data come in many forms and are typically produced by instrument- or model-specific applications.  These data can be in ASCII or binary format and include various pieces of header information for identifying observation parameters such as time, location, water depth, etc.  Raw wind data are stored in a MATLAB™ *.mat file.

 

Specific data types supported are listed below.  Click on individual data types for specific data format detail.

 

NORTEK WFT data from STORM

Datawell Waverider data

Coastal Data Information Program (CDIP) data

Triaxys DIRSPEC data

Oceanweather Inc. hindcast data

WAMOS FTM data

Wavescan spectra files

Wavescan time series files

Rowe Technologies time series files

WAVEWATCH III model spectra files

SWAN model spectra files

ASL Wave Profiler data

Generic 2D

Generic 1D

Generic ASCII

NDBC real-time data (Disk file and WWW download)

NODC Historical data (Disk file and WWW download)

NetCDF-formatted data

 

When available, wind data can also be loaded to improve the analysis of the wave data.  There are two types of MATLAB (*.mat) wind files that can be loaded.

 

For wind speed and direction data, a matrix named ‘wind’ has the following data columns:

1. Year (YYYY)

2. Month (MM)

3. Day (DD)

4. Hour (hhhh)

5. Minute (mm)

6. Second (ss)

7. Wind direction (deg from North)

8. Wind speed (m/s)

 

In the above wind file, the column containing Second (ss) data is optional.  Thus this file can have 7 or 8 columns of data.

 

The second type of wind data than can be loaded is Friction Velocity (u*).  This is also a MATLAB file with the name ‘wind’.  However in this case the data are in a structure:

 

 wind.time – row vector of datenum times for the observations

 wind.ustar – row vector of friction velocity (m/s) values

 

It is anticipated that the above 2 wind file types will be merged in the future.

 

Custom data formatters are available by request from WaveForce Technologies

 

2. Processed Data

Processed data are stored in special output structure called wavedat.  Each processing module adds specific fields into this structure.  A summary of the wavedat fields associated with each processing step is given below.

 

 

Loaded Wave Data

Loading wave data in Start Up creates a new wavedat structure with the following fields:

 

file: (string)

Processing History

name: (string)

Data Set Name

size: (double)

Number of Records

time: [1x size double]

Observation Date and Time as MATLAB Serial Date Number

espt: {1x size cell}

Directional Wave Spectra (m2/(hz x deg)

dwAvv: {1x size cell}

1D Energy-Frequency Spectra

df: [1x nfreq double]

Array of Frequency Bin Differentials (dwfhz(n+1) – dwfhz(n))

da: (double)

Angle Bin Width (deg)

dwfhz: [1x nfreq double]

Array of Frequency Bins (Hz)

dwdeg: [1x nang double]

Array of Angle Bins (deg)

hs: [1x size double]

Significant Wave Height (m)

fp: [1x size double]

Peak Frequency (Hz)

tz: [1x size double]

Zero Crossing Period (s)

dm: [1x size double]

Mean Wave Direction (Deg From North)

thetap: [1x size double]

Peak Wave Direction (Deg From North)

sp: [1x size double]

Directional Spread (deg)

winddir: [1x size double]

Wind Direction (Deg From North)

windspeed: [1x size double]

Wind Speed (m/s)

ustar: [1x size double]

Friction Velocity (m/s) – this field is optional

type: '2D' or ‘1D’,

Specifies Directional or Non-Directional Data

lat: (double)

Latitude (decimal degrees +N/-S)

lon: (double)

Longitude (decimal degrees +E/-W)

depth: (double)

Water Depth (m)

param_rfmt: [1x1 struct]

Reformat Parameters used to Load Data Set

RecordsList {size x 1 cell}

Date and Time String for each Record

 

Processed Wave Data

Running the Wave Systems Module adds the following new wavedat fields:

 

out: [1x1 struct]

Wave Partitioning Results (See Below)

parsum: [1x240 struct]

Wave Partition Templates

windtype: (string)

Specifies Observed or Estimated Winds

param_trk: [1x1 struct]

Wave System Parameters used to Process Data Set

 

The fields in wavedat.out contain information on the individual wave components (spectral partitions):

 

time: [1xM double]

Date and Time of Partition Record as MATLAB Serial Date Number

azimuth: [1xM double]

Mean Direction (Deg from True North)

thetap [1xM double]

Peak Direction (Deg from True North)

freq: [1xM double]

Peak Frequency (Hz)

tz: [1xM double]

Zero-Crossing Period (s)

grp: [1xM double]

Wave System Number

sys: [1xM double]

Swell Event Number

totnrg: [1xM double]

Total Energy (m2)

sighight: [1xM double]

Significant Wave Height (m)

dirspread: [1xM double]

Directional Spread (deg)

par: [1xM double]

Partition Number

wforce: [1xM double]

Wave Force Ratio

 

 

*m is the total number of partitions found in all records

 

 

Spectral Fit Data

Running the Spectral Fit Module adds the following new wavedat fields:

 

param_fit: [1x1 struct]

Spectral Fit Parameters used to process this data set

indexoffset (double)

Internal variable for parsing/plotting NetCDF data

fit: [1x1 struct]

Raw Fit Results (see below)

sfit: [1x1 struct]

Composite Fit Results (see below)

 

 

The all the raw fit results are stored in wavedat.fit.  The structure of this is

 

fit1D: {[1x1 struct]  [1x1 struct]  [1x1 struct]}

     fit2D: {[1x1 struct]  [1x1 struct]  [1x1 struct]}

 

where the three fit1D fields refer to the fitted  JONSWAP, Gaussian, and Log Normal parameters for each partition, and the fit2D fields refer to the computed Ewans Wind Sea, Ewans Swell, and Cos^2n directional distribution parameters for each partition.

 

The composite fit results are stored in wavedat.sfit. The fields are listed below.

Note: N is the number of wave spectral records and M is the number of spectral partitions.

 

wavedat.sfit fields:

time: [1xM double]

Date and Time of each Partition Record as MATLAB Serial Date Number

par: [1xM double]

Partition Number

grp: [1xM double]

Wave Group Number (for wave system tracking)

gammaJON: [1xM double]

JONSWAP Gamma parameter of fitted partition

alpha: [1xM double]

JONSWAP Alpha parameter of fitted partition

sigmaA: [1xM double]

JONSWAP sigma-A parameter of fitted partition

sigmaB: [1xM double]

JONSWAP sigma-B parameter of fitted partition

sigma: [1xM double]

Sigma parameter of fitted partition

lambda: [1xM double]

Ochi-Hubble Spectral Shape Parameter of fitted partition

Lzif: [1xM double]

Zero-Crossing Wavelength (m) of fitted partition

tzif: [1xMdouble]

Zero Crossing Period (s) of fitted partition

hsif: [1xM double]

Significant wave height (m) of fitted partition

tpif: [1xM double]

Peak period (s) of fitted system

tzf: [1xN double]

Mean period (s) of total fitted spectrum

hsf: [1xN double]

Significant wave height (m) of total fitted spectrum

tpf: [1xN double]

Peak period (s) of total fitted spectrum

Lzf [1xN double]

Mean wavelength (m) of total fitted spectrum

ncos: [1xM double]

Cosine spread parameter of fitted partition

dmif: [1xM double]

Mean direction ("from"/true north) of fitted partition

spif: [1xM double]

Spectral spread (deg) of fitted partition

dpif: [1xM double]

Peak direction ("from"/true north) of fitted partition

dmf: [1xN double]

Mean direction ("from"/true north) of total fitted spectrum

spf: [1xN double]

Spectral spread (deg) of total fitted spectrum

dpf: [1xN double]

Peak direction ("from"/true north) of total fitted spectrum

fittype: {1xM cell}

String of Fit Type (JONSWAP, Gaussian, etc.)

fittype2D: {1xM cell}

String of 2D Fit Type (EWANS Windsea, EWANS Swell, Cos2n)

 

 

Sea State Data

Running the Sea State Module adds the following new wavedat fields:

 

param_seastate: [1x1 struct]

Sea State Parameters used to process this data set

sstate: [1x1 struct]

Sea State Results (see below)

extremes: [1x1 struct]

Extremal Analysis Results (see below)

 

 

The fields in wavedat.sstate are:

calms: (double)

Number of Calm Periods for Occurrence Calculations

jtable: [3x4 double]

The Sea State Joint Occurrence Table

stable: [1x3 struct]

The Sea State Scatter Tables and supporting information

bstable: [1x1 struct]

The Sea State Bulk Scatter Tables and supporting information

 

The fields in wavedat.extremes are:

waves: [1x1 struct]

Extremal Analysis Results for Wave Height

winds: [1x1 struct]

Extremal Analysis Results for Wind Speed

 

The fields in wavedat.extremes.waves are:

tr: [1x6 double]

Return Period (yrs) array

hsthresh: (double)

Wave Height PoT Threshold (m)

hspotind: [1xN double]

Indices of Wave Height Peaks

hspot: [1xN double]

Wave Height PoT Values (m)

gpd: [1x1 struct]

Generalized Pareto Distribution Fit Values and Parameters

hsamind: [1xM double]

Indices of Annual Maxima Wave Heights

hsannualmax: [1xM double]

Wave Height Annual Maxima (m)

gev: [1x1 struct]

Generalized Extreme Value Distribution Fit Values and Parameters

gumb: [1x1 struct]

Gumbel Distribution Fit Values and Parameters

weib: [1x1 struct]

Weibull Distribution Fit Values and Parameters

dirdata: [1x1 struct]

Contains all of the above fields in a cell array for each direction bin

 

The fields in wavedat.extremes.winds are:

tr: [1x6 double]

Return Period (yrs) array

wsthresh: (double)

Wind Speed PoT Threshold (m)

wspotind: [1xN double]

Indices of Wind Speed Peaks

wspot: [1xN double]

Wind Speed PoT Values (m)

gpd: [1x1 struct]

Generalized Pareto Distribution Fit Values and Parameters

wsamind: [1xM double]

Indices of Annual Maxima Wind Speeds

wsannualmax: [1xM double]

Wind Speed Annual Maxima (m)

gev: [1x1 struct]

Generalized Extreme Value Distribution Fit Values and Parameters

gumb: [1x1 struct]

Gumbel Distribution Fit Values and Parameters

weib: [1x1 struct]

Weibull Distribution Fit Values and Parameters

dirdata: [1x1 struct]

Contains all of the above fields in a cell array for each direction bin

 

Note: N is the number of peaks found and M is the number of block maxima found (number of years in data set).

 

For each of the distributions (GPD, GEV, Gumbel, and Weibull), the data structures have the following form:

xr: [1x6 double]

Return Values (5, 10, 25, 50, 100, and 500 yrs)

xrlo: [1x6 double]

Lower Limit of the 95% Confidence Interval

xrup: [1x6 double]

Upper Limit of the 95% Confidence Interval

k: (double)

Estimated Shape Parameter

sigma: (double)

Estimated Scale Parameter

mu: (double)

Estimated Location Parameter

 

 

Swell Map Data

Running the Swell Map Module adds the following new wavedat fields:

 

stat: [1x1 struct]

Sea State Parameters used to process this data set

 

The fields in wavedat.stat are:

startime: [1xN double]

Start date and time of observed wave system as a MATLAB Serial Date Number

stoptime: [1xN double]

End date and time of observed wave system as a MATLAB Serial Date Number

slope: [1xN double]

Wave system linear rate of frequency increase per time (Hz/day)

intercept: [1xN double

Frequency intercept at time = 0 for linear fit through data (Hz)

azimuth: [1xN double]

Average direction of the wave system propagation (Deg From North)

origtime: [1xN double]

Wave system origination date and time as a MATLAB Serial Date Number

distance: [1xN double]

Distance to the wave system point of origin (m)

latitude: [1xN double]

Latitude of wave system point of origin (decimal degrees +N/-S)

longitude: [1xN double]

Longitude of wave system point of origin (decimal degrees +E/-W)

 

Note: N is the number of storm events found

 

 

Evaluate Module Data

Running the Evaluate Module adds the following new wavedat fields:

 

eval: [1x1 struct]

Contains the Evaluate Module Computed Statistics

 

 

The wavedat.eval struct contains another structure that holds the temporal correlation statistics.

 

TC: [1x1 struct]

Contains the Evaluate Module Temporal Correlation Statistics

 

 

The following are the fields in wavedat.eval.TC. Depending on processing options, not all of these fields may be available.

 

wind: [1x1 struct]

Wind Statistics and Error Metrics

bulk: [1x1 struct]

Bulk Wave Statistics and Error Metrics

ws: [1x1 struct]

Wind Sea Wave Component Statistics and Error Metrics

sw1: [1x1 struct]

Primary Swell Wave Component Statistics and Error Metrics

sw2: [1x1 struct]

Secondary Swell Wave Component Statistics and Error Metrics

 

 

The following are the fields in wavedat.eval.TC.bulk.

time: [1xN double]

Date and Time of each Record as MATLAB Serial Date Number

thetap1: [1xN double]

Baseline Data Peak Wave Direction (Deg From North)

thetap2: [1xN double]

Evaluate Data Peak Wave Direction (Deg From North)

dm1: [1xN double]

Baseline Data Mean Wave Direction (Deg From North)

dm2: [1xN double]

Evaluate Data Mean Wave Direction (Deg From North)

res: [1x1 struct]

Time Series Residuals for thetap, dm, hs, tp, and tz

ccor: [1x1 struct]

Circular Correlation (structure containing thetap and dm)

cbias: [1x1 struct]

Circular (angular) Bias (structure containing thetap and dm)

hs1: [1xN double]

Baseline Data Significant Wave Height (m)

hs2: [1xN double]

Evaluate Data Significant Wave Height (m)

tp1: [1xN double]

Baseline Data Peak Period (s)

tp2: [1xN double]

Evaluate Data Peak Period (s)

tz1: [1xN double]

Baseline Data Zero Crossing Period (s)

tz2: [1xN double]

Evaluate Data Zero Crossing Period (s)

rms: [1x1 struct]

Root-Mean-Square Error (structure containing hs, tp, and tz values)

bias: [1x1 struct]

Bias (structure containing hs, tp, and tz values)

SI: [1x1 struct]

Scatter Index (structure containing hs, tp, and tz values)

r2: [1x1 struct]

Regression Coefficent (structure containing hs, tp, and tz values)

fitted: [1x1 struct]

Slope and Intercept for Linear Regression (structure containing hs, tp, and tz values)

limits95: [1x1 struct]

95% Confidence Interval of Fit (structure containing hs, tp, and tz values)

limits90: [1x1 struct]

90% Confidence Interval of Fit (structure containing hs, tp, and tz values)

limits85: [1x1 struct]

85% Confidence Interval of Fit (structure containing hs, tp, and tz values)

 

Note: N is the number of matching records between baseline and evaluate data sets.

 

 

3. Export Data

A variety of data export options are offered, including image files, animations, and summary tables.  See the Data Export Wizard for details on custom export tables in a variety of formats.

 

reformat

name

Parameter set name

obsyr

Observation year

lat

Latitude (decimal degrees)

lon

Longitude (decimal degrees)

magcorr

Magnetic compass correction (deg)

timecorr

N/A

method

Processing method [1=On-Board, 2=Off-Board]

paramset

N/A

allfiles

Process all files [1=True, 0=False]

onlyfiles

Index within directory of files to process

useset

Parameter setting to use [1=True, 0=False]

ewind

Estimate winds [1=True, 0=False]

depth

Water depth (m)

smooth

Data smoothing interval (h)

subset

Data sub sample interval (h)

abins

Number of output angle bins

dirpath

Path to raw data

fileext

File name extension for raw data

winddirpath

Full path to input wind data

datatype

Input data type string

datatypeuseset

Specifies which parameter set to use for multiple saved parameter sets of the same datatype

records

Identify specific records of OceanWeather NetCDF files

CustomFileFormat

Identify index of meaningful characters within a file name (buoyname, year, month, day, hour, minute)

NDBCIdNum

Index of NDBC station from internal XWaves list (NDBC_Wave_Station_Info.mat)

NODCDate

Date string for NODC data

egap

Minimum data gap for estimating winds (h)

windz

Wind measurement height (m)

wind_data_num

Wind data set number

NetCDFPath

Full path to NetCDF input file

NetCDFMode

NetCDF mode [0=Disabled, 1=New file, 2=Append file]

wwwnumdays

Number of days to process from NDBC buoy

 

tracking

name

Parameter set name

wsmult

Wind sea multiplier

swellmin

Minimum swell wave weight (m)

fa

Spread factor

maxpar

Maximum number of swells per record

gap

Variance threshold

smallest

Minimum number of records

sa

Swell separation angle

useset

Parameter setting to use [1=True, 0=False]

fac

Spectral smoothing threshold

trend

Trend analysis window (h)

windsea

Wind sea identifier

conserve

N/A

forcemin

Wind force threshold

ustar

Friction velocity

partition_resolution

Number of spectrum division levels for partitioning

 

specfit

name

Parameter set name

wsfit

1D Wind sea fit type

sfit

1D Swell fit type

useset

Parameter setting to use [1=True, 0=False]

wsfit2D

2D Wind sea fit type

sfit2D

2D Swell fit type

econserve

Conserve wave energy flag [1=True, 0=False]

tconserve

Conserve wave period flag [1=True, 0=False]

tolerance

Wave period tolerance (s)

jfit

JONSWAP fit type

 

seastate

name

Parameter set name

interval

N/A

ws

N/A

smax

N/A

sdat

N/A

snorm

Scatter table data normalization

hs_inc

Significant wave height (m) increment between wave height bins

tp_inc

Wave period (s) increment between wave period bins

nsect

Number of wave direction bins

sectors

Array of computed bin centers

width

Array of computed width between bins

useset

Parameter setting to use [1=True, 0=False]

vesselpath

N/A

waveper

Select peak period or zero-crossing period

wavedirs

N/A

wsthreshtype

Wind speed PoT threshold type

wsthresh

Wind speed PoT threshold value

hsthreshtype

Wave height PoT threshold type

hsthresh

Wave height PoT threshold value

plag

PoT minimum time lag (h) between successive events

compute_error

Compute 95% confidence intervals [1=True, 0=False]

 

NetCDFDefaults

nrec

Number of records to keep in memory

Fields

Structure of NetCDF data fields

 

eval

name

Parameter set name

useset

Parameter setting to use [1=True, 0=False]

smoothing

Baseline data smoothing interval (h)

subsample

Baseline data subsample interval (h)

maxtimediff

Maximum allowable time gap for matching records (h)

wsthreshtype

Wind speed PoT threshold type

wsthresh

Wind speed PoT threshold value

hsthreshtype

Wave height PoT threshold type

hsthresh

Wave height PoT threshold value

processws

Process and compare wave systems flag

swellgroups

Number of swell groups to compare

delineate

Method to delineate swells, wave height or period

delineatevalue

Wave period (s) used to delineate swells

bldatapath

Full path to baseline data

evdatapath

Full path to evaluate data

netcdfpath

Full path to NetCDF data

plag

PoT minimum time lag (h) between successive events

mlag

PoT search window duration (h) to match peaks in baseline/evaluate data

 

export

name

Parameter set name

useset

Parameter setting to use [1=True, 0=False]

smax

Maximum number of output partitions

format

Format of export data file (ASCII, EXCEL or mat file)

header

Structure containing output header options

datafields

Structure containing all output data fields

 

auto

name

Parameter set name

datatype

Import data type

SaveDataTo

Full path for *.mat data file

useset

Parameter setting to use [1=True, 0=False]

rfmt_num

Reformat parameters (parameters.reformat) set number to be used [Disable=-1]

trk_num

Wave Systems parameters (parameters.tracking) set number to be used [Disable=-1]

sfit_num

Spectral Fit parameters (parameters.specfit) set number to be used [Disable=-1]

ewiz_num

Export Wizard parameters (parameters.export) set number to be used [Disable=-1]

sstate_num

Sea State (parameters.seastate) parameters set number to be used [Disable=-1]

display_waitbars

AutoWaves flag to display processing waitbars [Enable=1, Disable=0]

XWavesDataFile

Full path of XWaves format .mat file to process data from [Disable=[]]

param_netCDF

Structure containing NetCDF parameters [FieldName, nrec, NCFile, records]

SaveDataToEnable

Save Data to .mat Flag [Enable=1, Disable=0]

PlotEnable

Export plots? [Enable=1, Disable=0]

PlotSelection

Array of flags to output each available plot [Enable=1, Disable=0]

PlotFormat

Format of export plots [.bmp, .jpg, .pdf, .png, .tif, .emf, or .fig]

PlotFolder

Path to save plots

AutoUpdateEnable

Automatic processing option [Enable=1, Disable=0]

AutoUpdateInterval

Automatic processing interval (h)

AutoUpdateAppend

Append automatic processing to existing output file? [Enable=1, Disable=0]

SaveExportWizardTo

Full path to export wizard output file

SaveSpecCoeffTo

Full path to spectral coefficient text file

SaveSpecCoeffToEnable

Spectral coefficient text file output flag [Enable=1, Disable=0]

SingleRecordSpecCoeffEnable

Single record per spectral coefficient text file [Enable=1, Disable=0]

ExportBlueFat

BlueFat Table File Output Flag [Enable=1, Disable=0]

SaveBlueFatFile

Full path for BlueFat table output file

VesselHeadingPath

Full path to vessel heading file for BlueFat table

StationsEnable

Enable downloading from NDBC stations? [Enable=1, Disable=0]

StationSelection

Array of flags to download each available NDBC Station [Enable=1, Disable=0]

StationFolder

Path to save NDBC station data

ErrorLogOption

Log file options. [0=log all actions, 1=log error messages only]

AutoUpdateService

Windows Service Update Option

ExportHsRecurrence

Wave height recurrence table output flag [Enable=1, Disable=0]

SaveHsRecurrenceFile

Full path to wave height recurrence table

ExportWsRecurrence

Wind speed recurrence table output flag [Enable=1, Disable=0]

SaveWsRecurrenceFile

Full path to wind speed recurrence table

SaveDataOption

Save output data option [‘single’, ‘individual’, or ‘monthly’]

Scaling

Frequency axis scaling [‘Log’ or ‘Linear’]

A variety of statistical parameters are calculated by the software and can be exported for additional use.  Here we provide the definitions of these parameters.

 

Metadata Fields

Date and Time

A Matlab serial date number is stored for each wave record and corresponding statistical parameter.  The serial date number represents the whole and fractional number of days from a fixed, preset date (January 0, 0000). Upon exporting, date and time is converted to a standard string format: yyyy-mm-dd HH:MM:SS.

 

Typically the data are assumed to be referenced to Greenwich Mean Time (GMT).  However the wavedat data structure allows inclusion of a time zone field which specifies the offset from GMT in hours.  See Data Formats for additional information.

 

Location

Each data set is referenced to a specific geographic location.

 

Latitude is saved in decimal degrees (+N/-S)

Longitude is saved in decimal degrees (+E/-W)

 

Water Depth

Each data set is referenced to a specific water depth.

Water Depth (m) is saved as a positive number with mean sea level as 0.

 

Wind Parameters

Wind information can either be imported or estimated by the software.  Saved wind information includes speed (m/s) and direction (deg from N).

Wind data can be stored with reference to a measurement height above the ocean surface, windz (m).  Otherwise the reference height is assumed to be 10 m.

 

Wave Parameters

Wave statistics can be computed from the full wave spectrum, wave spectrum partitions, or from model fits to the spectrum (JONSWAP, Lognormal, etc.). In all cases the equations are the same.

 

Wave Spectrum

The Directional Wave Spectrum S(f,θ) provides the distribution of wave ‘energy’ or variance (m 2/(Hz*deg)) as a function of wave frequency f (Hz) and wave direction θ (deg from N).

 

Integration of S(f,θ) over direction yields the Frequency Spectrum

 

 

Likewise, integration of S(f,θ) over frequency yields the Direction Spectrum

 

 

With the total energy (variance) in the spectral domain given by the zeroth moment

 

 

 

Wave Statistics

A variety of statistical parameters are computed from the wave spectra, including the Significant Wave Height, approximated by Hmo

 

 

the Peak Wave Period

 

 

with Peak Wave Frequency fp computed from a 3-point parabolic fit to the Frequency Spectrum peak;

the Mean Wave Period (zero-crossing)

 

 

with the second moment given by

 

 

The deep-water Wavelength is calculated from the Mean Wave Period

 

 

And the deep water Phase Speed is given by

 

 

with gravitational acceleration g=9.81 m/s2.

The Peak Direction (deg from N) is the directional bin with the highest total energy (summed over frequency).

 

Also computed is the Mean Wave Direction

 

 

with bulk Fourier coefficients

 

 

where

 

 

and the Directional Spread

 

 

where

 

 

 

References

O'Reilly, W. C., T. H. C. Herbers, R. J. Seymour, and R. T. Guza, 1996. A comparison of directional buoy and fixed platform measurements of pacific swell. J. Atmos. Ocean. Tech. 13(1), 231-238.

Kuik, A. J., G. P. van Vledder, and L. H. Holthuijsen, 1988.  A method for the routine analysis of pitch-and-roll buoy wave data, J. Phys. Oceanogr., 18, 1020–1034.

 

Additional Information

Data Formats

Direction Conventions

Data Export Wizard

Spectral Fitting

Sea State Analysis

 

 

 

In general all wind and wave directions are stored in the standard meteorological “Degrees from North” convention, where angles rotate clockwise from north (0 Deg).

 

All plots display directions with this convention with the exception of vector plots, such as the Wave Systems Vector Plot in the Wave Systems Module. The vector plots rotate wind and wave directions 180 degrees to display them in vector form as “Degrees towards”, again with rotation clockwise from north.

 

The only exception to this direction convention rule is with the BlueFat table export function, which provides the option to rotate all directions relative to ship azimuth (180 = head on seas). For this feature a ship heading file must be provided by the user.

 

Magnetic Compass Corrections

 

As many conventional wave sensors collect wave direction data using a magnetic compass, correction is necessary in order to rotate the wave directions relative to True North. Most of the data formatters allow the user to input a Magnetic Compass Correction factor to facilitate this correction. This parameter is the magnetic declination, sometimes called magnetic variation, which is the angle between magnetic north and true north. The Magnetic Compass Correction should be entered as positive east of true north and negative when west. The input wave directions will be rotated by this angle to generate directions relative to True North.

 

The magnetic compass correction is a function of latitude and longitude and can be computed on a web page hosted by the National Geophysical Data Center: http://www.ngdc.noaa.gov/geomag-web/#declination.

 

The following data manipulations are facilitated by the Data Utilities Module.

 

Smooth Records

The Smooth Records option performs a weighted running average over the specified records.  The utility uses a user-specified duration (h) to select directional wave spectra records to smooth.  A weighted smooth function is generated that provides 100% weighting at the center record and 50% weighting at the tails.  All statistical parameters are then recalculated based on the smoothed spectra.

 

If wind and/or friction velocity data are present, the wind directions are vector-averaged and the wind speeds are scalar averaged over the smoothing window.  No taper is applied for winds.

For example, assume a 5-h smooth is applied to half-hourly records.  The sliding window will smooth all wind and wave data occurring up to 2.5-h prior and 2.5-h after each observation time.  For wave data, the +/- 2.5-h records will only contribute 50% to the averaging process.

 

This feature is helpful for noisy spectra, usually obtained from short time series records, and will help reduce Wave Systems processing time by eliminating spurious peaks.

 

SubSample File

The SubSample option reduces user data file sizes by saving only those records that occur at a user-specified time interval (h).    Records that fall in-between this interval are removed.

 

For example, if a 3-h data subsample interval is selected for data that is provided hourly, the first record will be saved and the second and third records will be discarded.  This pattern will repeat through the entire data set.

This feature is helpful for decreasing the size of large files, and will reduce Wave Systems processing time by providing fewer records to process.

 

Spectral Resolution

The Spectral Resolution utility is used to change the frequency range, frequency resolution, and directional resolution of the wave spectra in a file.  The user specifies the desired frequency range, number of frequency bins, and number of angle bins.  A two-dimensional linear interpolation is then performed on the Input spectra S(f,θ) to result in the requested frequency and direction resolution.  All statistical parameters are then recalculated based on the interpolated spectra.

 

This utility can greatly reduce output file sizes and save on Wave Systems processing times for large data sets.  It can also be used to smooth noisy spectra.

 

Append File

The Append File utility is used to append another data set to the beginning or end of the current user data set.  Files selected to append must have observation times that either precede or follow the observation times of the user data in memory.

 

Subset File

The Subset File utility allows the user to create a new data file from a subset of a loaded data file.  The subsetting is performed based on user-provided start and stop times.

 

Remove Records

The Remove Records utility allows the user to discard records from a loaded data file.  The records are removed based on user-provided start and stop times.

 

Rename

The Rename utility allows the user to change the name of a loaded data set.  Selecting Rename will not cause any other data to be reprocessed or lost.

 

Additional Information:

Data Utilities Module

 

Wave spectral partitioning provides an efficient approach to characterize energy levels of individual wind-sea and swell wave components in directional wave spectra. Here a ‘wave component’ is defined as a specific wind-sea or swell that can be attributed to a region of enhanced energy in the directional wave spectrum. The time evolution of a series of related wave components forms a ‘wave system’ that can be traced to a specific generation region on the ocean surface. Wave spectral partitioning methods have been applied in a variety of investigations, including the comparison of wave fields from the Labrador Sea Extreme Waves Experiment (Beal 1989), the validation of WAve Model WAM performance against ERS-1 SAR spectra (Hasselmann et al. 1994), the assimilation of wave observations into the WAM model (Voorrips et al. 1997), the analysis of wind sea growth and dissipation in the open ocean (Hanson and Phillips 1999), a study of swell evolution across the Pacific (Hanson and Phillips 2001), and an analysis of nearshore wave climatology (Scott et al. 2002).

 

Originally proposed by Gerling (1992), wave partitioning allows the identification and grouping of component wave systems from spatially and temporally distributed observations of directional wave spectra. A primary limitation to the Gerling approach is that only those portions of the spectrum that rise above a constant threshold are used to determine the features of particular wave component. Hasselmann et al. (1994) improved on this method by dividing the spectrum into subset domains based on an inverted catchment area approach, thus using the entire spectral region of each peak to compute wave component parameters. Hanson (1996) and Hanson and Phillips (2001) made further improvements to the technique by adding clustering routines to track the evolution of individual wave components and dispersion calculations to estimate the source time and location of resulting wave systems. Work has continued on the development of these techniques since the publication of Hanson and Phillips (2001), hereinafter referred to as HP01, to the point that we now have a fully automated, GUI-driven system employing modern image processing technology for performing a wide range of wave system analyses on time-evolving series of directional wave spectra.

 

For completeness, we summarize the methods here and provide detail on the improvements that have been made since HP01.

 

Wave Component Identification

The first step of spectral partitioning is to isolate spectral regions S(f,θ) associated with individual energy peaks. This was accomplished by HP01 with a time-consuming recursive algorithm that assigned each spectrum value to a path of steepest ascent associated with a local peak. All paths leading to the same peak were assigned to a distinct spectral partition. This step has been improved with efficient image processing routines that were designed for making watershed delineations in topographic imagery (Soille 1999, Vincent and Soille 1991). Treating the spectrum as an inverse topographic domain, an 8-point connected smoothing transform removes fine-scale noise in the spectrum. A watershed delineation transform then identifies the boundaries forming the minima between remaining spectral peaks. Spectral regions surrounded by such boundaries become individual partitions. This change in basic methodology has reduced by an order of magnitude the time required to process each record, with essentially no change in output results.

 

Wave Component Identification

Once the initial partitions are identified, a variety of component statistics are computed to aid with further processing. These include the 1D energy spectrum

 

 

the total energy in the 2D spectral domain

 

 

the significant wave height, approximated by Hmo

 

 

and the peak wave period

 

 

with the peak wave frequency f p computed from a 3-point parabolic fit to the 1D spectral peak. Also computed is the vector mean wave direction

 

 ;

 

where

 

 

and the directional spread (O’Rielly et al. 1996)

 

 

where

 

 

 

with bulk Fourier coefficients

 

 

Both full spectrum and spectral component statistics are computed using the above relationships. Integration domains are implied to be over all frequency bins and from 0 to 2π in direction. For computing statistics of a spectral component, all spectral values not falling within the partition domain are set to zero.

 

Wind-sea and swell combinations

The resulting wave components are sorted into wind-sea or swell. To be classified as wind-sea, a spectral peak must be forced by a component of the existing wind. A wave-age criterion is used to identify and combine the 2D wind-sea partitions. All remaining peaks are labeled as swell. Adjacent 2D swell peaks that are contiguous in frequency can be part of the same swell system and are combined under certain conditions. Two tests are made to determine if adjacent swell peaks belong to the same wave system. A swell angle threshold test requires the mean directions of adjacent peaks be separated by less than a threshold angle. A threshold value of 30 deg yielded optimum results with the Pacific Ocean data and provided a comfortable margin outside the stated +/-10-deg accuracy of the buoy directions. A second test compares the f, θ spectral distance between peaks in relation to their individual spectral spreads. Peaks are combined if the spread of either peak is large compared to the distance between the two peaks. Wave component statistics are updated after each combination is made.

 

Minimum Wave Height Threshold and Storage of Results

As a final step in producing consistent results with minimal noise, any wind-sea or swell component that falls below a significant wave height threshold of 0.1 m is removed from analysis and labeled as miscellaneous energy.

 

The partitioning results are stored in a wave component template T(f,θ) that has the same degrees of freedom and cut-off frequency as the input spectrum. Matrix values contained in the template can be one of the following:

 

Matrix Value

Represents

0

Wind Sea

1..n

Swell System ID

-1

Miscellaneous Energy

 

An example of a partitioned buoy spectrum containing a wind-sea and three swell components appears in Fig 1.

 

Swell Tracking

Once a time series of directional wave spectra has been partitioned, a clustering algorithm is used to link common wave components together through time. This results in the generation of wave systems, which are statistically represented by time-evolving series of Hs (approximated by H mo), T p, and attributes associated with each wave component. A convenient display of these features is in the form of the wave vector history plot shown in Fig 2a. At any given time, the wave field is composed of multiple wave components that are members of a distinct evolving wave system. For example, the wave vectors at the dashed vertical line in Fig 2a correspond to the wave components identified in Fig. 1. The wave vector history shows how these particular components evolve through time. Wind-seas (black arrows) are driven by local winds. The swell events are more persistent, with systems from the North and South Pacific both typically lasting about 6 days. It is interesting to note that the two most energetic wave height events during this two-week period (Fig. 2b) are a result of the superposition of locally increased wind-seas with energetic swells from three different origins.

Note: Energy levels logarithmically scaled to the peak value

 

Fig. 1. Example partition results for buoy station 51028 2D spectrum on 9 November 2000 (0700 GMT). White lines denote the boundaries of each wave component as represented in the partition template T(f,θ). Note that this record contains a wind sea (0), North Pacific swell (1), South Pacific Swell (2), and a more locally generated easterly swell (3).

 

Fig. 2. Example results from Spectral Partitioning Module showing persistent wave system evolution during November 2000 at NDBC Station 51028. a. Wave vector history. Wave vectors represent the height (length), peak frequency (origin), and direction of travel (azimuth) of evolving wave systems (color-coded). For clarity, only wave systems persisting 10-h or longer are displayed. b. Full-spectrum significant wave height.

 

References

 

Beal, R. C., Ed, 1989: Directional Ocean Wave Spectra. The Johns Hopkins University Press, Baltimore, MD, 218 pp.

Gerling, T. W., 1992: Partitioning sequences and arrays of directional ocean wave spectra into component wave systems. J. Atmos. Oceanic Technol., 9, 444-458.

Hanson, J. L., 1996: Wind sea growth and swell evolution in the Gulf of Alaska. Ph.D. Dissertation, the Johns Hopkins University, 151 pp.

Hanson, J. L., and O. M. Phillips, 2001: Automated analysis of ocean surface directional wave spectra. J. Atmos. Oceanic. Technol., 18, 277-293.

Hanson, J. L., and O. M. Phillips, 1999: Wind sea growth and dissipation in the open ocean. J. Phys. Oceanogr, 29, 1633-1648.

Hasselmann, S., K. Hasselmann, and C. Bruning, 1994: Extraction of wave spectra from SAR image spectra. Dynamics and Modelling of Ocean Waves, G.J. Komen et al., Eds., Cambridge University Press, 391-401.

O’Reilly, W.C., T.H.C. Herbers, R.J. Seymour and R. T. Guza, 1996: A comparison of directional buoy and fixed platform measurements of Pacific Swell. J. Atmos. Oceanic. Technol., 13 (1), 231-238.

Scott, D., D. Resio and C. Pantoja, 2002: Swell propagation and nearshore wave climate. 7th International Workshop on Wave Hindcasting and Forecasting, Meteorological Service of Canada, 13-24.

Soille, P., 1999: Morphological Image Analysis: Principles and Applications. Springer-Verlag, 170-171.

Vincent, L., and P. Soille, 1991: Watersheds in digital spaces: An efficient algorithm based on immersion simulations. IEEE Transactions of Pattern Analysis and Machine Intelligence, 13(6), 583-598.

Voorrips, A. C., V. K. Makin and S. Hasselmann, 1997: Assimilation of wave spectra from pitch-and-roll buoys in a North Sea wave model. J. Geophys. Res. 102, 5829-5849.

 

1. Introduction

The goal of the  Spectral Fit Module is to compute a variety of 1D fit and 2D fit parameters suitable for engineering design applications.  Specific features include:

 

  • JONSWAP, Gaussian, Lognormal and Ochi-Hubble 1D partition fits
  • Windsea, swell, and Cos^2n directional distributions
  • Composite full-spectrum fit parameters
  • Interactive Fit Selection Window
  • User-guided display of fit results
  • User-selected export of partition statistics and fit parameters
  • Interactive html-based Help utility

 

This document describes the various system features of the Spectral Fit Module.

 

2. System Overview

The Spectral Fit Module has many features and capabilities.  Integration of the Spectral Fit Module into the software package is depicted in Figure 1. Spectral Fit is designed to operate on the wave spectral partitions computed by the Wave Systems ModuleSpectral Fit includes routines for computing 1D energy-frequency fits, 2D directional distributions and composite full-spectrum fit parameters.  To optimize selection of the best-fits for each wave system, an interactive Fit Selection Tool allows the user to identify the best fit type to apply to each windsea or swell wave system.

 

As with all of the modules, Spectral Fit operates on information stored in the wavedat data structure. Furthermore all fit parameters and statistics are saved back into the wavedat data structure.

 

The Data View Module includes features to support the display and export of Spectral Fit results.  A Spectral Fit Plot Library allows the comparison of fit results to original data.  A set of composite plots present the full-spectrum sum of the selected partition fits for each record.  Finally, a Data Export Utility allows the user to design a custom table of fit results to export.

 

Figure 1. Spectral Fit Module Integration

 

A typical Spectral Fit Module processing session might go as follows:

 

Additional optional processing steps might include:

 

3. System Features

3.1 Spectral Fit Module

The Spectral Fit Module has four primary components: (1) Spectral Fit Parameters Table, (2) 1D fitting, (3) directional and composite fits, and (4) interactive Fit Selection Tool.  The results are stored in the wavedat data structure.  Each of these functions is described below.

 

Spectral Fit Parameters Table

Upon selecting Spectral Fit from the Module pull-down menu, the first window to open is the Spectral Fit Parameters Table.  As depicted in Figure 2, this window allows the user to select which fits to use for windsea and swell in the composite fit computation.  Furthermore the user has the option of turning on two Fit Conservation options:

 

Wave Height Conservation – The fitted wave heights are replaced with the input data wave heights

 

Wave Period Conservation – If the fitted peak wave periods fall outside a user-specified tolerance, they are replaced with the input data wave periods

 

For JONSWAP 1D fits, the user selects either Default or Advanced fitting methods (see below).

 

Several plots are available to view the fit-type results on selected records.  As with other parameters tables, named parameter settings can be saved for future use.  Furthermore the selections made in the Spectral Fit Parameters Table can later be refined using the Fit Selection Tool (see below).

 

1D Spectrum Fitting

Once the user selects Run in the Spectral Fit Parameters Table, a sequence of fitting operations is performed.  The first step is the computation of variance density (1D) spectrum fits.  The following 1D fits are computed for each wave partition:

 

JONSWAP- Least squares fit of a JONSWAP variance density spectrum.  The following 2 options are available:

 

  • Default – Uses a modified form of JONSWAP that is based on significant wave height (Hs), peak period (Tp), and peak enhancement factor (Gamma, γ).  Sigma A and Sigma B are held constant at 0.07 and 0.09, respectively.  Alpha is then computed independently based on Hs, Tp and γ.

 

  • Advanced JONSWAP – A traditional JONSWAP fit of Alpha, peak period, and gamma.  Peak period is based on a 3-point parabolic fit to the spectral peak.  Sigma A and Sigma B are initially held constant at 0.07 and 0.09, respectively.  Several post-processing options for Sigma A and Sigma B are available in the Spectral Fit Selection Tool.

 

Gaussian – Least squares fit to a Gaussian variance density spectrum.  The significant wave height (Hs), peak period (Tp), and standard deviation of the Gaussian (σ) are computed.

 

Lognormal – Least squares fit to a variation of the Gaussian spectral form, allowing for some asymmetry in shape.  The significant wave height (Hs), peak period (Tp), and standard deviation of the Gaussian (σ) are computed.

 

Ochi-Hubble - Least squares fit to the Ochi-Hubble spectral form for a single peak.  The significant wave height (Hs), peak period (Tp), and spectral shape parameter (λ) are computed.

 

Figure 2.  Spectral Fit Parameters Table

 

 

Directional Distributions

Once all of the 1D fits are completed, the user-selected directional distributions for wind sea and swell are computed.  Directional distributions provide mean direction and spread values that are based on standard model forms.

 

The following directional distributions are available:

 

Ewans Swell – Based on supplied Tp and peak direction (θp) computes a wrapped normal directional distribution Q (f,θ) for swell (Ewans, 2001).

 

Ewans Windsea - Based on supplied Tp and peak direction (θp) computes a symmetric double Gaussian directional distribution Q(f,θ) for wind sea (Ewans, 1998)

 

Cos^2n – a least squares fit of a cos^2n(θ) distribution to the wave directions.  Here the resulting value of n is saved as a directional fit parameter.

 

Composite Fits

Once all of the individual partition 1D and 2D fits are generated, a set of composite fit results are computed based on the user-selected fit options in the Spectral Fit Parameters Table. Composite fits are generated from a linear summation of the individual 1D and 2D partition fits for each record.

 

After the composite fits are computed the spectral fit plot page opens up in Data View. Specific spectral fit features in Data View are described in a later section.

 

Fit Selection Tool

Once Spectral Fit data processing is complete, the interactive Fit Selection Tool can be used to fine tune the composite fit results.  A variety of fit performance data and plots are included, as well as tools to modify the fit types applied to individual wave systems.  A screen shot of the Fit Selection Tool window appears in Figure 3.

 

The Fit Selection Tool has four main features:

 

1. Wave System Fits – Search through the various wave systems in the data set.  A system selection menu allows the user

    to select between all Systems, Windsea, Windsea Segments, All Swells, or a specific system number (System 1, System
    2, System 3, etc).  The system numbers correspond to the temporally-tracked systems generated by the Wave Systems
    Module
.  Specific wind sea segments can be selected by either (1) typing in the desired start and stop times, or (2) use
    the mouse to left-click and drag across a segment of the System Height Series plot and then right-click and choose the  
    Set Windsea Segment command.  The plots automatically update to show the selected data.  The user can change the
    type of fits applied to each wave system and view the results.  As described above, 1D Fit selections include JONSWAP,
    Gaussian and Lognormal.  Directional distribution selections include Ewans Windsea, Ewans Swell, and Cos^2n.

 

2. Advanced JONSWAP Options – The Advanced JONSWAP options are available for data that have been processed
    using the Advanced JONSWAP fit option in the Spectral Fit Parameters Table. Right-clicking on the Advanced JONSWAP
    Options tab will provide access to the advanced fit commands shown in Figure 4.

 

This window allows the user to select from the following sigma processing options (pull-down menu):

  • Default – Sigma A and Sigma B are held constant at 0.07 and 0.09, respectively. The JONSWAP fits are then recomputed using these values.
  • Fitted – Sigma A and Sigma B are fitted along with alpha, peak period, and gamma.
  • User-specified – Sigma A and Sigma B input boxes allow the user to specify the values to use.  The JONSWAP fits are then recomputed using these values.
  • Fetch Estimated – Sigma A and Sigma B are estimated from the input (or computed) wind speed, direction and estimated fetch.  The user is prompted to provide a fetch file that includes a set of directions (from) and fetches (km).  The format of the ascii fetch file is as follows:

 

Direction from

which wind blows

Estimated

Fetch (km)

0

60

45

180

90

200

135

800

180

1000

225

1200

270

80

315

60

360

60

 

 

The actual fetch used for each record is interpolated from the input values based on the corresponding wind direction.  The Sigma A and Sigma B computations are based on Lewes and Allos (1990).  The non-dimensional fetch ζ=gx/u2 is computed, where u is the 10-m elevation wind speed.  Equations 11, 13 and 14 from Lewes and Allos (1990) are then applied for the computation of Sigma A and Sigma B. The JONSWAP fits are then recomputed using these estimated values.

 

Selecting Compute will re-compute all JONSWAP fits using the selected options. Selecting Exit will return control back to the Wave System Fits window.

 

 

3. Fit Plots –The plot window in the upper right section of the Fit Selection Tool includes scatter plots to compare wave
    height and period fit results for the selected wave system (or all wave systems).  The scatter plots include a quantification
    of the RMS error and bias of the fit parameters.  Also included is a JONSWAP Parameters table the lists the computed fit
    parameters for each wave system for which a JONSWAP Fit has been selected.

 

4. Wide format plots – The lower plot window is used to view the following additional fit performance displays:

  • System Height and Period Series - time series comparisons of fit parameters with input data
  • Stacked Spectra – The unique stacked spectra display allows the user to scroll through all the 1D spectra fit comparisons for a selected wave system, with up to 4 records shown at a time.
  • System Height and Period Error Bars – Displays the RMS height and period fit errors for all wave systems at a glance

 

Figure 3.  Spectral Fit Selection Tool

 

 

Figure 4.  Advanced JONSWAP Options selection window

 

Data Structure

All processed data are saved to a MATLAB data structure named wavedat.  Results from the Spectral Fit Module are saved in two different wavedat data fields.  Raw fit data from the various 1D and 2D fits are saved to a wavedat.fit data structure, which has the following data fields:

 

fit1D{n}

fit2D{n}

n

1D Fit Type

n

2D Fit Type

1

JONSWAP or JONSWAP-ADV

1

Ewans Swell

2

Gaussian

2

Ewans Windsea

3

Lognormal

3

Cos^2n

4

Ochi-Hubble

 

The JONSWAP-ADV fit type specifies that the standard JONSWAP equation was used to perform the fit and that all 5 fit parameters (alpha, peak period, gamma, Sigma A and Sigma B can be fit).  The data fields in fit1D and fit2D include all of the parameters necessary to reproduce the actual fits, such as alpha, hs, tp, gamma, Sigma A, Sigma B, and sigma (standard deviation of the Gaussian) for the 1D fits and directional distribution parameters for the 2D fits.

 

Composite fit results, based on the user-selected fit types from the Spectral Fit Parameters Table and/or the Spectral Fit Selection Tool, are saved to the wavedat.sfit data structure.  The contents of wavedat.sfit are listed below.

 

Non-directional wavedat.sfit data fields:

 

.time

Date number of partition

.fittype

1D type; jonswap, gaussian, or lognormal

.par

Wave partition number

.grp

Wave system (group) number

.alpha

JONSWAP alpha parameter

.gammaJON

JONSWAP gamma parameter

.sigmaA

JONSWAP sigma-A parameter

.sigmaB

JONSWAP sigma-B parameter

.sigma

Std Deviation of Gaussian (Gaussian and Lognormal fits)

.hsif

Partition fitted significant wave height (m)

.lambda

Ochi-Hubble Spectral Shape Parameter

.tzif

Partition fitted zero-crossing period (s)

.tpif

Partition fitted peak period (s)

.Lzif

Partition fitted wavelength (m) (deep water calculation)

.tzf

Full spectrum fitted zero-crossing period (s)

.hsf

Full spectrum fitted significant wave height (m)

.tpf

Full spectrum fitted peak period (s)

.Lzf

Full spectrum fitted wavelength (m) (deep water calculation)

 

Additional wavedat.sfit fields for directional fits include

 

.fittype2d

Ewans_ws, Ewans_sw, or cos2n

.dmif

Partition mean direction (deg)

.dpif

Partition peak direction (deg)

.spif

Partition directional spread

.ncos

Cos^2n spread parameter (n)

.dmf

Full spectrum mean direction (deg)

.dpf

Full spectrum peak direction (deg)

.spf

Full spectrum directional spread

 

 

The directional fields are omitted for non-directional data.  The format for these fields is identical to the partition data in wavedat.out.

 

 

3.2 Data View Module

Spectral Fit Plot Library

 

The Spectral Fit Plot Library includes several display options to compare input and fitted data.  These include scatter plots of wave height and period for wind seas, swells and composite (full) spectra.  The fit RMS Error and Bias is displayed on each scatter plot.  An example appears in the upper right sector of Figure 2. In addition, RMS error bar chart plots will allow a quick glance of the errors computed for each wave system.  Furthermore wave height and period fit error tables provide RMS error statistics from a least squares analysis of each partition fit.

 

Data Export Utility

A Data Export Utility facilitates enhanced user control of saving data fields to external ASCII, EXCEL and MATLAB formatted data files.  The table export GUI allows the user to select specific data fields to write to this file.  As with other parameter tables, the user can save named templates for future use.

 

The available fields are described in Tables 1-3.

 

Table 1.  No Processing Export Data Fields

 

Field

Description

Date

Format: YYYYMMDDHH

WS#

Wind speed (m/s)

WD#

Wind Direction (deg from true north)

Hs

Significant wave height (m) of total spectrum

Tp

Peak period (s) of total spectrum

T01

Mean (zero-crossing) period (s) of total spectrum

L01

Wave length (m) of total spectrum calculated from T01

Cp

Phase speed (m/s) of total spectrum calculated from Tp

Dp

Peak direction (deg from true north) of total spectrum

Dm

Mean direction (deg from true north) of total spectrum

Sp

Spectral spread (deg) of total spectrum

 

 

Table 2.  Wave Systems Export Data Fields

 

Field

Description

par

Partition identifier (0= windsea, 1-n = swells)

sys

System group identifier (0= windsea, 1-n = swells groups)

Hsi

Significant wave height (m) of system

Tpi

Peak period (s) of system

T01i

Mean (zero-crossing) period (s) of system

L01i

Wave length (m) of system calculated from T01i

Cpi

Phase speed (m/s) of system calculated from Tpi

Dpi

Peak direction (deg from true north) of system

Dmi

Mean direction (deg from true north) of system

Spi

Spectral spread (deg) of system

 

 

Table 3.  Spectral Fit Export Data Fields

 

Field

Description

Hsf

Significant wave height (m) of total fitted spectrum

Tpf

Peak period (s) of total fitted spectrum

T01f

Mean (zero-crossing) period (s) of total fitted spectrum

L01f

Wave length (m) of total fitted spectrum calculated from T01f

Cpf

Phase speed (m/s) of total fitted spectrum calculated from Tpf

Dpf

Peak direction (deg from true north) of total fitted spectrum

Dmf

Mean direction (deg from/true north) of total fitted spectrum

Spf

Spectral spread (deg) of total fitted spectrum

Type1D

1D Spectrum Fit Type (string)

Type2D

2D Spectrum Fit Type (string)

Hsif

Significant wave height (m) of fitted system

Tpif

Peak period (s) of fitted system

T01if

Mean (zero-crossing) period (s) of fitted system

L01if

Wave length (m) of fitted system calculated from T01if

Cpif

Phase speed (m/s) of fitted system calculated from Tpif

Dpif

Peak direction (deg from true north) of fitted system

Dmif

Mean direction (deg from true north) of fitted system

Spif

Spectral spread (deg) of fitted system

Alpha

JONSWAP alpha parameter

Gam

JONSWAP Gamma parameter

SigA

JOSNWAP Sigma-A parameter

SigB

JOSNWAP Sigma-B parameter

Sig

Sigma of the fitted system

Lambda

Ochi-Hubble shape parameter

ncos

n of fitted system (from cos^2n fit)

 

#Note:  Wind data are only included if available in wavedat

 

 

4.  References

Ewans, K. C., 1998.  Observations of the Directional Spectrum of Fetch-Limited Waves, J. Phys. Oceanog., v.28, pp.495-512.

Ewans, K. C., Directional Spreading in Ocean Swell, WAVES 2001.

 

 

5.  Contact Information

Please direct all inquiries regarding this document to:

 

WaveForce Technologies LLC

Email: waveforcesupport@rpsgroup.com

www.WaveForceTechnologies.com

 

 

NetCDF Tools

 

An optional feature of XWaves is to read and write from NetCDF files.  XWaves uses the native MATLAB NetCDF functions along with the MEXNC and SNCTOOLS function sets to interface with NetCDF files.  Information on these can be found at:
http://mexcdf.sourceforge.net/.

 

Everything required to interface with NetCDF is included in the XWaves toolkit.  Both 32- and 64-bit machines are supported.

 

See the XWaves NetCDF Interface tutorial for a detailed description of all the NetCDF features in XWaves.

 

NetCDF Interface

Overview

A NetCDF (Network Common Data Form) interface is included with the XWaves ocean wave field analysis toolbox. The NetCDF libraries are a freely-distributed set of read and write utilities for array-oriented data that include utilities for C, FORTRAN, C++, Java, MATLAB and other languages. XWaves uses the native MATLAB NetCDF functions along with the MEXNC and SNCTOOLS function sets to interface with NetCDF files.  Information on these can be found at:
http://mexcdf.sourceforge.net/.  The use of a NetCDF interface in XWaves essentially removes the file size limitations on both data processing and the creation of graphical displays. Furthermore this capability has been developed to work in the 64-bit architecture. This interface significantly increases the utility of XWaves for applications involving very large data sets

 

XWaves Data Interfaces

XWaves operates on the data structure wavedat that is stored as a MATLAB *.mat binary file.  This data structure includes the following elements:

  • Supporting metadata
  • Observed or modeled wave spectra data and related statistics
  • Parameters for processing the data in XWaves
  • Processed results

 

Expansion of XWaves configuration with a NetCDF data interface.

 

 

As the left side of the Figure below depicts, all of the XWaves modules are designed to operate on the wavedat data structure.  As data are processed, results are automatically added to wavedat.  The user has the option of saving these updates in the original *.mat-file or creating a new *.mat-file on disk.

 

The integration of NetCDF file formats within XWaves introduces a new functional component called the Data Parser.  As depicted in the Figure, the Parser maintains a 2-way flow of data between the XWaves modules and the NetCDF data file.  Essentially the Parser extracts NetCDF data as needed and writes NetCDF data as produced by XWaves.

 

The primary functions of the Parser are to:

 

  • Establish a linkage between the NetCDF data fields and the wavedat fields
  • Communicate with individual modules on data needs
  • Populate resident wavedat structure with data as required
  • Write results to the NetCDF data file as produced
  • Operate on 32-bit and 64-bit Windows machines

 

Hence XWaves has two slightly distinct modes of operation; (1) the original wavedat mode where all the information needed for processing and all of the processing results are stored in memory, and (2) the NetCDF mode where information is loaded as needed into memory from a NetCDF file and moved back out of memory (and into the NetCDF file) as new information is produced.

 

All of the internal XWaves functions continue to obtain all required data and information from the resident wavedat data structure.  The Parser moves data in and out of this structure as it is needed and produced.

 

 

Required NetCDF Tools

The latest versions of MEXNC and SNCTOOLS are used for the XWaves NetCDF interface.  MEXNC is a mex-file interface to NetCDF files for MATLAB.   It is compiled with NetCDF library versions 3.6.0 or higher, which includes the benefit of Large File Support.   Both 32-bit and 64-bit versions of MEXNC are employed.  SNCTOOLS is a set of m-files that sit on top of MEXNC.  XWaves will use SNCTOOLS to operate the MEXNC interface.  Information on these can be found at:
http://mexcdf.sourceforge.net/

 

XWaves Enhancements

When working with NetCDF data files in XWaves, the user is presented with the following features and options:

 

  • File Menu: Open NetCDF file –Open and load records from a NetCDF data file.
  • File Menu: Save to NetCDF– Export data to a new NetCDF file.
  • File Menu: Subset to XWaves File – Export data from any active file (wavedat or NetCDF) to a new XWaves data file (wavedat format).
  • Settings Menu: NetCDF– View and adjust NetCDF data interface settings.  Toggle data processing wait bars on or off.
  • DataView Record Scrolling – Data View reads in only the information needed to create the existing plots.
  • Utilities Module – Operational NetCDF interface to Utilities functions.
  • Wave Systems Module – NetCDF interface provides selective record I/O to eliminate memory issues.
  • Spectral Fit Module – NetCDF interface provides selective record I/O to eliminate memory issues.
  • Evaluate Module – Select 2 NetCDF data files for a temporal correlation comparison.

 

XWaves Features Not Supported

The following XWaves features and Modules are not yet supported by NetCDF:

 

  • Sea State Module – Data not archived in NetCDF file
  • Partition Editor
  • Wave Systems Editor

 

 

Note that the user has the option of exporting NetCDF data to an XWaves file (see File Menu commands above) and then having access to all XWaves capabilities for processing their data.

 

Please send all questions, comments, or suggestions to:

 

waveforcesupport@rpsgroup.com