QuLab 2.0.8__cp310-cp310-win_amd64.whl → 2.0.9__cp310-cp310-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: QuLab
3
- Version: 2.0.8
3
+ Version: 2.0.9
4
4
  Summary: contral instruments and manage data
5
5
  Author-email: feihoo87 <feihoo87@gmail.com>
6
6
  Maintainer-email: feihoo87 <feihoo87@gmail.com>
@@ -1,7 +1,7 @@
1
1
  qulab/__init__.py,sha256=8zLGg-DfQhnDl2Ky0n-zXpN-8e-g7iR0AcaI4l4Vvpk,32
2
2
  qulab/__main__.py,sha256=XN2wrhlmEkTIPq_ZeSaO8rWXfYgD2Czkm9DVFVoCw_U,515
3
- qulab/fun.cp310-win_amd64.pyd,sha256=1barv1qyRFoNqphdufFTMzafar5r3yRlush7ULt3L_Y,31232
4
- qulab/version.py,sha256=DfI-RPnMF5c2VXIHTsOnE09mUWlPr23ZlXLyX4lCZxY,21
3
+ qulab/fun.cp310-win_amd64.pyd,sha256=iXQ7RfJjneAb3dOC_48sdlvlcIYc5y654WOzRnGtLnU,31232
4
+ qulab/version.py,sha256=KmRUsw1os9zycj-k3YLWzgxp2vob6KBciPMbxED0Lqk,21
5
5
  qulab/monitor/__init__.py,sha256=xEVDkJF8issrsDeLqQmDsvtRmrf-UiViFcGTWuzdlFU,43
6
6
  qulab/monitor/__main__.py,sha256=k2H1H5Zf9LLXTDLISJkbikLH-z0f1e5i5i6wXXYPOrE,105
7
7
  qulab/monitor/config.py,sha256=y_5StMkdrbZO1ziyKBrvIkB7Jclp9RCPK1QbsOhCxnY,785
@@ -18,8 +18,8 @@ qulab/scan/expression.py,sha256=vwUM9E0OFQal4bljlUtLR3NJu4zGRyuWYrdyZSs3QTU,1619
18
18
  qulab/scan/models.py,sha256=TkiVHF_fUZzYHs4MsCTRh391thpf4Ozd3R_LAU0Gxkg,17657
19
19
  qulab/scan/optimize.py,sha256=MlT4y422CnP961IR384UKryyZh8riNvrPSd2z_MXLEg,2356
20
20
  qulab/scan/query_record.py,sha256=rpw4U3NjLzlv9QMwKdCvEUGHjzPF8u1UpodfLW8aoTY,11853
21
- qulab/scan/recorder.py,sha256=lbIASqH4-4eTzqX1sG9K1LnUkqvkcRK5ab2OpXSeE-Y,22801
22
- qulab/scan/scan.py,sha256=jLYEn5WpAEdyCz-gGKz1My-6YK5xV-WlJ5kSfkINizY,29292
21
+ qulab/scan/recorder.py,sha256=q991ChS3UtUYKoaRxDhXUqV5Oad_hVD27MD68H5NBQQ,23179
22
+ qulab/scan/scan.py,sha256=tv3CUk6Qe60xYRKvzCqbnNzinzW8q3K_7c-gc2EjH1M,29313
23
23
  qulab/scan/server.py,sha256=zDZfG6bOB3EUubfByQMq0BSQ9C6IV_Av0tDinzgpGjQ,2950
24
24
  qulab/scan/utils.py,sha256=XM-eKL5Xkm0hihhGS7Kq4g654Ye7n7TcU_f95gxtXq8,2634
25
25
  qulab/storage/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -77,9 +77,9 @@ qulab/visualization/plot_layout.py,sha256=yAnMONOms7_szCdng-8wPpUMPis5UnbaNNzV4K
77
77
  qulab/visualization/plot_seq.py,sha256=h9D0Yl_yO64IwlvBgzMu9EBKr9gg6y8QE55gu2PfTns,2783
78
78
  qulab/visualization/qdat.py,sha256=HubXFu4nfcA7iUzghJGle1C86G6221hicLR0b-GqhKQ,5887
79
79
  qulab/visualization/widgets.py,sha256=HcYwdhDtLreJiYaZuN3LfofjJmZcLwjMfP5aasebgDo,3266
