{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.idlALzRH/b1/python-gsd_3.3.0-1_armhf.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.idlALzRH/b2/python-gsd_3.3.0-1_armhf.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,4 +1,4 @@\n \n- 17505a5c601d94685c377adda079e13e 130396 doc optional python-gsd-doc_3.3.0-1_all.deb\n+ b9fdbb0acd535217398288c409a60e03 130384 doc optional python-gsd-doc_3.3.0-1_all.deb\n 282233913b584018758441d795f7367f 341964 debug optional python3-gsd-dbgsym_3.3.0-1_armhf.deb\n 6df2a34c5de8127fa9915060ff3af3ac 192848 python optional python3-gsd_3.3.0-1_armhf.deb\n"}, {"source1": "python-gsd-doc_3.3.0-1_all.deb", "source2": "python-gsd-doc_3.3.0-1_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 2024-07-05 16:19:20.000000 debian-binary\n -rw-r--r-- 0 0 0 2692 2024-07-05 16:19:20.000000 control.tar.xz\n--rw-r--r-- 0 0 0 127512 2024-07-05 16:19:20.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 127500 2024-07-05 16:19:20.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": "@@ -71,15 +71,15 @@\n -rw-r--r-- 0 root (0) root (0) 23394 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/python-api.html\n -rw-r--r-- 0 root (0) root (0) 87526 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.fl.html\n -rw-r--r-- 0 root (0) root (0) 95472 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.hoomd.html\n -rw-r--r-- 0 root (0) root (0) 49307 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.pygsd.html\n -rw-r--r-- 0 root (0) root (0) 18756 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.version.html\n -rw-r--r-- 0 root (0) root (0) 107555 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/schema-hoomd.html\n -rw-r--r-- 0 root (0) root (0) 16660 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/search.html\n--rw-r--r-- 0 root (0) root (0) 82710 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/searchindex.js\n+-rw-r--r-- 0 root (0) root (0) 82711 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/searchindex.js\n -rw-r--r-- 0 root (0) root (0) 32666 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/shapes.html\n -rw-r--r-- 0 root (0) root (0) 20804 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/specification.html\n -rw-r--r-- 0 root (0) root (0) 24988 2024-07-05 16:19:20.000000 ./usr/share/doc/python-gsd-doc/html/style.html\n drwxr-xr-x 0 root (0) root (0) 0 2024-07-05 16:19:20.000000 ./usr/share/doc-base/\n -rw-r--r-- 0 root (0) root (0) 331 2024-07-05 16:19:20.000000 ./usr/share/doc-base/python-gsd-doc.python-gsd\n lrwxrwxrwx 0 root (0) root (0) 0 2024-07-05 16:19:20.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 2024-07-05 16:19:20.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]: 5\n \n In [17]: frame.particles.N\n Out[17]: 9\n \n In [18]: frame.particles.position\n Out[18]: \n-array([[0.5820385 , 0.78381735, 0.3796044 ],\n- [0.4972064 , 0.6588702 , 0.5139418 ],\n- [0.50547403, 0.505034 , 0.9411819 ],\n- [0.5944673 , 0.903661 , 0.5821638 ],\n- [0.80676115, 0.71070987, 0.17071101],\n- [0.97170377, 0.47321656, 0.453243 ],\n- [0.98979634, 0.7429908 , 0.3354479 ],\n- [0.9989154 , 0.8565489 , 0.85034865],\n- [0.99203366, 0.10741754, 0.1708654 ]], dtype=float32)\n+array([[0.43797806, 0.20673501, 0.07877223],\n+ [0.42677975, 0.6079317 , 0.6460697 ],\n+ [0.03314833, 0.37091202, 0.48208618],\n+ [0.90122086, 0.1614931 , 0.05273489],\n+ [0.44480878, 0.65923005, 0.9001247 ],\n+ [0.08550329, 0.782354 , 0.7550921 ],\n+ [0.0102686 , 0.9362271 , 0.8669989 ],\n+ [0.5459706 , 0.8208881 , 0.98105085],\n+ [0.5673919 , 0.35156927, 0.4191816 ]], 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.56937736, 0.36090612, 0.08444197],\n- [0.81767064, 0.5891389 , 0.52570784],\n- [0.6147773 , 0.22818811, 0.04388472],\n- [0.15879309, 0.55443 , 0.79213 ],\n- [0.02496225, 0.78359914, 0.05256526],\n- [0.22676492, 0.74552315, 0.44213656],\n- [0.6490232 , 0.8053516 , 0.10685506]], dtype=float32)\n+array([[0.318956 , 0.9852199 , 0.35520285],\n+ [0.7627266 , 0.8040645 , 0.35519972],\n+ [0.43195474, 0.07768448, 0.6105821 ],\n+ [0.7662494 , 0.33344215, 0.4538345 ],\n+ [0.12536071, 0.6268418 , 0.20186798],\n+ [0.4967294 , 0.8545378 , 0.7122107 ],\n+ [0.68172616, 0.5352891 , 0.6186649 ]], 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.