sdfr 1.4.4__py3-none-win_amd64.whl → 1.4.6__py3-none-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.
- sdfr/SDF.py +8 -13
- sdfr/_commit_info.py +2 -2
- sdfr/sdf_helper.py +42 -43
- sdfr/sdfc_shared.dll +0 -0
- sdfr/sdfc_shared.lib +0 -0
- {sdfr-1.4.4.dist-info → sdfr-1.4.6.dist-info}/METADATA +1 -1
- sdfr-1.4.6.dist-info/RECORD +12 -0
- {sdfr-1.4.4.dist-info → sdfr-1.4.6.dist-info}/WHEEL +1 -1
- sdfr-1.4.4.dist-info/RECORD +0 -12
- {sdfr-1.4.4.dist-info → sdfr-1.4.6.dist-info}/licenses/LICENSE +0 -0
- {sdfr-1.4.4.dist-info → sdfr-1.4.6.dist-info}/licenses/LICENSE_README.txt +0 -0
sdfr/SDF.py
CHANGED
|
@@ -370,8 +370,8 @@ class BlockList:
|
|
|
370
370
|
self.Header = get_header(h.contents)
|
|
371
371
|
mesh_id_map = {}
|
|
372
372
|
mesh_vars = []
|
|
373
|
-
self._block_ids = {}
|
|
374
|
-
self._block_names = {}
|
|
373
|
+
self._block_ids = {"Header": self.Header}
|
|
374
|
+
self._block_names = {"Header": self.Header}
|
|
375
375
|
for n in range(h.contents.nblocks):
|
|
376
376
|
block = block.contents
|
|
377
377
|
block._handle = h
|
|
@@ -517,15 +517,9 @@ class Block:
|
|
|
517
517
|
self._data_length = block.data_length
|
|
518
518
|
self._dims = tuple(block.dims[: block.ndims])
|
|
519
519
|
self._contents = block
|
|
520
|
-
self._owndata = True
|
|
521
520
|
self._blocklist = block._blocklist
|
|
522
521
|
self._data = None
|
|
523
522
|
|
|
524
|
-
def __del__(self):
|
|
525
|
-
if not self._owndata and self._data is not None:
|
|
526
|
-
clib = self._handle._clib
|
|
527
|
-
clib.sdf_free_block_data(self._handle, self._contents)
|
|
528
|
-
|
|
529
523
|
def _numpy_from_buffer(self, data, blen):
|
|
530
524
|
buffer_from_memory = ct.pythonapi.PyMemoryView_FromMemory
|
|
531
525
|
buffer_from_memory.restype = ct.py_object
|
|
@@ -535,7 +529,6 @@ class Block:
|
|
|
535
529
|
totype = _ct_datatypes[self._contents.datatype_out]
|
|
536
530
|
cast = ct.cast(data, ct.POINTER(totype))
|
|
537
531
|
buf = buffer_from_memory(cast, blen)
|
|
538
|
-
self._owndata = False
|
|
539
532
|
return np.frombuffer(buf, dtype)
|
|
540
533
|
|
|
541
534
|
@property
|
|
@@ -912,8 +905,10 @@ def get_header(h):
|
|
|
912
905
|
|
|
913
906
|
|
|
914
907
|
def get_run_info(block):
|
|
908
|
+
import datetime
|
|
915
909
|
from datetime import datetime as dtm
|
|
916
|
-
|
|
910
|
+
|
|
911
|
+
utc = datetime.timezone.utc
|
|
917
912
|
|
|
918
913
|
h = ct.cast(block.data, ct.POINTER(RunInfo)).contents
|
|
919
914
|
d = {}
|
|
@@ -922,9 +917,9 @@ def get_run_info(block):
|
|
|
922
917
|
d["sha1sum"] = h.sha1sum.decode()
|
|
923
918
|
d["compile_machine"] = h.compile_machine.decode()
|
|
924
919
|
d["compile_flags"] = h.compile_flags.decode()
|
|
925
|
-
d["compile_date"] = dtm.fromtimestamp(h.compile_date,
|
|
926
|
-
d["run_date"] = dtm.fromtimestamp(h.run_date,
|
|
927
|
-
d["io_data"] = dtm.fromtimestamp(h.io_date,
|
|
920
|
+
d["compile_date"] = dtm.fromtimestamp(h.compile_date, utc).strftime("%c")
|
|
921
|
+
d["run_date"] = dtm.fromtimestamp(h.run_date, utc).strftime("%c")
|
|
922
|
+
d["io_data"] = dtm.fromtimestamp(h.io_date, utc).strftime("%c")
|
|
928
923
|
return d
|
|
929
924
|
|
|
930
925
|
|
sdfr/_commit_info.py
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
__commit_date__ = "
|
|
2
|
-
__commit_id__ = "
|
|
1
|
+
__commit_date__ = "Fri Aug 8 17:11:48 2025 +0100"
|
|
2
|
+
__commit_id__ = "254251dfdad1469679c14dd9bbbadf472cd9225b"
|
sdfr/sdf_helper.py
CHANGED
|
@@ -1317,8 +1317,11 @@ def plot_rays(var, skip=1, rays=None, **kwargs):
|
|
|
1317
1317
|
k1 = "vmax"
|
|
1318
1318
|
k = "vrange"
|
|
1319
1319
|
vmin, vmax = 1e99, -1e99
|
|
1320
|
-
if
|
|
1321
|
-
|
|
1320
|
+
if (
|
|
1321
|
+
k not in kwargs
|
|
1322
|
+
and not (k0 in kwargs and k1 in kwargs)
|
|
1323
|
+
and len(ray_list) > 0
|
|
1324
|
+
):
|
|
1322
1325
|
for v in ray_list:
|
|
1323
1326
|
if len(v.data) > 0:
|
|
1324
1327
|
vmin = min(vmin, v.data.min())
|
|
@@ -2034,14 +2037,8 @@ def getdata(fname, wkd=None, verbose=True, squeeze=False):
|
|
|
2034
2037
|
except:
|
|
2035
2038
|
pass
|
|
2036
2039
|
|
|
2037
|
-
sdfdict =
|
|
2038
|
-
for key, value in data.__dict__.items():
|
|
2039
|
-
if hasattr(value, "id"):
|
|
2040
|
-
sdfdict[value.id] = value
|
|
2041
|
-
else:
|
|
2042
|
-
sdfdict[key] = value
|
|
2040
|
+
sdfdict = data._block_ids
|
|
2043
2041
|
|
|
2044
|
-
fdict = {}
|
|
2045
2042
|
table = {"time": "t"}
|
|
2046
2043
|
k = "Header"
|
|
2047
2044
|
if k in sdfdict:
|
|
@@ -2052,7 +2049,6 @@ def getdata(fname, wkd=None, verbose=True, squeeze=False):
|
|
|
2052
2049
|
var = h[k]
|
|
2053
2050
|
if verbose:
|
|
2054
2051
|
print(key + str(np.shape(var)) + " = " + k)
|
|
2055
|
-
fdict[key] = var
|
|
2056
2052
|
globals()[key] = var
|
|
2057
2053
|
builtins.__dict__[key] = var
|
|
2058
2054
|
|
|
@@ -2107,39 +2103,10 @@ def getdata(fname, wkd=None, verbose=True, squeeze=False):
|
|
|
2107
2103
|
dims = str(tuple(int(i) for i in sdfdict[k].dims))
|
|
2108
2104
|
if verbose:
|
|
2109
2105
|
print(key + dims + " = " + k)
|
|
2110
|
-
fdict[key] = var
|
|
2111
2106
|
globals()[key] = var
|
|
2112
2107
|
builtins.__dict__[key] = var
|
|
2113
2108
|
|
|
2114
|
-
|
|
2115
|
-
if k in sdfdict:
|
|
2116
|
-
vargrid = sdfdict[k]
|
|
2117
|
-
grid = vargrid
|
|
2118
|
-
keys = "x", "y", "z"
|
|
2119
|
-
for n in range(np.size(vargrid.dims)):
|
|
2120
|
-
key = keys[n]
|
|
2121
|
-
var = vargrid.data[n]
|
|
2122
|
-
dims = str(tuple(int(i) for i in sdfdict[k].dims))
|
|
2123
|
-
if verbose:
|
|
2124
|
-
print(key + dims + " = " + k)
|
|
2125
|
-
fdict[key] = var
|
|
2126
|
-
globals()[key] = var
|
|
2127
|
-
builtins.__dict__[key] = var
|
|
2128
|
-
|
|
2129
|
-
k = "grid_mid"
|
|
2130
|
-
if k in sdfdict:
|
|
2131
|
-
vargrid = sdfdict[k]
|
|
2132
|
-
grid_mid = vargrid
|
|
2133
|
-
keys = "xc", "yc", "zc"
|
|
2134
|
-
for n in range(np.size(vargrid.dims)):
|
|
2135
|
-
key = keys[n]
|
|
2136
|
-
var = vargrid.data[n]
|
|
2137
|
-
dims = str(tuple(int(i) for i in sdfdict[k].dims))
|
|
2138
|
-
if verbose:
|
|
2139
|
-
print(key + dims + " = " + k)
|
|
2140
|
-
fdict[key] = var
|
|
2141
|
-
globals()[key] = var
|
|
2142
|
-
builtins.__dict__[key] = var
|
|
2109
|
+
_get_grid(data)
|
|
2143
2110
|
|
|
2144
2111
|
# Export particle arrays
|
|
2145
2112
|
for k, value in data.__dict__.items():
|
|
@@ -2156,7 +2123,6 @@ def getdata(fname, wkd=None, verbose=True, squeeze=False):
|
|
|
2156
2123
|
if isinstance(value, sdf.BlockPointVariable):
|
|
2157
2124
|
if verbose:
|
|
2158
2125
|
print(key + dims + " = " + value.name)
|
|
2159
|
-
fdict[key] = var
|
|
2160
2126
|
globals()[key] = var
|
|
2161
2127
|
builtins.__dict__[key] = var
|
|
2162
2128
|
else:
|
|
@@ -2169,7 +2135,6 @@ def getdata(fname, wkd=None, verbose=True, squeeze=False):
|
|
|
2169
2135
|
dims = str(tuple(int(i) for i in value.dims))
|
|
2170
2136
|
if verbose:
|
|
2171
2137
|
print(gkey + dims + " = " + k + " " + keys[n])
|
|
2172
|
-
fdict[gkey] = var
|
|
2173
2138
|
globals()[gkey] = var
|
|
2174
2139
|
builtins.__dict__[gkey] = var
|
|
2175
2140
|
|
|
@@ -2177,6 +2142,33 @@ def getdata(fname, wkd=None, verbose=True, squeeze=False):
|
|
|
2177
2142
|
return data
|
|
2178
2143
|
|
|
2179
2144
|
|
|
2145
|
+
def _get_grid(data, verbose=False):
|
|
2146
|
+
sdfdict = {}
|
|
2147
|
+
if hasattr(data, "_block_ids"):
|
|
2148
|
+
sdfdict = data._block_ids
|
|
2149
|
+
|
|
2150
|
+
grids = "grid", "grid_mid"
|
|
2151
|
+
grid_keys = ["x", "y", "z"], ["xc", "yc", "zc"]
|
|
2152
|
+
|
|
2153
|
+
for key, gkeys in zip(grids, grid_keys):
|
|
2154
|
+
vargrid = None
|
|
2155
|
+
if hasattr(data, key):
|
|
2156
|
+
vargrid = data.grid
|
|
2157
|
+
elif key in sdfdict:
|
|
2158
|
+
vargrid = sdfdict[key]
|
|
2159
|
+
|
|
2160
|
+
if vargrid:
|
|
2161
|
+
globals()[key] = vargrid
|
|
2162
|
+
for n in range(np.size(vargrid.dims)):
|
|
2163
|
+
key = gkeys[n]
|
|
2164
|
+
var = vargrid.data[n]
|
|
2165
|
+
dims = str(tuple(int(i) for i in vargrid.dims))
|
|
2166
|
+
if verbose:
|
|
2167
|
+
print(key + dims + " = " + k)
|
|
2168
|
+
globals()[key] = var
|
|
2169
|
+
builtins.__dict__[key] = var
|
|
2170
|
+
|
|
2171
|
+
|
|
2180
2172
|
def ogrid(skip=None, **kwargs):
|
|
2181
2173
|
global x, y, mult_x, mult_y
|
|
2182
2174
|
if np.ndim(x) == 1:
|
|
@@ -2198,8 +2190,15 @@ def ogrid(skip=None, **kwargs):
|
|
|
2198
2190
|
|
|
2199
2191
|
|
|
2200
2192
|
def plotgrid(fname=None, iso=None, title=True):
|
|
2201
|
-
|
|
2193
|
+
global grid
|
|
2194
|
+
if (
|
|
2195
|
+
isinstance(fname, sdf.BlockList)
|
|
2196
|
+
or isinstance(fname, dict)
|
|
2197
|
+
or hasattr(fname, "grid")
|
|
2198
|
+
):
|
|
2202
2199
|
dat = fname
|
|
2200
|
+
_get_grid(dat)
|
|
2201
|
+
title = False
|
|
2203
2202
|
elif fname is not None:
|
|
2204
2203
|
dat = getdata(fname, verbose=verbose)
|
|
2205
2204
|
|
sdfr/sdfc_shared.dll
CHANGED
|
Binary file
|
sdfr/sdfc_shared.lib
CHANGED
|
Binary file
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
sdfr/__init__.py,sha256=OxcJAJ0ADoE54vgqMQqxhoFWyU2ldb3fb-_LFyeZZfQ,1209
|
|
2
|
+
sdfr/_commit_info.py,sha256=0rgHeEWqDT9BY-sUd4y9DzBpu47pTrR9Witiqaw_g-A,111
|
|
3
|
+
sdfr/loadlib.py,sha256=xxp5MX-u7ZHIc12mcvN-y8L5UEjY-aEgINj2r-1swWk,2358
|
|
4
|
+
sdfr/SDF.py,sha256=Vka3UM8TCbREKAf0-eppz5crPQ04bvGo2DjpMal4Kx0,31386
|
|
5
|
+
sdfr/sdf_helper.py,sha256=EnwHKG0cHHkplE9wKAIdBb-XAhqvVbsG0aDea_6S3zU,63439
|
|
6
|
+
sdfr/sdfc_shared.dll,sha256=dJ-8sXbze0DtqEvjrK4VhkPVOeke44HbseNw20HGI8s,121856
|
|
7
|
+
sdfr/sdfc_shared.lib,sha256=oIgoIRQf3vaNLlzLS5fgpjpYXVXanlMp037A8EkWNeA,3616
|
|
8
|
+
sdfr-1.4.6.dist-info/METADATA,sha256=R-u3p3Va7lHdIEud6a2DFNhIFB71_K8erUQRV3Lndw8,370
|
|
9
|
+
sdfr-1.4.6.dist-info/WHEEL,sha256=s8reeTqZgG3jMO9N1mb5NZvAOJEkFQZZpEaDT4R2CPk,103
|
|
10
|
+
sdfr-1.4.6.dist-info/licenses/LICENSE,sha256=gpLeavs1KxgJFrpL_uVDh0MoDvPfJoZ89A5dSCl4P5U,1652
|
|
11
|
+
sdfr-1.4.6.dist-info/licenses/LICENSE_README.txt,sha256=KlBSoHArwoXbiygx3IJTjtgM7hLNO9o8ZMlZV77nrXs,235
|
|
12
|
+
sdfr-1.4.6.dist-info/RECORD,,
|
sdfr-1.4.4.dist-info/RECORD
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
sdfr/__init__.py,sha256=OxcJAJ0ADoE54vgqMQqxhoFWyU2ldb3fb-_LFyeZZfQ,1209
|
|
2
|
-
sdfr/_commit_info.py,sha256=hqXwlOqYzU29y9NaKyuTotIZ84sBacjNh7bvhYqVsaE,112
|
|
3
|
-
sdfr/loadlib.py,sha256=xxp5MX-u7ZHIc12mcvN-y8L5UEjY-aEgINj2r-1swWk,2358
|
|
4
|
-
sdfr/SDF.py,sha256=fawFbkOiSIzeKOtc6Vic0OQ96q2on213IP4jSxLTbRo,31570
|
|
5
|
-
sdfr/sdf_helper.py,sha256=n-2h-MrqQM-5p-lsmLhIealtSnsOeQTd-nNezYp0EgA,63670
|
|
6
|
-
sdfr/sdfc_shared.dll,sha256=w22kJKHIxaFeAhdbm1EoElDhIUZoZLlZ8_bL2QwhXbs,121344
|
|
7
|
-
sdfr/sdfc_shared.lib,sha256=S1N_78t9KbdIMK70zF5doUSQTPKnINn_MaOo_f1F_9k,3616
|
|
8
|
-
sdfr-1.4.4.dist-info/METADATA,sha256=_2w8TOMMbZPmHFAhTMZOQ67AsYJEk7hCQioGlhVOItk,370
|
|
9
|
-
sdfr-1.4.4.dist-info/WHEEL,sha256=M0M8yQSkdzjr-Re7BLxGdurZIJei1aSjIm-hgxnt5-w,103
|
|
10
|
-
sdfr-1.4.4.dist-info/licenses/LICENSE,sha256=gpLeavs1KxgJFrpL_uVDh0MoDvPfJoZ89A5dSCl4P5U,1652
|
|
11
|
-
sdfr-1.4.4.dist-info/licenses/LICENSE_README.txt,sha256=KlBSoHArwoXbiygx3IJTjtgM7hLNO9o8ZMlZV77nrXs,235
|
|
12
|
-
sdfr-1.4.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|