<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml'/>
<!--}}}-->
Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
/*{{{*/
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}

a {color:[[ColorPalette::PrimaryMid]];}
a:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}
a img {border:0;}

h1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}
h1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}
h2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}

.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}
.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}
.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}

.header {background:[[ColorPalette::PrimaryMid]];}
.headerShadow {color:[[ColorPalette::Foreground]];}
.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}
.headerForeground {color:[[ColorPalette::Background]];}
.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}

.tabSelected{color:[[ColorPalette::PrimaryDark]];
	background:[[ColorPalette::TertiaryPale]];
	border-left:1px solid [[ColorPalette::TertiaryLight]];
	border-top:1px solid [[ColorPalette::TertiaryLight]];
	border-right:1px solid [[ColorPalette::TertiaryLight]];
}
.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}
.tabContents .button {border:0;}

#sidebar {}
#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}
#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}

.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}
.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}
.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}
.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];
	border:1px solid [[ColorPalette::PrimaryMid]];}
.wizardStep.wizardStepDone {background:[[ColorPalette::TertiaryLight]];}
.wizardFooter {background:[[ColorPalette::PrimaryPale]];}
.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}
.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;
	border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}
.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}
.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;
	border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}

#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}
#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}

.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}

.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}
.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}
.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}
.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}
.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}

.tiddler .defaultCommand {font-weight:bold;}

.shadow .title {color:[[ColorPalette::TertiaryDark]];}

.title {color:[[ColorPalette::SecondaryDark]];}
.subtitle {color:[[ColorPalette::TertiaryDark]];}

.toolbar {color:[[ColorPalette::PrimaryMid]];}
.toolbar a {color:[[ColorPalette::TertiaryLight]];}
.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}
.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}

.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}
.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}
.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}
.tagging .button, .tagged .button {border:none;}

.footer {color:[[ColorPalette::TertiaryLight]];}
.selected .footer {color:[[ColorPalette::TertiaryMid]];}

.sparkline {background:[[ColorPalette::PrimaryPale]]; border:0;}
.sparktick {background:[[ColorPalette::PrimaryDark]];}

.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}
.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}
.lowlight {background:[[ColorPalette::TertiaryLight]];}

.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}

.imageLink, #displayArea .imageLink {background:transparent;}

.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}

.viewer .listTitle {list-style-type:none; margin-left:-2em;}
.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}
.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}

.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}
.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}
.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}

.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}
.viewer code {color:[[ColorPalette::SecondaryDark]];}
.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}

.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}

.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}
.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}
.editorFooter {color:[[ColorPalette::TertiaryMid]];}

#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}
#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }
#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}
#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}
.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}
.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}
#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:'alpha(opacity:60)';}
/*}}}*/
/*{{{*/
* html .tiddler {height:1%;}

body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}

h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}

hr {height:1px;}

a {text-decoration:none;}

dt {font-weight:bold;}

ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}

.txtOptionInput {width:11em;}

#contentWrapper .chkOptionInput {border:0;}

.externalLink {text-decoration:underline;}

.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}

.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}

/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}

#mainMenu .tiddlyLinkExisting,
	#mainMenu .tiddlyLinkNonExisting,
	#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}

.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0em 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0em 1em 1em; left:0px; top:0px;}

.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}

#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}

#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0em 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 .3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}

.wizard {padding:0.1em 1em 0em 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0em 0em 0em 0em; margin:0.4em 0em 0.2em 0em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0em 0em 0em 0em; margin:0.4em 0em 0.2em 0em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0em 0em 0em; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0em;}
.wizardFooter .status {padding:0em 0.4em 0em 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em 0.1em 0.2em;}

#messageArea {position:fixed; top:2em; right:0em; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em 0.2em 0.2em 0.2em;}
#messageArea a {text-decoration:underline;}

.tiddlerPopupButton {padding:0.2em 0.2em 0.2em 0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em 1em 1em 1em; margin:0;}

.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0em;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}

.tabset {padding:1em 0em 0em 0.5em;}
.tab {margin:0em 0em 0em 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}

#contentWrapper {display:block;}
#splashScreen {display:none;}

#displayArea {margin:1em 17em 0em 14em;}

.toolbar {text-align:right; font-size:.9em;}

.tiddler {padding:1em 1em 0em 1em;}

.missing .viewer,.missing .title {font-style:italic;}

.title {font-size:1.6em; font-weight:bold;}

.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}

.tiddler .button {padding:0.2em 0.4em;}

.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}

.footer {font-size:.9em;}
.footer li {display:inline;}

.annotation {padding:0.5em; margin:0.5em;}

* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0em 0.25em; padding:0em 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}

.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0px 3px 0px 3px;}

.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}

.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0em; font-size:.9em;}
.editorFooter .button {padding-top:0px; padding-bottom:0px;}

