Skip to main content

SWIFTsim (swift.dur.ac.uk) i/o routines for python.

Project description

SWIFTsimIO

Build Status Documentation Status JOSS Status

The SWIFT astrophysical simulation code (http://swift.dur.ac.uk) is used widely. There exists many ways of reading the data from SWIFT, which outputs HDF5 files. These range from reading directly using h5py to using a complex system such as yt; however these either are unsatisfactory (e.g. a lack of unit information in reading HDF5), or too complex for most use-cases. swiftsimio provides an object-oriented API to read (dynamically) data from SWIFT.

Full documentation is available at ReadTheDocs.

Getting set up with swiftsimio is easy; it (by design) has very few requirements. There are a number of optional packages that you can install to make the experience better and these are recommended.

Requirements

This requires python v3.6.0 or higher. Unfortunately it is not possible to support swiftsimio on versions of python lower than this. It is important that you upgrade if you are still a python2 user.

Python packages

  • numpy, required for the core numerical routines.
  • h5py, required to read data from the SWIFT HDF5 output files.
  • unyt, required for symbolic unit calculations (depends on sympy`).

Optional packages

  • numba, highly recommended should you wish to use the in-built visualisation tools.
  • scipy, required if you wish to generate smoothing lengths for particle types that do not store this variable in the snapshots (e.g. dark matter)
  • tqdm, required for progress bars for some long-running tasks. If not installed no progress bar will be shown.
  • py-sphviewer, if you wish to use our integration with this visualisation code.

Installing

swiftsimio can be installed using the python packaging manager, pip, or any other packaging manager that you wish to use:

pip install swiftsimio

Citing

Please cite swiftsimio using the JOSS paper:

@article{Borrow2020,
  doi = {10.21105/joss.02430},
  url = {https://doi.org/10.21105/joss.02430},
  year = {2020},
  publisher = {The Open Journal},
  volume = {5},
  number = {52},
  pages = {2430},
  author = {Josh Borrow and Alexei Borrisov},
  title = {swiftsimio: A Python library for reading SWIFT data},
  journal = {Journal of Open Source Software}
}

If you use any of the subsampled projection backends, we ask that you cite our relevant SPHERIC paper. Note that citing the arXiv version here is recommended as the ADS cannot track conference proceedings well.

@article{Borrow2021
  title={Projecting SPH Particles in Adaptive Environments}, 
  author={Josh Borrow and Ashley J. Kelly},
  year={2021},
  eprint={2106.05281},
  archivePrefix={arXiv},
  primaryClass={astro-ph.GA}
}

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

swiftsimio-4.9.0.tar.gz (68.5 kB view details)

Uploaded Source

Built Distribution

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

swiftsimio-4.9.0-py3-none-any.whl (93.1 kB view details)

Uploaded Python 3

File details

Details for the file swiftsimio-4.9.0.tar.gz.

File metadata

  • Download URL: swiftsimio-4.9.0.tar.gz
  • Upload date:
  • Size: 68.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for swiftsimio-4.9.0.tar.gz
Algorithm Hash digest
SHA256 b6459c6810214e2d58d3c4ea363fb2dc17c8c7d22a7cfb883322ccaa832ff9b2
MD5 f683c4d60ca80b940cf6e44c6757f493
BLAKE2b-256 64b16db74ce3ffe31d7e205cd6411cf12634ed16496fb33687465fa9ee7cb740

See more details on using hashes here.

File details

Details for the file swiftsimio-4.9.0-py3-none-any.whl.

File metadata

  • Download URL: swiftsimio-4.9.0-py3-none-any.whl
  • Upload date:
  • Size: 93.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for swiftsimio-4.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1c2422b3cdce4944f1530a8949c082d83478cd9739f17eb4dd76b989f164aa3e
MD5 163d949f8f59336eba55703dd5fdbfd1
BLAKE2b-256 606658b346b92120610e2880a88151293d4e8e2766445189e5f2f6eaaf31ed1e

See more details on using hashes here.

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