Skip to main content

Automatic Construction of Phasefield Approximations from Sharp-Interface Models

The title says it all: this module uses a simple description of a sharp interface problem to derive a phasefield approximation which can then be solved using a finite-element toolbox. The domain specific language UFL is used both for defining the sharp interface model and for the weak formulation of the phasefield approximation. The resulting UFL form can then be inserted into any of the finite element packages available which can take UFL forms as an input. A class for evolving the solution over time is available based on dune and fenics. The bindings for the dune package are based on the dune module dune-fem package include both dynamic local grid refinement and coarsening. This makes it easy to track the interface with a fine grid while a coarser grid can be used away from the interface. This is essential for evolving phasefield models efficiently. In addition the dune stepper also provides an efficient solver for obstacle problems so that double obstacle potentials can be used in the modelling. This solver is based on tnmg.

So far this module has been tested with:

  • two phase models including additional bulk equations, e.g., for the temperature
  • multphase models
  • single phase models, e.g., crack propagation problems

Installation

The easiest way to test this module is to install the python package from the python package index:

pip install phasefield

Some example scripts showing how to use the package can then be optained by calling

python -m phasefield

The scripts are then located in the subfolder phasefield_tutorial.

You can also clone the git repository

git clone https://git.imp.fu-berlin.de/agnumpde/dune-tnnmg

and access the examples in the folder phasefield/tutorial. To get the python package up and running first execute

pip install -e .

in the main folder of the repository.

Release files for phasefield 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for phasefield 1.2.0
File Size Uploaded
phasefield-1.2.0.tar.gz 66.4 kB Details

Release files / phasefield-1.2.0.tar.gz

Download URL phasefield-1.2.0.tar.gz
Size 66.4 kB
Tags Source
SHA-256 checksum
How to use checksums
ea6c27fc11a7944c93cfe1572741db409dd24c10c1c5aac00b52ba847541ce58
BLAKE2b-256 checksum
How to use checksums
621ccc28b04da5797b0e7c49d8f04c7027c8f0e84bff2e83f4229fb0586693aa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.8.10
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page