Closed emiliom closed 1 year ago
@emiliom : I've updated the description above. Let me know if you have questions.
EK80 has >1 length in the
beam
dimension, but these beams are actually within the same transducer (channel).Note that these stored values in the Beam_groupX or Vendor-specific group (if exist, some may not) are transducer-specific and therefore do not vary with
beam
orping_time
.
@leewujung I'm trying to see if I understand. You're saying there are multiple beams within each transducer (channel), but the values of the variables you've listed are constant across beam (and ping_time), within each channel, right?
Do other EK80 variables that currently have a beam
dimension vary across the beam
dimension? The main such variables are backscatter_r
and backscatter_i
, but these also occur:
beam_direction_x
beam_direction_y
beam_direction_z
angle_alongship
angle_athwartship
frequency_start
frequency_end
For reference: the addition of the beam
dimension was originally discussed in #520
@leewujung I'm trying to see if I understand. You're saying there are multiple beams within each transducer (channel), but the values of the variables you've listed are constant across beam (and ping_time), within each channel, right?
Yes, they are constant across beam and ping_time, within each channel.
Do other EK80 variables that currently have a
beam
dimension vary across thebeam
dimension? The main such variables arebackscatter_r
andbackscatter_i
, but these also occur:beam_direction_x beam_direction_y beam_direction_z angle_alongship angle_athwartship frequency_start frequency_end
For EK80 complex samples (both backscatter_r
and backscatter_i
exist):
beam
dimension is necessary and valid -- they are the transducer sectors/quadrants or the "subbeam" dimension in ver.2 definition.angle_alongship
and angle_athwartship
do not exist in the raw data -- they need to be computed using add_splitbeam_angle
(right now we have that to add to Sv datasets)frequency_start
and frequency_end
can vary across ping_time, but there is no beam dimensionbeam_direction_x/y/z
does not have beam dimension and do not vary across ping_time (for the rigid installation for most echosounders anyway)For EK80 power/angle samples (only backscatter_r
exists)
beam
dimension is redundantangle_alongship
and angle_athwartship
exist in the raw data with the same dimensions as backscatter_r
frequency_start
and frequency_end
do not exist -- since the data is narrowbandbeam_direction_x/y/z
does not have beam dimension and do not vary across ping_time (for the rigid installation for most echosounders anyway)Addressed in #1056.
This is a a subset of #684 that would be very helpful to address in milestone 0.7.0.
EK80 has >1 length in the
beam
dimension, but these beams are actually within the same transducer (channel). This extrabeam
dimension added to ensure compliance to the convention is adding confusion to the code and likely runtime memory needs.See below for calibration parameters for EK80: https://github.com/OSOceanAcoustics/echopype/blob/f8082cac32bfbee2b21c62d266507491d221182d/echopype/calibrate/cal_params.py#L18-L31 Note that these stored values in the Beam_groupX or Vendor-specific group (if exist, some may not) are transducer-specific and therefore do not vary with
beam
orping_time
.