V1.3 release candidate
authorA.M. Thurnherr <athurnherr@yahoo.com>
Thu, 07 May 2015 13:02:43 +0000
changeset 34 e5731cc26b5b
parent 33 dd5b67a41791
child 35 3d769eee8c4f
V1.3 release candidate
.hgignore
Documentation/README
Documentation/README.Install
Documentation/README.Output
Documentation/README.PostEdit
Documentation/README.ProcessData
Documentation/README.TimeLagging
Documentation/README.YoYo
Documentation/Slocum-Explorer_HowTo.pdf
Documentation/TODO
HISTORY
LADCPproc
LADCPproc.version
README
README.Install
README.Output
README.PostEdit
README.ProcessData
README.TimeLagging
README.YoYo
TODO
--- a/.hgignore
+++ b/.hgignore
@@ -1,11 +1,13 @@
 #======================================================================
-#                    . H G R C 
+#                    . H G I G N O R E 
 #                    doc: Tue May 15 18:38:20 2012
-#                    dlm: Tue May 15 18:38:20 2012
+#                    dlm: Thu May  7 12:51:58 2015
 #                    (c) 2012 A.M. Thurnherr
-#                    uE-Info: 3 11 NIL 0 0 72 0 2 4 NIL ofnI
+#                    uE-Info: 13 0 NIL 0 0 72 0 2 4 NIL ofnI
 #======================================================================
 
 syntax: glob
 
 non_public/
