Conference Papers Year : 2026

Penguin.jl: a Julia code for cut-cell finite-volume PDEs discretization with sharp interfaces

Penguin.jl : un code Julia pour la discrétisation d'EDPs par une méthode volume fini "cut-cell" à interface franche

Abstract

Penguin.jl is an experimental Julia code for constructing and testing conser- vative Cartesian cut-cell finite-volume discretizations for PDEs on embedded ge- ometries and sharp interfaces. It targets heat/mass transfer and incompressible- flow configurations where complex boundaries and material interfaces are rep- resented on non-conforming Cartesian grids, avoiding body-fitted meshing. At its core, Penguin.jl provides a cut-cell operator pipeline that assembles discrete divergence, gradient, and advection operators from a minimal geometric description: phase-restricted cell volumes, face apertures, and a small set of low- order geometric moments. This information is sufficient to generate compact stencils and to enforce Dirichlet/Neumann/Robin boundary conditions as well as sharp-interface jump relations directly in the algebraic system. The package includes solvers for scalar advection–diffusion, Darcy flow, and coupled Stokes/Navier–Stokes equations (time-advanced with an unsteady θ- scheme), with support for single- and two-phase setups. Beyond static embedded boundaries, Penguin.jl supports prescribed or free interface motion via height- function utilities and Lagrangian front tracking, enabling Stefan-type problems and moving solid/liquid configurations within the same cut-cell framework. Lin- ear systems are handled through the Julia ecosystem (e.g., LinearSolve.jl), and post-processing/visualization is supported via CairoMakie.jl. We illustrate the approach on canonical verification problems and multi- physics benchmarks, reporting mesh-refinement trends and conservation diag- nostics that demonstrate robust coupling across sharp interfaces on complex embedded geometries.

julia4pdes_libat.pdf (5.32 Mo) Télécharger le fichier

Dates and versions

hal-05597854 , version 1 (24-04-2026)

Identifiers

  • HAL Id : hal-05597854 , version 1

Cite

Louis Libat, Can Selçuk, Vincent Le Chenadec, Eric Chénier. Penguin.jl: a Julia code for cut-cell finite-volume PDEs discretization with sharp interfaces. Julia4PDEs, Vrije Universiteit Amsterdam, Mar 2026, Amsterdam, Netherlands. ⟨hal-05597854⟩
12 View
4 Download

Share

  • More