Skip to main content

High-level and convenience wrappers for DOLFINx, the FEniCS library.

Project description

dolfiny: high-level and convenience wrappers for DOLFINx

The dolfiny package provides a set of high-level and convenience wrappers for DOLFINx, the FEniCS library.

While DOLFINx involves many low-level operations - from handling ghosted values to interfacing PETSc solvers directly - dolfiny serves as a wrapper around the low-level functionality of DOLFINx and is meant to combine a user-oriented API with the performance and functionality of DOLFINx, FFCx, Basix and UFL.

This library is written exclusively in Python with optional interfacing to user-provided C++ kernels.

Installation

pip3 install dolfiny

Certain functionality (see demos and unit tests) relies on the availability of external packages such as

Install dolfiny with these dependencies by running

pip3 install dolfiny[all]

For ARM-based architectures (aarch64/arm64 on Linux) we recommend to fallback to our custom-compiled binary wheels for vtk and cppyy-cling by setting the local package index repository in the respective environment variable

export PIP_INDEX_URL=https://gitlab.com/api/v4/projects/59503118/packages/pypi/simple

before calling pip.

You may also check the Dockerfile for an up-to-date version of the installation process.

Docker image

Multi-arch (amd64 and arm64) Docker images with pre-installed dolfiny (and dependencies) are available at DockerHub.

docker pull dolfiny/dolfiny

Documentation

In preparation.

In the meantime please check available demos or unit tests.

Presentations about dolfiny functionality:

Authors

  • Michal Habera, University of Luxembourg / Rafinex, Luxembourg
  • Paul T. Kühner, University of Luxembourg, Luxembourg
  • Andreas Zilian, University of Luxembourg, Luxembourg

Contributing

We are always looking for contributions and help with dolfiny. If you have ideas, nice applications or code contributions then we would be happy to help you get them included. We ask you to follow the FEniCS Project git workflow.

Issues and Support

Please use the GitHub issue tracker to report any issues.

License

dolfiny is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

dolfiny is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with dolfiny. If not, see http://www.gnu.org/licenses/.

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

dolfiny-0.10.0.dev0.tar.gz (37.3 kB view details)

Uploaded Source

Built Distribution

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

dolfiny-0.10.0.dev0-py3-none-any.whl (39.6 kB view details)

Uploaded Python 3

File details

Details for the file dolfiny-0.10.0.dev0.tar.gz.

File metadata

  • Download URL: dolfiny-0.10.0.dev0.tar.gz
  • Upload date:
  • Size: 37.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for dolfiny-0.10.0.dev0.tar.gz
Algorithm Hash digest
SHA256 3f082492f0df5ea9f2e93f522334d629621982c02d3573d318dd90f20e66c079
MD5 0d5978fc007c4467b9a6e15936e6ccd6
BLAKE2b-256 5e1d0de9286bd030682988225fa753727caf4da4b78ac7f9226e94defa766432

See more details on using hashes here.

File details

Details for the file dolfiny-0.10.0.dev0-py3-none-any.whl.

File metadata

  • Download URL: dolfiny-0.10.0.dev0-py3-none-any.whl
  • Upload date:
  • Size: 39.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for dolfiny-0.10.0.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 337af14fa1d538d5873b806025d40da8dd350202d9742a52fb7a85a92ac9285c
MD5 e6362be1ee37fcfe3071bd1438199006
BLAKE2b-256 82d8f837b2b85571fadb4a1f35178287a7405f5f86bd5eb5acccafdaa4fc15c1

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