pyquac
Advanced tools
+1
-1
| Metadata-Version: 2.1 | ||
| Name: pyquac | ||
| Version: 1.1.1 | ||
| Version: 1.1.2 | ||
| Summary: Useful tools for quantum computing experiments, provided for BMSTU FMN | ||
@@ -5,0 +5,0 @@ Home-page: https://github.com/ikaryss/pyquac |
| Metadata-Version: 2.1 | ||
| Name: pyquac | ||
| Version: 1.1.1 | ||
| Version: 1.1.2 | ||
| Summary: Useful tools for quantum computing experiments, provided for BMSTU FMN | ||
@@ -5,0 +5,0 @@ Home-page: https://github.com/ikaryss/pyquac |
| from . import datatools | ||
| from . import fmn_plottools | ||
| from . import fmn_datatools | ||
| from . import fmn_tts | ||
@@ -8,3 +9,4 @@ __all__ = [ | ||
| 'fmn_plottools', | ||
| 'fmn_datatools.py' | ||
| 'fmn_datatools', | ||
| 'fmn_tts' | ||
| ] |
+10
-10
@@ -464,3 +464,3 @@ """ | ||
| @classmethod | ||
| def configure_app(cls, data, fig, mode='inline', port=8051, interval=5e3, qubit_number=None): | ||
| def configure_app(cls, data, fig, mode='inline', port=8051, interval=4e3, qubit_id=None): | ||
| cls.fig = fig | ||
@@ -470,3 +470,3 @@ cls.mode = mode | ||
| cls.port = port | ||
| cls.qubit_number = qubit_number | ||
| cls.qubit_number = qubit_id | ||
@@ -532,4 +532,4 @@ disabled_btn = False | ||
| file_name = ('TTS_' + 'q' + str(cls.qubit_number) + '_0' + str(datetime.now().strftime( | ||
| "_%H-%M-%S")) + '.csv' if cls.qubit_number is not None else 'TTS_' + 'q' + '_0' + str( | ||
| file_name = ('TTS_' + 'q' + str(cls.qubit_number) + str(datetime.now().strftime( | ||
| "_%H-%M-%S")) + '.csv' if cls.qubit_number is not None else 'TTS_' + 'q' + '_untitled_' + str( | ||
| datetime.now().strftime("_%H-%M-%S")) + '.csv') | ||
@@ -540,4 +540,4 @@ | ||
| file_name = ('TTS_'+'q'+str(cls.qubit_number)+'_0'+str(datetime.now().strftime( | ||
| "_%H-%M-%S"))+'.pdf' if cls.qubit_number is not None else 'TTS_'+'q'+'_0'+str( | ||
| file_name = ('TTS_'+'q'+str(cls.qubit_number)+str(datetime.now().strftime( | ||
| "_%H-%M-%S"))+'.pdf' if cls.qubit_number is not None else 'TTS_'+'q'+'_untitled_'+str( | ||
| datetime.now().strftime("_%H-%M-%S"))+'.pdf') | ||
@@ -548,4 +548,4 @@ | ||
| file_name = ('TTS_' + 'q' + str(cls.qubit_number) + '_0' + str(datetime.now().strftime( | ||
| "_%H-%M-%S")) + '.html' if cls.qubit_number is not None else 'TTS_' + 'q' + '_0' + str( | ||
| file_name = ('TTS_' + 'q' + str(cls.qubit_number) + str(datetime.now().strftime( | ||
| "_%H-%M-%S")) + '.html' if cls.qubit_number is not None else 'TTS_' + 'q' + '_untitled_' + str( | ||
| datetime.now().strftime("_%H-%M-%S")) + '.html') | ||
@@ -556,4 +556,4 @@ | ||
| file_name = ('TTS_' + 'q' + str(cls.qubit_number) + '_0' + str(datetime.now().strftime( | ||
| "_%H-%M-%S")) + '.svg' if cls.qubit_number is not None else 'TTS_' + 'q' + '_0' + str( | ||
| file_name = ('TTS_' + 'q' + str(cls.qubit_number) + str(datetime.now().strftime( | ||
| "_%H-%M-%S")) + '.svg' if cls.qubit_number is not None else 'TTS_' + 'q' + '_untitled_' + str( | ||
| datetime.now().strftime("_%H-%M-%S")) + '.svg') | ||
@@ -560,0 +560,0 @@ |
+25
-27
@@ -20,6 +20,7 @@ import zhinst | ||
| LO_port: str = 'TCPIP0::192.168.180.143::hislip0::INSTR', | ||
| LO_res_port: str = 'TCPIP0::192.168.180.134::inst0::INSTR', | ||
| hdawg_channel: int = 4, hdawg_setDouble: str = '/dev8210/sigouts/4/offset', | ||
| LO_set_power: int = 10, | ||
| LO_res_set_bandwidth: int = 20, LO_res_set_power: int = -20, LO_res_set_averages=1, LO_res_set_nop=101 | ||
| LO_res_port: str = 'TCPIP0::192.168.180.110::inst0::INSTR', | ||
| hdawg_channel: int = 5, hdawg_setDouble: str = '/dev8210/sigouts/5/offset', | ||
| LO_set_power: int = 5, | ||
| LO_res_set_bandwidth: int = 20, LO_res_set_power: int = -10, LO_res_set_nop=101, | ||
| base_bandwidth=40 | ||
| ): | ||
@@ -43,6 +44,6 @@ """ | ||
| :param hdawg_channel: hdawg.setInt('/dev8210/sigouts/' + str(channel) + '/on', 1) | ||
| :param LO_set_power: | ||
| :param LO_res_set_bandwidth: | ||
| :param LO_res_set_power: | ||
| :param LO_res_set_averages: | ||
| :param LO_set_power: base LO power (default 5) | ||
| :param LO_res_set_bandwidth: bandwidth during resonator tuning | ||
| :param LO_res_set_power: base LO_res power (default -10) | ||
| :param base_bandwidth: (int) bandwidth during mesurments | ||
| """ | ||
@@ -71,2 +72,3 @@ super().__init__(x_min=x_min, x_max=x_max, nx_points=nx_points, y_min=y_min, y_max=y_max, ny_points=ny_points, | ||
| self.LO_res_set_power = LO_res_set_power | ||
| self.base_bandwidth = base_bandwidth | ||
@@ -78,28 +80,23 @@ pass | ||
| lo1_status = self.LO.get_status() | ||
| self.LO.set_status(0) | ||
| self.LO_res.set_nop(self.LO_res_set_nop) | ||
| # prior bandwidth | ||
| bandwidth = self.LO_res.get_bandwidth() | ||
| self.LO_res.set_bandwidth(self.LO_res_set_bandwidth) | ||
| xlim = self.LO_res.get_freq_limits() | ||
| self.LO_res.set_bandwidth(self.LO_res_set_bandwidth) | ||
| self.LO_res.set_nop(self.LO_res_set_nop) | ||
| self.LO_res.autoscale_all() | ||
| self.LO_res.set_freq_limits(self.fr_min, self.fr_max) | ||
| freqs = self.LO_res.get_freqpoints() | ||
| S21s = self.LO_res.measure()['S-parameter'] | ||
| # measure S21 | ||
| notch = notch_port(freqs, S21s) | ||
| notch.autofit(electric_delay=50e-9) | ||
| result = notch.fitresults['fr'] | ||
| freqs = LO1.get_freqpoints() | ||
| notch = notch_port(freqs, self.LO_res.measure()['S-parameter']) | ||
| notch.autofit(electric_delay=60e-9) | ||
| result = round(notch.fitresults['fr']) | ||
| # перенастройка на следующей раунд измерений | ||
| self.LO_res.set_nop(1) | ||
| # Resetting to the next round of measurements | ||
| self.LO_res.set_bandwidth(bandwidth) | ||
| self.LO_res.set_freq_limits(*xlim) | ||
| self.LO_res.set_status(lo1_status) | ||
| self.LO_res.set_nop(1) | ||
| self.LO.set_status(1) | ||
@@ -110,3 +107,3 @@ return result | ||
| x_min=None, x_max=None, y_min=None, y_max=None, | ||
| sleep=0.03): | ||
| sleep=0.007): | ||
@@ -116,9 +113,9 @@ self.iter_setup(x_key=x_key, y_key=y_key, | ||
| # Set power | ||
| self.LO.set_power(self.LO_set_power) | ||
| self.LO_res.set_power(self.LO_res_set_power) | ||
| # base bandwidth | ||
| self.LO_res.set_bandwidth(self.base_bandwidth) | ||
| try: | ||
| for i in range(len(self.load)): | ||
| if (i == 0) or (self.load[i] != self.load[i - 1]): | ||
@@ -134,7 +131,8 @@ self.LO_res.set_center(float(self.__find_resonator)) | ||
| y=self.frequency[i], | ||
| heat=20*np.log10(abs(result)[0]) | ||
| heat=20 * np.log10(abs(result)[0]) | ||
| ) | ||
| timer.sleep(sleep) | ||
| self.LO.set_status(0) | ||
| except KeyboardInterrupt: | ||
| pass |
+1
-1
@@ -11,3 +11,3 @@ from setuptools import setup, find_packages | ||
| name='pyquac', | ||
| version='1.1.1', | ||
| version='1.1.2', | ||
| description='Useful tools for quantum computing experiments, provided for BMSTU FMN', | ||
@@ -14,0 +14,0 @@ long_description_content_type="text/markdown", |
Alert delta unavailable
Currently unable to show alert delta for PyPI packages.
95089
0.18%1848
0.27%