+Makefile
+
new file mode 100644
--- /dev/null
+++ b/Documentation/README
@@ -0,0 +1,83 @@
+======================================================================
+                    R E A D M E 
+                    doc: Tue May 15 18:10:40 2012
+                    dlm: Thu May  7 13:02:10 2015
+                    (c) 2012 A.M. Thurnherr
+                    uE-Info: 78 38 NIL 0 0 72 3 2 8 NIL ofnI
+======================================================================
+
+This directory contains a re-implementation of the shear method for
+LADCP velocity processing, written and copyrighted by  A.M. Thurnherr;
+the appropriate reference is Thurnherr [J. Tech., 2012, DOI:
+10.1175/JTECH-D-11-00158.1].
+
+Essentially, the software is a re-implementation of the shear method
+for LADCP velocity processing. Data editing borrows heavily from Eric
+Firing's c/Matlab/perl code that was used extensively during the later
+stages of the WOCE. However, some of the algorithms were simplified.
+In particular,
+
+1) a much simpler gridding algorithm is used, and
+2) there is no support for using GPS data for velocity referencing.
+
+In regions of good scattering, the shear output from this software when
+applied to data collected with current RDI instruments can be expected
+to be very similar to the corresponding output from Eric's code with
+PPI editing disabled, except that the high wavenumbers are considerably
+less damped in this re-implementation (see Thurnherr [2012]). In
+regions of bad scattering, this software simply leaves gaps in the
+shear profiles whereas Eric's code uses a low-pass filtered version of
+the shear to interpolate across gaps in the high-resolution profiles.
+
+While this software can be used to integrate LADCP shear data
+vertically to calculate velocity profiles, velocity referencing must be
+done with a single partial-depth velocity profile (e.g. from BT or
+SADCP data). While the resulting profiles of absolute ocean velocity
+are useful and very easily obtainable "first guesses", much better
+profiles can typically be obtained by applying multiple simultaneous
+referencing constraints with the the Shear Inversion method [Thurnherr,
+J. Tech., 2010; DOI: 10.1175/2010JTECHO708.1].
+
+THIS SOFTWARE CAN BE FREELY USED AND COPIED FOR EDUCATIONAL OR OTHER
+NOT-FOR-PROFIT PURPOSES.
+
+Currently, limited documentation is provided in the following set of
+files:
+
+[README]		This overview
+
+[README.Install]	Software installation instructions
+
+[README.ProcessData]	A HowTo for obtaining shear, as well as relative
+			and absolute velocity profiles from CTD/LADCP
+			data
+
+[README.TimeLagging]	The most common problem encountered during
+			processing of CTD/LADCP data with this software
+			is failure of the CTD/LADCP time-lagging
+			routine. This Readme provides additional
+			information and tips for how to solve
+			time-lagging problems.
+
+[README.Output]		A description of the various files produced by
+			this software
+
+[README.PostEdit]	A HowTo for post-editing shear with different
+			statistics, e.g. to filter data collected with
+			the ADCP very close to the surface, where the
+			ship's magnetic field can degrade the compass
+			data. Also describes how the shear data can be
+			gridded with statistics other than simple
+			arithmetic mean.
+
+[README.YoYo]		Notes on how to process data from "non-standard"
+			casts, such as yoyo's and tow-yo's.
+
+[Slocum-Explorer_HowTo.pdf] Cookbook describing how to process
+			velocity data collected with Explorer ADCPs on
+			Slocum gliders
+
+NOTE: Most of the source files use a hard tab of 4 spaces, i.e. they
+can be viewed correctly, e.g. with "less -x4".
+
+
new file mode 100644
--- /dev/null
+++ b/Documentation/README.Install
@@ -0,0 +1,47 @@
+======================================================================
+                    R E A D M E . I N S T A L L 
+                    doc: Tue May 15 18:42:56 2012
+                    dlm: Fri Jun 15 07:36:52 2012
+                    (c) 2012 A.M. Thurnherr
+                    uE-Info: 46 67 NIL 0 0 72 3 2 4 NIL ofnI
+======================================================================
+
+=Processing Software=
+
+The re-implemented shear method is written entirely in perl and requires
+the following sub-modules to be installed:
+
+ADCP_tools	a set of tool and libraries to deal with RDI BB ADCP data;
+			available via link from http://www.ldeo.columbia.edu/LADCP
+
+ANTSlib		a library for dealing with the ANTS ASCII file format;
+			available via link from http://www.ldeo.columbia.edu/LADCP
+
+LADCPproc	this software; available via link from
+			http://www.ldeo.columbia.edu/LADCP
+
+The code runs with version 5.12.4 of perl or later but it may well work
+with older versions, too. It is recommended that these three modules are
+installed in three separate directories. 
+
+In addition to the core modules listed above, the software also
+requires Eric Firing's geomag code (written in c) that is available
+from http://currents.soest.hawaii.edu/hg.
+
+The only step required to set up the software is to add the directories
+of the ADCP_tools, ANTSlib, LADCPproc, and geomag to the search path ---
+refer to the manual of your shell on how to accomplish this.
+
+To test correct setup of the software, simply call [LADCPproc] in the
+directory where you intend to process the LADCP data. If the software
+has been correctly installed, the usage of [LADCPproc] will be
+produced. 
+
+
+=Matlab Interface=
+
+As described in [README.Output], all output produced by this software is
+in a proprietary ASCII format called ANTS. In order to import/export
+ANTS files into/from Matlab the module Matlab_tools is required. This,
+too, is available via link from http://www.ldeo.columbia.edu/LADCP.
+
new file mode 100644
--- /dev/null
+++ b/Documentation/README.Output
@@ -0,0 +1,77 @@
+======================================================================
+                    R E A D M E . O U T P U T 
+                    doc: Tue May 15 19:17:50 2012
+                    dlm: Fri Jun 15 07:39:19 2012
+                    (c) 2012 A.M. Thurnherr
+                    uE-Info: 44 0 NIL 0 0 72 3 2 8 NIL ofnI
+======================================================================
+
+This README describes the output produced by [LADCPproc] and
+[LADCPintsh].
+
+
+=File Format and Interface with Matlab=
+
+All output files produced by [LADCPproc] and [LADCPintsh] are in a
+proprietary undocumented ASCII format, called ANTS. To important and
+export ANTS files into and from Matlab, the Matlab_tools are required
+(see [README.Install]).
+
+To import the ANTS file <013DL.sh> into Matlab, use
+
+	sh = loadANTS('013DL.sh');
+
+The resulting structure will contain Metadata as scalars and the data
+from each field in a suitably named vector.
+
+To export the suitable Matlab structure <binned_sh> as the ANTS file
+<013DL.shprof>, use
+
+	struct2ANTS(binned_sh,'013DL.sh','013DL.shprof');
+
+The second argument defines a dependency (the file <013DL.shprof> should
+be re-made when <013DL.sh> changes).
+
+
+=[LADCPproc] Output=
+
+The STDOUT of [LADCPproc] consists of a list of all shear samples ---
+essentially a time-depth-series (.tds) of shear values. If this output
+is not required, STDOUT can be redirected to /dev/null.
+
+The STDERR of [LADCPproc] consists of the diagnostic output. This output
+should be captured into a log file. This is much easier with standard
+(bash, Korn, Bourne) shells than with csh derivates.
+
+Additional output is produced with the following options:
+
+	-p 	write a binned shear profile file that can be fed
+	        directly to [LADCPintsh] to create a relative
+		(baroclinic) velocity profile
+
+	-b	write a bottom-track file that can be fed directly to
+	        [LADCPintsh] (-r option) to reference the baroclinic
+		velocity profile
+
+	-t	write a time-series file, which is useful primarily for
+	  	diagnosing problems with the time-lagging of CTD and
+		LADCP data
+
+	-f	write a file with all the velocity editing flags
+
+	-a	write a .dts file of the acoustic backscatter
+
+	-k	write bottom track profiles (as a single file)
+
+
+=[LADCPintsh] Output=
+
+The STDOUT of [LADCPintsh] consists of a velocity profile created from
+the vertically integrated shear and possibly referenced by an external
+velocity profile.
+
+The STDERR of [LADCPintsh] consists of minimal diagnostic output.
+
+On -s, additionally the shear profile is written to a file just before
+integration. This is primarily useful for combining shear data from
+down- and uplooking ADCPs.
new file mode 100644
--- /dev/null
+++ b/Documentation/README.PostEdit
@@ -0,0 +1,95 @@
+======================================================================
+                    R E A D M E . P O S T E D I T 
+                    doc: Wed Jun 13 20:30:10 2012
+                    dlm: Thu Jun 14 18:22:13 2012
+                    (c) 2012 A.M. Thurnherr
+                    uE-Info: 95 50 NIL 0 0 72 3 2 8 NIL ofnI
+======================================================================
+
+=Summary=
+
+This README explains how to post-edit the shear output from b[LADCPproc]
+before feeding it to [LADCPintsh], e.g. for removing data collected when
+the ADCP was very shallow and possibly affected by the ship's magnetic
+field.
+
+
+=Nitty-Gritty=
+
+The default output from [LADCPproc] is a so-called time-depth-series
+(.tds) file with one record per valid shear sample. Each record
+contains the following fields:
+
+ens		ensemble number the shear sample is from
+elapsed		elapsed time in seconds of the present ensemble
+CTD_depth	depth of CTD at the time the ensemble was recorded
+downcast	a boolean flag set to 1 (nan) for down(up)cast records
+depth		"nominal" depth of shear sample (center depth in gridded profile)
+u_z		vertical shear of zonal velocity
+v_z		vertical shear of meridional velocity
+w_z		vertical shear of vertical velocity
+
+This is the "general" output of [LADCPproc]. For standard processing,
+the shear is bin-averaged in depth space. While this can easily be
+accomplished, e.g. with a Matlab script, for convenience the binned
+output can be requested with the -p option of [LADCPproc]. The binned
+output cannot be post-edited!
+
+The .tds data can be post-edited. Matlab users can import these files
+with [loadANTS.m] (see [README.Output]), edit the structures, bin the
+shear in depth space, and export the new structures as ANTS files with
+[struct2ANTS.m]. For example, to remove all data collected with the
+ADCP shallower than 5m, simply delete the records for which CTD_depth
+<= 5. Or, you can bin your shear data with different statistics (e.g.
+median), instead of the arithmetic mean used by [LADCPproc] -p.
+
+Inconveniently, [LADCPintsh] at present requires its shear input to be
+in the format generated by the -p option of [LADCPproc], with the
+following fields (Matlab version):
+
+depth		center depth of bin
+dc_elapsed	mean elapsed time of downcast shear samples in present bin
+dc_nsamp	number of downcast shear samples in bin
+dc_u_z		bin-averaged downcast vertical shear of zonal velocity
+dc_u_z_sig	corresponding standard deviation
+dc_v_z		same for meridional velocity
+dc_v_z_sig
+dc_w_z		same for vertical velocity
+dc_w_z_sig
+uc_elapsed	mean elapsed time of upcast shear samples in present bin
+uc_nsamp	number of upcast shear samples in bin
+uc_u_z		bin-averaged upcast vertical shear of zonal velocity
+uc_u_z_sig	corresponding standard deviation
+uc_v_z		same for meridional velocity
+uc_v_z_sig
+uc_w_z		same for vertical velocity
+uc_w_z_sig
+elapsed		mean elapsed time of mean dn/upcast shear samples in present bin
+nsamp	    	number of mean dn/upcast shear samples in bin
+u_z	     	bin-averaged mean dn/upcast vertical shear of zonal velocity
+u_z_sig      	corresponding standard deviation
+v_z	     	same for meridional velocity
+v_z_sig
+w_z	     	same for vertical velocity
+w_z_sig
+Sv		bin-averaged acoustic volume scattering coefficient
+Sv.nsamp	number of samples in bin
+
+Note that the .tds file does not contain acoustic backscatter
+information, i.e. the Sv field should be set to nan and the Sv.nsamp to
+zero.
+
+After binning the shear data, Matlab users can create a structure with
+the fields listed above. Metadata (scalars in the .tds import
+structure) should be copied verbatim from the .tds import structure.
+Each of the listed fields is a vector and they must all have the same
+length. (Since the down- and upcasts do not usually cover exactly the
+same depth range, padding is almost always required.) The resulting
+structure can then be exported with [struct2ANTS.m]; the 'dependencies'
+argument should be set to the filename(s) of the .tds file(s) from
+which the binned shear profile was constructed.
+
+The only option for non-Matlab users is to create an ASCII file with
+the required columns (nan values are permitted) in the order listed
+above and prepend this with the header from the corresponding
+[LADCPproc] output file produced by the -p option.
new file mode 100644
--- /dev/null
+++ b/Documentation/README.ProcessData
@@ -0,0 +1,158 @@
+======================================================================
+                    R E A D M E . P R O C E S S D A T A 
+                    doc: Tue May 15 18:49:00 2012
+                    dlm: Fri Jul 12 12:07:38 2013
+                    (c) 2012 A.M. Thurnherr
+                    uE-Info: 118 71 NIL 0 0 72 75 2 8 NIL ofnI
+======================================================================
+
+=Overview=
+
+This README describes how to obtain profiles of vertical shear and
+velocity from CTD/LADCP data. It assumes that all of the required
+software has been installed (see [README.Install]).
+
+The re-implemented shear method software provides two commands:
+
+[LADCPproc]	This utility produces LADCP shear data from a raw ADCP
+		data file and the corresponding CTD time series.
+		Additionally, it can create profiles of acoustic
+		backscatter, as well as BT-referenced velocity
+		profiles near the seabed from downlooking ADCPs.
+
+[LADCPintsh]	This utility produces profiles of horizontal velocity
+		from the [LADCPproc] shear output. BT profiles (from
+		[LADCPproc] or from the LDEO_IX inversion software) or
+		SADCP profiles (manually constructed) can be used to
+		reference the velocity profiles.
+
+For non-standard processing, the shear output from [LADCPproc] can be
+post-edited before gridding, e.g. in order to filter data collected at
+very shallow depths when the ADCP may be affected by the magnetic field
+of the surface vessel (see [README.PostEdit] for details).
+
+
+=DATA REQUIREMENTS=
+
+ADCP DATA: The software reads binary RDI BB ADCP files from both down-
+and upward-looking ADCPs. Clock setting of the ADCP is not important.
+
+CTD DATA: LADCP processing requires a CTD-derived time series of
+pressure, temperature and salinity. Optionally, it is recommended that
+an elapsed time field is supplied. A time resolution of 1Hz is
+recommended. The software is capable of reading both binary and ASCII
+SeaBird .cnv files with lat/lon information in the header and with the
+following fields: timeS, prDM, t090C and/or t190C, sal00 and/or sal11.
+Alternatively, the CTD time series can be supplied as an arbitrary
+headerless ASCII CTD file with the same information, as described in
+[LADCPproc.defaults].
+	
+
+=CALCULATE LADCP SHEAR PROFILE=
+
+The following simple example shows how to create separate shear profiles
+from an upward- and a downward-looking ADCP, as well as a BT-referenced
+velocity profile near the seabed:
+
+Input files:
+	001DL000.000	downlooker ADCP file
+	001UL000.000	uplooker ADCP file
+	001.cnv		CTD file
+
+LADCPproc -p 001DL.sh -b 001.BT 001DL000.000 001.cnv > /dev/null
+	- this example creates two files, 001DL.sh (shear profiles) and
+	  001.BT (bottom-track data)
+	- the default output (STDOUT) from [LADCPproc] is a list of
+	  valid shear samples, which is ignored (sent to /dev/null) in
+	  this example
+	- it is recommended that the diagnostic output (STDERR) is
+	  captured in a log file; refer to the manual of your shell on
+	  how to accomplish this
+
+LADCPproc -p 001UL.sh 001UL000.000 001.cnv > /dev/null
+	- this example creates one file, 001UL.sh (shear profiles)
+
+
+In this simple example, processing is carried out with standard
+parameters. Some of the important parameters can be modified with
+[LADCPproc] options, which are listed when [LADCPproc] is ran without
+input parameters. The following are the most important [LADCPproc]
+options:
+	-d 		generate diagnostic output (recommended)
+	-r		use RDI BT data instead of echo amplitudes to find
+	        	seabed and determine CTD velocity
+	-o <dz>		output grid resolution (defaults to 5m)
+	-p <shearprof>	generate shear profile output
+	-b <btm_track>	generate BT output
+	-s <setup_file>	read additional non-default processing parameters
+			from <setup_file>
+
+However, there are many more processing parameters than can be modified
+with options --- a full list with comments can be found in
+[LADCPproc.defaults]. To change any of the default parameter values,
+create a perl-file with variable assignments (see [LADCPproc.defaults]
+for syntax) and use the -s <setup_file> option in [LADCPproc].
+
+
+=CALCULATE LADCP VELOCITY PROFILE=
+
+Given the output from the above steps, different full-depth velocity
+profiles can be produced as follows:
+
+LADCPintsh 001DL.sh > 001DL.bc
+	- this creates baroclinic (zero vertical mean) velocity profile
+	  from the DL shear data
+
+LADCPintsh -r 001.BT 001DL.sh > 001DL.vel
+	- this creates a BT-referenced absolute velocity profile from
+	  the DL shear data
+
+LADCPintsh -r 001.BT 001UL.sh > 001UL.vel
+	- this creates a BT-referenced absolute velocity profile from
+	  the UL shear and the DL BT data
+	- note that no -u is required in this case!
+
+LADCPintsh -r 001.BT -u 001UL.sh 001DL.sh > 001.vel
+	- this creates a BT-referenced absolute velocity profile from
+	  the combined DL/UL shear data
+	- note that -u is only required if both UL and DL data are used
+
+It is also possible to use SADCP data to reference the velocity
+profiles, although it is up to the user to create an input data file
+in one of the supported formats. Note that it is *not* possible to use
+multiple simultaneous referencing constraints with [LADCPintsh]. 
+
+The following are common [LADCPintsh] options:
+	-u		use uplooker shear (in addition to downlooker,
+			which is always used)
+	-r <file>	use reference-velocity data to reference baroclinic
+			velocity profiles; the following file formats
+			are supported 1) bottom-track output produced by
+			the -b option of [LADCPproc], 2) bottom-track
+			output produced by the LDEO processing software
+			(.bot files). SADCP data can be used, too, but
+			they have to be supplied in one of the two
+			supported file formats.
+	-n <samp>	set minimum number of shear samples to use
+	-m <samp>	set minimum BT samples to use
+
+
+=QUALITY CHECKS=
+
+After processing, the quality of the resulting profiles must be
+assessed. The following steps are recommended:
+
+1) Compare the down- and up-cast profiles of velocity. Vertical
+velocity is particularly useful in this context as problematic casts
+often show a striking "X" pattern.
+
+2) Inspect the standard deviation profiles of the binned shear and
+determine (by comparison with similar data) whether the standard
+deviations have the correct magnitude.
+
+3) Calculate and compare independent solutions from the uplooker and
+downlooker data. This will only validate the baroclinic velocities (i.e.
+the vertical shear).
+
+4) Compare to velocity profiles calculated with different software (e.g.
+with the LDEO_IX velocity inversion code).
new file mode 100644
--- /dev/null
+++ b/Documentation/README.TimeLagging
@@ -0,0 +1,106 @@
+======================================================================
+                    R E A D M E . T I M E L A G G I N G 
+                    doc: Fri Oct 19 10:08:19 2012
+                    dlm: Fri Oct 19 12:13:59 2012
+                    (c) 2012 A.M. Thurnherr
+                    uE-Info: 106 0 NIL 0 0 72 3 2 8 NIL ofnI
+======================================================================
+
+=Introduction=
+
+In order to derive velocity profiles the data from the CTD and LADCP
+instruments need to be merged. This is accomplished by calculating lag
+correlations between the two corresponding time series of vertical
+velocities calculated from the two instruments. In this software, the
+time lagging is accomplished WITHOUT regard of the clock time reported
+by the instruments, i.e. the instrument clocks do not have to be
+synchronized. Instead of clock time, elapsed time in seconds is used. In
+case of the CTD data, an elapsed time field can be supplied by the user
+(see [README.ProcessData]); in case of the LADCP data, the
+"elapsed-time" field is calculated by the software. The "elapsed-time"
+fields in the processing output are always consistent with the CTD
+elapsed times. While the time-lagging algorithm implemented in the
+software is fairly robust, it has been known to fail. Possible reasons
+include:
+
+1) CTD PRESSURE SPIKES. Significant pressure spikes must be removed
+prior to processing, *without* adding or removing CTD time-series
+records.
+
+2) LACK OF SURFACE VESSEL MOTION. If there is no surface-wave motion
+affecting the vessel, time lagging is much more difficult. In rare
+cases, time lagging must be carried out manually (see below).
+
+3) MISSING CTD SCANS. For SeaBird 911 systems, if the connection
+between the CTD and the deck box is not clean CTD scans will be
+dropped. For the software, this looks like the CTD clock running faster
+than the ADCP clock. There are cases where the CTD clock appears to
+have gained more than 5 seconds during a 2000m-deep cast.
+
+4) MULTIPLE CTD FILES. When CTD acquisition is restarted during a cast,
+multiple files are created. In order to process the LADCP data from such
+a cast, a CTD time-series file without any missing records must be
+constructed manually.
+
+
+=Solving Time-Lagging Problems=
+
+While there are several run-time options that can be used to help the
+time-lagging algorithm, detailed knowledge of the algorithm is required
+to understand when and how to use these options, i.e. the user is
+referred to the code and comments in [LADCPproc.bestLag]. However, the
+following method can always be used to solve time-lagging problems, as
+long as the CTD time series does not have any gaps.
+
+
+-Step 1: Produce and Plot a Combined CTD/LADCP Time-Series File-
+
+This is accomplished by processing the data with the "-l 0" option and
+using "-t <time-series file>" to produce the file. Plot the resulting
+time series of CTD_w and LADCP_w in the same panel. The plot should
+show immediately whether there are problems with the CTD pressure data
+(spikes). Often, standard processing works after setting any bad
+pressure values to nan.
+
+
+-Step 2: Manually Determine an Approximate Time Lag-
+
+Use the output file generated in step 1 to determine how many seconds
+have to be added to the elapsed field when plotting LADCP_w to bring
+the two time series into approximate (a few seconds accuracy)
+agreement. Often, the data can now be processed normally by using "-i
+<estimated lag>".
+
+
+-Step 3: Manually Determine an Accurate Time Lag-
+
+If preprocessing with the -i option still does not succeed, time lagging
+must be carried out manually. If this happens, there is most likely a
+serious problem with either the CTD or LADCP data that should be solved
+before proceeding. This is done exactly as in step 2 but to higher
+accuracy (as high as you can). Once the best lag has been determined
+manually, the data can be reprocessed with the "-l <manually determined
+lag>" option.
+
+
+After solving any time-lagging problems the results should be checked by
+creating a time-series file (with -t) during final processing and
+overplotting the LADCP_w and CTD_w time series. If there is still a
+visible lag between the time series time lagging was not carried out
+correctly. 
+
+
+=Patching Together CTD Time-Series Files=
+
+The LADCP processing software requires the CTD data to be supplied as a
+single time series file with a constant sampling interval. When CTD
+data acquisition is restarted during a cast, multiple files are
+produced. The resulting files cannot simply be pasted together because
+the resulting time series would have gaps. The only way to solve this
+problem is to determine separate time lags for each of the CTD files
+manually (using the method described above). The difference between the
+resulting time lags is equal to the length of the gap between the two
+files. The user can now create a dummy (all fields set to nan) CTD file
+with required number of records that must be added between the CTD
+files to create a single continuous regularly-space time series.
+Fractional seconds can be ignored.
new file mode 100644
--- /dev/null
+++ b/Documentation/README.YoYo
@@ -0,0 +1,74 @@
+======================================================================
+                    R E A D M E . Y O Y O 
+                    doc: Fri Aug 10 07:07:59 2012
+                    dlm: Fri Oct 19 11:05:29 2012
+                    (c) 2012 A.M. Thurnherr
+                    uE-Info: 56 0 NIL 0 0 72 3 2 8 NIL ofnI
+======================================================================
+
+=Overview=
+
+This README contains notes on how to process data from non-standard
+casts, such as yo-yos (consecutive down-up casts collected at a given
+location without restarting the instruments) and tow-yos (yo-yos
+carried out while vessel is in slow motion).
+
+Processing of yo-yo and tow-yo data requires the following two steps:
+	1. Split the data files into individual down-upcast pairs
+	2. Process the resulting files as described in [README.ProcessData]
+
+It is important to note that yo-yo and tow-yo casts can be full depth
+(i.e. between the sea surface and the sea bed) or partial-depth. If
+absolute velocities (rather than just vertical shear) are required for
+partial-depth casts, the user must make sure that there are either BT
+data or SADCP data available for velocity referencing of each
+down-upcast pair. Essentially this means that each down-upcast pair
+must extend down to near the seabed or up into the depth range where
+SADCP data are available. 
+
+
+=Step 1: Splitting the Data Files=
+
+Both data files must be split between individual down-upcast pairs, i.e.
+whenever the CTD winch switches from up to down.
+
+CTD DATA: First, find the CTD splitting times by plotting depth vs.
+elapsed time. Then, split the CTD data into separate files using any
+text editor. If SeaBird CNV files are use, the same header can be used
+for all output files.
+
+ADCP DATA: There is an ADCP file splitting utility for M$ Windows
+provided by RDI. Alternatively, the length of each ensemble can be read
+from the binary ADCP files and the UN*X utilities "split -b" and "cat"
+can be used to split the files into the required chunks.
+
+
+=Step 2: Processing the Split Data Files=
+
+The split data files, each containing data from exactly one consecutive
+down- and up-cast, can be processed exactly as described in
+[README.ProcessData]. If the CTD time-series data used during
+processing has an "elapsed-time" field all output elapsed times are
+consistent with this input, i.e. the elapsed times of the output casts
+are relative to the beginning of the entire yo-yo or tow-yo cast.
+Otherwise, every down-/up-cast pair gets its own elapsed-time field.
+
+Usually, in standard LADCP processing the velocity data from the down-
+and upcast are combined. While this smears out any information on the
+temporal variability of the velocity field during the cast, down- and
+upcast only profiles are necessarily derived from much fewer samples
+and, therefore, associated with considerably larger uncertainties and
+errors. It has been found, in particular, that the top-to-bottom shear
+in down-/upcast-only profiles is often quite bad. In the context of
+partial-depth yo-yo and tow-yo profiles the severity of this problem
+can be evaluated by comparing two consecutive velocity profiles at
+their "unconstrained" end. E.g., in case of a partial-depth yo-yo near
+the seabed, i.e. constrained with BT data, the uppermost portion of the
+first upcast can be compared to the uppermost portion of the 2nd
+downcast, etc. If the errors are found to be unacceptably high, the
+velocity profiles from the combined down-/upcast data should be used
+instead. Alternatively, multiple simultaneous velocity referencing
+constraints can be applied, e.g. using the shear-inversion method
+described by Thurnherr (JAOT 2010).
+
+
new file mode 100644
index 0000000000000000000000000000000000000000..2d98584191f622b371628c3e6ea7b0a3a0d8ce32
GIT binary patch
literal 60655
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
new file mode 100644
--- /dev/null
+++ b/Documentation/TODO
@@ -0,0 +1,58 @@
+======================================================================
+                    T O D O 
+                    doc: Thu Oct 14 09:15:02 2010
+                    dlm: Wed Jun 15 15:16:20 2011
+                    (c) 2010 A.M. Thurnherr
+                    uE-Info: 40 0 NIL 0 0 72 3 2 4 NIL ofnI
+======================================================================
+
+=LADCPintsh=
+
+- determine what constitutes a gap
+- look into cross-gap shear integration
+
+
+=LADCPproc=
+
+- allow setting of GRID_DZ (-o) in ProcessingParams
+
+- add warnings:
+	- wide band
+	- CTD_W_BIT (ambiguity velocity)
+	- bad time match
+	- seabed not found
+	- inconsistent water depth
+
+- add diagnostic plots
+
+- output shear vals to make histograms
+
+- try median instead of mean for shear binning
+
+- add pitch/roll to BT
+
+- check interaction between 3-beam solutions and correlation limit
+
+- implement TILT_BIT (others?)
+
+- calculate real acoustic backscatter profile
+	- currently, profiles are arbitarily calculated from bins 3-9
+
+- clean up LADCPproc.UHcode:
+	- remove weirdnesses
+	- avoid multiple calculation of &depthOfBin()
+	- improve "staging":
+		1) basic velocity editing (BADVEL, ERRVEL, CORREL) NB: before
+		   beam-to-Earth transformation!!!
+		2) ref-lr w (also handle W_BIT editing?)
+		3) integrate w to get z_approx
+		4) match LADCP to CTD time series
+		5) make accoustic backscatter profile
+		6) find seabed
+		7) sidelobe & PPI editing
+		8) ref-lr u,v,w
+		9) WAKE editing
+		10) SHEAR editing
+		11) ref-lr u,v,w
+	
+- re-add time-series calculation
deleted file mode 100644
--- a/HISTORY
+++ /dev/null
@@ -1,62 +0,0 @@
-======================================================================
-                    H I S T O R Y 
-                    doc: Tue May 15 18:04:39 2012
-                    dlm: Sun Jul 27 16:21:46 2014
-                    (c) 2012 A.M. Thurnherr
-                    uE-Info: 61 7 NIL 0 0 72 3 2 8 NIL ofnI
-======================================================================
-
-May 15, 2012:
-  - V1.0beta [.hg/hgrc]
-  - began history
-  - uploaded current version to server for use with first version
-    of re-implemented shear method
-
-May 16, 2012:
-  - V1.0beta2 [.hg/hgrc]
-  - added ANTSlib to doc
-
-May 16, 2012:
-  - V1.0beta3 [.hg/hgrc]
-  - bug fixes for shallow casts [LADCPproc.backscatter]
-  - added support for -r)DI BT data
-
-May 17, 2012:
-  - V1.0beta4 [.hg/hgrc] [LADCPproc.version]
-  - minor improvements
-  - relaxation of profile-depth consistency check [LADCPproc]
-
-May 18, 2012:
-  - V1.0beta5 [.hg/hgrc] [LADCPproc.version]
-  - fixed bug in [LADCPproc.bestLag] (windowing was off)
-  - reduced implausibly short cast threshold from 10 to 5 mins
-
-May 25, 2012:
-  - V1.0beta6 [.hg/hgrc] [LADCPproc.version]
-  - added code to allow reading LDEO_IX BT data to [LADCPintsh]
-  
-Jun 13-15, 2012:
-  - V1.0beta7 [.hg/hgrc] [LADCPproc.version]
-  - added CTD_depth to [LADCPproc] default output (.tds)
-  - wrote [README.PostEdit]
-  - in [LADCPintsh] renamed -b to -r
-  - major work on documentation [README]
-  
-Aug 10, 2012:
-  - added [README.YoYo]
-
-Oct 19, 2012:
-  - V1.0beta8 [.hg/hgrc] [LADCPproc.version]
-  - fixed bugs in [LADCPproc.loadCTD] [LADCPproc.bestLag]
-  - added [README.TimeLagging]
-  - updated docu
-
-Jul 12, 2013:
-  - V1.1 [.hg/hgrc] [LADCPproc.version]
-  - various improvements
-  - DEFAULT VALUES PREVENTS EXTRACTION OF BT DATA
-
-Aug  6, 2013:
-  - V1.2 [.hg/hgrc] [LADCPproc.version]
-  - bug fixed in [LADCPproc.defaults]
-
--- a/LADCPproc
+++ b/LADCPproc
@@ -2,9 +2,9 @@
 #======================================================================
 #                    L A D C P P R O C 
 #                    doc: Thu Sep 16 20:36:10 2010
