trixi-framework / trixi-framework/Trixi.jl
Bang&Olufson Testing
- Dominant language
- Julia
- Stars
- 731
- Forks
- 166
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 25
Description
Include a new Trixi functionality, similar to the `convergence_test` functionality, that tests the influence of noise on the initial condition.
The idea is to see how robust the full simulation is towards added noise to the initial conditions. Hence, as a parameter, we need to input the amplitude of the noise. With a noise of amplitude 1E-15 added to the initial condition, we expect (about) machine precision difference after O(1000) time steps.
We have observed, e.g. in 1D for the sedov blast with shock capturing and AMR, that this behaviour is only true for relative small CFL numbers. While a computation can be "stable" and reach the final simulation time with a higher CFL number, the B&O test reveals, that small differences with amplitude of 1E-15 get amplified by a factor of a million in about 1000 time steps.
In summary, it would be great to have the functionality that an existing elixir can be run through the B&O test, where the amplitude of the noise is a parameter, where the number of variables tested is a parameter, where then the noise is automatically added to the chosen quantities in the initial condition, and where two simulations are run: one with the noise and one without the noise and L2, Linf errors are compared to each other automatically.
Contributor guide
Research direction
Start by examining the existing `convergence_test` functionality and how an existing elixir is run. The requested result is a configurable noise amplitude and variable count, two simulations with and without perturbed initial conditions, and automatic L2 and Linf error comparisons.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- testing
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100