Skip to main content

Diffuse domain finite element solver

Project description

Diffuse Domain Finite Element Methods

ddfem is a Python package that simplifies the transformation of a wide range of PDEs using the Diffuse Domain Method. While the original PDE will often be defined on a complex domain, after the transformation it can be solved on simple e.g. square domain. The original geometry is embedded in the simpler domain using a phase-field function representation. We provide implementations for different versions of the Diffuse Domain Method making it easy to compare and chose the most suitable version for the problem at hand. Adding new versions is also straightforward. Furthermore, we provide a new approach to combine multiple boundary conditions of different types on distinct boundary segments.

The geometry subpackage provides several simple signed distance functions (SDF), and operators to allow an easy definition of the complex domain.

We have designed the package to have a wide compatibility with existing finite element solvers, as all transformations are performed using the Unified Form Language, UFL and do not require any other external packages.

While not required, we recommend using Dune-Fem as it enables some optimisations for form compiling, and can improve the mesh by utilising the different grid views. We have used this package to test the package and for all examples used throughout this tutorial.

Getting started

How to install the package using pip is discussed in our tutorial.

Enjoy - and let us know of any issues you encountered

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

ddfem-1.0.11.tar.gz (172.6 kB view details)

Uploaded Source

Built Distribution

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

ddfem-1.0.11-py3-none-any.whl (311.2 kB view details)

Uploaded Python 3

File details

Details for the file ddfem-1.0.11.tar.gz.

File metadata

  • Download URL: ddfem-1.0.11.tar.gz
  • Upload date:
  • Size: 172.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for ddfem-1.0.11.tar.gz
Algorithm Hash digest
SHA256 d4288c014c9a9b052f2de38d25f1c7352064c0674ab7b9ed5554783e5a7b064f
MD5 c681385d04da763b7198299749ee87e7
BLAKE2b-256 e093f7c2416b3c3d8e536aa66470eb8860c595ab4a0a10d6641cc04e68e27444

See more details on using hashes here.

File details

Details for the file ddfem-1.0.11-py3-none-any.whl.

File metadata

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

File hashes

Hashes for ddfem-1.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 e31c778aa48b6e16892dc9ec409f4cc838ecdfeb85466a46ad9fbc82848ec7b2
MD5 7f437bb9959727a6626c1d769dd97167
BLAKE2b-256 3803f73133e9eeb85e91869d183e8631b3844d8a8bc77a781141a922156df41e

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