Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rewrite H5MD module #4480

Merged
merged 9 commits into from
Apr 4, 2022
Merged

Rewrite H5MD module #4480

merged 9 commits into from
Apr 4, 2022

Conversation

jngrad
Copy link
Member

@jngrad jngrad commented Mar 24, 2022

Description of changes:

  • make H5md a standard ScriptInterface class
  • make H5md checkpointable (API change: positional argument file_path is now a keyword argument)
  • make H5MD specifications accessible from the python interface
    • users can now decide which datasets (e.g. particle properties) are written to the trajectory
    • data can only be appended to an existing file if it has the same H5MD specifications
    • C++ developers can now add extra particle properties to the H5MD specifications with relative ease
    • Lees-Edwards boundary conditions are now part of the H5MD specifications
  • fix cryptic errors:
    • the H5md class is now usable in an interactive session
    • physical units are now optional
  • document how to parse H5MD files with various open source tools
  • document how to reconstruct the unfolded trajectory (fix for mailing list thread "Unwrapped coordinates in H5MD format")

jngrad and others added 8 commits March 22, 2022 23:26
Co-authored-by: Pierre de Buyl <pdebuyl@pdebuyl.be>
Don't throw an OSError when the h5md file is written from an
interactive session (leave the parameters/files/script field empty).
Make H5MD utility functions static.
Make properties read-only. Disable checkpointing. Allow writing H5MD
files without physical units. Add physical units to the box length
and Lees-Edwards offset.
Let the user select which properties to write to H5MD files. When
appending data to an existing H5MD file, the H5MD specifications
must match.
@jngrad jngrad added this to the Espresso 4.2 milestone Mar 24, 2022
@jngrad jngrad marked this pull request as ready for review March 24, 2022 17:00
@jngrad jngrad requested a review from itischler March 24, 2022 17:01
@jngrad jngrad added the automerge Merge with kodiak label Apr 4, 2022
@kodiakhq kodiakhq bot merged commit d1e0be5 into espressomd:python Apr 4, 2022
@jngrad jngrad deleted the h5md_maintenance branch April 4, 2022 18:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants