Raw converted data

The EchoData object

EchoData is an object that conveniently handles raw converted data from either raw instrument files (via open_raw) or previously converted and standardized raw files (via open_converted). It is essentially a container for multiple xarray Dataset objects, where each such object corresponds to one of the netCDF4 groups specified in the SONAR-netCDF4 convention. EchoData objects are used for conveniently accessing and exploring the echosounder data, for calibration and other processing, and for serializing into netCDF4 or Zarr file formats.

A few example EchoData objects are presented below. They show the hierarchical structure of the SONAR-netCDF4 version 1 groups for the sonar models currently supported by echopype. Click on a group to drill down to variables and attributes and to examine the structure and representative content of an EchoData object.

Depending on the instrument, data variables contained in each group may be different. See the example data sections below and Data from different echosounders for more information.

The echopype version used to render the EchoData objects below is: 0.7.2.dev50+g451d5ef6

Kongsberg Simrad EK60

EK60 echosounder transmits narrowband signals (gated sine waves) and therefore the Sonar group contains only a single subgroup Beam_group1.

EchoData: standardized raw data from Internal Memory

Kongsberg Simrad EK80

EK80 echosounder can transmit both narrowband (“CW” or “continuous wave”) or broadband (“BB”, or “FM” or “frequency-modulated”) signals.

In echopype-converted files, there can be at most 2 groups under the Sonar group. The type of data stored in these Beam_groupX groups follow the scenarios below:

Scenario 1

The example file below contains both CW complex and BB complex data, both stored as complex data. Therefore, there is only Beam_group1 under the Sonar group.

EchoData: standardized raw data from Internal Memory

Scenario 3

The example file below contains both narrowband (“CW” or “continuous wave”) “power/angle” data as well as broadband (“BB”, or “FM” or “frequency-modulated”) complex data. Therefore there are two groups under the Sonar group: Beam_group1 and Beam_group2.

EchoData: standardized raw data from Internal Memory

ASL Environmental Sciences AZFP data

Similar to EK60, AZFP echosounder transmits narrowband signals (gated sine waves) and therefore the Sonar group contains only a single subgroup Beam_group1.

EchoData: standardized raw data from Internal Memory

Data from different echosounders

Power/Angle data

For echosounder setups using single-beam transducers, only the echo power (or intensity) data are available and these data are stored in the data variable backscatter_r (the r in the suffix refers to the real part of the signal). This is the case for data from:

For echosounder setups using split-beam transducers, the echo power data are similarly stored in the variable backscatter_r, but with the additional split-beam angle data stored in data variables angle_alongship and angle_athwartship. This is the case for data from:

All the above data variables (backscatter_r, angle_alongship, angle_athwartship) use the gridded representation with dimensions (channel, range_sample, ping_time) and are stored in the Sonar/Beam_group1 group.

Complex data

A deviation from the above is the case when the raw complex samples are recorded by EK80 echosounders paired with split-beam transducers. In this case, both backscatter_r and backscatter_i variables exist and contain the real and imaginary part of the echo waveform data, respectively. These variables are with dimension (channel, range_sample, ping_time, beam), and the length of the beam dimension can be 3 or 4 depending on the specific transducer used. The angle_alongship and angle_athwartship variables are not present in such files and can be computed and added to the calibrate Sv dataset using echopype.consolidate.add_splitbeam_angle.

It is possible for power/angle data and complex data to coexist in files collected by EK80 echosounders, since each frequency channel can be configured separately. In this case, the complex data are stored in the Sonar/Beam_group1 group and the power/angle data are stored in the Sonar/Beam_group2 group. This is scenario 3 in the above example EK80 data section.