Learn R Programming

oce (version 1.0-1)

beamToXyzAdp: Convert ADP From Beam to XYZ Coordinates

Description

Convert ADP velocity components from a beam-based coordinate system to a xyz-based coordinate system.

Usage

beamToXyzAdp(x, debug = getOption("oceDebug"))

Arguments

x

an object of class "adp".

debug

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.

Value

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.

Details

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”.

References

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 Also

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