Convert ADP velocity components from a beam-based coordinate system to a xyz-based coordinate system.
beamToXyzAdp(x, debug = getOption("oceDebug"))
an object of class "adp"
.
an integer specifying whether debugging information is
to be printed during the processing. This is a general parameter that
is used by many oce
functions. Generally, setting debug=0
turns off the printing, while higher values suggest that more information
be printed. If one function calls another, it usually reduces the value of
debug
first, so that a user can often obtain deeper debugging
by specifying higher debug
values.
An object with the first 3 velocity indices having been altered to
represent velocity components in xyz (or instrument) coordinates. (For
rdi
data, the values at the 4th velocity index are changed to
represent the "error" velocity.)
To indicate the change, the value of metadata$oce.orientation
is
changed from beam
to xyz
.
The action depends on the type of object.
For a 3-beam aquadopp
object, the beams are transformed into
velocities using the matrix stored in the header.
For 4-beam rdi
object, the beams are converted to velocity components
using formulae from section 5.5 of RD Instruments (1998), viz. the
along-beam velocity components \(B_1\), \(B_2\), \(B_3\),
and \(B_4\) are used to calculate velocity components in a cartesian
system referenced to the instrument using the following formulae:
\(u=ca(B_1-B_2)\), \(v=ca(B_4-B_3)\),
\(w=-b(B_1+B_2+B_3+B_4)\), and an estimate of the
error in velocity is calculated using \(e=d(B_1+B_2-B_3-B_4)\)
(Note that the multiplier on \(e\) is subject to discussion; RDI suggests one multiplier, but some oceanographers favour another.)
In the above, \(c=1\) if the beam geometry is convex, and \(c=-1\) if the beam geometry is concave, \(a=1/(2\sin\theta)\), \(b=1/(4\cos\theta)\) and \(d=a/\sqrt{2}\), where \(\theta\) is the angle the beams make to the instrument “vertical”.
1. R D Instruments, 1998. ADP Coordinate Transformation, formulas and calculations. P/N 951-6079-00 (July 1998).
2. WHOI/USGS-provided Matlab code for beam-enu transformation http://woodshole.er.usgs.gov/pubs/of2005-1429/MFILES/AQDPTOOLS/beam2enu.m
See read.adp
for other functions that relate to
objects of class "adp"
.
Other things related to adp
data: [[,adp-method
,
[[<-,adp-method
, adp-class
,
adpEnsembleAverage
, adp
,
as.adp
, beamName
,
beamToXyzAdv
, beamToXyz
,
beamUnspreadAdp
, binmapAdp
,
enuToOtherAdp
, enuToOther
,
handleFlags,adp-method
,
plot,adp-method
, read.ad2cp
,
read.adp.nortek
,
read.adp.rdi
,
read.adp.sontek.serial
,
read.adp.sontek
, read.adp
,
read.aquadoppHR
,
read.aquadoppProfiler
,
read.aquadopp
, rotateAboutZ
,
setFlags,adp-method
,
subset,adp-method
,
summary,adp-method
, toEnuAdp
,
toEnu
, velocityStatistics
,
xyzToEnuAdp
, xyzToEnu