Refactored data -> data11

pull/234/head
Holger Müller 2020-07-09 10:45:43 +02:00
rodzic 430a970563
commit 9ba5f48a96
11 zmienionych plików z 57 dodań i 57 usunięć

Wyświetl plik

@ -51,22 +51,22 @@ class MagLoopAnalysis(VSWRAnalysis):
# only one time
start, lowest, end = m
if start != end:
Q = self.app.data[lowest].freq / \
(self.app.data[end].freq - self.app.data[start].freq)
Q = self.app.data11[lowest].freq / \
(self.app.data11[end].freq - self.app.data11[start].freq)
self.layout.addRow(
"Q", QtWidgets.QLabel("{}".format(int(Q))))
self.app.sweepStartInput.setText(self.app.data[start].freq)
self.app.sweepStartInput.setText(self.app.data11[start].freq)
self.app.sweepStartInput.textEdited.emit(
self.app.sweepStartInput.text())
self.app.sweepEndInput.setText(self.app.data[end].freq)
self.app.sweepEndInput.setText(self.app.data11[end].freq)
self.app.sweepEndInput.textEdited.emit(
self.app.sweepEndInput.text())
else:
self.app.sweepStartInput.setText(
self.app.data[start].freq - self.bandwith)
self.app.data11[start].freq - self.bandwith)
self.app.sweepStartInput.textEdited.emit(
self.app.sweepStartInput.text())
self.app.sweepEndInput.setText(
self.app.data[end].freq + self.bandwith)
self.app.data11[end].freq + self.bandwith)
self.app.sweepEndInput.textEdited.emit(
self.app.sweepEndInput.text())

Wyświetl plik

@ -161,7 +161,7 @@ class BandPassAnalysis(Analysis):
peak_db = db
peak_location = i
logger.debug("Found peak of %f at %d", peak_db, self.app.data[peak_location].freq)
logger.debug("Found peak of %f at %d", peak_db, self.app.data11[peak_location].freq)
lower_cutoff_location = -1
pass_band_db = peak_db
@ -355,8 +355,8 @@ class BandPassAnalysis(Analysis):
if upper_cutoff_gain < -4 or lower_cutoff_gain < -4:
self.result_label.setText(
f"Analysis complete ({len(self.app.data)} points)\n"
f"Analysis complete ({len(self.app.data11)} points)\n"
f"Insufficient data for analysis. Increase segment count.")
else:
self.result_label.setText(
f"Analysis complete ({len(self.app.data)} points)")
f"Analysis complete ({len(self.app.data11)} points)")

Wyświetl plik

@ -114,7 +114,7 @@ class BandStopAnalysis(Analysis):
peak_db = db
peak_location = i
logger.debug("Found peak of %f at %d", peak_db, self.app.data[peak_location].freq)
logger.debug("Found peak of %f at %d", peak_db, self.app.data11[peak_location].freq)
lower_cutoff_location = -1
pass_band_db = peak_db
@ -309,8 +309,8 @@ class BandStopAnalysis(Analysis):
if upper_cutoff_gain < -4 or lower_cutoff_gain < -4:
self.result_label.setText(
f"Analysis complete ({len(self.app.data)} points)\n"
f"Analysis complete ({len(self.app.data11)} points)\n"
f"Insufficient data for analysis. Increase segment count.")
else:
self.result_label.setText(
f"Analysis complete ({len(self.app.data)} points)")
f"Analysis complete ({len(self.app.data11)} points)")

Wyświetl plik

@ -102,7 +102,7 @@ class HighPassAnalysis(Analysis):
peak_db = db
peak_location = i
logger.debug("Found peak of %f at %d", peak_db, self.app.data[peak_location].freq)
logger.debug("Found peak of %f at %d", peak_db, self.app.data11[peak_location].freq)
self.app.markers[0].setFrequency(str(self.app.data21[peak_location].freq))
self.app.markers[0].frequencyInput.setText(str(self.app.data21[peak_location].freq))
@ -187,4 +187,4 @@ class HighPassAnalysis(Analysis):
self.db_per_octave_label.setText("Not calculated")
self.db_per_decade_label.setText("Not calculated")
self.result_label.setText("Analysis complete (" + str(len(self.app.data)) + " points)")
self.result_label.setText(f"Analysis complete ({len(self.app.data11)}) points)")

