Acoustic data: Refactoring.
parent
cb94bb3c5d
commit
5f0fb9ad53
|
|
@ -1811,7 +1811,6 @@ class AcousticDataTab(QWidget):
|
||||||
][1]
|
][1]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
self.lineEdit_kt.setText(
|
self.lineEdit_kt.setText(
|
||||||
str("%.4f" % stg.kt_corrected[freq_id])
|
str("%.4f" % stg.kt_corrected[freq_id])
|
||||||
)
|
)
|
||||||
|
|
@ -1835,76 +1834,124 @@ class AcousticDataTab(QWidget):
|
||||||
self.lineEdit_tx.returnPressed.connect(self.gain_tx_value)
|
self.lineEdit_tx.returnPressed.connect(self.gain_tx_value)
|
||||||
|
|
||||||
def combobox_frequency_information_update(self):
|
def combobox_frequency_information_update(self):
|
||||||
if self.fileListWidget.count() > 0:
|
if self.fileListWidget.count() <= 0:
|
||||||
|
return
|
||||||
|
|
||||||
if stg.water_attenuation[self.fileListWidget.currentRow()]:
|
file_id = self.fileListWidget.currentRow()
|
||||||
|
freq_id = self.combobox_frequency_information.currentIndex()
|
||||||
|
|
||||||
self.lineEdit_sound_attenuation.setText(
|
if stg.water_attenuation[file_id]:
|
||||||
str("%.6f" % stg.water_attenuation[self.fileListWidget.currentRow()][
|
self.lineEdit_sound_attenuation.setText(
|
||||||
self.combobox_frequency_information.currentIndex()]))
|
str(
|
||||||
|
"%.6f"
|
||||||
|
% stg.water_attenuation[file_id][freq_id]
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
self.label_profiles_value.clear()
|
self.label_profiles_value.clear()
|
||||||
self.gridLayout_groupbox_info.removeWidget(self.label_profiles_value)
|
self.gridLayout_groupbox_info.removeWidget(
|
||||||
self.label_profiles_value.setText(str(stg.nb_profiles[self.fileListWidget.currentRow()]
|
self.label_profiles_value
|
||||||
[self.combobox_frequency_information.currentIndex()]))
|
)
|
||||||
self.gridLayout_groupbox_info.addWidget(self.label_profiles_value, 8, 1, 1, 1, Qt.AlignLeft)
|
self.label_profiles_value.setText(
|
||||||
|
str(
|
||||||
|
stg.nb_profiles[file_id][freq_id]
|
||||||
|
)
|
||||||
|
)
|
||||||
|
self.gridLayout_groupbox_info.addWidget(
|
||||||
|
self.label_profiles_value,
|
||||||
|
8, 1, 1, 1, Qt.AlignLeft
|
||||||
|
)
|
||||||
|
|
||||||
self.label_profiles_per_sec_value.clear()
|
self.label_profiles_per_sec_value.clear()
|
||||||
self.label_profiles_per_sec_value.setText(
|
self.label_profiles_per_sec_value.setText(
|
||||||
str(stg.nb_profiles_per_sec[self.fileListWidget.currentRow()]
|
str(
|
||||||
[self.combobox_frequency_information.currentIndex()]) + " Hz")
|
stg.nb_profiles_per_sec[file_id][freq_id]
|
||||||
self.gridLayout_groupbox_info.addWidget(self.label_profiles_per_sec_value, 9, 1, 1, 1, Qt.AlignLeft)
|
) + " Hz"
|
||||||
|
)
|
||||||
|
self.gridLayout_groupbox_info.addWidget(
|
||||||
|
self.label_profiles_per_sec_value,
|
||||||
|
9, 1, 1, 1, Qt.AlignLeft
|
||||||
|
)
|
||||||
|
|
||||||
self.label_cells_value.clear()
|
self.label_cells_value.clear()
|
||||||
self.label_cells_value.setText(str(stg.nb_cells[self.fileListWidget.currentRow()]
|
self.label_cells_value.setText(
|
||||||
[self.combobox_frequency_information.currentIndex()]))
|
str(
|
||||||
self.gridLayout_groupbox_info.addWidget(self.label_cells_value, 10, 1, 1, 1, Qt.AlignLeft)
|
stg.nb_cells[file_id][freq_id]
|
||||||
|
)
|
||||||
|
)
|
||||||
|
self.gridLayout_groupbox_info.addWidget(
|
||||||
|
self.label_cells_value,
|
||||||
|
10, 1, 1, 1, Qt.AlignLeft
|
||||||
|
)
|
||||||
|
|
||||||
self.label_cell_size_value.clear()
|
self.label_cell_size_value.clear()
|
||||||
self.gridLayout_groupbox_info.removeWidget(self.label_cell_size_value)
|
self.gridLayout_groupbox_info.removeWidget(self.label_cell_size_value)
|
||||||
self.label_cell_size_value.setText(
|
self.label_cell_size_value.setText(
|
||||||
str(100 * round(stg.cell_size[self.fileListWidget.currentRow()]
|
str(
|
||||||
[self.combobox_frequency_information.currentIndex()], 3)) + " cm")
|
100 * round(stg.cell_size[file_id][freq_id], 3)
|
||||||
self.gridLayout_groupbox_info.addWidget(self.label_cell_size_value, 11, 1, 1, 1, Qt.AlignLeft)
|
) + " cm"
|
||||||
|
)
|
||||||
|
self.gridLayout_groupbox_info.addWidget(
|
||||||
|
self.label_cell_size_value,
|
||||||
|
11, 1, 1, 1, Qt.AlignLeft
|
||||||
|
)
|
||||||
|
|
||||||
self.label_pulse_length_value.clear()
|
self.label_pulse_length_value.clear()
|
||||||
self.label_pulse_length_value.setText(
|
self.label_pulse_length_value.setText(
|
||||||
str(round(stg.pulse_length[self.fileListWidget.currentRow()]
|
str(
|
||||||
[self.combobox_frequency_information.currentIndex()], 6)) + " sec")
|
round(stg.pulse_length[file_id][freq_id], 6)
|
||||||
self.gridLayout_groupbox_info.addWidget(self.label_pulse_length_value, 12, 1, 1, 1, Qt.AlignLeft)
|
) + " sec"
|
||||||
|
)
|
||||||
|
self.gridLayout_groupbox_info.addWidget(
|
||||||
|
self.label_pulse_length_value,
|
||||||
|
12, 1, 1, 1, Qt.AlignLeft
|
||||||
|
)
|
||||||
|
|
||||||
self.label_pings_per_sec_value.clear()
|
self.label_pings_per_sec_value.clear()
|
||||||
self.label_pings_per_sec_value.setText(str(stg.nb_pings_per_sec[self.fileListWidget.currentRow()]
|
self.label_pings_per_sec_value.setText(
|
||||||
[self.combobox_frequency_information.currentIndex()]) + " Hz")
|
str(
|
||||||
self.gridLayout_groupbox_info.addWidget(self.label_pings_per_sec_value, 13, 1, 1, 1, Qt.AlignLeft)
|
stg.nb_pings_per_sec[file_id][freq_id]
|
||||||
|
) + " Hz"
|
||||||
|
)
|
||||||
|
self.gridLayout_groupbox_info.addWidget(
|
||||||
|
self.label_pings_per_sec_value,
|
||||||
|
13, 1, 1, 1, Qt.AlignLeft
|
||||||
|
)
|
||||||
|
|
||||||
self.label_pings_per_profile_value.clear()
|
self.label_pings_per_profile_value.clear()
|
||||||
self.label_pings_per_profile_value.setText(
|
self.label_pings_per_profile_value.setText(
|
||||||
str(stg.nb_pings_averaged_per_profile[self.fileListWidget.currentRow()]
|
str(stg.nb_pings_averaged_per_profile[file_id][freq_id])
|
||||||
[self.combobox_frequency_information.currentIndex()]))
|
)
|
||||||
self.gridLayout_groupbox_info.addWidget(self.label_pings_per_profile_value, 14, 1, 1, 1, Qt.AlignLeft)
|
self.gridLayout_groupbox_info.addWidget(
|
||||||
|
self.label_pings_per_profile_value,
|
||||||
|
14, 1, 1, 1, Qt.AlignLeft
|
||||||
|
)
|
||||||
|
|
||||||
if self.checkbox_kt.isChecked():
|
if self.checkbox_kt.isChecked():
|
||||||
if self.combobox_frequency_information.count() > 0:
|
if self.combobox_frequency_information.count() > 0:
|
||||||
self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentIndex()]))
|
self.lineEdit_kt.setText(
|
||||||
else:
|
str("%.4f" % stg.kt_corrected[freq_id])
|
||||||
self.lineEdit_kt.setText(str("%.4f" % stg.kt_read[self.combobox_frequency_information.currentIndex()]))
|
)
|
||||||
|
else:
|
||||||
|
self.lineEdit_kt.setText(str("%.4f" % stg.kt_read[freq_id]))
|
||||||
|
|
||||||
self.lineEdit_rx.setText(str(stg.gain_rx[self.fileListWidget.currentRow()][
|
self.lineEdit_rx.setText(
|
||||||
self.combobox_frequency_information.currentIndex()]))
|
str(stg.gain_rx[file_id][freq_id])
|
||||||
|
)
|
||||||
|
|
||||||
self.lineEdit_tx.setText(str(stg.gain_tx[self.fileListWidget.currentRow()][
|
self.lineEdit_tx.setText(str(stg.gain_tx[file_id][freq_id]))
|
||||||
self.combobox_frequency_information.currentIndex()]))
|
|
||||||
|
|
||||||
def activate_unactivate_spinbox_kt(self):
|
def activate_unactivate_spinbox_kt(self):
|
||||||
|
freq_id = self.combobox_frequency_information.currentIndex()
|
||||||
|
|
||||||
if self.checkbox_kt.isChecked():
|
if self.checkbox_kt.isChecked():
|
||||||
self.lineEdit_kt.setEnabled(True)
|
self.lineEdit_kt.setEnabled(True)
|
||||||
if stg.kt_corrected:
|
if stg.kt_corrected:
|
||||||
self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentIndex()]))
|
self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[freq_id]))
|
||||||
else:
|
else:
|
||||||
self.lineEdit_kt.setDisabled(True)
|
self.lineEdit_kt.setDisabled(True)
|
||||||
if stg.kt_read:
|
if stg.kt_read:
|
||||||
self.lineEdit_kt.setText(str("%.4f" % stg.kt_read[self.combobox_frequency_information.currentIndex()]))
|
self.lineEdit_kt.setText(str("%.4f" % stg.kt_read[freq_id]))
|
||||||
|
|
||||||
def activate_unactivate_spinbox_rx(self):
|
def activate_unactivate_spinbox_rx(self):
|
||||||
if self.checkbox_rx.isChecked():
|
if self.checkbox_rx.isChecked():
|
||||||
|
|
@ -1919,33 +1966,48 @@ class AcousticDataTab(QWidget):
|
||||||
self.lineEdit_tx.setDisabled(True)
|
self.lineEdit_tx.setDisabled(True)
|
||||||
|
|
||||||
def kt_value(self):
|
def kt_value(self):
|
||||||
|
if self.fileListWidget.count() <= 0:
|
||||||
|
return
|
||||||
|
|
||||||
if self.fileListWidget.count() > 0:
|
if not self.checkbox_kt.isChecked():
|
||||||
if self.checkbox_kt.isChecked():
|
return
|
||||||
|
|
||||||
if findall(r",", self.lineEdit_kt.text()):
|
freq_id = self.combobox_frequency_information.currentIndex()
|
||||||
stg.kt_corrected[self.combobox_frequency_information.currentIndex()] = (
|
|
||||||
float(self.lineEdit_kt.text().replace(',', '.')))
|
if findall(r",", self.lineEdit_kt.text()):
|
||||||
self.lineEdit_kt.setText("%.4f" % float(self.lineEdit_kt.text().replace(',', '.')))
|
stg.kt_corrected[freq_id] = (
|
||||||
else:
|
float(self.lineEdit_kt.text().replace(',', '.'))
|
||||||
stg.kt_corrected[self.combobox_frequency_information.currentIndex()] = (
|
)
|
||||||
float(self.lineEdit_kt.text()))
|
self.lineEdit_kt.setText(
|
||||||
self.lineEdit_kt.setText("%.4f" % float(self.lineEdit_kt.text()))
|
"%.4f" % float(
|
||||||
|
self.lineEdit_kt.text().replace(',', '.')
|
||||||
|
)
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
stg.kt_corrected[freq_id] = (
|
||||||
|
float(self.lineEdit_kt.text())
|
||||||
|
)
|
||||||
|
self.lineEdit_kt.setText("%.4f" % float(self.lineEdit_kt.text()))
|
||||||
|
|
||||||
def gain_rx_value(self):
|
def gain_rx_value(self):
|
||||||
if self.fileListWidget.count() > 0:
|
freq_id = self.combobox_frequency_information.currentIndex()
|
||||||
stg.gain_rx[self.fileListWidget.currentRow()][self.combobox_frequency_information.currentIndex()] = (
|
|
||||||
float(self.lineEdit_rx.text()))
|
|
||||||
|
|
||||||
|
if self.fileListWidget.count() > 0:
|
||||||
|
stg.gain_rx[self.fileListWidget.currentRow()][freq_id] = (
|
||||||
|
float(self.lineEdit_rx.text())
|
||||||
|
)
|
||||||
|
|
||||||
def gain_tx_value(self):
|
def gain_tx_value(self):
|
||||||
|
freq_id = self.combobox_frequency_information.currentIndex()
|
||||||
|
|
||||||
if self.fileListWidget.count() > 0:
|
if self.fileListWidget.count() > 0:
|
||||||
stg.gain_tx[self.fileListWidget.currentRow()][self.combobox_frequency_information.currentIndex()] = (
|
stg.gain_tx[self.fileListWidget.currentRow()][freq_id] = (
|
||||||
float(self.lineEdit_tx.text()))
|
float(self.lineEdit_tx.text())
|
||||||
|
)
|
||||||
|
|
||||||
def fill_table(self):
|
def fill_table(self):
|
||||||
|
|
||||||
if self.fileListWidget.currentRow() != -1:
|
if self.fileListWidget.currentRow() != -1:
|
||||||
|
file_id = self.fileListWidget.currentRow()
|
||||||
|
|
||||||
header_list = []
|
header_list = []
|
||||||
header_list.clear()
|
header_list.clear()
|
||||||
|
|
@ -1956,19 +2018,37 @@ class AcousticDataTab(QWidget):
|
||||||
header_list.append("BS - " + freq_value)
|
header_list.append("BS - " + freq_value)
|
||||||
|
|
||||||
if freq_ind == 0:
|
if freq_ind == 0:
|
||||||
table_data = np.vstack((np.vstack((stg.time_reshape[self.fileListWidget.currentRow()][:, freq_ind],
|
table_data = np.vstack(
|
||||||
stg.depth_reshape[self.fileListWidget.currentRow()][:, freq_ind])),
|
(
|
||||||
stg.BS_raw_data_reshape[self.fileListWidget.currentRow()][:, freq_ind]))
|
np.vstack(
|
||||||
|
(
|
||||||
|
stg.time_reshape[file_id][:, freq_ind],
|
||||||
|
stg.depth_reshape[file_id][:, freq_ind]
|
||||||
|
)
|
||||||
|
),
|
||||||
|
stg.BS_raw_data_reshape[file_id][:, freq_ind]
|
||||||
|
)
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
table_data = np.vstack((table_data,
|
table_data = np.vstack((
|
||||||
np.vstack((np.vstack((stg.time_reshape[self.fileListWidget.currentRow()][:, freq_ind],
|
table_data,
|
||||||
stg.depth_reshape[self.fileListWidget.currentRow()][:, freq_ind])),
|
np.vstack(
|
||||||
stg.BS_raw_data_reshape[self.fileListWidget.currentRow()][:, freq_ind]))
|
(
|
||||||
))
|
np.vstack(
|
||||||
|
(
|
||||||
|
stg.time_reshape[file_id][:, freq_ind],
|
||||||
|
stg.depth_reshape[file_id][:, freq_ind]
|
||||||
|
)
|
||||||
|
),
|
||||||
|
stg.BS_raw_data_reshape[file_id][:, freq_ind]
|
||||||
|
)
|
||||||
|
)
|
||||||
|
))
|
||||||
|
|
||||||
stg.DataFrame_acoustic = pd.DataFrame(None)
|
stg.DataFrame_acoustic = pd.DataFrame(None)
|
||||||
stg.DataFrame_acoustic = pd.DataFrame(data=table_data.transpose(), columns=header_list)
|
stg.DataFrame_acoustic = pd.DataFrame(
|
||||||
|
data=table_data.transpose(), columns=header_list
|
||||||
|
)
|
||||||
|
|
||||||
self.tableModel = TableModel(stg.DataFrame_acoustic)
|
self.tableModel = TableModel(stg.DataFrame_acoustic)
|
||||||
self.tableView.setModel(self.tableModel)
|
self.tableView.setModel(self.tableModel)
|
||||||
|
|
@ -1994,27 +2074,45 @@ class AcousticDataTab(QWidget):
|
||||||
''' tmin and tmax are filled with min and max of time when data are uploaded and
|
''' tmin and tmax are filled with min and max of time when data are uploaded and
|
||||||
double slider of time are updated with these values '''
|
double slider of time are updated with these values '''
|
||||||
|
|
||||||
if self.fileListWidget.currentRow() != -1:
|
if self.fileListWidget.currentRow() == -1:
|
||||||
|
return
|
||||||
|
|
||||||
# --- tmim / tmax ---
|
file_id = self.fileListWidget.currentRow()
|
||||||
tmin_indice = np.where(np.abs(stg.time[self.fileListWidget.currentRow()][0, :] - np.nanmin(
|
|
||||||
stg.time[self.fileListWidget.currentRow()][0, :])) ==
|
|
||||||
np.nanmin(np.abs(stg.time[self.fileListWidget.currentRow()][0, :] - np.nanmin(
|
|
||||||
stg.time[self.fileListWidget.currentRow()][0, :]))))[0][0]
|
|
||||||
tmin_value = np.round(np.nanmin(stg.time[self.fileListWidget.currentRow()][0, :]), 2)
|
|
||||||
stg.tmin[self.fileListWidget.currentRow()] = (tmin_indice, tmin_value)
|
|
||||||
|
|
||||||
tmax_indice = np.where(np.abs(stg.time[self.fileListWidget.currentRow()][0, :] - np.nanmax(
|
tmin_indice = np.where(
|
||||||
stg.time[self.fileListWidget.currentRow()][0, :])) ==
|
np.abs(
|
||||||
np.nanmin(np.abs(stg.time[self.fileListWidget.currentRow()][0, :] - np.nanmax(
|
stg.time[file_id][0, :] - np.nanmin(stg.time[file_id][0, :])
|
||||||
stg.time[self.fileListWidget.currentRow()][0, :]))))[0][0]
|
) == np.nanmin(
|
||||||
tmax_value = np.round(np.nanmax(stg.time[self.fileListWidget.currentRow()][0, :]), 2)
|
np.abs(
|
||||||
stg.tmax[self.fileListWidget.currentRow()] = (tmax_indice + 1, tmax_value)
|
stg.time[file_id][0, :]
|
||||||
|
- np.nanmin(stg.time[file_id][0, :])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)[0][0]
|
||||||
|
|
||||||
self.set_range_for_time_boundaries_option()
|
tmin_value = np.round(
|
||||||
|
np.nanmin(stg.time[file_id][0, :]), 2
|
||||||
|
)
|
||||||
|
|
||||||
|
stg.tmin[file_id] = (tmin_indice, tmin_value)
|
||||||
|
|
||||||
|
tmax_indice = np.where(
|
||||||
|
np.abs(
|
||||||
|
stg.time[file_id][0, :] - np.nanmax(stg.time[file_id][0, :])
|
||||||
|
) == np.nanmin(
|
||||||
|
np.abs(
|
||||||
|
stg.time[file_id][0, :]
|
||||||
|
- np.nanmax(stg.time[file_id][0, :])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)[0][0]
|
||||||
|
|
||||||
|
tmax_value = np.round(np.nanmax(stg.time[file_id][0, :]), 2)
|
||||||
|
stg.tmax[file_id] = (tmax_indice + 1, tmax_value)
|
||||||
|
|
||||||
|
self.set_range_for_time_boundaries_option()
|
||||||
|
|
||||||
def set_range_for_time_boundaries_option(self):
|
def set_range_for_time_boundaries_option(self):
|
||||||
|
|
||||||
self.label_time_min.clear()
|
self.label_time_min.clear()
|
||||||
self.label_time_min.setText("%.5s" % str(stg.time[self.fileListWidget.currentRow()][0, 0]))
|
self.label_time_min.setText("%.5s" % str(stg.time[self.fileListWidget.currentRow()][0, 0]))
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue