Skip to main content

Parallel Parameter Fields for Uncertainty Quantification

Project description

Welcome to parafields

License GitHub Workflow Status Documentation Status codecov

parafields is a Python package that provides Gaussian random fields based on circulant embedding. Core features are:

  • Large variety of covariance functions: exponential, Gaussian, Matérn, spherical and cubic covariance functions, among others
  • Generation of distributed fields using domain decomposition and MPI through mpi4py
  • Uses numpy data structures to ease integration with the Python ecosystem of scientific software
  • Optional caching of matrix-vector products

parafields implements these features through Python bindings to the parafields-core C++ library. The following options are supported in the backend but not yet in the Python bindings:

  • axiparallel and full geometric anisotropy
  • value transforms like log-normal, folded normal, or sign function (excursion set)
  • Coarsening and refinement of random fields for multigrid/-scale methods

Usage

This is a minimal usage example of the parafields package:

Minimum usage example

For more examples, check out the parafields documentation.

Installation

parafields is available from PyPI and can be installed using pip:

python -m pip install parafields

This will install a sequential, pre-compiled version of parafields. In order to use parafields in an MPI-parallel context, you need to instead build the package from source:

python -m pip install --no-binary parafields -v parafields

This will build the package from source and link against your system MPI.

Additionally, parafields defines the following optional dependency sets:

  • jupyter: All requirements for an interactive Jupyter interface to parafields
  • tests: All requirements for running parafields's unit tests
  • docs: All requirements for buildings parafields's Sphinx documentation

These optional dependencies can be installed by installing e.g. parafields[jupyter].

Acknowledgments

The parafields-core C++ library is work by Ole Klein whichis supported by the federal ministry of education and research of Germany (Bundesministerium für Bildung und Forschung) and the ministry of science, research and arts of the federal state of Baden-Württemberg (Ministerium für Wissenschaft, Forschung und Kunst Baden-Württemberg).

The Python bindings are realized by the Scientific Software Center of Heidelberg University. The Scientific Software Center is funded as part of the Excellence Strategy of the German Federal and State Governments.

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

parafields-0.1.0.tar.gz (22.8 kB view details)

Uploaded Source

Built Distributions

parafields-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

parafields-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

parafields-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

parafields-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

parafields-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

parafields-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

parafields-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

parafields-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

File details

Details for the file parafields-0.1.0.tar.gz.

File metadata

  • Download URL: parafields-0.1.0.tar.gz
  • Upload date:
  • Size: 22.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.14

File hashes

Hashes for parafields-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9940be9db23feaa394375cc5ec2ca60c795b2781ec496456b81a095f74afcadc
MD5 132eda621069cf7141b256b6ead4c9a9
BLAKE2b-256 c74f14e0751824ccf3cb6b41bbd681c010d395d9164ab178135518e604b9a34c

See more details on using hashes here.

File details

Details for the file parafields-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for parafields-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 570cee4f47c18b7986b1c817fc6b9a53e74c8e89eae3297a8ee803eaebd2ac4c
MD5 2c4235b3df98e669d77c039a1148e9d9
BLAKE2b-256 677bcd8696c258d471e045583bf6c27a4ec53fe9c2d0c8e6cb9a87ea6cc62c9e

See more details on using hashes here.

File details

Details for the file parafields-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for parafields-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9782f1a1bea96921a7b8434e3983f99cf78b6fe03c8616452791275c11d40a89
MD5 52c50f3ed07fc84861d5887044cd68e3
BLAKE2b-256 0237b6ee6b6523e58da62131031ce0548cbb62078c8449dd9d8bbe988a45281e

See more details on using hashes here.

File details

Details for the file parafields-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for parafields-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1bf16c489f74900c2156d62a6c6c8125a8106509e6e406db8972cbc53e0d78f0
MD5 9476b0ebd43549c5b144517977659db6
BLAKE2b-256 9b88c039bdbe40f7a5c65186dd511da66589faa0e546fa0588a3aa57191d456b

See more details on using hashes here.

File details

Details for the file parafields-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for parafields-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ed5041735ce1ee42de383c715054860f5c74403f6359ae2f5e5e05d14388b382
MD5 864d687ab915603f042285006355b858
BLAKE2b-256 e20456b87d292e1049c354905c04b3e2118e82e0278835dd304e134185a21f7e

See more details on using hashes here.

File details

Details for the file parafields-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for parafields-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2e45288d460601e9dc42df545863482ca3f1e21876b0a5940a1494e10f17b9af
MD5 3ef5ee69092fff108165309e32a5d9fb
BLAKE2b-256 9603eca055b33c5214e2159d16360a24f6826b8847505db7b7089fe9db581dd9

See more details on using hashes here.

File details

Details for the file parafields-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for parafields-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 421cd8733a84f9a1e3c25b86f8be3151ee39d9ca8a61e4c7b7d972ec015e448e
MD5 b743684eb7b39709c5e61052b5d6d927
BLAKE2b-256 920650f65a3e82a42326f4e178bc13dbfe492805cf1c25840af4c0fae4a7bcb7

See more details on using hashes here.

File details

Details for the file parafields-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for parafields-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6ff9618f061a819fc16ef862c11714b962014a3644b2eea455f4a3baab73d83b
MD5 9896666a64004d5386c76c56208a2d62
BLAKE2b-256 95554e1a1ceb50e3532fac12054fa48fdc6af7785bfcca4fd63be7d7b133aecb

See more details on using hashes here.

File details

Details for the file parafields-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for parafields-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0c512e42ff148d618d3d341c0ba9fee4788599bec96b234f9a06d4390227ffdc
MD5 8991be5da304421e19e6f6ef0e001c23
BLAKE2b-256 4069b07d53fec13a7d584e34a8ae6d1d2ddb08a8a6d9e112f18ac66ee375ddd9

See more details on using hashes here.

Supported by

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