Validator and examples for openPMD format
openPMD Validator Scripts
This repository contains scripts to validate existing files that (claim to)
implement the openPMD Standard
Additional scripts to create random/empty files with the valid markup of the standard are also provided.
These tools are intended for developers that want to implementent the standard. They were written to allow an easy implement-test-correct workflow without the hazzle to check every word of the written standard twice.
Nevertheless, these scripts can not validate 100% of the standard and uncovered sections shall be cross-checked manually with the words of the written standard.
For more information on requirements for implementations, please refer to the section Implementations of the openPMD standard. The repository openPMD-projects also lists a large collection of open source projects that already implement the openPMD standard.
Choose one of the install methods below to get started:
# optional: append --user pip install openPMD-validator==126.96.36.199
spack install firstname.lastname@example.org ^py-h5py~mpi spack load --dependencies email@example.com ^py-h5py~mpi
conda install -c ax3l openpmd_validator==188.8.131.52
wget https://github.com/openPMD/openPMD-validator/archive/184.108.40.206.tar.gz tar -xf 220.127.116.11.tar.gz cd openPMD-validator-18.104.22.168/ # optional: append --user python setup.py install
We provide the command-line tools for individual files:
# optional: create dummy example files openPMD_createExamples_h5 # validate openPMD_check_h5 -i example.h5 # optional: append --EDPIC for the Partice-in-Cell Extension
Additionally, the validator tools can be used as Python module in your projects, e.g. to verify a file before opening it for reading.
from openpmd_validator import createExamples_h5 # create "example.h5" createExamples_h5.main()
from openpmd_validator import check_h5 result_array = check_h5.check_file("example.h5", verbose=False) print("Result: %d Errors and %d Warnings." %( result_array, result_array))
The development of these scripts is carried out per-branch. Each branch corresponds to a certain version of the standard and might be updated in case tests did contain bugs or we found a way to cover more sections of the standard.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for openPMD-validator-22.214.171.124.tar.gz
Hashes for openPMD_validator-126.96.36.199-py3-none-any.whl