SNuBIC-facing wrapper repository for selected Trixi.jl coupling and mesh-view developments by Simon Candelaresi.
This repository collects minimal examples, setup helpers, and citation metadata for developments related to p4est mesh-view coupling in Trixi.jl.
The repository covers the following upstream Trixi.jl pull requests by Simon Candelaresi:
| PR | Title | State | Opened | Upstream branch |
|---|---|---|---|---|
| #2456 | Enhanced p4est mesh view coupling | open | 2025-06-26 | sc/p4est-view-coupled-enhanced |
| #2598 | WIP: Sc/p4est view coupled hanging nodes | open | 2025-10-09 | sc/p4est-view-coupled-hanging-nodes |
It also documents the merged precursor developments in the same line:
| PR | Title | State | Opened | Merged |
|---|---|---|---|---|
| #2366 | Sc/p4est view coupled | merged | 2025-04-17 | 2026-03-04 |
| #2110 | WIP: Sc/Enhanced p4est mesh views | merged | 2024-10-14 | 2025-04-16 |
A detailed component-to-PR mapping is in docs/upstream-prs.md.
The developments covered here concern bulk- and interface-coupling of heterogeneous models and structure-preserving numerical methods, the theme of the DFG research unit SNuBIC (FOR 5409).
- Setup helpers that add the appropriate Trixi.jl revision into a local Julia environment.
- Minimal example drivers exercising the coupling and mesh-view feature paths.
- Lightweight smoke tests.
- Citation metadata (
CITATION.cff,.zenodo.json) and a Zenodo DOI placeholder.
Trixi.jl is not vendored; the setup scripts pin upstream revisions (exact SHAs, with branch fallbacks) for reproducibility.
- Julia
1.10or newer. - A C toolchain is not required:
P4est_jllis provided as a Julia artifact by Trixi.jl's dependencies.
All setup scripts activate this project (--project=.) and add the appropriate
Trixi.jl revision into the environment.
julia --project=. scripts/setup_base.jljulia --project=. scripts/setup_pr2456.jljulia --project=. scripts/setup_pr2598.jlEach PR setup script pins both a branch name and the exact commit SHA. If a SHA becomes unavailable (e.g. after a force-push upstream), edit the script to use the branch name only. The pinned revisions are:
| Path | Upstream ref | Pinned SHA |
|---|---|---|
| base | main |
(tracks upstream main) |
| #2456 | sc/p4est-view-coupled-enhanced |
c5969fad14d80d1a6c08e44c5d49cf94182ec8eb |
| #2598 | sc/p4est-view-coupled-hanging-nodes |
159d9c2c115a975d51bc4997e854014b40e37e7a |
examples/run_coupled_p4est_minimal.jl— minimal single-variable coupled p4est mesh-view advection setup, following the merged path around PR #2366.examples/run_mesh_view_multivar.jl— coupling of systems that use more than one variable across p4est mesh views (PR #2456).examples/run_hanging_nodes_placeholder.jl— exploratory non-conforming / hanging-node coupling (PR #2598).
Where an upstream elixir exists for a given feature path, the example locates
and runs it (via trixi_include, with maxiters limiting the run to a few
timesteps) rather than re-implementing it.
The repository contains lightweight smoke tests:
julia --project=. scripts/smoke_test_base.jl # instantiate + import Trixi
julia --project=. scripts/smoke_test_pr2456.jl # load env + reach example stage
julia --project=. scripts/smoke_test_pr2598.jl # load env + reach example stageThe base setup and import smoke test run on Julia 1.10 against upstream
Trixi.jl. The run_coupled_p4est_minimal.jl example steps the coupled
SemidiscretizationCoupledP4est solver (merged PR #2366 path) at maxiters = 3.
The PR #2456 and #2598 paths require their respective setup scripts (open
branches).
Zenodo DOI:
Suggested citation text (see also CITATION.cff):
Candelaresi, S., Torrilhon, M., Schlottke-Lakemper, M. (2026). Trixi.jl Model Coupling Examples (Version 0.1.0) [Software]. https://github.com/SNuBIC/trixi-model-coupling-examples
The upstream coupling and mesh-view developments covered here are due primarily
to Simon Candelaresi within the Trixi.jl ecosystem. Trixi.jl is developed by
the trixi-framework community and is
licensed under the MIT license; this repository is licensed under BSD-3-Clause
(see LICENSE).