dclab 0.62.11__cp313-cp313-macosx_11_0_arm64.whl → 0.62.13__cp313-cp313-macosx_11_0_arm64.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.
dclab/_version.py CHANGED
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '0.62.11'
16
- __version_tuple__ = version_tuple = (0, 62, 11)
15
+ __version__ = version = '0.62.13'
16
+ __version_tuple__ = version_tuple = (0, 62, 13)
Binary file
@@ -120,6 +120,10 @@ def get_viscosity(medium: str = "0.49% MC-PBS",
120
120
  if medium == "water":
121
121
  # We ignore the `model`, because it's user convenient.
122
122
  eta = get_viscosity_water_kestin_1978(temperature=temperature)
123
+ elif not flow_rate:
124
+ # When flow rate is zero, we cannot compute the viscosity for
125
+ # anything other than water above.
126
+ eta = np.nan
123
127
  elif medium in ["0.49% MC-PBS", "0.59% MC-PBS", "0.83% MC-PBS"]:
124
128
  kwargs = {"medium": medium,
125
129
  "temperature": temperature,
@@ -29,14 +29,36 @@ class DCORTables:
29
29
  # assemble the tables
30
30
  tables = {}
31
31
  for key in table_data:
32
- columns, data = table_data[key]
33
- tab_data = np.asarray(data)
34
- if columns is not None:
35
- # We have a rec-array (named columns)
36
- ds_dt = np.dtype({'names': columns,
37
- 'formats': [np.float64] * len(columns)})
38
- tab_data = np.rec.array(tab_data, dtype=ds_dt)
39
- tables[key] = tab_data
32
+ tables[key] = DCORTable(table_data[key])
40
33
 
41
34
  self._tables_cache = tables
42
35
  return self._tables_cache
36
+
37
+
38
+ class DCORTable:
39
+ def __init__(self, table_content):
40
+ self._columns, data = table_content
41
+ self._tab_data = np.asarray(data)
42
+ if self._columns is not None:
43
+ # We have a rec-array (named columns)
44
+
45
+ ds_dt = np.dtype({'names': self._columns,
46
+ 'formats': [np.float64] * len(self._columns)})
47
+ self._tab_data = np.rec.array(self._tab_data, dtype=ds_dt)
48
+
49
+ def __array__(self, *args, **kwargs):
50
+ return self._tab_data.__array__(*args, **kwargs)
51
+
52
+ @property
53
+ def meta(self):
54
+ # TODO: Implement metadata sending from DCOR.
55
+ return {}
56
+
57
+ def has_graphs(self):
58
+ return self._columns is not None
59
+
60
+ def keys(self):
61
+ return self._columns
62
+
63
+ def __getitem__(self, key):
64
+ return self._tab_data[key]
@@ -5,7 +5,7 @@ class H5Tables:
5
5
 
6
6
  def __getitem__(self, key):
7
7
  if key in self.keys():
8
- tab = self.h5file["tables"][key]
8
+ tab = H5Table(self.h5file["tables"][key])
9
9
  else:
10
10
  raise KeyError(f"Table '{key}' not found or empty "
11
11
  f"in {self.h5file.file.filename}!")
@@ -28,3 +28,30 @@ class H5Tables:
28
28
  names.append(key)
29
29
  self._cache_keys = names
30
30
  return self._cache_keys
31
+
32
+
33
+ class H5Table:
34
+ def __init__(self, h5_ds):
35
+ self._h5_ds = h5_ds
36
+ self._keys = None
37
+ self._meta = None
38
+
39
+ def __array__(self, *args, **kwargs):
40
+ return self._h5_ds.__array__(*args, **kwargs)
41
+
42
+ @property
43
+ def meta(self):
44
+ if self._meta is None:
45
+ self._meta = dict(self._h5_ds.attrs)
46
+ return self._meta
47
+
48
+ def has_graphs(self):
49
+ return self.keys() is not None
50
+
51
+ def keys(self):
52
+ if self._keys is None:
53
+ self._keys = self._h5_ds.dtype.names
54
+ return self._keys
55
+
56
+ def __getitem__(self, key):
57
+ return self._h5_ds[key]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: dclab
3
- Version: 0.62.11
3
+ Version: 0.62.13
4
4
  Summary: Library for real-time deformability cytometry (RT-DC)
5
5
  Author: Benedikt Hartmann, Eoghan O'Connell, Maik Herbig, Maximilian Schlögel, Nadia Sbaa, Paul Müller, Philipp Rosendahl, Raghava Alajangi
6
6
  Maintainer-email: Paul Müller <dev@craban.de>
@@ -1,5 +1,5 @@
1
1
  dclab/kde_methods.py,sha256=awlqkj819VRJzArG6Fx6myDa6qGpLoZ8S9IJ1J1YECA,9206
2
- dclab/_version.py,sha256=6RN4LVuzVUBmwpWRGtSDrQrJ0GhR_RYa4tyvcOaVVUg,415
2
+ dclab/_version.py,sha256=BStrLKf1_ahS_0f5AwaERVLxxQT0VoDKL1AD-6iDlyw,415
3
3
  dclab/util.py,sha256=nLL5jwG14h1YFJ_d0L-5DwsWgyfst5hVndaiLbTkYH4,5253
4
4
  dclab/downsampling.pyx,sha256=OK7zbgGLl5gVyoU8ZBHo9EWwb8C9ChavmLNEvQvC9T0,7258
5
5
  dclab/__init__.py,sha256=1mskJAUo8HbvDhJRJFbcFB6HccFeqoRUCEHLuS64t_g,812
@@ -7,7 +7,7 @@ dclab/warn.py,sha256=MjJvyQeuvIXFQ2-fHDzbmXJ0scnHqqRJlIxfuLI_utE,523
7
7
  dclab/cached.py,sha256=eWTYBiI-HQM7JuPH-oxa5LLnhAX32GpRwlYg2kQ3sTA,2917
8
8
  dclab/http_utils.py,sha256=YtZHEwB-BBBo2fCvwhlJvlnWvfWFMHclqol3OIJ7atM,10910
9
9
  dclab/polygon_filter.py,sha256=qexmo-rXe06CUPZhN6EMJy4y4B5gXZeqejdvIB2arOE,13480
10
- dclab/downsampling.cpython-313-darwin.so,sha256=2pbC7Mlhx9PqzmOEZeiAR-TZWnOe3XUGqHm487htYIw,241968
10
+ dclab/downsampling.cpython-313-darwin.so,sha256=-nW2jLHPKlh3hLHBiA_CFWnHuRF3wGCdvO6t_wx5yM4,241968
11
11
  dclab/statistics.py,sha256=tJDqPlY_Jw2Hhl-s7ugMBSZAxcRuPu4LQuBAZBXz7t8,6355
12
12
  dclab/kde_contours.py,sha256=5K7PzZz-FtSGvW4IR2tLpbEKKqCSsSTQPsupu7zIsPg,6745
13
13
  dclab/isoelastics/iso_LE-2D-FEM-19-volume-deform.txt,sha256=vTcazOlOXo3BQ0NQtGB_IdHKA0neOLXZ_d3JuMU--RE,83358
@@ -33,7 +33,7 @@ dclab/features/emodulus/pxcorr.py,sha256=pcLjCUF0vha57YE7v0qeBlMCIOQaLt6zjtQ5qEP
33
33
  dclab/features/emodulus/scale_linear.py,sha256=5tZfOpG4QSSEMlwSoA_3XRQuY0tiZ3CSm2HsibZAaMA,7683
34
34
  dclab/features/emodulus/lut_HE-3D-FEM-22.txt,sha256=1Sg4ys0ykT7Q_jFM28XS0uJ85nZd_ha7BDXdN2rsPIA,47248
35
35
  dclab/features/emodulus/load.py,sha256=Q9rII-7Om-f0m183VNeJUxNno7at1reigKtbzdrWgjE,8557
36
- dclab/features/emodulus/viscosity.py,sha256=aBm1pQa9cFAOBnO07UWMj87bw6fQpmW1IlWWD0MEtgw,9438
36
+ dclab/features/emodulus/viscosity.py,sha256=o5s39fDnal5hkrtG8WqE_zuZG4jJzjOkZMA4MjbG7Jc,9596
37
37
  dclab/lme4/lme4_template.R,sha256=CEXQIquvYCla9dCvRYgiBemI6fiVgAKnJTetJA2LAtk,2570
38
38
  dclab/lme4/__init__.py,sha256=5WPFMTK-Yia3NJuwZEEBQ3fCyW3DiFgpZFrAwU33TV4,272
39
39
  dclab/lme4/rsetup.py,sha256=kH9VFtcK83ZaF9jvh1n5kcmGmPLLsmCPia_ElEHBLes,5890
@@ -62,16 +62,16 @@ dclab/external/statsmodels/nonparametric/__init__.py,sha256=-GEWgwsF27ems5WTBvR1
62
62
  dclab/external/statsmodels/nonparametric/kernels.py,sha256=fuy4kStFz2ZA9pqgfUb4cly-YBpXLu4TJ9-ZujayuIw,1075
63
63
  dclab/external/skimage/measure.py,sha256=y1idCqD9TUxp3-QnOiWR_d674OKaeqBJ4MN2-gVP6ro,247
64
64
  dclab/external/skimage/LICENSE,sha256=ivsSBvn3c0R9mOctWRRdza7C7wdZSRYgCVxlVqUdlB8,1452
65
- dclab/external/skimage/_find_contours_cy.cpython-313-darwin.so,sha256=780LUVj7ki1347JVeVWNy9Xz8K1DqzN5lc4tzGi7ZM0,204104
65
+ dclab/external/skimage/_find_contours_cy.cpython-313-darwin.so,sha256=vy1X3Dvm1CUMWqQF6XVj8VO3TqFYgUzccN7i_nNYasU,204104
66
66
  dclab/external/skimage/pnpoly.py,sha256=r8hFNiTz5XlUoNZjosqA0iyv1FPn0l7ewbplgFgkdaw,1347
67
67
  dclab/external/skimage/_find_contours.py,sha256=16v5eeTZBmevG8SSuXtJ6yUpVPhwfSmtc8pDD0nuuOU,9340
68
- dclab/external/skimage/_pnpoly.cpython-313-darwin.so,sha256=c0BUHfz9fFuxGZOc71m43RVtZ97p-qn89JAg8h-N6Tc,221824
68
+ dclab/external/skimage/_pnpoly.cpython-313-darwin.so,sha256=-2B7ucTPnzwrM1Dkf0B4rYgcqr_NObF9TnfRtaJfyNk,221824
69
69
  dclab/external/skimage/__init__.py,sha256=-B2QUKHAFzQuBWuuKvPDC5JIl0Zb-x3OGmbwPaE9VwQ,72
70
70
  dclab/external/skimage/_pnpoly.pyx,sha256=Qdn6xPazDschBqbr46DzB75MB2MnqvdnoTSBMK7kUGE,2504
71
71
  dclab/external/skimage/_find_contours_cy.pyx,sha256=pZJOBhMHzYEMkcz4WQVyjn7jDNrdjCfet47FU1hRAxk,7161
72
72
  dclab/external/skimage/_shared/geometry.pxd,sha256=kRsu9ifv_rL3kbRIgSLf86p0hn2oTMp6s013lZ9bBZM,346
73
73
  dclab/external/skimage/_shared/__init__.py,sha256=2sHZwTtJSlMTa3Q2YSvQW7jrPLMUSqDJQa-ROe5zfcw,37
74
- dclab/external/skimage/_shared/geometry.cpython-313-darwin.so,sha256=5laCjG9feZxZlXPStCXynyCmq9vXQPFKaoYyQrz73Jw,55344
74
+ dclab/external/skimage/_shared/geometry.cpython-313-darwin.so,sha256=4kFcjw_70cCS9EeMqdItYTmGuCTAsWkbddlK7dfkfPA,55344
75
75
  dclab/external/skimage/_shared/geometry.pyx,sha256=miCHUh6mBDbRRIoaF_0xAER1MRzsCAzFdlYQZhV7RmE,1667
76
76
  dclab/definitions/feat_logic.py,sha256=SXsSlAusgtE3uXcPu84dQwYZ07zxmV37DmPednA3_dM,5823
77
77
  dclab/definitions/meta_parse.py,sha256=YdaTdM8DAMsIFn5ITH9OHYGTXeAOBGWtx22oVjxXcWk,2393
@@ -105,7 +105,7 @@ dclab/rtdc_dataset/fmt_hdf5/basin.py,sha256=mJZR92Qoa71EwDVDYAP9KtOcjvRyjtA2wO1D
105
105
  dclab/rtdc_dataset/fmt_hdf5/events.py,sha256=JUuPviS4lEXMjfNgJE-jkeArAwUVkdA1bmAszJGjPvc,8231
106
106
  dclab/rtdc_dataset/fmt_hdf5/__init__.py,sha256=yWLYK-Fq0EYnp2eYfl1Ze02RBMOWg-iALJWs4dFSxxY,270
107
107
  dclab/rtdc_dataset/fmt_hdf5/logs.py,sha256=-mDewfv_aOeHaJykuJIWsqr9a7-moKhoGhqw9cR4ebg,1004
108
- dclab/rtdc_dataset/fmt_hdf5/tables.py,sha256=G226awNz7NA2V9l1F6jCeyVcJ8V4AJgLYhOfG1Q_5t8,872
108
+ dclab/rtdc_dataset/fmt_hdf5/tables.py,sha256=DFIYoeNiGO0dut-wK1gBX-kuPD603mw_2VbFDtPkDNg,1505
109
109
  dclab/rtdc_dataset/fmt_hdf5/base.py,sha256=_PgmDq2K7RGCuhV9J4YZwg9noW1hi2w14ZP8ooRR8Lw,6391
110
110
  dclab/rtdc_dataset/feat_anc_core/af_fl_max_ctc.py,sha256=gV3FqM0AoOHzWwhU45e3fvBb2MwGVadLL6piVW0YF1s,3687
111
111
  dclab/rtdc_dataset/feat_anc_core/af_image_contour.py,sha256=39jvhzz2GmfXDYXu1d3kie7tpBzUkUL_JTxfau-2mt8,3531
@@ -120,7 +120,7 @@ dclab/rtdc_dataset/fmt_dcor/basin.py,sha256=tQZ4GumqURjS3eppRrSyUq1zBPD0y_8rwznM
120
120
  dclab/rtdc_dataset/fmt_dcor/__init__.py,sha256=WjO1uM_Vlof15Y7HkhkV5Xv75q9TDIdOBIuS_I38qps,210
121
121
  dclab/rtdc_dataset/fmt_dcor/api.py,sha256=COPRnPfPBcxbQGxHFEbGxp2CjK-Mgnt3cIu20-Zz04M,4245
122
122
  dclab/rtdc_dataset/fmt_dcor/logs.py,sha256=1JsMr_4r5j8rkfrrUsiN42_l92GcvDjapYxopZKimnw,583
123
- dclab/rtdc_dataset/fmt_dcor/tables.py,sha256=XTZlESy4Ht9sqKpROSYJO3msqGw1kyD_41-M5XPlKNY,1181
123
+ dclab/rtdc_dataset/fmt_dcor/tables.py,sha256=FY7AuJ9DEN55nQsCCyAp8ZlqO4hrwP5EDkQOov2OOfk,1635
124
124
  dclab/rtdc_dataset/fmt_dcor/base.py,sha256=wD127W5LvvhkUy8SvFVVwAR6EEYtzgoWJ4booh45rfA,6588
125
125
  dclab/rtdc_dataset/fmt_tdms/event_mask.py,sha256=eZiDHAGG3MCVckEMHsV-YBbL-pETVLomGk1gmpjc8-k,2175
126
126
  dclab/rtdc_dataset/fmt_tdms/naming.py,sha256=biI9l1EO6BuSYgwZG0deacj4i1fMHQcW78AKXEcm5Wc,5373
@@ -129,9 +129,9 @@ dclab/rtdc_dataset/fmt_tdms/event_image.py,sha256=-jp7Z-N91e4ieumYQ1huMicj7PMJqw
129
129
  dclab/rtdc_dataset/fmt_tdms/event_trace.py,sha256=Vkym0QKSw2mq1XZl5n8wDkgHXmaZwQGiMAV5AuRSJkE,5215
130
130
  dclab/rtdc_dataset/fmt_tdms/exc.py,sha256=WzrMqnyrzp8gsT8Pf7JKqGGv43ewx7d_qgtirURppRI,813
131
131
  dclab/rtdc_dataset/fmt_tdms/event_contour.py,sha256=kjo0wJx9F0gmmOOyR0NoLw6VEtSl3h63WXXkcbfnoS8,9627
132
- dclab-0.62.11.dist-info/RECORD,,
133
- dclab-0.62.11.dist-info/LICENSE,sha256=1mLfjOTOaeiMSGPJiF5hHnMQfKX88QVeZpCCXwJGj3k,18131
134
- dclab-0.62.11.dist-info/WHEEL,sha256=zEwrEM3mH_qOUQ9uk3aZI5DMOaUao9_e1G94mKtHrTY,109
135
- dclab-0.62.11.dist-info/entry_points.txt,sha256=eOpjgznu-eW-9utUpLU-77O5098YyUEgGF3ksGMdtec,273
136
- dclab-0.62.11.dist-info/top_level.txt,sha256=irvwZMgs1edY1Zj60ZFk7Almb9Zhk4k6E6aC4YPFnnM,6
137
- dclab-0.62.11.dist-info/METADATA,sha256=ldFV7htY9AHLU56II3PuY7fWKKYcqRPfh819DEa0NcQ,4755
132
+ dclab-0.62.13.dist-info/RECORD,,
133
+ dclab-0.62.13.dist-info/LICENSE,sha256=1mLfjOTOaeiMSGPJiF5hHnMQfKX88QVeZpCCXwJGj3k,18131
134
+ dclab-0.62.13.dist-info/WHEEL,sha256=zEwrEM3mH_qOUQ9uk3aZI5DMOaUao9_e1G94mKtHrTY,109
135
+ dclab-0.62.13.dist-info/entry_points.txt,sha256=eOpjgznu-eW-9utUpLU-77O5098YyUEgGF3ksGMdtec,273
136
+ dclab-0.62.13.dist-info/top_level.txt,sha256=irvwZMgs1edY1Zj60ZFk7Almb9Zhk4k6E6aC4YPFnnM,6
137
+ dclab-0.62.13.dist-info/METADATA,sha256=WtnYmez3PYa8IxgLQu5z2n8IZMbzCLxIctZujrctsaQ,4755