xyzToEnuAdv(x, declination=0,
cabled=FALSE, horizontalCase, sensorOrientation,
debug=getOption("oceDebug"))
"adv"
.cabled=FALSE
, then
horizontalCase
is ignored. See cabled
is
TRUE
. See "upward"
or
"downward"
, over-rides the value of x$metadata$orientation
,
which will have been set by x
. The algorithm is
similar to that used for Teledyne/RDI ADCP units, taking into account
the different definitions of heading, pitch, and roll as they are defined for
the velocimeters. Generally, the transformation must be done on a time-by-time basis,
which is a slow operation. However, this function checks whether the
vectors for heading, pitch and roll, are all of unit length, and in that
case, the calculation is altered, resulting in shorter executation times.
Note that the angles are held in data$tsSlow
for Nortek instruments
and data$ts
for Sontek instruments.
Since the documentation provided by instrument manufacturers
can be vague on the coordinate transformations, the method used here
had to be developed indirectly. (This is in contrast to the RDI ADCP
instruments, for which there are clear instructions.)
documents that manufacturers provide. If results seem incorrect (e.g. if
currents go east instead of west), users should examine the code in detail
for the case at hand. The first step is to set debug
to 1, so that
the processing will print a trail of processing steps. The next step should
be to consult the table below, to see if it matches the understanding (or
empirical tests) of the user. It should not be difficult to tailor the code,
if needed.
The code handles every case individually, based on the table given below. The table comes from Clark Richards, a PhD student at Dalhousie University [2], who developed it based on instrument documentation, discussion on user groups, and analysis of measurements acquired with Nortek and Sontek velocimeters in the SLEIWEX experiment [3].
The column labelled ``Cabled'' indicates whether the sensor and the pressure
case are connected with a flexible cable, and the column labelled ``H.case''
indicates whether the pressure case is oriented horizontally. These two
properties are not discoverable in the headers of the data files, and so they
must be supplied with the arguments cabled
and horizontalCase
.
The source code refers to the information in this table by case numbers.
(Cases 5 and 6 are not handled.) Angles are abbreviated as follows:: heading
``H,'' pitch ``P,'' and roll ``R''. Entries X, Y and Z refer to instrument
coordinates of the same names. Entries S, F and M refer to so-called ship
coordinates starboard, forward, and mast; it is these that are used together
with a rotation matrix to get velocity components in the east, north, and
upward directions.
read.adv
for notes on functions relating to
"adv"
objects.