DDFEM: A Python Package for Diffuse Domain Methods
Fuente:
arXiv
Saved in:
| Main Authors: | , |
|---|---|
| Format: | Preprint |
| Published: |
2025
|
| Subjects: | |
| Online Access: | |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| _version_ | 1866913955346120704 |
|---|---|
| author | Benfield, Luke Dedner, Andreas |
| author_facet | Benfield, Luke Dedner, Andreas |
| contents | Solving partial differential equations (PDEs) on complex domains can present significant computational challenges. The Diffuse Domain Method (DDM) is an alternative that reformulates the partial differential equations on a larger, simpler domain. The original geometry is embedded into the problem by representing it with a phase-field function. This paper introduces ddfem, an extensible Python package to provide a framework for transforming PDEs into a Diffuse Domain formulation. We aim to make the application of a variety of different Diffuse Domain approaches more accessible and straightforward to use. The ddfem package includes features to intuitively define complex domains by combining signed distance functions and provides a number of DDM transformers for general second evolution equations. In addition, we present a new approach for combining multiple boundary conditions of different types on distinct boundary segments. This is achieved by applying a normalised weighting, derived from multiple phase fields, to combine the additional boundary terms in the Diffuse Domain formulations. The domain definition and Diffuse Domain transformation provided by our package are designed to be compatible with a wide range of existing finite element solvers without requiring code alterations. Both the original (non-linear) PDEs provided by the user and the resulting transformed PDEs on the extended domain are defined using the Unified Form Language UFL which is a domain specific language used by a number of software packages. Our experiments were carried out using the Dune-Fem framework. |
| format | Preprint |
| id |
arxiv_https___arxiv_org_abs_2507_16964 |
| institution | arXiv |
| publishDate | 2025 |
| record_format | arxiv |
| spellingShingle | DDFEM: A Python Package for Diffuse Domain Methods Benfield, Luke Dedner, Andreas Numerical Analysis 65-04, 65M60, 65M50 Solving partial differential equations (PDEs) on complex domains can present significant computational challenges. The Diffuse Domain Method (DDM) is an alternative that reformulates the partial differential equations on a larger, simpler domain. The original geometry is embedded into the problem by representing it with a phase-field function. This paper introduces ddfem, an extensible Python package to provide a framework for transforming PDEs into a Diffuse Domain formulation. We aim to make the application of a variety of different Diffuse Domain approaches more accessible and straightforward to use. The ddfem package includes features to intuitively define complex domains by combining signed distance functions and provides a number of DDM transformers for general second evolution equations. In addition, we present a new approach for combining multiple boundary conditions of different types on distinct boundary segments. This is achieved by applying a normalised weighting, derived from multiple phase fields, to combine the additional boundary terms in the Diffuse Domain formulations. The domain definition and Diffuse Domain transformation provided by our package are designed to be compatible with a wide range of existing finite element solvers without requiring code alterations. Both the original (non-linear) PDEs provided by the user and the resulting transformed PDEs on the extended domain are defined using the Unified Form Language UFL which is a domain specific language used by a number of software packages. Our experiments were carried out using the Dune-Fem framework. |
| title | DDFEM: A Python Package for Diffuse Domain Methods |
| topic | Numerical Analysis 65-04, 65M60, 65M50 |
| url | https://arxiv.org/abs/2507.16964 |