.fieldsetFix {border:0; padding:0; margin:1px 0px 1px 0px;}

.sparkline {line-height:1em;}
.sparktick {outline:0;}

.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}

* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em 0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em 0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0em; right:0em;}
#backstageButton a {padding:0.1em 0.4em 0.1em 0.4em; margin:0.1em 0.1em 0.1em 0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; margin:0em 3em 0em 3em; padding:1em 1em 1em 1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em 0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}

.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
/*}}}*/
/***
StyleSheet for use when a translation requires any css style changes.
This StyleSheet can be used directly by languages such as Chinese, Japanese and Korean which need larger font sizes.
***/
/*{{{*/
body {font-size:0.8em;}
#sidebarOptions {font-size:1.05em;}
#sidebarOptions a {font-style:normal;}
#sidebarOptions .sliderPanel {font-size:0.95em;}
.subtitle {font-size:0.8em;}
.viewer table.listView {font-size:0.95em;}
/*}}}*/
/*{{{*/
@media print {
#mainMenu, #sidebar, #messageArea, .toolbar, #backstageButton, #backstageArea {display: none ! important;}
#displayArea {margin: 1em 1em 0em 1em;}
/* Fixes a feature in Firefox 1.5.0.2 where print preview displays the noscript content */
noscript {display:none;}
}
/*}}}*/
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser'></span></div>
<!--}}}-->
To get started with this blank TiddlyWiki, you'll need to modify the following tiddlers:
* SiteTitle & SiteSubtitle: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* MainMenu: The menu (usually on the left)
* DefaultTiddlers: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
These InterfaceOptions for customising TiddlyWiki are saved in your browser

Your username for signing your edits. Write it as a WikiWord (eg JoeBloggs)

<<option txtUserName>>
<<option chkSaveBackups>> SaveBackups
<<option chkAutoSave>> AutoSave
<<option chkRegExpSearch>> RegExpSearch
<<option chkCaseSensitiveSearch>> CaseSensitiveSearch
<<option chkAnimate>> EnableAnimations

----
Also see AdvancedOptions
<<importTiddlers>>
The size of the burst file is restricted to a hard coded setting in aqamat2cdfbychan.m
maxBytes = 500000000;

This often results in many burst files for a single channel of data

You may want to change this, but keep in mind that netCDF has a 2 GB file maximum.
ProcessingSteps
This is harder than you might think since Aquatec's Aquaview doesn't display burst numbers.

How to do it:

Know that the name of each burst file is the time stamp as
YYYYMMDDHHMMSS.aqa

From the mooring log, get the deployment and recovery dates and times.
Find the .aqa files, by their file name, that are closest to these times.
Load only those files (say the four that bracket the deployment and recovery times) into Aquaview.
Verify which of them contains real data.

From here, one cannot easily determine the burst number until the *.aqa files have been translated to MATLAB *.mat files
To get started with this blank TiddlyWiki, you'll need to modify the following tiddlers:
* SiteTitle & SiteSubtitle: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* MainMenu: The menu (usually on the left)
* DefaultTiddlers: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
Make sure you have the latest version of read_globalatts.  
See the explanation in the code below or go to
http://emontgomery.tiddlyspot.com/#%5B%5BNotes%20on%20using%20Global%20Attribute%20files%5D%5D

function gatt=read_globalatts(fname)
%
% usage : gatt=read_globalatts(fname)
%
% reads global attributes for an experiment from a text file (fname)
%  one argument is required- the name of the file to read- it should have
%  this form:
%    SciPi;C. Sherwood
%    PROJECT; ONR
%    EXPERIMENT; RIPPLES DRI
%    DESCRIPTION; Stress, SSC, and Bedforms at MVCO 12-m fine/coarse transition site
%    DATA_SUBTYPE; MOORED
%    DATA_ORIGIN; USGS WHFS Sed Trans Group
%    COORD_SYSTEM; GEOGRAPHIC
%    Conventions; PMEL/EPIC
%    MOORING; 836
%    WATER_DEPTH; 10.99
%    latitude; 41.336063
%    longitude; -70.559615
%    magnetic_variation; -15
%    Deployment_date; 27-Aug-2007
%    Recovery_date;  ?
%
%   emontgomery 10/2007
%
% Program written in Matlab v7.4.0336 (2007a)
% Program updated in Matlab 7.2.0.232 (R2006a)
% Program ran on PC with Windows XP Professional OS.
%
% "Although this program has been used by the USGS, no warranty,
% expressed or implied, is made by the USGS or the United States
% Government as to the accuracy and functioning of the program
% and related program material nor shall the fact of distribution
% constitute any such warranty, and no responsibility is assumed
% by the USGS in connection therewith."

gatt=[];
if nargin ~= 1; help mfilename; return; end

