--- /srv/reproducible-results/rbuild-debian/r-b-build.ZwtfvJU8/b1/python-gsd_3.0.1-3_i386.changes +++ /srv/reproducible-results/rbuild-debian/r-b-build.ZwtfvJU8/b2/python-gsd_3.0.1-3_i386.changes ├── Files │ @@ -1,4 +1,4 @@ │ │ - b59b200244dd95a7f125de1d2a938b7c 119956 doc optional python-gsd-doc_3.0.1-3_all.deb │ + 16e86ef58422ecf548c69b1a52743dfe 119960 doc optional python-gsd-doc_3.0.1-3_all.deb │ db62f0df1c966c54385264229ef537ca 608612 debug optional python3-gsd-dbgsym_3.0.1-3_i386.deb │ 5bf4872d42bb84f4d53fb290ab899681 241024 python optional python3-gsd_3.0.1-3_i386.deb ├── python-gsd-doc_3.0.1-3_all.deb │ ├── file list │ │ @@ -1,3 +1,3 @@ │ │ -rw-r--r-- 0 0 0 4 2023-08-02 12:37:21.000000 debian-binary │ │ --rw-r--r-- 0 0 0 2548 2023-08-02 12:37:21.000000 control.tar.xz │ │ +-rw-r--r-- 0 0 0 2552 2023-08-02 12:37:21.000000 control.tar.xz │ │ -rw-r--r-- 0 0 0 117216 2023-08-02 12:37:21.000000 data.tar.xz │ ├── control.tar.xz │ │ ├── control.tar │ │ │ ├── ./md5sums │ │ │ │ ├── ./md5sums │ │ │ │ │┄ Files differ │ │ ├── xz --list │ │ │ @@ -1,13 +1,13 @@ │ │ │ Streams: 1 │ │ │ Blocks: 1 │ │ │ - Compressed size: 2548 B │ │ │ + Compressed size: 2552 B │ │ │ Uncompressed size: 10.0 KiB (10240 B) │ │ │ Ratio: 0.249 │ │ │ Check: CRC64 │ │ │ Stream Padding: 0 B │ │ │ Streams: │ │ │ Stream Blocks CompOffset UncompOffset CompSize UncompSize Ratio Check Padding │ │ │ - 1 1 0 0 2548 10240 0.249 CRC64 0 │ │ │ + 1 1 0 0 2552 10240 0.249 CRC64 0 │ │ │ Blocks: │ │ │ Stream Block CompOffset UncompOffset TotalSize UncompSize Ratio Check │ │ │ - 1 1 12 0 2512 10240 0.245 CRC64 │ │ │ + 1 1 12 0 2516 10240 0.246 CRC64 │ ├── data.tar.xz │ │ ├── data.tar │ │ │ ├── file list │ │ │ │ @@ -65,15 +65,15 @@ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 23806 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/python-api.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 87993 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.fl.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 91372 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.hoomd.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 49733 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.pygsd.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 19294 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.version.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 108026 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/schema-hoomd.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 16972 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/search.html │ │ │ │ --rw-r--r-- 0 root (0) root (0) 80521 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/searchindex.js │ │ │ │ +-rw-r--r-- 0 root (0) root (0) 80518 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/searchindex.js │ │ │ │ -rw-r--r-- 0 root (0) root (0) 33183 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/shapes.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 21209 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/specification.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 25504 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/style.html │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2023-08-02 12:37:21.000000 ./usr/share/doc-base/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 331 2023-08-02 12:37:21.000000 ./usr/share/doc-base/python-gsd-doc.python-gsd │ │ │ │ lrwxrwxrwx 0 root (0) root (0) 0 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/_static/doctools.js -> ../../../../javascript/sphinxdoc/1.0/doctools.js │ │ │ │ lrwxrwxrwx 0 root (0) root (0) 0 2023-08-02 12:37:21.000000 ./usr/share/doc/python-gsd-doc/html/_static/language_data.js -> ../../../../javascript/sphinxdoc/1.0/language_data.js │ │ │ ├── ./usr/share/doc/python-gsd-doc/html/hoomd-examples.html │ │ │ │ @@ -373,23 +373,23 @@ │ │ │ │ Out[16]: 5 │ │ │ │ │ │ │ │ In [17]: frame.particles.N │ │ │ │ Out[17]: 9 │ │ │ │ │ │ │ │ In [18]: frame.particles.position │ │ │ │ Out[18]: │ │ │ │ -array([[0.49011478, 0.3184916 , 0.34635413], │ │ │ │ - [0.51997113, 0.31424052, 0.43918642], │ │ │ │ - [0.940604 , 0.8364344 , 0.9780925 ], │ │ │ │ - [0.66446984, 0.98288757, 0.7359086 ], │ │ │ │ - [0.39177015, 0.07667109, 0.08814042], │ │ │ │ - [0.5378634 , 0.77295053, 0.88480115], │ │ │ │ - [0.38424742, 0.56573063, 0.5122713 ], │ │ │ │ - [0.49346748, 0.2559301 , 0.7543343 ], │ │ │ │ - [0.8017965 , 0.13090031, 0.87708545]], dtype=float32) │ │ │ │ +array([[0.55901694, 0.8898271 , 0.43589562], │ │ │ │ + [0.63518625, 0.99724066, 0.6972499 ], │ │ │ │ + [0.75170743, 0.21675637, 0.44101864], │ │ │ │ + [0.4138972 , 0.6034844 , 0.18022703], │ │ │ │ + [0.00870537, 0.9175535 , 0.44198006], │ │ │ │ + [0.9473444 , 0.49907002, 0.48010242], │ │ │ │ + [0.9689281 , 0.546104 , 0.46744704], │ │ │ │ + [0.44002607, 0.93499434, 0.70172346], │ │ │ │ + [0.21973263, 0.2530901 , 0.7392052 ]], dtype=float32) │ │ │ │ │ │ │ │ │ │ │ │
gsd.hoomd.HOOMDTrajectory
supports random indexing of frames in the file.
│ │ │ │ Indexing into a trajectory returns a gsd.hoomd.Frame
.
In [23]: f = gsd.pygsd.GSDFile(open('example.gsd', 'rb'))
│ │ │ │
│ │ │ │ In [24]: trajectory = gsd.hoomd.HOOMDTrajectory(f);
│ │ │ │
│ │ │ │ In [25]: trajectory[3].particles.position
│ │ │ │ Out[25]:
│ │ │ │ -array([[0.65356326, 0.7962737 , 0.07955366],
│ │ │ │ - [0.31323192, 0.78354025, 0.29654226],
│ │ │ │ - [0.48936406, 0.8055861 , 0.91310847],
│ │ │ │ - [0.12624218, 0.93906635, 0.12888773],
│ │ │ │ - [0.21377043, 0.37677625, 0.2331857 ],
│ │ │ │ - [0.21309707, 0.1822277 , 0.283754 ],
│ │ │ │ - [0.96963763, 0.35292706, 0.20198792]], dtype=float32)
│ │ │ │ +array([[0.89493656, 0.37098098, 0.49399412],
│ │ │ │ + [0.04967985, 0.79632515, 0.8515382 ],
│ │ │ │ + [0.54768705, 0.79555255, 0.8117533 ],
│ │ │ │ + [0.5035941 , 0.4786534 , 0.10695654],
│ │ │ │ + [0.6661297 , 0.9253157 , 0.4248592 ],
│ │ │ │ + [0.82117325, 0.9103132 , 0.16975206],
│ │ │ │ + [0.90396005, 0.08394167, 0.9519467 ]], dtype=float32)
│ │ │ │
You can use GSD without needing to compile C code to read GSD files
│ │ │ │ using gsd.pygsd.GSDFile
in combination with gsd.hoomd.HOOMDTrajectory
. It
│ │ │ │ only supports the rb
mode and does not read files as fast as the C
│ │ │ │ implementation. It takes in a python file-like object, so it can be used with
│ │ │ │ in-memory IO classes, and grid file classes that access data over the internet.