trixi-framework / trixi-framework/Trixi.jl

Block finite volume methods

Open
#3,068 5 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Julia
Stars
731
Forks
167
Avg merge
2d 18h
Merged PRs (30d)
25

Description

- [x] First implementation on the `TreeMesh` in 1D and 2D: https://github.com/trixi-framework/Trixi.jl/pull/3067
- [x] Non-periodic boundaries on the `TreeMesh` in 1D and 2D: https://github.com/trixi-framework/Trixi.jl/pull/3076
- [ ] `TreeMesh3D`
- [x] Decide how to handle the `StepsizeCallback` for `BlockFV`: Right now, it reuses the implementation from `DGSEM` in

https://github.com/trixi-framework/Trixi.jl/blob/c88169f5730094052dee1e7eeefaf133724ad90b/src/callbacks_step/stepsize_dg2d.jl#L14-L27

Thus, the maximum of the wave speeds in x- and y-direction are taken independently within one element and then used to set `dt`. However, this means that different numbers of FV cells within one macro cell will affect the chosen time step size.
Decision at the Trixi.jl meeting: Specialize the computation for `BlockFV` to make it independent of the number of FV cells per macro cell, since this should only be a performance parameter, not something changing the results.
It will be fixed in https://github.com/trixi-framework/Trixi.jl/pull/3120
- [ ] Mortars (non-conforming interfaces) on the `TreeMesh`
- [x] 2D: https://github.com/trixi-framework/Trixi.jl/pull/3104
- [ ] 3D
- [ ] AMR on the `TreeMesh`
- [ ] 1D
- [ ] 2D: https://github.com/trixi-framework/Trixi.jl/pull/3135
- [ ] `IndicatorLöhner`
- [ ] 3D
- [ ] Plotting via Plots.jl/Makie.jl for the `TreeMesh`
- [x] 1D: https://github.com/trixi-framework/Trixi.jl/pull/3095
- [ ] 2D
- [ ] 3D
- [ ] Trixi2Vtk.jl support and `SaveSolutionCallback`
- [ ] `P4estMesh` 2D
- [ ] Basic infrastructure
- [ ] Mortars
- [ ] AMR
- [ ] Plots.jl/Makie.jl
- [ ] `P4estMesh` 3D
- [ ] Basic infrastructure
- [ ] Mortars
- [ ] AMR
- [ ] `SaveRestartCallback`
- [ ] https://github.com/trixi-framework/Trixi.jl/issues/3155
- [ ] Finalize naming convention
- [ ] `n_nodes` for the number of volumes/cells per coordinate direction?
- [ ] Specialize `wrap_array`?
- [ ] Nonconservative terms
- [ ] Parabolic terms
- [ ] Alternative time integration methods following Clawpack

Contributor guide

Open the contributing guide

Research direction

This is a broad BlockFV roadmap spanning TreeMesh3D, 3D mortars, AMR, plotting, Trixi2Vtk.jl, P4estMesh, callbacks, and numerical terms. Start by reviewing the existing TreeMesh BlockFV implementation and the linked pull requests, then choose one unchecked item with a defined scope. Done means completing that checklist item and adding or updating the relevant validation for it.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
hpc
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.