Skip to main content

PIC simulation data analysis for the lazy and impatient

Project description

ozzy logo

Ozzy is a data visualization and data wrangling Python package geared towards particle-in-cell (PIC) simulations and the plasma physics community.

Ozzy's philosophy is to make the analysis of simulation data originating from multiple simulation codes and often contained in large files as easy as possible by building on the powerful features of the xarray package.

Why ozzy?

  • Any simulation code

    Read and plot simulation data written by any PIC simulation code. Write the backend to parse the data once and move on. Currently available: OSIRIS and LCODE.

  • Labeled dimensions (thanks to xarray)

    Think like a physicist, not like a software engineer. You'll never have to wonder which numerical index corresponds to the $x$ dimension of that array again.

  • No file size too large (thanks to Dask)

    Chunking and lazy-loading of large data files are handled automatically by xarray and Dask.

  • Flexible

    We embrace xarray and Dask data objects, but you don't have to. Easily manipulate your data as trusty NumPy arrays whenever convenient.

  • Beautiful plots with one line of code

    Ozzy lays the groundwork using the dataset's metadata.

Installation

[!IMPORTANT] Ozzy requires Python >= 3.10.

A detailed guide is available in the "Installation" page of the documentation.

We highly recommend installing ozzy in its own virtual environment.

conda (recommended)

conda install --channel=conda-forge ozzy-pic

pip

python3 -m pip install ozzy-pic

Head to the documentation page to see some examples of how to get started.

Documentation

All the documentation can be found at https://mtrocadomoreira.github.io/ozzy.

Acknowledgment

Please consider acknowledging ozzy if you use it to produce images or results published in a scientific publication, for example by including the following text in the acknowledgments and/or citing ozzy's Zenodo reference[^1]:

The data and plots in this publication were processed with ozzy[^1], a freely available data visualization and analysis package.

[^1]: M. Moreira, “Ozzy: A flexible Python package for PIC simulation data analysis and visualization”. Zenodo, Jul. 16, 2024. doi: 10.5281/zenodo.12752995.

In addition, please note that ozzy.plot uses two color maps developed by Fabio Crameri (licensed under an MIT license) by default: vik (diverging) and lipari (sequential). These color maps should be acknowledged if used in a published image, for example with:

The Scientific colour map lipari[^2] is used in this study to prevent visual distortion of the data and exclusion of readers with colour-vision deficiencies[^3].

[^2]: F. Crameri, "Scientific colour maps". Zenodo, Oct. 05, 2023. doi: 10.5281/zenodo.8409685.

[^3]: F. Crameri, G.E. Shephard, and P.J. Heron, "The misuse of colour in science communication". Nat. Commun. 11, 5444 (2020). doi: 10.1038/s41467-020-19160-7.

More information about the colour libraries used by ozzy can be found in the "Plotting" section of the User Guide.

License

Copyright © 2024 Mariana Moreira - All Rights Reserved

You may use, distribute and modify this code under the terms of the MIT License.

Ozzy bundles Paul Tol's colour schemes definition, which is available under a "3-clause BSD" license. The qualitative colour scheme "muted" is used by default in ozzy.plot.

The plotting submodule of ozzy (ozzy.plot) also bundles a few different fonts under the SIL Open Font License (OFL), which is a free and open-source license. The full text of these licenses is included for each font in the fonts directory (src/ozzy/fonts/). See more details about the bundled fonts and their copyright notices in the "License" section of the documentation.

ozzy icon

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

ozzy_pic-2.0.4.tar.gz (9.3 MB view details)

Uploaded Source

Built Distribution

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

ozzy_pic-2.0.4-py3-none-any.whl (9.3 MB view details)

Uploaded Python 3

File details

Details for the file ozzy_pic-2.0.4.tar.gz.

File metadata

  • Download URL: ozzy_pic-2.0.4.tar.gz
  • Upload date:
  • Size: 9.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.7 Darwin/25.1.0

File hashes

Hashes for ozzy_pic-2.0.4.tar.gz
Algorithm Hash digest
SHA256 64e3c7632159fbaaad7a231d930ef2939c0afb9e534fca90b84841fd0aec4071
MD5 4b0e1ac8a0e77b8a11e3c9d23ac907c5
BLAKE2b-256 08e5ca8c8587675ab07e37a00a491658eb793330f432c08cdf8b17a7bd872f58

See more details on using hashes here.

File details

Details for the file ozzy_pic-2.0.4-py3-none-any.whl.

File metadata

  • Download URL: ozzy_pic-2.0.4-py3-none-any.whl
  • Upload date:
  • Size: 9.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.7 Darwin/25.1.0

File hashes

Hashes for ozzy_pic-2.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 d5afe137de24b14bdb4c04dfd8d2855d56c2165a15e58995952e4c5096431c82
MD5 8169add396107bc5125639022807235e
BLAKE2b-256 12d511ec969200a718301143ac790a078e6354c840b6e509f1fa3830d8afc7f8

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