Skip to main content

General simulation data file format.

Project description

GSD

The GSD file format is the native file format for HOOMD-blue. GSD files store trajectories of the HOOMD-blue system state in a binary file with efficient random access to frames. GSD allows all particle and topology properties to vary from one frame to the next. Use the GSD Python API to specify the initial condition for a HOOMD-blue simulation or analyze trajectory output with a script. Read a GSD trajectory with a visualization tool to explore the behavior of the simulation.

Resources

HOOMD examples

Create a hoomd gsd file.

>>> s = gsd.hoomd.Frame()
>>> s.particles.N = 4
>>> s.particles.types = ['A', 'B']
>>> s.particles.typeid = [0,0,1,1]
>>> s.particles.position = [[0,0,0],[1,1,1], [-1,-1,-1], [1,-1,-1]]
>>> s.configuration.box = [3, 3, 3, 0, 0, 0]
>>> traj = gsd.hoomd.open(name='test.gsd', mode='w')
>>> traj.append(s)

Append frames to a gsd file:

>>> def create_frame(i):
...     s = gsd.hoomd.Frame();
...     s.configuration.step = i;
...     s.particles.N = 4+i;
...     s.particles.position = numpy.random.random(size=(4+i,3))
...     return s;
>>> with gsd.hoomd.open('test.gsd', 'a') as t:
...     t.extend( (create_frame(i) for i in range(10)) )
...     print(len(t))
11

Randomly index frames:

>>> with gsd.hoomd.open('test.gsd', 'r') as t:
...     frame = t[5]
...     print(frame.configuration.step)
4
...     print(frame.particles.N)
8
...     print(frame.particles.position)
[[ 0.56993282  0.42243481  0.5502916 ]
 [ 0.36892486  0.38167036  0.27310368]
 [ 0.04739023  0.13603486  0.196539  ]
 [ 0.120232    0.91591144  0.99463677]
 [ 0.79806316  0.16991436  0.15228257]
 [ 0.13724308  0.14253527  0.02505   ]
 [ 0.39287439  0.82519054  0.01613089]
 [ 0.23150323  0.95167434  0.7715748 ]]

Slice frames:

>>> with gsd.hoomd.open('test.gsd', 'r') as t:
...     for s in t[5:-2]:
...         print(s.configuration.step, end=' ')
4 5 6 7

File layer examples

with gsd.fl.open(name='file.gsd', mode='w') as f:
    f.write_chunk(name='position', data=numpy.array([[1,2,3],[4,5,6]], dtype=numpy.float32));
    f.write_chunk(name='angle', data=numpy.array([0, 1], dtype=numpy.float32));
    f.write_chunk(name='box', data=numpy.array([10, 10, 10], dtype=numpy.float32));
    f.end_frame()
with gsd.fl.open(name='file.gsd', mode='r') as f:
    for i in range(1,f.nframes):
        position = f.read_chunk(frame=i, name='position');
        do_something(position);

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gsd-5.0.1.tar.gz (202.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

gsd-5.0.1-cp311-abi3-win_amd64.whl (261.4 kB view details)

Uploaded CPython 3.11+Windows x86-64

gsd-5.0.1-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (606.1 kB view details)

Uploaded CPython 3.11+manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

gsd-5.0.1-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (595.3 kB view details)

Uploaded CPython 3.11+manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

gsd-5.0.1-cp311-abi3-macosx_11_0_arm64.whl (267.7 kB view details)

Uploaded CPython 3.11+macOS 11.0+ ARM64

gsd-5.0.1-cp311-abi3-macosx_10_9_x86_64.whl (265.4 kB view details)

Uploaded CPython 3.11+macOS 10.9+ x86-64

File details

Details for the file gsd-5.0.1.tar.gz.

File metadata

  • Download URL: gsd-5.0.1.tar.gz
  • Upload date:
  • Size: 202.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gsd-5.0.1.tar.gz
Algorithm Hash digest
SHA256 c072d1ee934864d618039f3e7448bc79f31fe1a0f1fabfdb9cd4143a7ab2376b
MD5 a185ac2634003dccae0e9dc66371d326
BLAKE2b-256 2216b5298275654ab1da04e6283e6274fa9751ea0d5be36933c4e37502fda4a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for gsd-5.0.1.tar.gz:

Publisher: build_wheels.yaml on glotzerlab/gsd

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gsd-5.0.1-cp311-abi3-win_amd64.whl.

File metadata

  • Download URL: gsd-5.0.1-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 261.4 kB
  • Tags: CPython 3.11+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gsd-5.0.1-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 e3fc73f2beadec36c7b48fd09f426090ca15109313c9d27073e475ccf9a44cba
MD5 32cbf1f04d00b2ba358c58539460bd36
BLAKE2b-256 a731085c4d52d37432041a27978eaa038f254a96f49fbd37f4572e6c6e6a74e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for gsd-5.0.1-cp311-abi3-win_amd64.whl:

Publisher: build_wheels.yaml on glotzerlab/gsd

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gsd-5.0.1-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gsd-5.0.1-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bb9742191537b0046bc7ff8eb00ab77f48f7937e85fe895f5f143603159bd88b
MD5 1eb56d5a8141dddc03bcfe26e9c3c757
BLAKE2b-256 a5f44bd2ffe70e527f49141418be227246aede645abab002963f97ed48d464be

See more details on using hashes here.

Provenance

The following attestation bundles were made for gsd-5.0.1-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yaml on glotzerlab/gsd

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gsd-5.0.1-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for gsd-5.0.1-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0322e804044e9e3007c1b65f142cd2597822b377899dce98d54f95f10ff6f81a
MD5 5192026c8e3cc583a03d3bc76ea96848
BLAKE2b-256 dfdc2ef01a7b6465f92f5fd271b8ee4f9d16422b3b3917d95958891980b4c2e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for gsd-5.0.1-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yaml on glotzerlab/gsd

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gsd-5.0.1-cp311-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: gsd-5.0.1-cp311-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 267.7 kB
  • Tags: CPython 3.11+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gsd-5.0.1-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dc9f5f3795630ea72071b3913c80296262f14b188f60b9519f252786411c9fb6
MD5 ebd8e15c0e4517ee09ca404730217f0f
BLAKE2b-256 2621f2d9e4954d2d2ce81e1f5d24b72c026c7dd73785e3306baf9371613ecb8c

See more details on using hashes here.

Provenance

The following attestation bundles were made for gsd-5.0.1-cp311-abi3-macosx_11_0_arm64.whl:

Publisher: build_wheels.yaml on glotzerlab/gsd

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gsd-5.0.1-cp311-abi3-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: gsd-5.0.1-cp311-abi3-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 265.4 kB
  • Tags: CPython 3.11+, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gsd-5.0.1-cp311-abi3-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 24876a703e21edc7b3074156ef8612d98c3e478cab6c62b4e139491746cc30d3
MD5 9fe3cdc057feb3bbd8e5d265bdc8b1cf
BLAKE2b-256 6742016f93427a8b3d8821824ecbf2d8d5f8fa6e6568fbe0d07bedc0b922df9f

See more details on using hashes here.

Provenance

The following attestation bundles were made for gsd-5.0.1-cp311-abi3-macosx_10_9_x86_64.whl:

Publisher: build_wheels.yaml on glotzerlab/gsd

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page