Wyświetl plik

@ -106,7 +106,7 @@ class LowPassAnalysis(Analysis):
peak_db = db
peak_location = i
logger.debug("Found peak of %f at %d", peak_db, self.app.data[peak_location].freq)
logger.debug("Found peak of %f at %d", peak_db, self.app.data11[peak_location].freq)
self.app.markers[0].setFrequency(str(self.app.data21[peak_location].freq))
self.app.markers[0].frequencyInput.setText(str(self.app.data21[peak_location].freq))
@ -202,4 +202,4 @@ class LowPassAnalysis(Analysis):
self.db_per_decade_label.setText("Not calculated")
self.result_label.setText(
"Analysis complete (" + str(len(self.app.data)) + " points)")
"Analysis complete (" + str(len(self.app.data11)) + " points)")

Wyświetl plik

@ -90,8 +90,8 @@ class PeakSearchAnalysis(Analysis):
count = self.input_number_of_peaks.value()
if self.rbtn_data_vswr.isChecked():
data = []
for d in self.app.data:
data.append(d.vswr)
for d in self.app.data11:
data11.append(d.vswr)
elif self.rbtn_data_s21_gain.isChecked():
data = []
for d in self.app.data21:
@ -130,7 +130,7 @@ class PeakSearchAnalysis(Analysis):
logger.debug("Index %d", i)
logger.debug("Prominence %f", prominences[i])
logger.debug("Index in sweep %d", peaks[i])
logger.debug("Frequency %d", self.app.data[peaks[i]].freq)
logger.debug("Frequency %d", self.app.data11[peaks[i]].freq)
logger.debug("Value %f", data[peaks[i]])
if self.checkbox_move_markers:
@ -138,9 +138,9 @@ class PeakSearchAnalysis(Analysis):
logger.warning("More peaks found than there are markers")
for i in range(min(count, len(self.app.markers))):
self.app.markers[i].setFrequency(
str(self.app.data[peaks[indices[i]]].freq))
str(self.app.data11[peaks[indices[i]]].freq))
self.app.markers[i].frequencyInput.setText(
str(self.app.data[peaks[indices[i]]].freq))
str(self.app.data11[peaks[indices[i]]].freq))
max_val = -10**10
max_idx = -1

Wyświetl plik

@ -81,17 +81,17 @@ class SimplePeakSearchAnalysis(Analysis):
if self.rbtn_data_vswr.isChecked():
suffix = ""
data = []
for d in self.app.data:
for d in self.app.data11:
data.append(d.vswr)
elif self.rbtn_data_resistance.isChecked():
suffix = " \N{OHM SIGN}"
data = []
for d in self.app.data:
for d in self.app.data11:
data.append(d.impedance().real)
elif self.rbtn_data_reactance.isChecked():
suffix = " \N{OHM SIGN}"
data = []
for d in self.app.data:
for d in self.app.data11:
data.append(d.impedance().imag)
elif self.rbtn_data_s21_gain.isChecked():
suffix = " dB"
@ -117,10 +117,10 @@ class SimplePeakSearchAnalysis(Analysis):
return
self.peak_frequency.setText(
format_frequency(self.app.data[idx_peak].freq))
format_frequency(self.app.data11[idx_peak].freq))
self.peak_value.setText(str(round(data[idx_peak], 3)) + suffix)
if self.checkbox_move_marker.isChecked() and len(self.app.markers) >= 1:
self.app.markers[0].setFrequency(str(self.app.data[idx_peak].freq))
self.app.markers[0].setFrequency(str(self.app.data11[idx_peak].freq))
self.app.markers[0].frequencyInput.setText(
format_frequency(self.app.data[idx_peak].freq))
format_frequency(self.app.data11[idx_peak].freq))

