adp
.read.adp(file, from=1, to, by=1, tz=getOption("oceTz"),
longitude=NA, latitude=NA,
manufacturer=c("rdi", "nortek", "sontek"),
monitor=FALSE, despike=FALSE, processingLog,
debug=getOption("oceDebug"), ...)
read.adp.rdi(file, from=1, to, by=1, tz=getOption("oceTz"),
longitude=NA, latitude=NA,
type=c("workhorse"),
monitor=FALSE, despike=FALSE, processingLog,
testing=FALSE,
debug=getOption("oceDebug"), ...)
read.aquadopp(file, from=1, to, by=1, tz=getOption("oceTz"),
longitude=NA, latitude=NA,
orientation, distance,
monitor=FALSE, despike=FALSE, processingLog,
debug=getOption("oceDebug"), ...)
read.aquadoppHR(file, from=1, to, by=1, tz=getOption("oceTz"),
longitude=NA, latitude=NA,
orientation, distance,
monitor=FALSE, despike=FALSE, processingLog,
debug=getOption("oceDebug"), ...)
read.aquadoppProfiler(file, from=1, to, by=1, tz=getOption("oceTz"),
longitude=NA, latitude=NA,
orientation, distance,
monitor=FALSE, despike=FALSE, processingLog,
debug=getOption("oceDebug"), ...)
read.adp.nortek(file, from=1, to, by=1, tz=getOption("oceTz"),
longitude=NA, latitude=NA,
type=c("aquadoppHR", "aquadoppProfiler", "aquadopp"),
orientation, distance,
monitor=FALSE, despike=FALSE, processingLog,
debug=getOption("oceDebug"), ...)
read.adp.sontek(file, from=1, to, by=1, tz=getOption("oceTz"),
longitude=NA, latitude=NA,
type=c("adp","pcadp"),
monitor=FALSE, despike=FALSE, processingLog,
debug=getOption("oceDebug"), ...)
read.adp.sontek.serial(file, from=1, to, by=1, tz=getOption("oceTz"),
longitude=NA, latitude=NA,
type=c("adp", "pcadp"),
beamAngle=25, orientation,
monitor=FALSE, processingLog,
debug=getOption("oceDebug"))
read.adp.sontek.serial
, this is generally a list of
files, which will be concatenated.from
. If not supplied, the whole file will be
read.by-1
profiles are skipped between
each pair of profiles that is read. If this is a string representing a time
interval, in colread.adp
to select a subsidiary function to use,
such as read.adp.nortek
."upward"
, "downward"
, and
"sideward"
.TRUE
to provide an indication (with
numbers and dots) of every profile read.TRUE
, despike
will be used to clean
anomalous spikes in heading, etc.TRUE
,
then the time-varying device orientation is inferred from the per-profile
header information, and the boolean result is stored in an integer vector
named upward
class
"adp"
, which contains
measurements made with an ADP device. See adp-class
for notes
on the contents of the object. In ADP data files, velocities are coded to signed 2-byte integers, with a
scale factor being used to convert to velocity in metres per second. These
two facts control the maximum recordable velocity and the velocity resolution,
values that may be retrieved for an ADP object name d
with
d[["velocityMaximum"]]
and d[["velocityResolution"]]
.
EB
command during the setup for the deployment, then a heading bias
will have been stored in the file's header. This value is stored in the
object's metadata asmetadata$heading.bias
.Importantly,
this value is subtracted from the headings stored in the file, and the
result of this subtraction is stored in the objects heading value (indata$heading
). It should be noted thatread.adp.rdi()
was
tested for firmware version 16.30. For other versions, there may be
problems. For example, the serial number is not recognized properly for
version 16.28.beamToXyz
in converting to xyz coordinates. The solution is to
alter the value of @metadata$orientation
prior to doing any such
coordinate transformation.read.aquadoppProfiler
does its work by calling read.adp.nortek
;
in this context, it is worth noting that the ``aquadopp'' instrument is a
one-cell profiler that might just as well have been documented under the
heading read.adv
.0x7f
repeated twice,
and each profile starts with the bytes
0x80
, followed by 0x00
, followed by the
sequence number of the profile, represented as a little-endian
two-byte short integer. read.adp.rdi()
uses
these sequences to interpret data files.)2. Information on Nortek profilers (including the System Integrator Guide,
which explains the data format byte-by-byte) is available at
3. Information about Sontek profilers is available at
4. The Nortek Knowledge Center
adp-class
explains the structure
of ADP objects, and also outlines the other functions dealing with them.library(oce)
# A day sampled at 1/2 hour interval. Note the timezone.
dir <- "/data/archive/sleiwex/2008/moorings/"
f <- paste(dir, "m09/adp/rdi_2615/raw/adp_rdi_2615.000", sep="")
d <- read.oce(f, from=as.POSIXct("2008-06-26", tz="UTC"),
to=as.POSIXct("2008-06-27", tz="UTC"), by="30:00")
summary(d)
plot(d)
Run the code above in your browser using DataLab