80
- QuLab-2.0.8.dist-info/LICENSE,sha256=b4NRQ-GFVpJMT7RuExW3NwhfbrYsX7AcdB7Gudok-fs,1086
81
- QuLab-2.0.8.dist-info/METADATA,sha256=INSqm390STs1Mj_4DDCF6cb3B99R9d-H9Jmk4NelB9Q,3609
82
- QuLab-2.0.8.dist-info/WHEEL,sha256=lO6CqtLHCAi38X3Es1a4R1lAjZFvN010IMRCFo2S7Mc,102
83
- QuLab-2.0.8.dist-info/entry_points.txt,sha256=ohBzutEnQimP_BZWiuXdSliu4QAYSHHcN0PZD8c7ZCY,46
84
- QuLab-2.0.8.dist-info/top_level.txt,sha256=3T886LbAsbvjonu_TDdmgxKYUn939BVTRPxPl9r4cEg,6
85
- QuLab-2.0.8.dist-info/RECORD,,
80
+ QuLab-2.0.9.dist-info/LICENSE,sha256=b4NRQ-GFVpJMT7RuExW3NwhfbrYsX7AcdB7Gudok-fs,1086
81
+ QuLab-2.0.9.dist-info/METADATA,sha256=QmffAJ3QJnxAeZUv9X9ca7Qgbqcgm1AeEO9XUZgeEh4,3609
82
+ QuLab-2.0.9.dist-info/WHEEL,sha256=lO6CqtLHCAi38X3Es1a4R1lAjZFvN010IMRCFo2S7Mc,102
83
+ QuLab-2.0.9.dist-info/entry_points.txt,sha256=ohBzutEnQimP_BZWiuXdSliu4QAYSHHcN0PZD8c7ZCY,46
84
+ QuLab-2.0.9.dist-info/top_level.txt,sha256=3T886LbAsbvjonu_TDdmgxKYUn939BVTRPxPl9r4cEg,6
85
+ QuLab-2.0.9.dist-info/RECORD,,
Binary file
qulab/scan/recorder.py CHANGED
@@ -216,6 +216,8 @@ class BufferList():
216
216
  class Record():
217
217
 
218
218
  def __init__(self, id, database, description=None):
219
+ from .scan import OptimizeSpace
220
+
219
221
  self.id = id
220
222
  self.database = database
221
223
  self.description = description
@@ -236,22 +238,29 @@ class Record():
236
238
  self.dims[name] = ()
237
239
  for level, range_list in self.description['loops'].items():
238
240
  for name, iterable in range_list:
239
- if isinstance(iterable, (np.ndarray, list, tuple, range)):
241
+ if isinstance(iterable, OptimizeSpace):
242
+ self.dims[name] = tuple(range(level + 1))
243
+ continue
244
+ elif isinstance(iterable, (np.ndarray, list, tuple, range)):
240
245
  self._items[name] = iterable
241
246
  self.independent_variables[name] = iterable
242
- self.dims[name] = (level, )
247
+ self.dims[name] = (level, )
243
248
 
244
249
  for level, group in self.description['order'].items():
245
250
  for names in group:
246
251
  for name in names:
247
- if name not in self.dims:
248
- if name not in self.description['dependents']:
252
+ if name not in self.description['dependents']:
253
+ if name not in self.dims:
249
254
  self.dims[name] = (level, )
250
- else:
251
- d = set()
252
- for n in self.description['dependents'][name]:
253
- d.update(self.dims[n])
255
+ else:
256
+ d = set()
257
+ for n in self.description['dependents'][name]:
258
+ d.update(self.dims[n])
259
+ if name not in self.dims:
254
260
  self.dims[name] = tuple(sorted(d))
261
+ else:
262
+ self.dims[name] = tuple(
263
+ sorted(set(self.dims[name]) | d))
255
264
 
256
265
  if self.is_local_record():
257
266
  self.database = Path(self.database)
qulab/scan/scan.py CHANGED
@@ -1,4 +1,5 @@
1
1
  import asyncio
2
+ import copy
2
3
  import datetime
3
4
  import inspect
4
5
  import itertools
@@ -711,18 +712,18 @@ def assymbly(description):
711
712
  except:
712
713
  pass
713
714
 
714
- dependents = description['dependents'].copy()
715
+ dependents = copy.deepcopy(description['dependents'])
715
716
 
716
717
  for level in levels:
717
718
  range_list = description['loops'].get(level, [])
718
719
  if level > 0:
719
720
  if f'#__loop_{level}' not in description['dependents']:
720
- dependents[f'#__loop_{level}'] = []
721
- dependents[f'#__loop_{level}'].append(f'#__loop_{level-1}')
721
+ dependents[f'#__loop_{level}'] = set()
722
+ dependents[f'#__loop_{level}'].add(f'#__loop_{level-1}')
722
723
  for name, _ in range_list:
723
724
  if name not in description['dependents']:
724
- dependents[name] = []
725
- dependents[name].append(f'#__loop_{level}')
725
+ dependents[name] = set()
726
+ dependents[name].add(f'#__loop_{level}')
726
727
 
727
728
  def _get_all_depends(key, graph):
728
729
  ret = set()
qulab/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "2.0.8"
1
+ __version__ = "2.0.9"
File without changes
File without changes