{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.dIWS4XN1/b1/python-gsd_4.2.0-1_arm64.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.dIWS4XN1/b2/python-gsd_4.2.0-1_arm64.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,4 +1,4 @@\n \n- 60352a9ea475d8f3cade40d3862608ba 132300 doc optional python-gsd-doc_4.2.0-1_all.deb\n+ 32352bfb6466b9334289aa1a607ec58e 132300 doc optional python-gsd-doc_4.2.0-1_all.deb\n f525e94f5bbca362acf41e979ca979f2 303472 debug optional python3-gsd-dbgsym_4.2.0-1_arm64.deb\n 3b7ca890b583d7b2b9c87a4dc77e89e1 197592 python optional python3-gsd_4.2.0-1_arm64.deb\n"}, {"source1": "python-gsd-doc_4.2.0-1_all.deb", "source2": "python-gsd-doc_4.2.0-1_all.deb", "unified_diff": null, "details": [{"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": "@@ -73,15 +73,15 @@\n -rw-r--r-- 0 root (0) root (0) 23047 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/python-api.html\n -rw-r--r-- 0 root (0) root (0) 92630 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.fl.html\n -rw-r--r-- 0 root (0) root (0) 96209 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.hoomd.html\n -rw-r--r-- 0 root (0) root (0) 49285 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.pygsd.html\n -rw-r--r-- 0 root (0) root (0) 18528 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/python-module-gsd.version.html\n -rw-r--r-- 0 root (0) root (0) 107327 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/schema-hoomd.html\n -rw-r--r-- 0 root (0) root (0) 16436 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/search.html\n--rw-r--r-- 0 root (0) root (0) 73831 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/searchindex.js\n+-rw-r--r-- 0 root (0) root (0) 73843 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/searchindex.js\n -rw-r--r-- 0 root (0) root (0) 32438 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/shapes.html\n -rw-r--r-- 0 root (0) root (0) 20584 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/specification.html\n -rw-r--r-- 0 root (0) root (0) 24310 2025-10-26 23:51:52.000000 ./usr/share/doc/python-gsd-doc/html/style.html\n drwxr-xr-x 0 root (0) root (0) 0 2025-10-26 23:51:52.000000 ./usr/share/doc-base/\n -rw-r--r-- 0 root (0) root (0) 331 2025-10-26 23:51:52.000000 ./usr/share/doc-base/python-gsd-doc.python-gsd\n lrwxrwxrwx 0 root (0) root (0) 0 2025-10-26 23:51:52.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-10-26 23:51:52.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": "@@ -346,23 +346,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.79128015, 0.55641955, 0.99500144],\n- [0.87479943, 0.8160985 , 0.6304358 ],\n- [0.7821152 , 0.7278306 , 0.28970724],\n- [0.43657386, 0.6534044 , 0.01117254],\n- [0.5880021 , 0.66338795, 0.8411052 ],\n- [0.7657569 , 0.9139761 , 0.33413136],\n- [0.9075611 , 0.7604783 , 0.24334773],\n- [0.5569676 , 0.32273284, 0.24362928],\n- [0.5414668 , 0.4454946 , 0.5047754 ]], dtype=float32)\n+array([[0.7851174 , 0.4244241 , 0.8537858 ],\n+ [0.37122288, 0.3145057 , 0.2521958 ],\n+ [0.15186916, 0.36626962, 0.44813523],\n+ [0.9902052 , 0.2326902 , 0.88825625],\n+ [0.10612956, 0.42911768, 0.07890538],\n+ [0.89317226, 0.56759036, 0.3428936 ],\n+ [0.96395016, 0.729641 , 0.82821167],\n+ [0.74646854, 0.3904973 , 0.64374554],\n+ [0.68553287, 0.24245128, 0.79462713]], 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.4143978 , 0.80634844, 0.664488 ],\n- [0.24825332, 0.28457585, 0.52713794],\n- [0.2511618 , 0.8379375 , 0.6509762 ],\n- [0.0736419 , 0.26211688, 0.29656884],\n- [0.61923677, 0.7288102 , 0.47264317],\n- [0.362636 , 0.5244147 , 0.0415261 ],\n- [0.1087205 , 0.7993305 , 0.3500554 ]], dtype=float32)\n+array([[0.87328845, 0.42366877, 0.15204802],\n+ [0.3822603 , 0.07121316, 0.5295109 ],\n+ [0.1722817 , 0.24732904, 0.14484662],\n+ [0.45382524, 0.82571936, 0.4648149 ],\n+ [0.84886307, 0.9452937 , 0.53066075],\n+ [0.91953397, 0.62512124, 0.5022602 ],\n+ [0.15754834, 0.10519312, 0.7592114 ]], 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.