Skip to content

fdrmrc/fictitious_domain_AL_preconditioners

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

132 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Augmented Lagrangian-based preconditioners for Fictitious Domain solvers

This repository contains application codes demonstrating Augmented-Lagrangian-based preconditioners for Fictitious Domain-type solvers. They are based on the deal.II library. All problems are meant to run both in 2D and 3D.

If you use this code in your research, please cite: Scalable augmented Lagrangian preconditioners for fictitious domain problems

@article{BENZI2026118522,
title = {Scalable augmented Lagrangian preconditioners for fictitious domain problems},
journal = {Computer Methods in Applied Mechanics and Engineering},
volume = {450},
pages = {118522},
year = {2026},
issn = {0045-7825},
doi = {10.1016/j.cma.2025.118522},
author = {Michele Benzi and Marco Feder and Luca Heltai and Federica Mugnaioni},
keywords = {Preconditioning, Iterative solvers, Fictitious domain method, Non-matching meshes, Finite element method}
}

or the following preprint Augmented Lagrangian preconditioners for fictitious domain formulations of elliptic interface problems

@misc{benzi2026augmentedlagrangianpreconditionersfictitious,
      title={Augmented Lagrangian preconditioners for fictitious domain formulations of elliptic interface problems}, 
      author={Michele Benzi and Marco Feder and Luca Heltai and Federica Mugnaioni},
      year={2026},
      eprint={2603.12993},
      archivePrefix={arXiv},
      primaryClass={math.NA},
      url={https://arxiv.org/abs/2603.12993}, 
}

Prerequisites

We require:

  • cmake version greater than 2.8.
  • One of the following compilers:
    • gcc version >= 11.4.0
    • clang version >= 15
  • openMPI version >= 4.0.3
  • Trilinos version >= 14.4.0
  • deal.II version 9.7 (current master branch)
  • UMFPACK (usually already bundled with deal.II)

Compiling and running the examples

Assuming deal.II is installed on your machine and meets the requirements above, all is required to do is:

git clone git@github.com:fdrmrc/fictitious_domain_AL_preconditioners.git
cd fictitious_domain_AL_preconditioners/
mkdir build
cd build/
cmake -DDEAL_II_DIR=/path/to/deal.II ..
make -j<N>

being N is the number of jobs you want to use to compile. If successfull, this generates the following example applications, which are employing Fictitious Domain methodologies:

  • immersed_laplace
    Solves the Laplace equation with an internal constraint imposed on an immersed domain of co-dimension one. Parameter files can be found in the prms/ folder.

  • stokes_immersed_boundary
    Stokes problem with an immersed body of co-dimension one.

  • elliptic_interface
    Elliptic interface problem with jump in coefficients. The solid, immersed, domain is assumeted to be of co-dimension 0.

Authors and Contact

This repository is developed and maintained by:

For inquiries or special requests, you can either contact the authors by email or open an issue.

About

Augmented Lagrangian-based preconditioners for Fictitious Domain solvers

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages