Skip to main content

Tools to read .hdf5 and .xsil files generated using XMDS2 and functions to implement Bessel transformations and Bessel quadrature integration

Project description

xmds2-tools

Tools to read .hdf5 and .xsil files generated using XMDS2 and functions to implement Bessel transformations and Bessel quadrature integration

These tools were built to work with the output files generated by XMDS2 but can be used for other purposes.

The function reader.ReadH5 reads any HDF5 file and returns the contents as a Python dictionary. Likewise, reader.WriteH5 takes a Python dictionary and saves the contents as an HDF5 file.

XMDS2 simulations generate a text file with extension .xsil as well as the HDF5 data. The function reader.ParseXSIL reads the XML data from the text file and returns a dictionary with simulation parameters including global variables, command line variables, and variables derived from global and command line variables. If the Bessel transform is used on an axis a variable called "axis name"Outer is added where "axis name" is the name of the axis defined in XMDS and the value of the variable is the outer radius of the interval defining the grid.

The bessel.py module is based on Numerical calculation of dipolar-quantum-droplet stationary states and implements Bessel quadrature integration and numerical radial derivative in cylindrical coordinates.

Examples

The examples/ folder contains Python scripts demonstrating the use of the reader and bessel modules to analyse the output of some of the XMDS2 examples. The bessel module is also used for quadrature integration and compared to the trapezium method.

None of the examples or any of the XMDS2 source code is reproduced here and the user is instead refered to the XMDS2 website

  • examples/groundstate_workedexamples.py corresponds to the continuous renormalisation groundstate example.
  • examples/bc_groundstate.py corresponds to the imaginary time evolution example using DCT and Bessel transform in the XMDS directory examples/bessel_cosine_groundstate.xmds
  • examples/bessel_integration.py compares convergence when integrating using the trapezium method and by Bessel quadrature

Installation

Install from PyPI

  • python -m pip install xmds2tools

Build from source

  • python -m pip install --upgrade pip setuptools
  • python -m pip install build
  • git clone https://github.com/CSChisholm/xmds2-tools
  • cd xmds2-tools
  • python -m build

Acknowledgements

These functions were written and tested during the PhD project of C. S. Chisholm at ICFO - The Institute of Photonic Sciences under the supervision of Prof. Dr. Leticia Tarruell and with support from Dr. Ramón Ramos.

Thanks to Prof. P. B. Blakie, Dr. M. T. Johnsson, and Prof. M. J. Davis for advice.

References

  1. G. R. Dennis, J. J. Hope, and M. T. Johnsson, XMDS2: Fast, scalable simulation of coupled stochastic partial differential equations. Computer Physics Communications 184(1), 201-208 (2013).
  2. A.-C. Lee, D. Baillie, and P. B. Blakie, Numerical calculation of dipolar-quantum-droplet stationary states. Physical Review Research 3, 013283 (2021).

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

xmds2tools-1.0.1.tar.gz (11.9 kB view details)

Uploaded Source

Built Distribution

xmds2tools-1.0.1-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file xmds2tools-1.0.1.tar.gz.

File metadata

  • Download URL: xmds2tools-1.0.1.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for xmds2tools-1.0.1.tar.gz
Algorithm Hash digest
SHA256 a8d7fd737257b1d0909270d6dcb568eea1ef72899953a9b90728eeb191c90c4d
MD5 f64e2c53ce9f29cdc5a75d9ab475673f
BLAKE2b-256 1f9679bbb0657921e3a35f0877ae99ee0f463562c146b204cabf247ee7fcbcdc

See more details on using hashes here.

File details

Details for the file xmds2tools-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: xmds2tools-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for xmds2tools-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4c2f6155d5497253c7012339076d4c761fca909465b656f4ad5095ba6787fceb
MD5 c75fb3ca97389302c3a0d9ae8f8c150b
BLAKE2b-256 43b14f9450d4735472ad0279632a6b1eae44801b1c1049ad71cb58e6090dc2e5

See more details on using hashes here.

Supported by

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