-#                    dlm: Tue Aug  5 14:39:26 2014
+#                    dlm: Fri Mar  6 19:02:59 2015
 #                    (c) 2010 A.M. Thurnherr
-#                    uE-Info: 410 82 NIL 0 0 72 10 2 4 NIL ofnI
+#                    uE-Info: 116 0 NIL 0 0 72 10 2 4 NIL ofnI
 #======================================================================
 
 # NOTES:
@@ -104,11 +104,15 @@
 #				  - added -v to allow calculation of package velocity
 #	Aug  5, 2014: - BUG: (bad one, too): ref_lr_w called from mk_prof had edited some of the
 #						 horizontal velocity data, which were nevertheless used later on!!!
+#	Mar  6, 2015: - adapted to ANTS V6 (library versioning)
 
 ($ANTS)    = (`which ANTSlib` =~ m{^(.*)/[^/]*$});
 ($PERL_TOOLS) = (`which mkProfile` =~ m{^(.*)/[^/]*$});
 ($LADCPPROC)  = ($0 =~ m{^(.*)/[^/]*$});
 
+$antsSummary = "$version -- process LADCP data to get shear, time series";
+$antsMinLibVersion = 6.0;
+
 require "$ANTS/ants.pl";
 require "$ANTS/libEOS83.pl";
 require "$ANTS/libstats.pl";