if (~exist(fname,'file') || isempty(fname))
    disp('the file name entered does not exist, please choose another')
    [fname,PathName,FilterIndex] = uigetfile('*');
    fname=[PathName fname];
end
    
 [field,valf]=textread(fname, '%s%s','delimiter',';');

 % checke for comments
 ik=1;
 while field{ik}(1) =='%'
   ik=ik+1;
 end
 % now put things into the gatt structure
for kk=ik:length(field)
    tmp=str2num(char(valf(kk)));
    if(isempty(tmp))
      eval(['gatt.' field{kk} '=''' valf{kk} ''';']);
    else
      eval(['gatt.' field{kk} '=tmp;']);      
    end
end
    
See GlobalAttributes on how to use read_globalatts

% scriptexample - example file for running the ABSS toolbox in automated mode

clear % a good idea

% --------- set up the information needed by the programs
%
%% there are two ways to input metadata for the experiment and site.
% capitalized items are required by EPIC conventions

% using read_globalatts from the USGS meta_tools toolbox
% filename must contain a list of Global attributes 
gatt=read_globalatts('..\global_atts842.txt');  % provides values to insert below
% syntax and capitalization counts!
% the following are required!
settings.MOORING = gatt.MOORING; %four digit NNNL, NNN mooring + L logger
settings.Deployment_date = gatt.Deployment_date; % the in water time
settings.Recovery_date = gatt.Recovery_date; % the out of water time
settings.longitude = gatt.longitude; % decimal degrees, West = negative
settings.latitude = gatt.latitude; % decimal degrees, South = negative
settings.magnetic_variation = gatt.magnetic_variation; % degrees west is negative
settings.WATER_DEPTH = gatt.WATER_DEPTH; % m (DO NOT OMIT!)
settings.WATER_DEPTH_NOTE = gatt.WATER_DEPTH_NOTE;
% if the following fields are missing, UNKOWN will be used
settings.DATA_ORIGIN = gatt.DATA_ORIGIN; % with collaborator's data, could be USC, etc.
settings.EXPERIMENT = gatt.EXPERIMENT; 
settings.DESCRIPTION = gatt.DESCRIPTION; 
settings.PROJECT = gatt.PROJECT; % might also use OFA funding agency, such as MWRA, EPA, WCMG
settings.Data_Cmnt = gatt.Data_Cmnt;
settings.SciPi = gatt.SciPi;
settings.DATA_ORIGIN = gatt.DATA_ORIGIN;

% or - input it all by hand
% settings.MOORING = 9991; %four digit NNNL, NNN mooring + L logger
% settings.Deployment_date = '09-feb-05 17:00:00'; % the in water time
% settings.Recovery_date = '18-may-2005 13:02 '; % the out of water time
% settings.longitude = -70.7809; % decimal degrees, West = negative
% settings.latitude = 42.3786; % decimal degrees, South = negative
% settings.magnetic_variation = -15.5; % degrees west is negative
% settings.WATER_DEPTH = 32; % m (DO NOT OMIT!)
% settings.WATER_DEPTH_NOTE = 'taken from ship depth sounder on deployment';
% % if the following fields are missing, UNKOWN will be used
% settings.DATA_ORIGIN = 'USGS'; % with collaborator's data, could be USC, etc.
% settings.EXPERIMENT = '2007-2008 PV BBL Experiment'; 
% settings.DESCRIPTION = 'Currents, temp profiles, bottom stress, SSC, sed. traps, and PCB samplers'; 
% settings.PROJECT = 'USGS/EPA Palos Verdes'; % might also use OFA funding agency, such as MWRA, EPA, WCMG
% settings.Data_Cmnt = 'geoprobe tripod at site B3';
% settings.SciPi = 'C. Sherwood, M. Noble, J. Xu, K. Rosenberger';
% settings.DATA_ORIGIN = 'USGS WHSC and PSC Sed. Trans. Groups';

%% ABSS information
settings.ABSSmodel = 'Aquascat1000'; 
settings.input_directory = 'E:\PV_2007\842_B3_geoprobe\8427abss\testdata'; % where the .aqa files are
%settings.input_directory = 'E:\PV_2007\842_B3_geoprobe\8427abss\workingdata'; % where the .aqa files are
settings.output_directory = 'E:\PV_2007\842_B3_geoprobe\8427abss'; % where the .cdf file will go
settings.outFileRoot = '8427abss';
settings.metaFileName = [settings.outFileRoot 'Meta.mat'];
settings.sensor_height = [0.99 0.99 0.99]; % height of each probe

%% --------------------- run the programs
%
% turn each step "on" and "off" by setting "if 0" to "if 1"
% steps must be run in sequence

diary(sprintf('run%s',datestr(now, 30)))

if 1, % translate to .mat using the Aquatec toolbox and get 
    % metadata directly from the raw binary files
    settings = aqa2mat(settings, 1);
end

if 1, % take the data in the .mat files and translate to netCDF
    settings = aqamat2cdfbychan(settings);
end

diary off
PreRequisites
ProcessingSteps
OtherConsiderations
You can control the size of the burst netCDF files, see [[Burst File Size]]
# MATLAB 7.0 or higher, from the Mathworks
# The NetCDF Toolbox and mexnc, two sets of m-files for accessing NetCDF. Mexnc is the netcdf interface going forward. The netCDF toolbox (link at the bottom of the page) is currently frozen but is required as the ADCP toolbox is not fully switched to mexnc yet. It can still be downloaded from http://mexcdf.sourceforge.net/downloads/. The ADCP toolbox is very dependent on the netCDF toolbox and we are reviewing where to go from here.
# Aquatec's MATLAB functions for the Aquascat 1000 found at http://www.aquatecgroup.com/aquascat_download.html
# USGS's ABSS toolbox to translate Aquatec's MATLAB format to netCDF, found at the USGS CMG file repository, under m_cmg\trunk\ABSS_tbx.  
These are generally Microsoft .doc files containing information about how the instrument was set up, relevant field notes from the mooring log and any other comments that might be useful in processing.  An example is below:

ABS PROCESSING INFORMATION

Date 5/13/2008							Mooring  8445

Deployed: 04-dec-2007 16:20:12 GMT	Recovered: 02-apr-2008 20:19:00 GMT
Site location: 33.7100N 118.3542W
Site declination: 12.9
Site depth: 65.0 m from ship's navigation

ABS
Serial number 278-017
Model Aquascat 1000 (upgraded)
Probe frequencies: 
Chan 1	1.035	gain 0
Chan 2	2.535	gain 0
Chan 3	5.0	gain 0
Bin size 5 mm
Pulse Length 10 mm
Start Bin 2
Transmit Power 0 dB (full)
Number of bins 256
Stored profile from 1 to 129
Logger control (Auto/trigger) Auto 
Instant start at 00:53
Time between bursts (interburst) – 60 min
Log every N/A triggers
Profile framing mode – auto - Rate 64 
Profiles/average 64
Stored profiles per burst 840
Aux sampling off
ABS storage rate 1 profile/sec
Aux storage rate N/A
BURST length 14 min 0 sec

Clock set		Start		Wall		ABS		error
12/1/07 18:51:00	00:53	4/4/08 21:18:30	4/4/08 21:29:40	2:52

Comments:
Transducer a little crooked, moderate to light fouling
Had trouble downloading files.  Instrument sent to Aquatec for download.
Aquatec fixed firmware, data downloaded at USGS.
First good burst starts at 16:53:30 04 dec 2007 burst #65
Last good burst starts at 19:53:30 02 apr 2008

Checked By:  Marinna Martini

# Make two copies of all the .aqa files, on set in a directory called originaldata and on set in workingdata
# Write up the [[ProcessingSheets]], *.dps
# Determine the first and last good bursts as described in [[Figuring out the first and last good bursts]]
# In your working directory workingdata with all the data files, you will want to delete the .aqa files that were recorded when the instrument was not in the water (before and after the first and last good bursts).  This effectively trims the data.
# In your working directory you will also want to check for any [[short records]]
# Use MATLAB to translate the proprietary format binary .aqa files to netCDF 
## create the [[MATLAB script]] that will automate processing.
## create a testdata directory with about 10 *.aqa test files duplicated from your workingdata directory, and try out your script on these files by pointing to them with the settings.input_directory = 'testdata'; 
## use ncbrowse http://www.epic.noaa.gov/java/ncBrowse/ to view your data.  Check the global and variable attributes, make sure all themetadat are correct
## if everything goes smoothly, now point to your workingdata directory with all the data files (settings.input_directory = 'workingdata';) and re-run the script.  Now go do something else, this will take some time.
# View your data
## Use browseABSSstats for statistics *s.cdf files
## Use browseABSSburst for burst data *b#.cdf files
## In both cases, at first you may not see any data.  Use the sliders to change the limits of the color axes to bring out the information.
## Use these tools to decide if you want to trim your data, i.e. remove the top and bottom bins that may be past a boundary or in the noise area near the transducer.
# Trim data to desired bins using trimprofile.m.  An example of how to use trimprofile.m is in metaABSSexample.m.  Both burst and statistics files may be trimmed.
# Masking may be necessary.  There are some preliminary tools for masking in this toolbox, but they are just that, very preliminary.
An m-file in the Aquascat ABSS toolbox for MATLAB

Marinna's Aquatec ABSS processing notes

Abnormally small *.aqa files.  Aquatec's ReadAquascat1000, which will bomb if any of the *.aqa data files are not complete.  Short data files can occur during the download process, so it is recommended that they be weeded out before running this m-file.
Just display the directory in a "my computer" window and sort by size.  The short files will then be grouped together.