{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.uhRXQP6c/b1/python-gsd_3.4.2-2_amd64.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.uhRXQP6c/b2/python-gsd_3.4.2-2_amd64.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,4 +1,4 @@\n \n- 5479e521ca0c6987970564fd96b67a76 130548 doc optional python-gsd-doc_3.4.2-2_all.deb\n+ 60ef5ae3b164daab34fa482efea9d946 130596 doc optional python-gsd-doc_3.4.2-2_all.deb\n aada70e5d4e662dfdaf6cd3a89916475 366376 debug optional python3-gsd-dbgsym_3.4.2-2_amd64.deb\n ae7b1007f0341d012012f0e5eb4e7957 209496 python optional python3-gsd_3.4.2-2_amd64.deb\n"}, {"source1": "python-gsd-doc_3.4.2-2_all.deb", "source2": "python-gsd-doc_3.4.2-2_all.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2025-02-13 09:32:12.000000 debian-binary\n -rw-r--r-- 0 0 0 2700 2025-02-13 09:32:12.000000 control.tar.xz\n--rw-r--r-- 0 0 0 127656 2025-02-13 09:32:12.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 127704 2025-02-13 09:32:12.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -57,29 +57,29 @@\n -rw-r--r-- 0 root (0) root (0) 19878 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/cli.html\n -rw-r--r-- 0 root (0) root (0) 18486 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/community.html\n -rw-r--r-- 0 root (0) root (0) 26275 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/contributing.html\n -rw-r--r-- 0 root (0) root (0) 18030 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/credits.html\n -rw-r--r-- 0 root (0) root (0) 34396 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/file-layer.html\n -rw-r--r-- 0 root (0) root (0) 52292 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/fl-examples.html\n -rw-r--r-- 0 root (0) root (0) 56825 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/genindex.html\n--rw-r--r-- 0 root (0) root (0) 53999 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/hoomd-examples.html\n+-rw-r--r-- 0 root (0) root (0) 54083 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/hoomd-examples.html\n -rw-r--r-- 0 root (0) root (0) 20677 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/index.html\n -rw-r--r-- 0 root (0) root (0) 17144 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/indices.html\n -rw-r--r-- 0 root (0) root (0) 33586 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/installation.html\n -rw-r--r-- 0 root (0) root (0) 24155 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/license.html\n -rw-r--r-- 0 root (0) root (0) 5784 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/objects.inv\n -rw-r--r-- 0 root (0) root (0) 18126 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/py-modindex.html\n -rw-r--r-- 0 root (0) root (0) 23394 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/python-api.html\n -rw-r--r-- 0 root (0) root (0) 87525 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.fl.html\n -rw-r--r-- 0 root (0) root (0) 95444 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.hoomd.html\n -rw-r--r-- 0 root (0) root (0) 49306 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.pygsd.html\n -rw-r--r-- 0 root (0) root (0) 18756 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.version.html\n -rw-r--r-- 0 root (0) root (0) 107555 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/schema-hoomd.html\n -rw-r--r-- 0 root (0) root (0) 16660 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/search.html\n--rw-r--r-- 0 root (0) root (0) 82986 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/searchindex.js\n+-rw-r--r-- 0 root (0) root (0) 83035 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/searchindex.js\n -rw-r--r-- 0 root (0) root (0) 32666 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/shapes.html\n -rw-r--r-- 0 root (0) root (0) 20931 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/specification.html\n -rw-r--r-- 0 root (0) root (0) 24988 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/style.html\n drwxr-xr-x 0 root (0) root (0) 0 2025-02-13 09:32:12.000000 ./usr/share/doc-base/\n -rw-r--r-- 0 root (0) root (0) 331 2025-02-13 09:32:12.000000 ./usr/share/doc-base/python-gsd-doc.python-gsd\n lrwxrwxrwx 0 root (0) root (0) 0 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/_static/doctools.js -> ../../../../javascript/sphinxdoc/1.0/doctools.js\n lrwxrwxrwx 0 root (0) root (0) 0 2025-02-13 09:32:12.000000 ./usr/share/doc/python-gsd-doc/html/_static/language_data.js -> ../../../../javascript/sphinxdoc/1.0/language_data.js\n"}, {"source1": "./usr/share/doc/python-gsd-doc/html/hoomd-examples.html", "source2": "./usr/share/doc/python-gsd-doc/html/hoomd-examples.html", "unified_diff": "@@ -355,23 +355,23 @@\n Out[16]: np.uint64(5)\n \n In [17]: frame.particles.N\n Out[17]: np.uint32(9)\n \n In [18]: frame.particles.position\n Out[18]: \n-array([[0.27075592, 0.30767268, 0.6251294 ],\n- [0.98903745, 0.30705917, 0.80723363],\n- [0.80428505, 0.79314476, 0.21056272],\n- [0.13742855, 0.5985356 , 0.17973042],\n- [0.7177357 , 0.5668995 , 0.56081855],\n- [0.46683306, 0.8228066 , 0.53845567],\n- [0.46924087, 0.03222325, 0.71651536],\n- [0.07918824, 0.6278263 , 0.9699448 ],\n- [0.3498676 , 0.30712193, 0.22779611]], dtype=float32)\n+array([[0.0069685 , 0.8200628 , 0.86193454],\n+ [0.08578868, 0.12396356, 0.9236008 ],\n+ [0.88191426, 0.4719485 , 0.9516498 ],\n+ [0.3330354 , 0.28635827, 0.70197195],\n+ [0.60182166, 0.94390404, 0.5729035 ],\n+ [0.6539623 , 0.38683566, 0.17467126],\n+ [0.2602627 , 0.43786344, 0.4781216 ],\n+ [0.558517 , 0.9654368 , 0.975165 ],\n+ [0.95134157, 0.84619987, 0.34825304]], dtype=float32)\n \n \n
gsd.hoomd.HOOMDTrajectory
supports random indexing of frames in the file.\n Indexing into a trajectory returns a gsd.hoomd.Frame
.
In [23]: f = gsd.pygsd.GSDFile(open('example.gsd', 'rb'))\n \n In [24]: trajectory = gsd.hoomd.HOOMDTrajectory(f);\n \n In [25]: trajectory[3].particles.position\n Out[25]: \n-array([[0.41592318, 0.6755274 , 0.15484436],\n- [0.50199866, 0.60542315, 0.7197353 ],\n- [0.02029525, 0.60818404, 0.06803371],\n- [0.814698 , 0.6171893 , 0.50268483],\n- [0.17203562, 0.10825958, 0.9111503 ],\n- [0.00363477, 0.42320147, 0.6960562 ],\n- [0.13998215, 0.8589133 , 0.53293705]], dtype=float32)\n+array([[3.00090253e-01, 1.86825782e-01, 3.20058912e-02],\n+ [6.56286180e-01, 9.17859852e-01, 6.67555690e-01],\n+ [8.94433498e-01, 2.56216526e-01, 1.95809960e-01],\n+ [7.68769681e-01, 1.98942050e-01, 8.85956526e-01],\n+ [9.37499821e-01, 6.84713840e-01, 7.26372778e-01],\n+ [1.04497485e-01, 4.02733684e-04, 5.64481199e-01],\n+ [8.29244077e-01, 3.15690011e-01, 4.57722098e-02]], dtype=float32)\n
You can use GSD without needing to compile C code to read GSD files\n using gsd.pygsd.GSDFile
in combination with gsd.hoomd.HOOMDTrajectory
. It\n only supports the rb
mode and does not read files as fast as the C\n implementation. It takes in a python file-like object, so it can be used with\n in-memory IO classes, and grid file classes that access data over the internet.