Wyświetl plik

@ -61,17 +61,17 @@ class VSWRAnalysis(Analysis):
def runAnalysis(self):
max_dips_shown = self.max_dips_shown
data = []
for d in self.app.data:
for d in self.app.data11:
data.append(d.vswr)
# min_idx = np.argmin(data)
#
# logger.debug("Minimum at %d", min_idx)
# logger.debug("Value at minimum: %f", data[min_idx])
# logger.debug("Frequency: %d", self.app.data[min_idx].freq)
# logger.debug("Frequency: %d", self.app.data11[min_idx].freq)
#
# if self.checkbox_move_marker.isChecked():
# self.app.markers[0].setFrequency(str(self.app.data[min_idx].freq))
# self.app.markers[0].frequencyInput.setText(str(self.app.data[min_idx].freq))
# self.app.markers[0].setFrequency(str(self.app.data11[min_idx].freq))
# self.app.markers[0].frequencyInput.setText(str(self.app.data11[min_idx].freq))
minimums = []
min_start = -1
@ -122,23 +122,23 @@ class VSWRAnalysis(Analysis):
logger.debug(
"Section from %d to %d, lowest at %d", start, end, lowest)
self.layout.addRow("Start", QtWidgets.QLabel(
format_frequency(self.app.data[start].freq)))
format_frequency(self.app.data11[start].freq)))
self.layout.addRow(
"Minimum",
QtWidgets.QLabel(
f"{format_frequency(self.app.data[lowest].freq)}"
f"{format_frequency(self.app.data11[lowest].freq)}"
f" ({round(data[lowest], 2)})"))
self.layout.addRow("End", QtWidgets.QLabel(
format_frequency(self.app.data[end].freq)))
format_frequency(self.app.data11[end].freq)))
self.layout.addRow(
"Span",
QtWidgets.QLabel(
format_frequency(self.app.data[end].freq -
self.app.data[start].freq)))
format_frequency(self.app.data11[end].freq -
self.app.data11[start].freq)))
self.layout.addWidget(PeakSearchAnalysis.QHLine())
else:
self.layout.addRow("Low spot", QtWidgets.QLabel(
format_frequency(self.app.data[lowest].freq)))
format_frequency(self.app.data11[lowest].freq)))
self.layout.addWidget(PeakSearchAnalysis.QHLine())
# Remove the final separator line
self.layout.removeRow(self.layout.rowCount()-1)

Wyświetl plik

