From 07728bc7716d61dd4a74eba12c56bf7a28ca6244 Mon Sep 17 00:00:00 2001 From: brahim Date: Thu, 3 Oct 2024 17:38:15 +0200 Subject: [PATCH] All QDoubleSpinbox in Measurement information and Calibration parameter are replaced by QlineEdit. Unit are moved outside of the QLineEdit in a QLabel. --- View/acoustic_data_tab.py | 177 +++++++++++------ View/sediment_calibration_tab.py | 323 ++++++++++++++++++++++--------- 2 files changed, 348 insertions(+), 152 deletions(-) diff --git a/View/acoustic_data_tab.py b/View/acoustic_data_tab.py index 036f853..e1e3c3d 100644 --- a/View/acoustic_data_tab.py +++ b/View/acoustic_data_tab.py @@ -258,10 +258,13 @@ class AcousticDataTab(QWidget): # self.spinbox_temperature.setKeyboardTracking(False) self.lineEdit_temperature = QLineEdit() - self.lineEdit_temperature.setText("0.00 °C") - self.lineEdit_temperature.setMaximumWidth(150) + self.lineEdit_temperature.setText("0.00") + self.lineEdit_temperature.setMaximumWidth(100) # self.lineEdit_temperature.setValidator(QDoubleValidator) + self.label_temperature_unit = QLabel() + self.label_temperature_unit.setText("°C") + self.label_speed_of_sound = QLabel("Speed of sound : ") # self.spinbox_speed_of_sound = QDoubleSpinBox() @@ -269,12 +272,16 @@ class AcousticDataTab(QWidget): # self.spinbox_speed_of_sound.setMaximum(1e5) self.lineEdit_speed_of_sound = QLineEdit() - self.lineEdit_speed_of_sound.setMaximumWidth(150) + self.lineEdit_speed_of_sound.setMaximumWidth(100) + + self.label_speed_of_sound_unit = QLabel() + self.label_speed_of_sound_unit.setText("m/s") + - self.label_sound_attenuation = QLabel("Sound attenuation : ") self.label_freq = QLabel() self.combobox_frequency_information = QComboBox() + self.combobox_frequency_information.setMaximumWidth(100) self.label_kt = QLabel() # self.spinbox_kt = QDoubleSpinBox() @@ -282,17 +289,25 @@ class AcousticDataTab(QWidget): # self.spinbox_kt.setMaximum(1e6) self.lineEdit_kt = QLineEdit() - self.lineEdit_kt.setMaximumWidth(150) + self.lineEdit_kt.setMaximumWidth(100) + + self.label_kt_unit = QLabel() + self.label_kt_unit.setText("V.m^1.5") self.checkbox_kt = QCheckBox() self.checkbox_kt.setChecked(True) + self.label_sound_attenuation = QLabel("Sound attenuation : ") + # self.spinbox_sound_attenuation = QDoubleSpinBox() # self.spinbox_sound_attenuation.setSuffix("/m") # self.spinbox_sound_attenuation.setDecimals(5) self.lineEdit_sound_attenuation = QLineEdit() - self.lineEdit_sound_attenuation.setMaximumWidth(150) + self.lineEdit_sound_attenuation.setMaximumWidth(100) + + self.label_sound_attenuation_unit = QLabel() + self.label_sound_attenuation_unit.setText("/m") self.label_profiles = QLabel() self.label_profiles_value = QLabel() @@ -314,7 +329,7 @@ class AcousticDataTab(QWidget): # self.spinbox_rx.setMaximum(1e6) self.lineEdit_rx = QLineEdit() - self.lineEdit_rx.setMaximumWidth(150) + self.lineEdit_rx.setMaximumWidth(100) self.checkbox_rx = QCheckBox() @@ -324,7 +339,7 @@ class AcousticDataTab(QWidget): # self.spinbox_tx.setMaximum(1e6) self.lineEdit_tx = QLineEdit() - self.lineEdit_tx.setMaximumWidth(150) + self.lineEdit_tx.setMaximumWidth(100) self.checkbox_tx = QCheckBox() @@ -1448,14 +1463,17 @@ class AcousticDataTab(QWidget): self.label_temperature.hide() # self.spinbox_temperature.hide() self.lineEdit_temperature.hide() + self.label_temperature_unit.hide() self.label_speed_of_sound.hide() # self.spinbox_speed_of_sound.hide() self.lineEdit_speed_of_sound.hide() + self.label_speed_of_sound_unit.hide() self.label_sound_attenuation.hide() # self.spinbox_sound_attenuation.hide() self.lineEdit_sound_attenuation.hide() + self.label_sound_attenuation_unit.hide() self.label_freq.hide() self.combobox_frequency_information.hide() @@ -1471,6 +1489,7 @@ class AcousticDataTab(QWidget): self.label_kt.hide() # self.spinbox_kt.hide() self.lineEdit_kt.hide() + self.label_kt_unit.hide() self.checkbox_kt.hide() self.label_rx.hide() @@ -1493,14 +1512,17 @@ class AcousticDataTab(QWidget): self.label_temperature.hide() # self.spinbox_temperature.hide() self.lineEdit_temperature.hide() + self.label_temperature_unit.hide() self.label_speed_of_sound.hide() # self.spinbox_speed_of_sound.hide() self.lineEdit_speed_of_sound.hide() + self.label_speed_of_sound_unit.hide() self.label_sound_attenuation.hide() # self.spinbox_sound_attenuation.hide() self.lineEdit_sound_attenuation.hide() + self.label_sound_attenuation_unit.hide() self.label_freq.hide() self.combobox_frequency_information.hide() @@ -1516,6 +1538,7 @@ class AcousticDataTab(QWidget): self.label_kt.hide() # self.spinbox_kt.hide() self.lineEdit_kt.hide() + self.label_kt_unit.hide() self.checkbox_kt.hide() self.label_rx.hide() @@ -1551,6 +1574,8 @@ class AcousticDataTab(QWidget): # self.spinbox_temperature.show() self.lineEdit_temperature.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_temperature, 2, 1, 1, 1) + self.label_temperature_unit.show() + self.gridLayout_goupbox_info.addWidget(self.label_temperature_unit, 2, 2, 1, 1, Qt.AlignLeft) self.temperature_value() self.label_speed_of_sound.show() @@ -1558,6 +1583,8 @@ class AcousticDataTab(QWidget): # self.spinbox_speed_of_sound.show() self.lineEdit_speed_of_sound.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_speed_of_sound, 3, 1, 1, 1) + self.label_speed_of_sound_unit.show() + self.gridLayout_goupbox_info.addWidget(self.label_speed_of_sound_unit, 3, 2, 1, 1, Qt.AlignLeft) self.label_freq.show() self.gridLayout_goupbox_info.addWidget(self.label_freq, 4, 0, 1, 1) @@ -1569,14 +1596,18 @@ class AcousticDataTab(QWidget): # self.spinbox_kt.show() self.lineEdit_kt.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_kt, 5, 1, 1, 1) + self.label_kt_unit.show() + self.gridLayout_goupbox_info.addWidget(self.label_kt_unit, 5, 2, 1, 1, Qt.AlignLeft) self.checkbox_kt.show() - self.gridLayout_goupbox_info.addWidget(self.checkbox_kt, 5, 2, 1, 1) + self.gridLayout_goupbox_info.addWidget(self.checkbox_kt, 5, 3, 1, 1, Qt.AlignCenter) self.label_sound_attenuation.show() self.gridLayout_goupbox_info.addWidget(self.label_sound_attenuation, 6, 0, 1, 1) # self.spinbox_sound_attenuation.show() self.lineEdit_sound_attenuation.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_sound_attenuation, 6, 1, 1, 1) + self.label_sound_attenuation_unit.show() + self.gridLayout_goupbox_info.addWidget(self.label_sound_attenuation_unit, 6, 2, 1, 1, Qt.AlignLeft) self.label_profiles.show() self.gridLayout_goupbox_info.addWidget(self.label_profiles, 7, 0, 1, 1) @@ -1599,7 +1630,7 @@ class AcousticDataTab(QWidget): self.lineEdit_rx.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_rx, 14, 1, 1, 1) self.checkbox_rx.show() - self.gridLayout_goupbox_info.addWidget(self.checkbox_rx, 14, 2, 1, 1) + self.gridLayout_goupbox_info.addWidget(self.checkbox_rx, 14, 3, 1, 1, Qt.AlignCenter) self.label_tx.show() self.gridLayout_goupbox_info.addWidget(self.label_tx, 15, 0, 1, 1) @@ -1607,7 +1638,7 @@ class AcousticDataTab(QWidget): self.lineEdit_tx.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_tx, 15, 1, 1, 1) self.checkbox_tx.show() - self.gridLayout_goupbox_info.addWidget(self.checkbox_tx, 15, 2, 1, 1) + self.gridLayout_goupbox_info.addWidget(self.checkbox_tx, 15, 3, 1, 1, Qt.AlignCenter) def groupbox_measurement_information_UBSediFlow(self): # --- Hide Aquascat information --- @@ -1619,14 +1650,17 @@ class AcousticDataTab(QWidget): self.label_temperature.hide() # self.spinbox_temperature.hide() self.lineEdit_temperature.hide() + self.label_temperature_unit.hide() self.label_speed_of_sound.hide() # self.spinbox_speed_of_sound.hide() self.lineEdit_speed_of_sound.hide() + self.label_speed_of_sound_unit.hide() self.label_sound_attenuation.hide() # self.spinbox_sound_attenuation.hide() self.lineEdit_sound_attenuation.hide() + self.label_sound_attenuation_unit.hide() self.label_freq.hide() self.combobox_frequency_information.hide() @@ -1642,6 +1676,7 @@ class AcousticDataTab(QWidget): self.label_kt.hide() # self.spinbox_kt.hide() self.lineEdit_kt.hide() + self.label_kt_unit.hide() self.checkbox_kt.hide() self.label_rx.hide() @@ -1676,12 +1711,16 @@ class AcousticDataTab(QWidget): # self.spinbox_temperature.show() self.lineEdit_temperature.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_temperature, 2, 1, 1, 1) + self.label_temperature_unit.show() + self.gridLayout_goupbox_info.addWidget(self.label_temperature_unit, 2, 2, 1, 1, Qt.AlignLeft) self.label_speed_of_sound.show() self.gridLayout_goupbox_info.addWidget(self.label_speed_of_sound, 3, 0, 1, 1) # self.spinbox_speed_of_sound.show() self.lineEdit_speed_of_sound.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_speed_of_sound, 3, 1, 1, 1) + self.label_speed_of_sound_unit.show() + self.gridLayout_goupbox_info.addWidget(self.label_speed_of_sound_unit, 3, 2, 1, 1, Qt.AlignLeft) self.label_freq.show() self.gridLayout_goupbox_info.addWidget(self.label_freq, 4, 0, 1, 1) @@ -1693,14 +1732,18 @@ class AcousticDataTab(QWidget): # self.spinbox_kt.show() self.lineEdit_kt.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_kt, 5, 1, 1, 1) + self.label_kt_unit.show() + self.gridLayout_goupbox_info.addWidget(self.label_kt_unit, 5, 2, 1, 1, Qt.AlignLeft) self.checkbox_kt.show() - self.gridLayout_goupbox_info.addWidget(self.checkbox_kt, 5, 2, 1, 1) + self.gridLayout_goupbox_info.addWidget(self.checkbox_kt, 5, 3, 1, 1, Qt.AlignCenter) self.label_sound_attenuation.show() self.gridLayout_goupbox_info.addWidget(self.label_sound_attenuation, 6, 0, 1, 1) # self.spinbox_sound_attenuation.show() self.lineEdit_sound_attenuation.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_sound_attenuation, 6, 1, 1, 1) + self.label_sound_attenuation_unit.show() + self.gridLayout_goupbox_info.addWidget(self.label_sound_attenuation_unit, 6, 2, 1, 1, Qt.AlignLeft) self.label_profiles.show() self.gridLayout_goupbox_info.addWidget(self.label_profiles, 7, 0, 1, 1) @@ -1723,7 +1766,7 @@ class AcousticDataTab(QWidget): self.lineEdit_rx.hide() self.gridLayout_goupbox_info.addWidget(self.lineEdit_rx, 14, 1, 1, 1) self.checkbox_rx.show() - self.gridLayout_goupbox_info.addWidget(self.checkbox_rx, 14, 2, 1, 1) + self.gridLayout_goupbox_info.addWidget(self.checkbox_rx, 14, 3, 1, 1, Qt.AlignCenter) self.label_tx.show() self.gridLayout_goupbox_info.addWidget(self.label_tx, 15, 0, 1, 1) @@ -1731,24 +1774,31 @@ class AcousticDataTab(QWidget): self.lineEdit_tx.show() self.gridLayout_goupbox_info.addWidget(self.lineEdit_tx, 15, 1, 1, 1) self.checkbox_tx.show() - self.gridLayout_goupbox_info.addWidget(self.checkbox_tx, 15, 2, 1, 1) + self.gridLayout_goupbox_info.addWidget(self.checkbox_tx, 15, 2, 1, 1, Qt.AlignCenter) def temperature_value(self): - print("self.lineEdit_temperature.text() ", self.lineEdit_temperature.text()[-3:]) - if self.lineEdit_temperature.text()[-3:] == " °C": - if findall(r",", self.lineEdit_temperature.text()[:-3]): - stg.temperature = float(self.lineEdit_temperature.text()[:-3].replace(',', '.')) - self.lineEdit_temperature.setText(self.lineEdit_temperature.text()[:-3].replace(',', '.') + " °C") - else: - stg.temperature = float(self.lineEdit_temperature.text()[:-3]) - self.lineEdit_temperature.setText(self.lineEdit_temperature.text()[:-3] + " °C") + print("self.lineEdit_temperature.text() ", self.lineEdit_temperature.text()) + # if self.lineEdit_temperature.text()[-3:] == " °C": + # if findall(r",", self.lineEdit_temperature.text()[:-3]): + # stg.temperature = float(self.lineEdit_temperature.text()[:-3].replace(',', '.')) + # self.lineEdit_temperature.setText(self.lineEdit_temperature.text()[:-3].replace(',', '.') + " °C") + # else: + # stg.temperature = float(self.lineEdit_temperature.text()[:-3]) + # self.lineEdit_temperature.setText(self.lineEdit_temperature.text()[:-3] + " °C") + # else: + # if findall(r",", self.lineEdit_temperature.text()): + # stg.temperature = float(self.lineEdit_temperature.text().replace(',', '.')) + # self.lineEdit_temperature.setText(self.lineEdit_temperature.text().replace(',', '.') + " °C") + # else: + # stg.temperature = float(self.lineEdit_temperature.text()) + # self.lineEdit_temperature.setText(self.lineEdit_temperature.text() + " °C") + + if findall(r",", self.lineEdit_temperature.text()): + stg.temperature = float(self.lineEdit_temperature.text().replace(',', '.')) + self.lineEdit_temperature.setText(self.lineEdit_temperature.text().replace(',', '.')) else: - if findall(r",", self.lineEdit_temperature.text()): - stg.temperature = float(self.lineEdit_temperature.text().replace(',', '.')) - self.lineEdit_temperature.setText(self.lineEdit_temperature.text().replace(',', '.') + " °C") - else: - stg.temperature = float(self.lineEdit_temperature.text()) - self.lineEdit_temperature.setText(self.lineEdit_temperature.text() + " °C") + stg.temperature = float(self.lineEdit_temperature.text()) + self.lineEdit_temperature.setText(self.lineEdit_temperature.text()) print(f"stg.temperature : {stg.temperature}") self.water_velocity() self.water_attenuation() @@ -1756,14 +1806,14 @@ class AcousticDataTab(QWidget): def water_velocity(self): """Computing sond speed from Bilaniuk and Wong 1993""" C = (1.40238744 * 1e3 + - 5.03836171 * float(self.lineEdit_temperature.text()[:-3]) - - 5.81172916 * 1e-2 * float(self.lineEdit_temperature.text()[:-3]) ** 2 + - 3.34638117 * 1e-4 * float(self.lineEdit_temperature.text()[:-3]) ** 3 - - 1.48259672 * 1e-6 * float(self.lineEdit_temperature.text()[:-3]) ** 4 + - 3.16585020 * 1e-9 * float(self.lineEdit_temperature.text()[:-3]) ** 5) + 5.03836171 * float(self.lineEdit_temperature.text()) - + 5.81172916 * 1e-2 * float(self.lineEdit_temperature.text()) ** 2 + + 3.34638117 * 1e-4 * float(self.lineEdit_temperature.text()) ** 3 - + 1.48259672 * 1e-6 * float(self.lineEdit_temperature.text()) ** 4 + + 3.16585020 * 1e-9 * float(self.lineEdit_temperature.text()) ** 5) stg.water_velocity = C - self.lineEdit_speed_of_sound.setText(str(round(stg.water_velocity, 2)) + " m/s") + self.lineEdit_speed_of_sound.setText(str(round(stg.water_velocity, 2))) print("water velocity ", stg.water_velocity) @@ -1776,15 +1826,15 @@ class AcousticDataTab(QWidget): for f in stg.freq[self.fileListWidget.currentRow()]: if float(self.lineEdit_temperature.text()[:-3]) > 20: alpha = ((3.964 * 1e-4 - - 1.146 * 1e-5 * float(self.lineEdit_temperature.text()[:-3]) + - 1.45 * 1e-7 * float(self.lineEdit_temperature.text()[:-3]) ** 2 - - 6.5 * 1e-10 * float(self.lineEdit_temperature.text()[:-3]) ** 3) * + 1.146 * 1e-5 * float(self.lineEdit_temperature.text()) + + 1.45 * 1e-7 * float(self.lineEdit_temperature.text()) ** 2 - + 6.5 * 1e-10 * float(self.lineEdit_temperature.text()) ** 3) * 1e-3 * (np.log(10) / 20) * (f * 1e-3) ** 2) else: alpha = ((4.937 * 1e-4 - - 2.59 * 1e-5 * float(self.lineEdit_temperature.text()[:-3]) + - 9.11 * 1e-7 * float(self.lineEdit_temperature.text()[:-3]) ** 2 - - 1.5 * 1e-8 * float(self.lineEdit_temperature.text()[:-3]) ** 3) * + 2.59 * 1e-5 * float(self.lineEdit_temperature.text()) + + 9.11 * 1e-7 * float(self.lineEdit_temperature.text()) ** 2 - + 1.5 * 1e-8 * float(self.lineEdit_temperature.text()) ** 3) * 1e-3 * (np.log(10) / 20) * (f * 1e-3) ** 2) stg.water_attenuation[self.fileListWidget.currentRow()].append(alpha) @@ -1793,8 +1843,7 @@ class AcousticDataTab(QWidget): # [self.combobox_frequency_information.currentIndex()]) self.lineEdit_sound_attenuation.setText( str("%.6f" % stg.water_attenuation[self.fileListWidget.currentRow()][ - self.combobox_frequency_information.currentIndex()]) + - r" /m") + self.combobox_frequency_information.currentIndex()])) print("water attenuation ", stg.water_attenuation) @@ -1947,10 +1996,10 @@ class AcousticDataTab(QWidget): self.label_hour_acoustic_file.clear() self.label_hour_acoustic_file.setText("Hour: ") # self.spinbox_temperature.setValue(0) - self.lineEdit_temperature.setText("0.00 °C") + self.lineEdit_temperature.setText("0.00") # self.spinbox_speed_of_sound.setValue(0) # self.spinbox_sound_attenuation.setValue(0) - self.lineEdit_sound_attenuation.setText(r"0.00 m^{-1}") + self.lineEdit_sound_attenuation.setText("0.00") self.combobox_frequency_information.clear() self.label_profiles_value.clear() self.label_profiles_per_sec_value.clear() @@ -1960,7 +2009,7 @@ class AcousticDataTab(QWidget): self.label_pings_per_sec_value.clear() self.label_pings_per_profile_value.clear() # self.spinbox_kt.setValue(0) - self.lineEdit_kt.setText("0.00 V.m^1.5") + self.lineEdit_kt.setText("0.00") # self.spinbox_rx.setValue(0) self.lineEdit_rx.setText("0.00") # self.spinbox_tx.setValue(0) @@ -2049,10 +2098,10 @@ class AcousticDataTab(QWidget): self.label_hour_acoustic_file.clear() self.label_hour_acoustic_file.setText("Hour: ") # self.spinbox_temperature.setValue(0) - self.lineEdit_temperature.setText("0.00 °C") + self.lineEdit_temperature.setText("0.00") # self.spinbox_speed_of_sound.setValue(0) # self.spinbox_sound_attenuation.setValue(0) - self.lineEdit_sound_attenuation.setText(r"0.00 m^{-1}") + self.lineEdit_sound_attenuation.setText("0.00") self.combobox_frequency_information.clear() self.label_profiles_value.clear() self.label_profiles_per_sec_value.clear() @@ -2062,7 +2111,7 @@ class AcousticDataTab(QWidget): self.label_pings_per_sec_value.clear() self.label_pings_per_profile_value.clear() # self.spinbox_kt.setValue(0) - self.lineEdit_kt.setText("0.00 V.m^1.5") + self.lineEdit_kt.setText("0.00") # self.spinbox_rx.setValue(0) self.lineEdit_rx.setText("0.00") # self.spinbox_tx.setValue(0) @@ -2336,7 +2385,7 @@ class AcousticDataTab(QWidget): self.combobox_frequency_information.currentIndexChanged.connect(self.combobox_frequency_information_update) # self.spinbox_temperature.setValue(0) - self.lineEdit_temperature.setText("0.00 °C") + self.lineEdit_temperature.setText("0.00") self.label_profiles_value.setText(str(stg.nb_profiles[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()])) @@ -2394,8 +2443,7 @@ class AcousticDataTab(QWidget): # # self.checkbox_kt.stateChanged.connect(self.activate_unactivate_spinbox_kt) # self.spinbox_kt.valueChanged.connect(self.kt_value) - self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentText()]) + - " V.m^1.5") + self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentText()])) self.lineEdit_kt.setEnabled(True) self.lineEdit_kt.returnPressed.connect(self.kt_value) @@ -2512,8 +2560,7 @@ class AcousticDataTab(QWidget): # [self.combobox_frequency_information.currentIndex()]) self.lineEdit_sound_attenuation.setText( str("%.6f" % stg.water_attenuation[self.fileListWidget.currentRow()][ - self.combobox_frequency_information.currentIndex()]) + - r" /m") + self.combobox_frequency_information.currentIndex()])) self.label_profiles_value.clear() self.gridLayout_goupbox_info.removeWidget(self.label_profiles_value) @@ -2564,11 +2611,11 @@ class AcousticDataTab(QWidget): if self.checkbox_kt.isChecked(): if self.combobox_frequency_information.count() > 0: # self.spinbox_kt.setValue(stg.kt_corrected[self.combobox_frequency_information.currentText()]) - self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentText()]) + " V.m^1.5") + self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentText()])) else: # print("combobox information update : checkbox unchecked") # self.spinbox_kt.setValue(stg.kt_read[self.combobox_frequency_information.currentIndex()]) - self.lineEdit_kt.setText(str("%.4f" % stg.kt_read[self.combobox_frequency_information.currentIndex()]) + " V.m^1.5") + self.lineEdit_kt.setText(str("%.4f" % stg.kt_read[self.combobox_frequency_information.currentIndex()])) # self.spinbox_kt.setSuffix(f" V.m^{1.5}") # self.spinbox_rx.clear() @@ -2589,7 +2636,7 @@ class AcousticDataTab(QWidget): self.lineEdit_kt.setEnabled(True) if stg.kt_corrected: # self.spinbox_kt.setValue(stg.kt_corrected[self.combobox_frequency_information.currentText()]) - self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentText()]) + " V.m^1.5") + self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentText()])) else: # self.spinbox_kt.setDisabled(True) self.lineEdit_kt.setDisabled(True) @@ -2597,7 +2644,7 @@ class AcousticDataTab(QWidget): print(self.combobox_frequency_information.currentIndex()) print(stg.kt_read) # self.spinbox_kt.setValue(stg.kt_read[self.combobox_frequency_information.currentIndex()]) - self.lineEdit_kt.setText(str("%.4f" % stg.kt_read[self.combobox_frequency_information.currentIndex()]) + " V.m^1.5") + self.lineEdit_kt.setText(str("%.4f" % stg.kt_read[self.combobox_frequency_information.currentIndex()])) def activate_unactivate_spinbox_rx(self): if self.checkbox_rx.isChecked(): @@ -2620,15 +2667,21 @@ class AcousticDataTab(QWidget): # print(f"0 stg.kt_corrected {stg.kt_corrected}") if self.fileListWidget.count() > 0: if self.checkbox_kt.isChecked(): - if self.lineEdit_kt.text()[-8:] == " V.m^1.5": + + if findall(r",", self.lineEdit_kt.text()): stg.kt_corrected[self.combobox_frequency_information.currentText()] = ( - float(self.lineEdit_kt.text()[:-8])) - self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentText()]) + " V.m^1.5") + float(self.lineEdit_kt.text().replace(',', '.'))) + self.lineEdit_kt.setText("%.4f" % float(self.lineEdit_kt.text().replace(',', '.'))) else: stg.kt_corrected[self.combobox_frequency_information.currentText()] = ( float(self.lineEdit_kt.text())) - self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[ - self.combobox_frequency_information.currentText()]) + " V.m^1.5") + self.lineEdit_kt.setText("%.4f" % float(self.lineEdit_kt.text())) + + # else: + # stg.kt_corrected[self.combobox_frequency_information.currentText()] = ( + # float(self.lineEdit_kt.text())) + # self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[ + # self.combobox_frequency_information.currentText()])) # print(f"1 stg.kt_read : {stg.kt_read}") diff --git a/View/sediment_calibration_tab.py b/View/sediment_calibration_tab.py index 552b13e..fed9a43 100644 --- a/View/sediment_calibration_tab.py +++ b/View/sediment_calibration_tab.py @@ -4,7 +4,7 @@ import matplotlib.pyplot as plt import pandas as pd from PyQt5.QtWidgets import (QWidget, QMainWindow, QApplication, QVBoxLayout, QHBoxLayout, QGroupBox, QComboBox, QGridLayout, QLabel, QPushButton, QSpinBox, QDoubleSpinBox, QAbstractSpinBox, QSpacerItem, - QSizePolicy, QSlider, QLineEdit, QDial, QFileDialog, QMessageBox) + QSizePolicy, QSlider, QLineEdit, QDial, QFileDialog, QMessageBox, QFrame) from PyQt5.QtCore import QCoreApplication, Qt, QPropertyAnimation, QSize from PyQt5.QtGui import QStandardItemModel, QIcon, QPixmap, QFont @@ -228,12 +228,15 @@ class SedimentCalibrationTab(QWidget): self.groupbox_sediment_calibration.setTitle("Step 3 : Compute Calibration") self.verticalLayout_groupbox_sediment_calibration = QVBoxLayout(self.groupbox_sediment_calibration) + self.horizontalLayout_groupboxes_Import_Compute_Calibration = QHBoxLayout() + self.verticalLayout_groupbox_sediment_calibration.addLayout(self.horizontalLayout_groupboxes_Import_Compute_Calibration) + # --- Groupbox import calibration file --- self.groupbox_sediment_calibration_import = QGroupBox() self.groupbox_sediment_calibration_import.setTitle("Import sediment calibration file") self.groupbox_sediment_calibration_import.setCheckable(True) self.groupbox_sediment_calibration_import.setChecked(True) - self.verticalLayout_groupbox_sediment_calibration.addWidget(self.groupbox_sediment_calibration_import) + self.horizontalLayout_groupboxes_Import_Compute_Calibration.addWidget(self.groupbox_sediment_calibration_import) self.gridLayout_groupbox_sediment_calibration_import = QGridLayout(self.groupbox_sediment_calibration_import) @@ -249,7 +252,7 @@ class SedimentCalibrationTab(QWidget): self.groupbox_sediment_calibration_compute.setTitle("Compute sediment calibration") self.groupbox_sediment_calibration_compute.setCheckable(True) self.groupbox_sediment_calibration_compute.setChecked(False) - self.verticalLayout_groupbox_sediment_calibration.addWidget(self.groupbox_sediment_calibration_compute) + self.horizontalLayout_groupboxes_Import_Compute_Calibration.addWidget(self.groupbox_sediment_calibration_compute) self.gridLayout_groupbox_sediment_calibration_compute = QGridLayout(self.groupbox_sediment_calibration_compute) @@ -263,79 +266,163 @@ class SedimentCalibrationTab(QWidget): self.verticalLayout_groupbox_sediment_calibration.addWidget(self.groupbox_sediment_calibration_parameter) + self.label_temperature = QLabel() + self.label_temperature.setText("T = 0.00 °C") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_temperature, 0, 0, 1, 1) + self.label_freq1 = QLabel("Frequency 1") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_freq1, 1, 1, 1, 1) + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_freq1, 1, 1, 1, 2, Qt.AlignCenter) self.label_freq2 = QLabel("Frequency 2") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_freq2, 1, 2, 1, 1) + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_freq2, 1, 3, 1, 2, Qt.AlignCenter) + + self.label_kt = QLabel() + self.label_kt.setText("kt") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_kt, 2, 0, 1, 1, Qt.AlignCenter) + + self.label_kt_freq1 = QLabel() + self.label_kt_freq1.setText("0.00 V.m^1.5") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_kt_freq1, 2, 1, 1, 2, Qt.AlignCenter) + + self.label_kt_freq2 = QLabel() + self.label_kt_freq2.setText("0.00 V.m^1.5") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_kt_freq2, 2, 3, 1, 2, Qt.AlignCenter) + + self.horizontalLine = QFrame() + self.horizontalLine.setFrameShape(QFrame.HLine) + self.horizontalLine.setFrameShadow(QFrame.Sunken) + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.horizontalLine, 3, 0, 1, 6) self.label_ks = QLabel() self.label_ks.setText("ks") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_ks, 2, 0, 1, 1) + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_ks, 4, 0, 1, 1, Qt.AlignCenter) - self.spinbox_ks_freq1 = QDoubleSpinBox() - self.spinbox_ks_freq1.setDecimals(8) - self.spinbox_ks_freq1.setSuffix(" m/kg^0.5") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.spinbox_ks_freq1, 2, 1, 1, 1) + # self.spinbox_ks_freq1 = QDoubleSpinBox() + # self.spinbox_ks_freq1.setDecimals(8) + # self.spinbox_ks_freq1.setSuffix(" m/kg^0.5") + self.lineEdit_ks_freq1 = QLineEdit() + self.lineEdit_ks_freq1.setMaximumWidth(100) + self.lineEdit_ks_freq1.setText("0.00") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.lineEdit_ks_freq1, 4, 1, 1, 1) - self.spinbox_ks_freq2 = QDoubleSpinBox() - self.spinbox_ks_freq2.setDecimals(8) - self.spinbox_ks_freq2.setSuffix(" m/kg^0.5") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.spinbox_ks_freq2, 2, 2, 1, 1) + self.label_ks_freq1_unit = QLabel() + self.label_ks_freq1_unit.setText("m/kg^0.5") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_ks_freq1_unit, 4, 2, 1, 1, + Qt.AlignLeft) + + # self.spinbox_ks_freq2 = QDoubleSpinBox() + # self.spinbox_ks_freq2.setDecimals(8) + # self.spinbox_ks_freq2.setSuffix(" m/kg^0.5") + self.lineEdit_ks_freq2 = QLineEdit() + self.lineEdit_ks_freq2.setMaximumWidth(100) + self.lineEdit_ks_freq2.setText("0.00") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.lineEdit_ks_freq2, 4, 3, 1, 1) + + self.label_ks_freq2_unit = QLabel() + self.label_ks_freq2_unit.setText("m/kg^0.5") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_ks_freq2_unit, 4, 4, 1, 1, + Qt.AlignLeft) self.label_sv = QLabel() self.label_sv.setText("sv") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_sv, 3, 0, 1, 1) + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_sv, 5, 0, 1, 1, Qt.AlignCenter) - self.spinbox_sv_freq1 = QDoubleSpinBox() - self.spinbox_sv_freq1.setDecimals(8) - self.spinbox_sv_freq1.setSuffix(" /m") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.spinbox_sv_freq1, 3, 1, 1, 1) + # self.spinbox_sv_freq1 = QDoubleSpinBox() + # self.spinbox_sv_freq1.setDecimals(8) + # self.spinbox_sv_freq1.setSuffix(" /m") + self.lineEdit_sv_freq1 = QLineEdit() + self.lineEdit_sv_freq1.setMaximumWidth(100) + self.lineEdit_sv_freq1.setText("0.00") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.lineEdit_sv_freq1, 5, 1, 1, 1) - self.spinbox_sv_freq2 = QDoubleSpinBox() - self.spinbox_sv_freq2.setDecimals(8) - self.spinbox_sv_freq2.setSuffix(" /m") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.spinbox_sv_freq2, 3, 2, 1, 1) + self.label_sv_freq1_unit = QLabel() + self.label_sv_freq1_unit.setText("/m") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_sv_freq1_unit, 5, 2, 1, 1) + + # self.spinbox_sv_freq2 = QDoubleSpinBox() + # self.spinbox_sv_freq2.setDecimals(8) + # self.spinbox_sv_freq2.setSuffix(" /m") + self.lineEdit_sv_freq2 = QLineEdit() + self.lineEdit_sv_freq2.setMaximumWidth(100) + self.lineEdit_sv_freq2.setText("0.00") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.lineEdit_sv_freq2, 5, 3, 1, 1) + + self.label_sv_freq2_unit = QLabel() + self.label_sv_freq2_unit.setText("/m") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_sv_freq2_unit, 5, 4, 1, 1) self.label_X = QLabel() self.label_X.setText("X") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_X, 4, 0, 1, 1) + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_X, 6, 0, 1, 1, Qt.AlignCenter) - self.spinbox_X = QDoubleSpinBox() - self.spinbox_X.setDecimals(2) - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.spinbox_X, 4, 1, 1, 2) + # self.spinbox_X = QDoubleSpinBox() + # self.spinbox_X.setDecimals(2) + self.lineEdit_X = QLineEdit() + self.lineEdit_X.setMaximumWidth(100) + self.lineEdit_X.setText("0.00") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.lineEdit_X, 6, 2, 1, 1, Qt.AlignCenter) self.label_alphas = QLabel() self.label_alphas.setText("\u03B1s") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_alphas, 5, 0, 1, 1) + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_alphas, 7, 0, 1, 1, Qt.AlignCenter) - self.spinbox_alphas_freq1 = QDoubleSpinBox() - self.spinbox_alphas_freq1.setDecimals(4) - self.spinbox_alphas_freq1.setSuffix(" /m") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.spinbox_alphas_freq1, 5, 1, 1, 1) + # self.spinbox_alphas_freq1 = QDoubleSpinBox() + # self.spinbox_alphas_freq1.setDecimals(4) + # self.spinbox_alphas_freq1.setSuffix(" /m") + self.lineEdit_alphas_freq1 = QLineEdit() + self.lineEdit_alphas_freq1.setMaximumWidth(100) + self.lineEdit_alphas_freq1.setText("0.00") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.lineEdit_alphas_freq1, 7, 1, 1, 1) - self.spinbox_alphas_freq2 = QDoubleSpinBox() - self.spinbox_alphas_freq2.setDecimals(4) - self.spinbox_alphas_freq2.setSuffix(" /m") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.spinbox_alphas_freq2, 5, 2, 1, 1) + self.label_alphas_freq1_unit = QLabel() + self.label_alphas_freq1_unit.setText("/m") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_alphas_freq1_unit, 7, 2, 1, 1, Qt.AlignLeft) + + # self.spinbox_alphas_freq2 = QDoubleSpinBox() + # self.spinbox_alphas_freq2.setDecimals(4) + # self.spinbox_alphas_freq2.setSuffix(" /m") + self.lineEdit_alphas_freq2 = QLineEdit() + self.lineEdit_alphas_freq2.setMaximumWidth(100) + self.lineEdit_alphas_freq2.setText("0.00") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.lineEdit_alphas_freq2, 7, 3, 1, 1) + + self.label_alphas_freq2_unit = QLabel() + self.label_alphas_freq2_unit.setText("/m") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_alphas_freq2_unit, 7, 4, 1, 1, Qt.AlignLeft) self.label_zeta = QLabel() self.label_zeta.setText("\u03B6") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_zeta, 6, 0, 1, 1) + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_zeta, 8, 0, 1, 1, Qt.AlignCenter) - self.spinbox_zeta_freq1 = QDoubleSpinBox() - self.spinbox_zeta_freq1.setDecimals(4) - self.spinbox_zeta_freq1.setSuffix(" /m") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.spinbox_zeta_freq1, 6, 1, 1, 1) + # self.spinbox_zeta_freq1 = QDoubleSpinBox() + # self.spinbox_zeta_freq1.setDecimals(4) + # self.spinbox_zeta_freq1.setSuffix(" /m") + self.lineEdit_zeta_freq1 = QLineEdit() + self.lineEdit_zeta_freq1.setMaximumWidth(100) + self.lineEdit_zeta_freq1.setText("0.00") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.lineEdit_zeta_freq1, 8, 1, 1, 1) - self.spinbox_zeta_freq2 = QDoubleSpinBox() - self.spinbox_zeta_freq2.setDecimals(4) - self.spinbox_zeta_freq2.setSuffix(" /m") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.spinbox_zeta_freq2, 6, 2, 1, 1) + self.label_zeta_freq1_unit = QLabel() + self.label_zeta_freq1_unit.setText("/m") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_zeta_freq1_unit, 8, 2, 1, 1, + Qt.AlignLeft) + + # self.spinbox_zeta_freq2 = QDoubleSpinBox() + # self.spinbox_zeta_freq2.setDecimals(4) + # self.spinbox_zeta_freq2.setSuffix(" /m") + self.lineEdit_zeta_freq2 = QLineEdit() + self.lineEdit_zeta_freq2.setMaximumWidth(100) + self.lineEdit_zeta_freq2.setText("0.00") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.lineEdit_zeta_freq2, 8, 3, 1, 1) + + self.label_zeta_freq2_unit = QLabel() + self.label_zeta_freq2_unit.setText("/m") + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.label_zeta_freq2_unit, 8, 4, 1, 1, + Qt.AlignLeft) self.pushbutton_save_calibration = QPushButton() self.pushbutton_save_calibration.setText("Save calibration") - self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.pushbutton_save_calibration,7, 3, 1, 1) + self.gridLayout_groupbox_sediment_calibration_parameter.addWidget(self.pushbutton_save_calibration,9, 5, 1, 1) # self.groupbox_calibration_compute_size_change() @@ -364,9 +451,6 @@ class SedimentCalibrationTab(QWidget): self.gridLayout_groupbox_FCB_option = QGridLayout(self.groupbox_FCB_option) self.horizontalLayout_groupbox_FCB.addWidget(self.groupbox_FCB_option, 4) - self.label_temperature = QLabel() - self.label_temperature.setText("Temperature : ") - self.label_frequency_FCB = QLabel() self.label_frequency_FCB.setText("Frequency ") self.gridLayout_groupbox_FCB_option.addWidget(self.label_frequency_FCB, 0, 0, 1, 2) @@ -498,10 +582,12 @@ class SedimentCalibrationTab(QWidget): self.combobox_freq1.clear() self.combobox_freq1.addItems(stg.freq_text[self.combobox_acoustic_data_choice.currentIndex()]) self.combobox_freq1.currentIndexChanged.connect(self.update_label_freq1_for_calibration) + self.combobox_freq1.currentIndexChanged.connect(self.update_label_kt_value_for_calibration) self.combobox_freq2.clear() self.combobox_freq2.addItems(stg.freq_text[self.combobox_acoustic_data_choice.currentIndex()]) self.combobox_freq2.currentIndexChanged.connect(self.update_label_freq2_for_calibration) + self.combobox_freq2.currentIndexChanged.connect(self.update_label_kt_value_for_calibration) self.combobox_freq2.currentIndexChanged.connect(self.plot_acoustic_recording) self.combobox_fine_sample_choice.clear() @@ -511,6 +597,9 @@ class SedimentCalibrationTab(QWidget): self.combobox_sand_sample_choice.addItems([s[0] for s in stg.sample_sand]) self.plot_acoustic_recording() + self.update_label_freq1_for_calibration() + self.update_label_freq2_for_calibration() + self.update_label_kt_value_for_calibration() def plot_acoustic_recording(self): @@ -1127,6 +1216,20 @@ class SedimentCalibrationTab(QWidget): self.label_freq2.clear() self.label_freq2.setText(self.combobox_freq2.currentText()) + def update_label_kt_value_for_calibration(self): + self.label_kt_freq1.clear() + print("self.combobox_freq1.currentIndex() ", self.combobox_freq1.currentIndex(), self.combobox_freq1.currentText()) + if stg.kt_corrected[self.combobox_freq1.currentText()] != stg.kt_read[self.combobox_freq1.currentIndex()]: + self.label_kt_freq1.setText(str('%.4f' % stg.kt_corrected[self.combobox_freq1.currentText()])) + else: + self.label_kt_freq1.setText(str('%.4f' % stg.kt_read[self.combobox_freq1.currentIndex()])) + + self.label_kt_freq2.clear() + if stg.kt_corrected[self.combobox_freq2.currentText()] != stg.kt_read[self.combobox_freq2.currentIndex()]: + self.label_kt_freq2.setText(str('%.4f' % stg.kt_corrected[self.combobox_freq2.currentText()])) + else: + self.label_kt_freq2.setText(str('%.4f' % stg.kt_read[self.combobox_freq2.currentIndex()])) + def read_calibration_file_and_fill_parameter(self): # --- Read calibration file --- data = pd.read_csv(stg.calibration_file[0] + "/" + stg.calibration_file[1], header=0, index_col=0) @@ -1163,47 +1266,70 @@ class SedimentCalibrationTab(QWidget): stg.frequency_for_inversion = (stg.freq[self.combobox_acoustic_data_choice.currentIndex()][index_freq2], index_freq2) - self.spinbox_ks_freq1.clear() - self.spinbox_ks_freq1.setValue(float(data.iloc[0][0])) + # self.spinbox_ks_freq1.clear() + # self.spinbox_ks_freq1.setValue() + self.lineEdit_ks_freq1.clear() + self.lineEdit_ks_freq1.setText(str("%.5f" % float(data.iloc[0][0])) + " m/kg^0.5") - self.spinbox_ks_freq2.clear() - self.spinbox_ks_freq2.setValue(float(data.iloc[0][1])) + # self.spinbox_ks_freq2.clear() + # self.spinbox_ks_freq2.setValue(float(data.iloc[0][1])) + self.lineEdit_ks_freq2.clear() + self.lineEdit_ks_freq2.setText(str("%.5f" % float(data.iloc[0][1])) + " m/kg^0.5") stg.ks.clear() - stg.ks = [self.spinbox_ks_freq1.value(), self.spinbox_ks_freq2.value()] + # stg.ks = [self.spinbox_ks_freq1.value(), self.spinbox_ks_freq2.value()] + stg.ks = [float(self.lineEdit_ks_freq1.text()), float(self.lineEdit_ks_freq2.text())] - self.spinbox_sv_freq1.clear() - self.spinbox_sv_freq1.setValue(float(data.iloc[1][0])) + # self.spinbox_sv_freq1.clear() + # self.spinbox_sv_freq1.setValue(float(data.iloc[1][0])) + self.lineEdit_sv_freq1.clear() + self.lineEdit_sv_freq1.setText(str("%.5f" % float(data.iloc[1][0])) + " /m") - self.spinbox_sv_freq2.clear() - self.spinbox_sv_freq2.setValue(float(data.iloc[1][1])) + # self.spinbox_sv_freq2.clear() + # self.spinbox_sv_freq2.setValue(float(data.iloc[1][1])) + self.lineEdit_sv_freq2.clear() + self.lineEdit_sv_freq2.setText(str("%.5f" % float(data.iloc[1][1])) + " /m") stg.sv.clear() - stg.sv = [self.spinbox_sv_freq1.value(), self.spinbox_sv_freq2.value()] + # stg.sv = [self.spinbox_sv_freq1.value(), self.spinbox_sv_freq2.value()] + stg.sv = [float(self.lineEdit_sv_freq1.text()), float(self.lineEdit_sv_freq2.text())] - self.spinbox_X.clear() - self.spinbox_X.setValue(float(data.iloc[2][0])) + # self.spinbox_X.clear() + # self.spinbox_X.setValue(float(data.iloc[2][0])) + self.lineEdit_X.clear() + self.lineEdit_X.setText(str("%.2f" % float(data.iloc[2][0]))) stg.X_exponent.clear() - stg.X_exponent.append(self.spinbox_X.value()) + # stg.X_exponent.append(self.spinbox_X.value()) + stg.X_exponent.append(float(self.lineEdit_X.text())) - self.spinbox_alphas_freq1.clear() - self.spinbox_alphas_freq1.setValue(float(data.iloc[3][0])) + # self.spinbox_alphas_freq1.clear() + # self.spinbox_alphas_freq1.setValue(float(data.iloc[3][0])) + self.lineEdit_alphas_freq1.clear() + self.lineEdit_alphas_freq1.setText(str("%.5f" % float(data.iloc[3][0]))) - self.spinbox_alphas_freq2.clear() - self.spinbox_alphas_freq2.setValue(float(data.iloc[3][1])) + # self.spinbox_alphas_freq2.clear() + # self.spinbox_alphas_freq2.setValue(float(data.iloc[3][1])) + self.lineEdit_alphas_freq2.clear() + self.lineEdit_alphas_freq2.setText(str("%.5f" % float(data.iloc[3][1]))) stg.alpha_s.clear() - stg.alpha_s = [self.spinbox_alphas_freq1.value(), self.spinbox_alphas_freq2.value()] + # stg.alpha_s = [self.spinbox_alphas_freq1.value(), self.spinbox_alphas_freq2.value()] + stg.alpha_s = [float(self.lineEdit_alphas_freq1.text()), float(self.lineEdit_alphas_freq2.text())] - self.spinbox_zeta_freq1.clear() - self.spinbox_zeta_freq1.setValue(float(data.iloc[4][0])) + # self.spinbox_zeta_freq1.clear() + # self.spinbox_zeta_freq1.setValue(float(data.iloc[4][0])) + self.lineEdit_zeta_freq1.clear() + self.lineEdit_zeta_freq1.setText(str("%.5f" % float(data.iloc[4][0]))) - self.spinbox_zeta_freq2.clear() - self.spinbox_zeta_freq2.setValue(float(data.iloc[4][1])) + # self.spinbox_zeta_freq2.clear() + # self.spinbox_zeta_freq2.setValue(float(data.iloc[4][1])) + self.lineEdit_zeta_freq2.clear() + self.lineEdit_zeta_freq2.setText(str("%.5f" % float(data.iloc[4][1]))) stg.zeta.clear() - stg.zeta = [self.spinbox_zeta_freq1.value(), self.spinbox_zeta_freq2.value()] + # stg.zeta = [self.spinbox_zeta_freq1.value(), self.spinbox_zeta_freq2.value()] + stg.zeta = [float(self.lineEdit_zeta_freq1.text()), float(self.lineEdit_zeta_freq2.text())] self.compute_depth_2D() self.compute_kt2D_kt3D() @@ -1314,11 +1440,15 @@ class SedimentCalibrationTab(QWidget): print(f"ks for frequency of {stg.freq[self.combobox_acoustic_data_choice.currentIndex()][self.combobox_freq1.currentIndex()]} : {ks_freq1} m/kg^0.5 \n") print(f"ks for frequency of {stg.freq[self.combobox_acoustic_data_choice.currentIndex()][self.combobox_freq2.currentIndex()]} : {ks_freq2} m/kg^0.5") - self.spinbox_ks_freq1.clear() - self.spinbox_ks_freq1.setValue(ks_freq1) + # self.spinbox_ks_freq1.clear() + # self.spinbox_ks_freq1.setValue(ks_freq1) + self.lineEdit_ks_freq1.clear() + self.lineEdit_ks_freq1.setText(str("%.5f" % ks_freq1)) - self.spinbox_ks_freq2.clear() - self.spinbox_ks_freq2.setValue(ks_freq2) + # self.spinbox_ks_freq2.clear() + # self.spinbox_ks_freq2.setValue(ks_freq2) + self.lineEdit_ks_freq2.clear() + self.lineEdit_ks_freq2.setText(str("%.5f" % ks_freq2)) def compute_sv(self): @@ -1331,11 +1461,15 @@ class SedimentCalibrationTab(QWidget): print(f"sv for frequency of {stg.freq[self.combobox_acoustic_data_choice.currentIndex()][self.combobox_freq1.currentIndex()]} : {sv_freq1:.8f} /m \n") print(f"sv for frequency of {stg.freq[self.combobox_acoustic_data_choice.currentIndex()][self.combobox_freq2.currentIndex()]} : {sv_freq2:.8f} /m") - self.spinbox_sv_freq1.clear() - self.spinbox_sv_freq1.setValue(sv_freq1) + # self.spinbox_sv_freq1.clear() + # self.spinbox_sv_freq1.setValue(sv_freq1) + self.lineEdit_sv_freq1.clear() + self.lineEdit_sv_freq1.setText(str("%.5f" % sv_freq1)) - self.spinbox_sv_freq2.clear() - self.spinbox_sv_freq2.setValue(sv_freq2) + # self.spinbox_sv_freq2.clear() + # self.spinbox_sv_freq2.setValue(sv_freq2) + self.lineEdit_sv_freq2.clear() + self.lineEdit_sv_freq2.setText(str("%.5f" % sv_freq2)) def compute_X(self): @@ -1349,8 +1483,9 @@ class SedimentCalibrationTab(QWidget): print(f"Exponent X = {X_exponent:.2f}\n") - self.spinbox_X.clear() - self.spinbox_X.setValue(X_exponent) + # self.spinbox_X.clear() + # self.spinbox_X.setValue(X_exponent) + self.lineEdit_X.setText(str("%.2f" % X_exponent)) def compute_kt2D_kt3D(self): @@ -1814,11 +1949,15 @@ class SedimentCalibrationTab(QWidget): print(f"\u03B1s for frequency of freq1 : {alpha_s_freq1:.2f} /m \n") print(f"\u03B1s for frequency of freq2 : {alpha_s_freq2:.2f} /m") - self.spinbox_alphas_freq1.clear() - self.spinbox_alphas_freq1.setValue(alpha_s_freq1) + # self.spinbox_alphas_freq1.clear() + # self.spinbox_alphas_freq1.setValue(alpha_s_freq1) + self.lineEdit_alphas_freq1.clear() + self.lineEdit_alphas_freq1.setText(str("%.5f" % alpha_s_freq1)) - self.spinbox_alphas_freq2.clear() - self.spinbox_alphas_freq2.setValue(alpha_s_freq2) + # self.spinbox_alphas_freq2.clear() + # self.spinbox_alphas_freq2.setValue(alpha_s_freq2) + self.lineEdit_alphas_freq2.clear() + self.lineEdit_alphas_freq2.setText(str("%.5f" % alpha_s_freq2)) if (alpha_s_freq1 < 0) or (alpha_s_freq2 < 0): @@ -1878,11 +2017,15 @@ class SedimentCalibrationTab(QWidget): print(f"\u03B6 for frequency of freq1 : {zeta_freq1:.3f} /m \n") print(f"\u03B6 for frequency of freq2 : {zeta_freq2:.3f} /m") - self.spinbox_zeta_freq1.clear() - self.spinbox_zeta_freq1.setValue(zeta_freq1) + # self.spinbox_zeta_freq1.clear() + # self.spinbox_zeta_freq1.setValue(zeta_freq1) + self.lineEdit_zeta_freq1.clear() + self.lineEdit_zeta_freq1.setText(str("%.5f" % zeta_freq1)) - self.spinbox_zeta_freq2.clear() - self.spinbox_zeta_freq2.setValue(zeta_freq2) + # self.spinbox_zeta_freq2.clear() + # self.spinbox_zeta_freq2.setValue(zeta_freq2) + self.lineEdit_zeta_freq2.clear() + self.lineEdit_zeta_freq2.setText(str("%.5f" % zeta_freq2)) def save_calibration(self):