@@ -125,8 +129,6 @@
 
 $ANTSLIBS = $LADCPPROC;							# for -L libraries
 
-$antsSummary = "$version -- process LADCP data to get shear, time series";
-
 $antsParseHeader = 0;
 &antsUsage('24a:b:c:df:g:i:kl:n:o:p:rs:t:u:v:w:z',2,
     '[use -2)dary CTD sensor pair]',
--- a/LADCPproc.version
+++ b/LADCPproc.version
@@ -1,9 +1,9 @@
 #======================================================================
 #                    L A D C P P R O C . V E R S I O N 
 #                    doc: Thu May 17 07:18:44 2012
-#                    dlm: Tue Aug  6 20:58:33 2013
+#                    dlm: Thu May  7 12:55:59 2015
 #                    (c) 2012 A.M. Thurnherr
 #                    uE-Info: 9 16 NIL 0 0 72 0 2 4 NIL ofnI
 #======================================================================
 
-$version = 'V1.2';
+$version = 'V1.3';
deleted file mode 100644
--- a/README
+++ /dev/null
@@ -1,79 +0,0 @@
-======================================================================
-                    R E A D M E 
-                    doc: Tue May 15 18:10:40 2012
-                    dlm: Sat Mar 16 13:27:24 2013
-                    (c) 2012 A.M. Thurnherr
-                    uE-Info: 18 14 NIL 0 0 72 3 2 8 NIL ofnI
-======================================================================
-
-This directory contains a re-implementation of the shear method for
-LADCP velocity processing, written and copyrighted by  A.M. Thurnherr;
-the appropriate reference is Thurnherr [J. Tech., 2012, DOI:
-10.1175/JTECH-D-11-00158.1].
-
-Essentially, the software is a re-implementation of the shear method
-for LADCP velocity processing. Data editing borrows heavily from Eric
-Firing's c/Matlab/perl code that was used extensively during the later
-stages of the WOCE. However, some of the algorithms were simplified.
-In particular,
-
-1) a much simpler gridding algorithm is used, and
-2) there is no support for using GPS data for velocity referencing.
-
-In regions of good scattering, the shear output from this software when
-applied to data collected with current RDI instruments can be expected
-to be very similar to the corresponding output from Eric's code with
-PPI editing disabled, except that the high wavenumbers are considerably
-less damped in this re-implementation (see Thurnherr [2012]). In
-regions of bad scattering, this software simply leaves gaps in the
-shear profiles whereas Eric's code uses a low-pass filtered version of
-the shear to interpolate across gaps in the high-resolution profiles.
-
-While this software can be used to integrate LADCP shear data
-vertically to calculate velocity profiles, velocity referencing must be
-done with a single partial-depth velocity profile (e.g. from BT or
-SADCP data). While the resulting profiles of absolute ocean velocity
-are useful and very easily obtainable "first guesses", much better
-profiles can typically be obtained by applying multiple simultaneous
-referencing constraints with the the Shear Inversion method [Thurnherr,
-J. Tech., 2010; DOI: 10.1175/2010JTECHO708.1].
-
-THIS SOFTWARE CAN BE FREELY USED AND COPIED FOR EDUCATIONAL OR OTHER
-NOT-FOR-PROFIT PURPOSES.
-
-Currently, limited documentation is provided in the following set of
-README files:
-
-[README]		This overview
-
-[README.Install]	Installation instructions
-
-[README.ProcessData]	A HowTo for obtaining shear, as well as relative
-			and absolute velocity profiles from CTD/LADCP
-			data
-
-[README.TimeLagging]	The most common problem encountered during
-			processing of CTD/LADCP data with this software
-			is failure of the CTD/LADCP time-lagging
-			routine. This Readme provides additional
-			information and tips for how to solve
-			time-lagging problems.
-
-[README.Output]		A description of the various files produced by
-			this software
-
-[README.PostEdit]	A HowTo for post-editing shear with different
-			statistics, e.g. to filter data collected with
-			the ADCP very close to the surface, where the
-			ship's magnetic field can degrade the compass
-			data. Also describes how the shear data can be
-			gridded with statistics other than simple
-			arithmetic mean.
-
-[README.YoYo]		Notes on how to process data from "non-standard"
-			casts, such as yoyo's and tow-yo's. 
-
-NOTE: Most of the source files use a hard tab of 4 spaces, i.e. they
-can be viewed correctly, e.g. with "less -x4".
-
-
deleted file mode 100644
--- a/README.Install
+++ /dev/null
@@ -1,47 +0,0 @@
-======================================================================
-                    R E A D M E . I N S T A L L 
-                    doc: Tue May 15 18:42:56 2012
-                    dlm: Fri Jun 15 07:36:52 2012
-                    (c) 2012 A.M. Thurnherr
-                    uE-Info: 46 67 NIL 0 0 72 3 2 4 NIL ofnI
-======================================================================
-
-=Processing Software=
-
-The re-implemented shear method is written entirely in perl and requires
-the following sub-modules to be installed:
-
-ADCP_tools	a set of tool and libraries to deal with RDI BB ADCP data;
-			available via link from http://www.ldeo.columbia.edu/LADCP
-
-ANTSlib		a library for dealing with the ANTS ASCII file format;
-			available via link from http://www.ldeo.columbia.edu/LADCP
-
-LADCPproc	this software; available via link from
-			http://www.ldeo.columbia.edu/LADCP
-
-The code runs with version 5.12.4 of perl or later but it may well work
-with older versions, too. It is recommended that these three modules are
-installed in three separate directories. 
-
-In addition to the core modules listed above, the software also
-requires Eric Firing's geomag code (written in c) that is available
-from http://currents.soest.hawaii.edu/hg.
-
-The only step required to set up the software is to add the directories
-of the ADCP_tools, ANTSlib, LADCPproc, and geomag to the search path ---
-refer to the manual of your shell on how to accomplish this.
-
-To test correct setup of the software, simply call [LADCPproc] in the
-directory where you intend to process the LADCP data. If the software
-has been correctly installed, the usage of [LADCPproc] will be
-produced. 
-
-
-=Matlab Interface=
-
-As described in [README.Output], all output produced by this software is
-in a proprietary ASCII format called ANTS. In order to import/export
-ANTS files into/from Matlab the module Matlab_tools is required. This,
-too, is available via link from http://www.ldeo.columbia.edu/LADCP.
-
deleted file mode 100644
--- a/README.Output
+++ /dev/null
@@ -1,77 +0,0 @@
-======================================================================
-                    R E A D M E . O U T P U T 
-                    doc: Tue May 15 19:17:50 2012
-                    dlm: Fri Jun 15 07:39:19 2012
-                    (c) 2012 A.M. Thurnherr
-                    uE-Info: 44 0 NIL 0 0 72 3 2 8 NIL ofnI
-======================================================================
-
-This README describes the output produced by [LADCPproc] and
-[LADCPintsh].
-
-
-=File Format and Interface with Matlab=
-
-All output files produced by [LADCPproc] and [LADCPintsh] are in a
-proprietary undocumented ASCII format, called ANTS. To important and
-export ANTS files into and from Matlab, the Matlab_tools are required
-(see [README.Install]).
-
-To import the ANTS file <013DL.sh> into Matlab, use
-
-	sh = loadANTS('013DL.sh');
-
-The resulting structure will contain Metadata as scalars and the data
-from each field in a suitably named vector.
-
-To export the suitable Matlab structure <binned_sh> as the ANTS file
-<013DL.shprof>, use
-
-	struct2ANTS(binned_sh,'013DL.sh','013DL.shprof');
-
-The second argument defines a dependency (the file <013DL.shprof> should
-be re-made when <013DL.sh> changes).
-
-
-=[LADCPproc] Output=
-
-The STDOUT of [LADCPproc] consists of a list of all shear samples ---
-essentially a time-depth-series (.tds) of shear values. If this output
-is not required, STDOUT can be redirected to /dev/null.
-
-The STDERR of [LADCPproc] consists of the diagnostic output. This output
-should be captured into a log file. This is much easier with standard
-(bash, Korn, Bourne) shells than with csh derivates.
-
-Additional output is produced with the following options:
-
-	-p 	write a binned shear profile file that can be fed
-	        directly to [LADCPintsh] to create a relative
-		(baroclinic) velocity profile
-
-	-b	write a bottom-track file that can be fed directly to
-	        [LADCPintsh] (-r option) to reference the baroclinic
-		velocity profile
-
-	-t	write a time-series file, which is useful primarily for
-	  	diagnosing problems with the time-lagging of CTD and
-		LADCP data
-
-	-f	write a file with all the velocity editing flags
-
-	-a	write a .dts file of the acoustic backscatter
-
-	-k	write bottom track profiles (as a single file)
-
-
-=[LADCPintsh] Output=
-
-The STDOUT of [LADCPintsh] consists of a velocity profile created from
-the vertically integrated shear and possibly referenced by an external
-velocity profile.
-
-The STDERR of [LADCPintsh] consists of minimal diagnostic output.
-
-On -s, additionally the shear profile is written to a file just before
-integration. This is primarily useful for combining shear data from
-down- and uplooking ADCPs.
deleted file mode 100644
--- a/README.PostEdit
+++ /dev/null
@@ -1,95 +0,0 @@
-======================================================================
-                    R E A D M E . P O S T E D I T 
-                    doc: Wed Jun 13 20:30:10 2012
-                    dlm: Thu Jun 14 18:22:13 2012
-                    (c) 2012 A.M. Thurnherr
-                    uE-Info: 95 50 NIL 0 0 72 3 2 8 NIL ofnI
-======================================================================
-
-=Summary=
-
-This README explains how to post-edit the shear output from b[LADCPproc]
-before feeding it to [LADCPintsh], e.g. for removing data collected when
-the ADCP was very shallow and possibly affected by the ship's magnetic
-field.
-
-
-=Nitty-Gritty=
-
-The default output from [LADCPproc] is a so-called time-depth-series
-(.tds) file with one record per valid shear sample. Each record
-contains the following fields:
-
-ens		ensemble number the shear sample is from
-elapsed		elapsed time in seconds of the present ensemble
-CTD_depth	depth of CTD at the time the ensemble was recorded
-downcast	a boolean flag set to 1 (nan) for down(up)cast records
-depth		"nominal" depth of shear sample (center depth in gridded profile)
-u_z		vertical shear of zonal velocity
-v_z		vertical shear of meridional velocity
-w_z		vertical shear of vertical velocity
-
-This is the "general" output of [LADCPproc]. For standard processing,
-the shear is bin-averaged in depth space. While this can easily be
-accomplished, e.g. with a Matlab script, for convenience the binned
-output can be requested with the -p option of [LADCPproc]. The binned
-output cannot be post-edited!
-
-The .tds data can be post-edited. Matlab users can import these files
-with [loadANTS.m] (see [README.Output]), edit the structures, bin the
-shear in depth space, and export the new structures as ANTS files with
-[struct2ANTS.m]. For example, to remove all data collected with the
-ADCP shallower than 5m, simply delete the records for which CTD_depth
-<= 5. Or, you can bin your shear data with different statistics (e.g.
-median), instead of the arithmetic mean used by [LADCPproc] -p.
-
-Inconveniently, [LADCPintsh] at present requires its shear input to be
-in the format generated by the -p option of [LADCPproc], with the
-following fields (Matlab version):
-
-depth		center depth of bin
-dc_elapsed	mean elapsed time of downcast shear samples in present bin
-dc_nsamp	number of downcast shear samples in bin
-dc_u_z		bin-averaged downcast vertical shear of zonal velocity
-dc_u_z_sig	corresponding standard deviation
-dc_v_z		same for meridional velocity
-dc_v_z_sig
-dc_w_z		same for vertical velocity
-dc_w_z_sig
-uc_elapsed	mean elapsed time of upcast shear samples in present bin
-uc_nsamp	number of upcast shear samples in bin
-uc_u_z		bin-averaged upcast vertical shear of zonal velocity
-uc_u_z_sig	corresponding standard deviation
-uc_v_z		same for meridional velocity
-uc_v_z_sig
-uc_w_z		same for vertical velocity
-uc_w_z_sig
-elapsed		mean elapsed time of mean dn/upcast shear samples in present bin
-nsamp	    	number of mean dn/upcast shear samples in bin
-u_z	     	bin-averaged mean dn/upcast vertical shear of zonal velocity
-u_z_sig      	corresponding standard deviation
-v_z	     	same for meridional velocity
-v_z_sig
-w_z	     	same for vertical velocity
-w_z_sig
-Sv		bin-averaged acoustic volume scattering coefficient
-Sv.nsamp	number of samples in bin
-
-Note that the .tds file does not contain acoustic backscatter
-information, i.e. the Sv field should be set to nan and the Sv.nsamp to
-zero.
-
-After binning the shear data, Matlab users can create a structure with
-the fields listed above. Metadata (scalars in the .tds import
-structure) should be copied verbatim from the .tds import structure.
-Each of the listed fields is a vector and they must all have the same
-length. (Since the down- and upcasts do not usually cover exactly the
-same depth range, padding is almost always required.) The resulting
-structure can then be exported with [struct2ANTS.m]; the 'dependencies'
-argument should be set to the filename(s) of the .tds file(s) from
-which the binned shear profile was constructed.
-
-The only option for non-Matlab users is to create an ASCII file with
-the required columns (nan values are permitted) in the order listed
-above and prepend this with the header from the corresponding
-[LADCPproc] output file produced by the -p option.
deleted file mode 100644
--- a/README.ProcessData
+++ /dev/null
@@ -1,158 +0,0 @@
-======================================================================
-                    R E A D M E . P R O C E S S D A T A 
-                    doc: Tue May 15 18:49:00 2012
-                    dlm: Fri Jul 12 12:07:38 2013
-                    (c) 2012 A.M. Thurnherr
-                    uE-Info: 118 71 NIL 0 0 72 75 2 8 NIL ofnI
-======================================================================
-
-=Overview=
-
-This README describes how to obtain profiles of vertical shear and
-velocity from CTD/LADCP data. It assumes that all of the required
-software has been installed (see [README.Install]).
-
-The re-implemented shear method software provides two commands:
-
-[LADCPproc]	This utility produces LADCP shear data from a raw ADCP
-		data file and the corresponding CTD time series.
-		Additionally, it can create profiles of acoustic
-		backscatter, as well as BT-referenced velocity
-		profiles near the seabed from downlooking ADCPs.
-
-[LADCPintsh]	This utility produces profiles of horizontal velocity
-		from the [LADCPproc] shear output. BT profiles (from
-		[LADCPproc] or from the LDEO_IX inversion software) or
-		SADCP profiles (manually constructed) can be used to
-		reference the velocity profiles.
-
-For non-standard processing, the shear output from [LADCPproc] can be
-post-edited before gridding, e.g. in order to filter data collected at
-very shallow depths when the ADCP may be affected by the magnetic field
-of the surface vessel (see [README.PostEdit] for details).
-
-
-=DATA REQUIREMENTS=
-
-ADCP DATA: The software reads binary RDI BB ADCP files from both down-
-and upward-looking ADCPs. Clock setting of the ADCP is not important.
-
-CTD DATA: LADCP processing requires a CTD-derived time series of
-pressure, temperature and salinity. Optionally, it is recommended that
-an elapsed time field is supplied. A time resolution of 1Hz is
-recommended. The software is capable of reading both binary and ASCII
-SeaBird .cnv files with lat/lon information in the header and with the
-following fields: timeS, prDM, t090C and/or t190C, sal00 and/or sal11.
-Alternatively, the CTD time series can be supplied as an arbitrary
-headerless ASCII CTD file with the same information, as described in
-[LADCPproc.defaults].
-	
-
-=CALCULATE LADCP SHEAR PROFILE=
-
-The following simple example shows how to create separate shear profiles
-from an upward- and a downward-looking ADCP, as well as a BT-referenced
-velocity profile near the seabed:
-
-Input files:
-	001DL000.000	downlooker ADCP file
-	001UL000.000	uplooker ADCP file
-	001.cnv		CTD file
-
-LADCPproc -p 001DL.sh -b 001.BT 001DL000.000 001.cnv > /dev/null
-	- this example creates two files, 001DL.sh (shear profiles) and
-	  001.BT (bottom-track data)
-	- the default output (STDOUT) from [LADCPproc] is a list of
-	  valid shear samples, which is ignored (sent to /dev/null) in
-	  this example
-	- it is recommended that the diagnostic output (STDERR) is
-	  captured in a log file; refer to the manual of your shell on
-	  how to accomplish this
-
-LADCPproc -p 001UL.sh 001UL000.000 001.cnv > /dev/null
-	- this example creates one file, 001UL.sh (shear profiles)
-
-
-In this simple example, processing is carried out with standard
-parameters. Some of the important parameters can be modified with
-[LADCPproc] options, which are listed when [LADCPproc] is ran without
-input parameters. The following are the most important [LADCPproc]
-options:
-	-d 		generate diagnostic output (recommended)
-	-r		use RDI BT data instead of echo amplitudes to find
-	        	seabed and determine CTD velocity
-	-o <dz>		output grid resolution (defaults to 5m)
-	-p <shearprof>	generate shear profile output
-	-b <btm_track>	generate BT output
-	-s <setup_file>	read additional non-default processing parameters
-			from <setup_file>
-
-However, there are many more processing parameters than can be modified
-with options --- a full list with comments can be found in
-[LADCPproc.defaults]. To change any of the default parameter values,
-create a perl-file with variable assignments (see [LADCPproc.defaults]
-for syntax) and use the -s <setup_file> option in [LADCPproc].
-
-
-=CALCULATE LADCP VELOCITY PROFILE=
-
-Given the output from the above steps, different full-depth velocity
-profiles can be produced as follows:
-
-LADCPintsh 001DL.sh > 001DL.bc
-	- this creates baroclinic (zero vertical mean) velocity profile
-	  from the DL shear data
-
-LADCPintsh -r 001.BT 001DL.sh > 001DL.vel
-	- this creates a BT-referenced absolute velocity profile from
-	  the DL shear data
-
-LADCPintsh -r 001.BT 001UL.sh > 001UL.vel
-	- this creates a BT-referenced absolute velocity profile from
-	  the UL shear and the DL BT data
-	- note that no -u is required in this case!
-
-LADCPintsh -r 001.BT -u 001UL.sh 001DL.sh > 001.vel
-	- this creates a BT-referenced absolute velocity profile from
-	  the combined DL/UL shear data
-	- note that -u is only required if both UL and DL data are used
-
-It is also possible to use SADCP data to reference the velocity
-profiles, although it is up to the user to create an input data file
-in one of the supported formats. Note that it is *not* possible to use
-multiple simultaneous referencing constraints with [LADCPintsh]. 
-
-The following are common [LADCPintsh] options:
-	-u		use uplooker shear (in addition to downlooker,
-			which is always used)
-	-r <file>	use reference-velocity data to reference baroclinic
-			velocity profiles; the following file formats
-			are supported 1) bottom-track output produced by
-			the -b option of [LADCPproc], 2) bottom-track
-			output produced by the LDEO processing software
-			(.bot files). SADCP data can be used, too, but
-			they have to be supplied in one of the two
-			supported file formats.
-	-n <samp>	set minimum number of shear samples to use
-	-m <samp>	set minimum BT samples to use
-
-
-=QUALITY CHECKS=
-
-After processing, the quality of the resulting profiles must be
-assessed. The following steps are recommended:
-
-1) Compare the down- and up-cast profiles of velocity. Vertical
-velocity is particularly useful in this context as problematic casts
-often show a striking "X" pattern.
-
-2) Inspect the standard deviation profiles of the binned shear and
-determine (by comparison with similar data) whether the standard
-deviations have the correct magnitude.
-
-3) Calculate and compare independent solutions from the uplooker and
-downlooker data. This will only validate the baroclinic velocities (i.e.
-the vertical shear).
-
-4) Compare to velocity profiles calculated with different software (e.g.
-with the LDEO_IX velocity inversion code).
deleted file mode 100644
--- a/README.TimeLagging
+++ /dev/null
@@ -1,106 +0,0 @@
-======================================================================
-                    R E A D M E . T I M E L A G G I N G 
-                    doc: Fri Oct 19 10:08:19 2012
-                    dlm: Fri Oct 19 12:13:59 2012
-                    (c) 2012 A.M. Thurnherr
-                    uE-Info: 106 0 NIL 0 0 72 3 2 8 NIL ofnI
-======================================================================
-
-=Introduction=
-
-In order to derive velocity profiles the data from the CTD and LADCP
-instruments need to be merged. This is accomplished by calculating lag
-correlations between the two corresponding time series of vertical
-velocities calculated from the two instruments. In this software, the
-time lagging is accomplished WITHOUT regard of the clock time reported
-by the instruments, i.e. the instrument clocks do not have to be
-synchronized. Instead of clock time, elapsed time in seconds is used. In
-case of the CTD data, an elapsed time field can be supplied by the user
-(see [README.ProcessData]); in case of the LADCP data, the
-"elapsed-time" field is calculated by the software. The "elapsed-time"
-fields in the processing output are always consistent with the CTD
-elapsed times. While the time-lagging algorithm implemented in the
-software is fairly robust, it has been known to fail. Possible reasons
-include:
-
-1) CTD PRESSURE SPIKES. Significant pressure spikes must be removed
-prior to processing, *without* adding or removing CTD time-series
-records.
-
-2) LACK OF SURFACE VESSEL MOTION. If there is no surface-wave motion
-affecting the vessel, time lagging is much more difficult. In rare
-cases, time lagging must be carried out manually (see below).
-
-3) MISSING CTD SCANS. For SeaBird 911 systems, if the connection
-between the CTD and the deck box is not clean CTD scans will be
-dropped. For the software, this looks like the CTD clock running faster
-than the ADCP clock. There are cases where the CTD clock appears to
-have gained more than 5 seconds during a 2000m-deep cast.
-
-4) MULTIPLE CTD FILES. When CTD acquisition is restarted during a cast,
-multiple files are created. In order to process the LADCP data from such
-a cast, a CTD time-series file without any missing records must be
-constructed manually.
-
-
-=Solving Time-Lagging Problems=
-
-While there are several run-time options that can be used to help the
-time-lagging algorithm, detailed knowledge of the algorithm is required
-to understand when and how to use these options, i.e. the user is
-referred to the code and comments in [LADCPproc.bestLag]. However, the
-following method can always be used to solve time-lagging problems, as
-long as the CTD time series does not have any gaps.
-
-
--Step 1: Produce and Plot a Combined CTD/LADCP Time-Series File-
-
-This is accomplished by processing the data with the "-l 0" option and
-using "-t <time-series file>" to produce the file. Plot the resulting
-time series of CTD_w and LADCP_w in the same panel. The plot should
-show immediately whether there are problems with the CTD pressure data
-(spikes). Often, standard processing works after setting any bad
-pressure values to nan.
-
-
--Step 2: Manually Determine an Approximate Time Lag-
-
-Use the output file generated in step 1 to determine how many seconds
-have to be added to the elapsed field when plotting LADCP_w to bring
-the two time series into approximate (a few seconds accuracy)
-agreement. Often, the data can now be processed normally by using "-i
-<estimated lag>".
-
-
--Step 3: Manually Determine an Accurate Time Lag-
-
-If preprocessing with the -i option still does not succeed, time lagging
-must be carried out manually. If this happens, there is most likely a
-serious problem with either the CTD or LADCP data that should be solved
-before proceeding. This is done exactly as in step 2 but to higher
-accuracy (as high as you can). Once the best lag has been determined
-manually, the data can be reprocessed with the "-l <manually determined
-lag>" option.
-
-
-After solving any time-lagging problems the results should be checked by
-creating a time-series file (with -t) during final processing and
-overplotting the LADCP_w and CTD_w time series. If there is still a
-visible lag between the time series time lagging was not carried out
-correctly. 
-
-
-=Patching Together CTD Time-Series Files=
-
-The LADCP processing software requires the CTD data to be supplied as a
-single time series file with a constant sampling interval. When CTD
-data acquisition is restarted during a cast, multiple files are
-produced. The resulting files cannot simply be pasted together because
-the resulting time series would have gaps. The only way to solve this
-problem is to determine separate time lags for each of the CTD files
-manually (using the method described above). The difference between the
-resulting time lags is equal to the length of the gap between the two
-files. The user can now create a dummy (all fields set to nan) CTD file
-with required number of records that must be added between the CTD
-files to create a single continuous regularly-space time series.
-Fractional seconds can be ignored.
deleted file mode 100644
--- a/README.YoYo
+++ /dev/null
@@ -1,74 +0,0 @@
-======================================================================
-                    R E A D M E . Y O Y O 
-                    doc: Fri Aug 10 07:07:59 2012
-                    dlm: Fri Oct 19 11:05:29 2012
-                    (c) 2012 A.M. Thurnherr
-                    uE-Info: 56 0 NIL 0 0 72 3 2 8 NIL ofnI
-======================================================================
-
-=Overview=
-
-This README contains notes on how to process data from non-standard
-casts, such as yo-yos (consecutive down-up casts collected at a given
-location without restarting the instruments) and tow-yos (yo-yos
-carried out while vessel is in slow motion).
-
-Processing of yo-yo and tow-yo data requires the following two steps:
-	1. Split the data files into individual down-upcast pairs
-	2. Process the resulting files as described in [README.ProcessData]
-
-It is important to note that yo-yo and tow-yo casts can be full depth
-(i.e. between the sea surface and the sea bed) or partial-depth. If
-absolute velocities (rather than just vertical shear) are required for
-partial-depth casts, the user must make sure that there are either BT
-data or SADCP data available for velocity referencing of each
-down-upcast pair. Essentially this means that each down-upcast pair
-must extend down to near the seabed or up into the depth range where
-SADCP data are available. 
-
-
-=Step 1: Splitting the Data Files=
-
-Both data files must be split between individual down-upcast pairs, i.e.
-whenever the CTD winch switches from up to down.
-
-CTD DATA: First, find the CTD splitting times by plotting depth vs.
-elapsed time. Then, split the CTD data into separate files using any
-text editor. If SeaBird CNV files are use, the same header can be used
-for all output files.
-
-ADCP DATA: There is an ADCP file splitting utility for M$ Windows
-provided by RDI. Alternatively, the length of each ensemble can be read
-from the binary ADCP files and the UN*X utilities "split -b" and "cat"
-can be used to split the files into the required chunks.
-
-
-=Step 2: Processing the Split Data Files=
-
-The split data files, each containing data from exactly one consecutive
-down- and up-cast, can be processed exactly as described in
-[README.ProcessData]. If the CTD time-series data used during
-processing has an "elapsed-time" field all output elapsed times are
-consistent with this input, i.e. the elapsed times of the output casts
-are relative to the beginning of the entire yo-yo or tow-yo cast.
-Otherwise, every down-/up-cast pair gets its own elapsed-time field.
-
-Usually, in standard LADCP processing the velocity data from the down-
-and upcast are combined. While this smears out any information on the
-temporal variability of the velocity field during the cast, down- and
-upcast only profiles are necessarily derived from much fewer samples
-and, therefore, associated with considerably larger uncertainties and
-errors. It has been found, in particular, that the top-to-bottom shear
-in down-/upcast-only profiles is often quite bad. In the context of
-partial-depth yo-yo and tow-yo profiles the severity of this problem
-can be evaluated by comparing two consecutive velocity profiles at
-their "unconstrained" end. E.g., in case of a partial-depth yo-yo near
-the seabed, i.e. constrained with BT data, the uppermost portion of the
-first upcast can be compared to the uppermost portion of the 2nd
-downcast, etc. If the errors are found to be unacceptably high, the
-velocity profiles from the combined down-/upcast data should be used
-instead. Alternatively, multiple simultaneous velocity referencing
-constraints can be applied, e.g. using the shear-inversion method
-described by Thurnherr (JAOT 2010).
-
-
deleted file mode 100644
--- a/TODO
+++ /dev/null
@@ -1,58 +0,0 @@
-======================================================================
-                    T O D O 
-                    doc: Thu Oct 14 09:15:02 2010
-                    dlm: Wed Jun 15 15:16:20 2011
-                    (c) 2010 A.M. Thurnherr
-                    uE-Info: 40 0 NIL 0 0 72 3 2 4 NIL ofnI
-======================================================================
-
-=LADCPintsh=
-
-- determine what constitutes a gap
-- look into cross-gap shear integration
-
-
-=LADCPproc=
-
-- allow setting of GRID_DZ (-o) in ProcessingParams
-
-- add warnings:
-	- wide band
-	- CTD_W_BIT (ambiguity velocity)
-	- bad time match
-	- seabed not found
-	- inconsistent water depth
-
-- add diagnostic plots
-
-- output shear vals to make histograms
-
-- try median instead of mean for shear binning
-
-- add pitch/roll to BT
-
-- check interaction between 3-beam solutions and correlation limit
-
-- implement TILT_BIT (others?)
-
-- calculate real acoustic backscatter profile
-	- currently, profiles are arbitarily calculated from bins 3-9
-
-- clean up LADCPproc.UHcode:
-	- remove weirdnesses
-	- avoid multiple calculation of &depthOfBin()
-	- improve "staging":
-		1) basic velocity editing (BADVEL, ERRVEL, CORREL) NB: before
-		   beam-to-Earth transformation!!!
-		2) ref-lr w (also handle W_BIT editing?)
-		3) integrate w to get z_approx
-		4) match LADCP to CTD time series
-		5) make accoustic backscatter profile
-		6) find seabed
-		7) sidelobe & PPI editing
-		8) ref-lr u,v,w
-		9) WAKE editing
-		10) SHEAR editing
-		11) ref-lr u,v,w
-	
-- re-add time-series calculation