{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.G7QMXiVz/b1/python-gsd_2.7.0-2_i386.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.G7QMXiVz/b2/python-gsd_2.7.0-2_i386.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,4 +1,4 @@\n \n- 74c25667dc4a7610db6df9b2197f046d 90932 doc optional python-gsd-doc_2.7.0-2_all.deb\n+ e68512353e9890159774868f2900e3dd 90944 doc optional python-gsd-doc_2.7.0-2_all.deb\n 81f2958b3d15212127fdbadbce866630 241404 debug optional python3-gsd-dbgsym_2.7.0-2_i386.deb\n f99cecda990f6f79b637af704470496f 86380 python optional python3-gsd_2.7.0-2_i386.deb\n"}, {"source1": "python-gsd-doc_2.7.0-2_all.deb", "source2": "python-gsd-doc_2.7.0-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 2023-01-17 16:37:42.000000 debian-binary\n -rw-r--r-- 0 0 0 2376 2023-01-17 16:37:42.000000 control.tar.xz\n--rw-r--r-- 0 0 0 88364 2023-01-17 16:37:42.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 88376 2023-01-17 16:37:42.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": "@@ -59,15 +59,15 @@\n -rw-r--r-- 0 root (0) root (0) 7101 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/py-modindex.html\n -rw-r--r-- 0 root (0) root (0) 32745 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/python-api.html\n -rw-r--r-- 0 root (0) root (0) 74465 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.fl.html\n -rw-r--r-- 0 root (0) root (0) 66497 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.hoomd.html\n -rw-r--r-- 0 root (0) root (0) 35551 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.pygsd.html\n -rw-r--r-- 0 root (0) root (0) 97149 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/schema-hoomd.html\n -rw-r--r-- 0 root (0) root (0) 5908 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/search.html\n--rw-r--r-- 0 root (0) root (0) 68824 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/searchindex.js\n+-rw-r--r-- 0 root (0) root (0) 68822 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/searchindex.js\n -rw-r--r-- 0 root (0) root (0) 21656 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/shapes.html\n -rw-r--r-- 0 root (0) root (0) 10113 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/specification.html\n -rw-r--r-- 0 root (0) root (0) 13964 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/style.html\n drwxr-xr-x 0 root (0) root (0) 0 2023-01-17 16:37:42.000000 ./usr/share/doc-base/\n -rw-r--r-- 0 root (0) root (0) 331 2023-01-17 16:37:42.000000 ./usr/share/doc-base/python-gsd-doc.python-gsd\n lrwxrwxrwx 0 root (0) root (0) 0 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/_static/_sphinx_javascript_frameworks_compat.js -> ../../../../javascript/sphinxdoc/1.0/_sphinx_javascript_frameworks_compat.js\n lrwxrwxrwx 0 root (0) root (0) 0 2023-01-17 16:37:42.000000 ./usr/share/doc/python-gsd-doc/html/_static/css/badge_only.css -> ../../../../../sphinx_rtd_theme/static/css/badge_only.css\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": "@@ -193,23 +193,23 @@\n Out[16]: 5\n \n In [17]: snap.particles.N\n Out[17]: 9\n \n In [18]: snap.particles.position\n Out[18]: \n-array([[0.63889754, 0.10892821, 0.00807442],\n- [0.42598215, 0.9713994 , 0.8758309 ],\n- [0.30248833, 0.5658569 , 0.5956299 ],\n- [0.07117487, 0.49016574, 0.64954334],\n- [0.69813335, 0.6075195 , 0.18205918],\n- [0.5712853 , 0.8626947 , 0.31959438],\n- [0.0047781 , 0.1330923 , 0.3930967 ],\n- [0.9183727 , 0.66345936, 0.74858785],\n- [0.01786156, 0.42455098, 0.05332853]], dtype=float32)\n+array([[0.11889108, 0.99563736, 0.4708511 ],\n+ [0.11030402, 0.22456077, 0.749747 ],\n+ [0.9887107 , 0.75898975, 0.7610922 ],\n+ [0.03039484, 0.1537153 , 0.0294544 ],\n+ [0.03143189, 0.5109341 , 0.8765838 ],\n+ [0.46935037, 0.02496142, 0.44709668],\n+ [0.5878508 , 0.15341844, 0.24387108],\n+ [0.8923092 , 0.50627977, 0.9575663 ],\n+ [0.19825953, 0.4598811 , 0.98291963]], 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.Snapshot
.
In [23]: f = gsd.pygsd.GSDFile(open('test.gsd', 'rb'))\n \n In [24]: t = gsd.hoomd.HOOMDTrajectory(f);\n \n In [25]: t[3].particles.position\n Out[25]: \n-array([[0.41265997, 0.51989734, 0.5874644 ],\n- [0.63586783, 0.09243915, 0.8981873 ],\n- [0.3649701 , 0.58789736, 0.98103064],\n- [0.6755696 , 0.52513665, 0.43279934],\n- [0.83061415, 0.9239881 , 0.5580153 ],\n- [0.8071852 , 0.29288206, 0.63318837],\n- [0.28227973, 0.41341767, 0.264299 ]], dtype=float32)\n+array([[0.09652414, 0.61696154, 0.03166472],\n+ [0.3301086 , 0.83354086, 0.7155698 ],\n+ [0.729872 , 0.9966624 , 0.1752343 ],\n+ [0.72815806, 0.04989876, 0.24340108],\n+ [0.0090039 , 0.24569628, 0.90215504],\n+ [0.42624676, 0.25213456, 0.12603416],\n+ [0.8968407 , 0.24936676, 0.5196016 ]], 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.