Skip to main content

Running, analysing and plotting Chombo simulations

Project description

ChomboPy

This package contains tools for running, analysing, and plotting Chombo simulations.

Examples

Inputs

Chombo input files can be read and written using some utility functions

from chombopy.inputs import read_inputs, write_inputs
inputs = read_inputs('/path/to/inputs')

# inputs is a dictionary, with the key values converted to appropriate python objects:
print(inputs['main.num_cells']) # e.g. [16, 16, 16]
print(inputs['main.verbosity']) # e.g. 3
print(inputs['main.plt_prefix']) # e.g. 'plt'

# You can alter the values
inputs['main.verbosity'] = 0

# And write the file back out
write_inputs('/path/to/new_inputs', inputs)

Plot files

Chombo plot files can be read using the PltFile class:

from chombopy.plotting import PltFile
import matplotlib.pyplot as plt

pf = PltFile('/path/to/file.hdf5')
pf.load_data()

# Get data for the temperature variable on level 2
temperature = pf.get_level_data('Temperature', 2)

# temperature is an xarray.DataSet object, which can be plotted using matplotlib
x = temperature.coords['x']
y = temperature.coords['y']
plt.pcolormesh(x, y, temperature)

# Or you can do some analysis using the xarray/numpy functionality
print(temperature.mean())

Documentation

Further documentation can be found online. To compile the documentation locally, get the code and setup a virtual environment:

$ git clone https://github.com/jrgparkinson/chombopy.git
$ cd chombopy
$ python3 -m venv .venv
$ source .venv/bin/activate
$ python setup.py install

Then to build the documentation with Sphinx:

$ cd docs
$ make html

Testing

Unit tests can be run in a similar way to building the documentation. Having got a copy of the code and setup a virtual environment, from the root directory (i.e. /path/to/chombopy), simply run the following from your virtual environment

$ python setup.py install
$ py.test

Code coverage will be published to chombopy/docs/test/coverage.html, and test results to chombopy/docs/test/report.html.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

chombopy-1.0.1-py3-none-any.whl (18.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: chombopy-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for chombopy-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b1235e26b98959057e75da327f8c9cfd2bb47c9093d60277241cde1bfba1b320
MD5 62b7a77648494586f5e19cf6177d8eff
BLAKE2b-256 0330f5b86a0c20461ccbd54fa3f7d2d3e3fd4bd82d925dec36051ac579a4a0e0

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