@ -96,7 +96,7 @@ class NanoVNASaver(QtWidgets.QWidget):
self.dataLock = threading.Lock()
# TODO: use Touchstone class as data container
self.data: List[Datapoint] = []
self.data11: List[Datapoint] = []
self.data21: List[Datapoint] = []
self.referenceS11data: List[Datapoint] = []
self.referenceS21data: List[Datapoint] = []
@ -556,7 +556,7 @@ class NanoVNASaver(QtWidgets.QWidget):
self.serialPortInput.insertItem(1, f"{iface}", iface)
def exportFile(self, nr_params: int = 1):
if len(self.data) == 0:
if len(self.data11) == 0:
QtWidgets.QMessageBox.warning(
self, "No data to save", "There is no data to save.")
return
@ -584,10 +584,10 @@ class NanoVNASaver(QtWidgets.QWidget):
return
ts = Touchstone(filename)
ts.sdata[0] = self.data
ts.sdata[0] = self.data11
if nr_params > 1:
ts.sdata[1] = self.data21
for dp in self.data:
for dp in self.data11:
ts.sdata[2].append(Datapoint(dp.freq, 0, 0))
ts.sdata[3].append(Datapoint(dp.freq, 0, 0))
try:
@ -692,7 +692,7 @@ class NanoVNASaver(QtWidgets.QWidget):
def saveData(self, data, data21, source=None):
with self.dataLock:
self.data = data
self.data11 = data
self.data21 = data21
if self.s21att > 0:
self.data21 = corr_att_data(self.data21, self.s21att)
@ -706,10 +706,10 @@ class NanoVNASaver(QtWidgets.QWidget):
def markerUpdated(self, marker: Marker):
with self.dataLock:
marker.findLocation(self.data)
marker.findLocation(self.data11)
for m in self.markers:
m.resetLabels()
m.updateLabels(self.data, self.data21)
m.updateLabels(self.data11, self.data21)
for c in self.subscribing_charts:
c.update()
@ -718,16 +718,16 @@ class NanoVNASaver(QtWidgets.QWidget):
with self.dataLock:
for m in self.markers:
m.resetLabels()
m.updateLabels(self.data, self.data21)
m.updateLabels(self.data11, self.data21)
for c in self.s11charts:
c.setData(self.data)
c.setData(self.data11)
for c in self.s21charts:
c.setData(self.data21)
for c in self.combinedCharts:
c.setCombinedData(self.data, self.data21)
c.setCombinedData(self.data11, self.data21)
self.sweepProgressBar.setValue(self.worker.percentage)
self.windows["tdr"].updateTDR()
@ -735,7 +735,7 @@ class NanoVNASaver(QtWidgets.QWidget):
# Find the minimum S11 VSWR:
min_vswr = 100
min_vswr_freq = -1
for d in self.data:
for d in self.data11:
vswr = d.vswr
if min_vswr > vswr > 0:
min_vswr = vswr
@ -819,7 +819,7 @@ class NanoVNASaver(QtWidgets.QWidget):
def setReference(self, s11data=None, s21data=None, source=None):
if not s11data:
s11data = self.data
s11data = self.data11
if not s21data:
s21data = self.data21
self.referenceS11data = s11data
@ -846,7 +846,7 @@ class NanoVNASaver(QtWidgets.QWidget):
title = self.baseTitle
insert = ""
if self.sweepSource != "":
insert += f"Sweep: {self.sweepSource} @ {len(self.data)} points"
insert += f"Sweep: {self.sweepSource} @ {len(self.data11)} points"
if self.referenceSource != "":
if insert != "":
insert += ", "
@ -887,7 +887,7 @@ class NanoVNASaver(QtWidgets.QWidget):
filename, _ = QtWidgets.QFileDialog.getOpenFileName(
filter="Touchstone Files (*.s1p *.s2p);;All files (*.*)")
if filename != "":
self.data = []
self.data11 = []
self.data21 = []
t = Touchstone(filename)
t.load()

Wyświetl plik

@ -232,9 +232,9 @@ class CalibrationWindow(QtWidgets.QWidget):
if name in ("through", "isolation"):
self.app.calibration.insert(name, self.app.data21)
else:
self.app.calibration.insert(name, self.app.data)
self.app.calibration.insert(name, self.app.data11)
self.cal_label[name].setText(
_format_cal_label(len(self.app.data)))
_format_cal_label(len(self.app.data11)))
def manual_save(self, name: str):
if self.checkExpertUser():

Wyświetl plik

@ -107,7 +107,7 @@ class TDRWindow(QtWidgets.QWidget):
# TODO: Let the user select whether to use high or low resolution TDR?
FFT_POINTS = 2**14
if len(self.app.data) < 2:
if len(self.app.data11) < 2:
return
if self.tdr_velocity_dropdown.currentData() == -1:
@ -121,17 +121,17 @@ class TDRWindow(QtWidgets.QWidget):
except ValueError:
return
step_size = self.app.data[1].freq - self.app.data[0].freq
step_size = self.app.data11[1].freq - self.app.data11[0].freq
if step_size == 0:
self.tdr_result_label.setText("")
logger.info("Cannot compute cable length at 0 span")
return
s11 = []
for d in self.app.data:
for d in self.app.data11:
s11.append(np.complex(d.re, d.im))
window = np.blackman(len(self.app.data))
window = np.blackman(len(self.app.data11))
windowed_s11 = window * s11
self.td = np.abs(np.fft.ifft(windowed_s11, FFT_POINTS))