Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge Taal into master #200

Merged
merged 691 commits into from
Nov 18, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
691 commits
Select commit Hold shift + click to select a range
b9d7056
update notes on visualization tools
ranocha Nov 5, 2020
2f7f549
Minor fixes following suggestions/comments by @ranocha
sloede Nov 6, 2020
bb5c169
ignore some paths for CI [skip ci]
ranocha Nov 6, 2020
e4a939e
Merge pull request #299 from trixi-framework/msl/make-3d-great-again
sloede Nov 6, 2020
f41b8e6
Merge pull request #298 from trixi-framework/taal_docs
ranocha Nov 6, 2020
6bf941b
WIP: comparing examples/2d/elixir_eulergravity_eoc_test.jl
ranocha Nov 6, 2020
4ecc6a8
re-arrange CO job name
ranocha Nov 6, 2020
d1749e7
confirm elixir_eulergravity_eoc_test.jl
ranocha Nov 6, 2020
88093a2
additional CI runs in 2D
ranocha Nov 6, 2020
7ab208e
Merge pull request #300 from ranocha/hr/ci_updates
ranocha Nov 6, 2020
e1df916
confirm 3d/elixir_eulergravity_eoc_test.jl
ranocha Nov 6, 2020
72f0fe3
confirm examples/2d/elixir_eulergravity_sedov_blast_wave.jl
ranocha Nov 6, 2020
ad086d0
confirm another eulergravity_sedov test but don't port it
ranocha Nov 6, 2020
65bf111
remove code used for confirming Taal/Taam
ranocha Nov 6, 2020
c48163c
type-stable init_elements, init_interfaces, init_boundaries, init_mor…
ranocha Nov 6, 2020
0a7892e
init_* in 1D
ranocha Nov 6, 2020
b550d0d
init_* in 3D
ranocha Nov 6, 2020
8c4b081
Add missing docstring
sloede Nov 6, 2020
4480247
Merge pull request #305 from trixi-framework/sync-eulergravity_eoc_test
sloede Nov 6, 2020
b6fc77c
start adding precompile statements
ranocha Nov 6, 2020
52deb61
precompile statements for equations and callbacks
ranocha Nov 6, 2020
d128fea
additional precompile statements and simplification of show methods
ranocha Nov 6, 2020
ef253be
Merge branch 'msl/sync-taal-taam' into sync-eulergravity_sedov
ranocha Nov 7, 2020
26d0fa7
implement TrivialCallback
ranocha Nov 8, 2020
1fa7b1c
document the generation of precompile statements
ranocha Nov 8, 2020
6260911
additional comments on latency measurements [skip ci]
ranocha Nov 8, 2020
69e6f8d
Merge pull request #307 from ranocha/hr/latency_reduction
ranocha Nov 8, 2020
7923711
adapt output of test_trixi_include to MPI
ranocha Nov 8, 2020
995bec7
Merge branch 'dev' into taal_mpi
ranocha Nov 8, 2020
c9aa3f1
update MPI docs to Taal
ranocha Nov 8, 2020
f18c077
port latency improvements to Taal MPI
ranocha Nov 8, 2020
d626582
WIP: test_trixi_include as macro
ranocha Nov 8, 2020
05a47e4
use the macro test_trix_include and define Jeans IC in elixir
ranocha Nov 9, 2020
6c56c05
confirm elixir_euler_blob_shockcapturing_mortar.jl
ranocha Nov 9, 2020
9329dd7
remove superflous analysis quantity for Jeans
ranocha Nov 9, 2020
02c565f
remove outdated script utils/install.jl [skip ci]
ranocha Nov 9, 2020
b1c277c
add REPL tricks and performance tips to the docs
ranocha Nov 9, 2020
233c0eb
add additional docstrings
ranocha Nov 9, 2020
3c094db
Merge pull request #309 from trixi-framework/remove_extended_tests
ranocha Nov 9, 2020
cfa7152
remove unnecessary part when printing a TrivialCallback [skip ci]
ranocha Nov 9, 2020
b205834
Update docs of test_trixi_include macro [skip ci]
ranocha Nov 9, 2020
181c7a8
Merge pull request #308 from ranocha/hr/test_trixi_include
ranocha Nov 9, 2020
18d6da1
improve performance docs
ranocha Nov 9, 2020
43b48a3
Merge pull request #310 from ranocha/hr/docs
ranocha Nov 9, 2020
73575e9
Merge pull request #306 from trixi-framework/sync-eulergravity_sedov
sloede Nov 9, 2020
740500e
Add new elixir which works in general but still produces differences …
sloede Nov 9, 2020
0fa4e89
Port MHD Orszag-Tang 3D
sloede Nov 9, 2020
129d4cd
Add Alfven wave mortar test 3D + fix calc_mortar_fluxes for noncons t…
sloede Nov 9, 2020
1acf401
move eulergravity tests to new file
ranocha Nov 9, 2020
5d5beaf
Add 3D Euler Sedov blast (without test yet)
sloede Nov 9, 2020
d41552f
confirm elixir_euler_eoc_test.jl
ranocha Nov 9, 2020
de0a255
confirm elixir_hyp_diff_eoc_test.jl
ranocha Nov 9, 2020
6ef9632
Fix Euler AMR elixir
sloede Nov 9, 2020
fcbe7ce
Confirm new test
sloede Nov 9, 2020
fd95201
mark Jeans as confirmed with CFL magic
ranocha Nov 9, 2020
b66f475
confirm 1d/elixir_euler_sedov_blast_wave_shockcapturing_amr.jl (resol…
ranocha Nov 9, 2020
bacf4d9
confirm 2d cfl-magic examples
ranocha Nov 9, 2020
8cc33e6
confirm paper examples
ranocha Nov 9, 2020
a4ac1f8
euler_ec tests now taal-confirmed
Nov 9, 2020
1dad9cb
euler shockcapturing tests taal-confirmed
Nov 9, 2020
c3e7226
Fix Hennemann & Gassner indicator 3D
sloede Nov 9, 2020
98d551d
Further improve 3D Sedov elixir (not yet working)
sloede Nov 9, 2020
bbc7aa7
add elixir demonstrating the creation of callbacks
ranocha Nov 9, 2020
c4af540
add DiffEqCallbacks to test dependencies
ranocha Nov 10, 2020
31a2aa6
Fix elixir
sloede Nov 10, 2020
91c7d62
Merge branch '3d-or-not-3d' into msl/3d-or-not-3d
sloede Nov 10, 2020
f8b830d
Mark Taam as confirmed
sloede Nov 10, 2020
a31a51b
additional notes on performance and helpful packages
ranocha Nov 10, 2020
a99a19a
Add #DOF and #elements to default analysis output
sloede Nov 10, 2020
0fd948d
Merge pull request #313 from ranocha/cfl-magic
ranocha Nov 10, 2020
08961bd
Merge pull request #315 from ranocha/hr/docs
sloede Nov 10, 2020
8f2fe48
more comments on example callbacks and limiters [skip ci]
ranocha Nov 10, 2020
5d737f2
Merge pull request #314 from ranocha/hr/example_callbacks
ranocha Nov 10, 2020
82391a1
euler-shockcapturing_amr elixir/parameter build, but not identical ye…
Nov 10, 2020
6d8eac2
Adapt elixir
sloede Nov 10, 2020
5d0941c
Remove unnecessary TOML file
sloede Nov 10, 2020
63f8082
Confirm last 3D test (except blob)
sloede Nov 10, 2020
7f09e7c
Fix indentatin
sloede Nov 10, 2020
1f2b531
Export initial_condition_density_pulse
sloede Nov 10, 2020
0f3d051
Apply suggestions from @ranocha
sloede Nov 10, 2020
258c254
Remove unnecessary Trixi. prefixes
sloede Nov 10, 2020
b3520bd
Remove unnecessary Trixi. prefixes
sloede Nov 10, 2020
a2bedcb
Remove unnecessary Trixi. prefixes
sloede Nov 10, 2020
fa1fd45
Merge pull request #311 from trixi-framework/msl/3d-or-not-3d
ranocha Nov 10, 2020
5762603
Merge branch 'master' into dev
ranocha Nov 11, 2020
e7a5e88
Merge branch 'dev' into msl/sync-taal-taam
sloede Nov 11, 2020
0764e77
trixi_test_include -> @trixi_test_include
sloede Nov 11, 2020
14797dc
Make 3D tests pass
sloede Nov 11, 2020
16bb5ce
remove taal-confirmed notice from Taal tests (keep it for Taam)
ranocha Nov 11, 2020
406ccc2
Merge pull request #267 from trixi-framework/msl/sync-taal-taam
ranocha Nov 11, 2020
c91b1f7
rename Euler Sedov examples
ranocha Nov 11, 2020
104f558
rename EUler KHI examples
ranocha Nov 11, 2020
4ac1677
rename hyp. diffusion examples
ranocha Nov 11, 2020
1c4ca3a
rename Euler weak_blast_wave_shockcapturing
ranocha Nov 11, 2020
668ab98
rename remaining MHD and Euler examples consistently
ranocha Nov 11, 2020
7f11db8
fix old KHI example names
ranocha Nov 11, 2020
35d98ca
remove Travis CI and Appveyor integration
ranocha Nov 11, 2020
cad2cac
fix flux calculation for MHD
ranocha Nov 11, 2020
b0d37c5
fix typo in testset name [skip ci]
ranocha Nov 11, 2020
36c053b
Merge pull request #320 from ranocha/hr/consistent_example_names
ranocha Nov 11, 2020
cde1399
Merge pull request #321 from ranocha/hr/remove_travis_appveyor
ranocha Nov 11, 2020
4466c2b
Merge pull request #322 from trixi-framework/fix_MHD_flux
sloede Nov 11, 2020
76b60d7
add examples folder to coverage (hopefully)
ranocha Nov 11, 2020
779974a
fix MHD time step and equations.c_h calculation
ranocha Nov 11, 2020
7d1c364
adapt 2D test reference values
ranocha Nov 11, 2020
398405b
adapt 3D test reference values
ranocha Nov 11, 2020
42bf494
Merge pull request #323 from ranocha/hr/ci_coverage
ranocha Nov 11, 2020
b8a0259
test length of provided error values
ranocha Nov 11, 2020
807e1e6
adapt AMR check for final step
ranocha Nov 11, 2020
0f0d85b
Merge pull request #325 from trixi-framework/amr_not_final_step
ranocha Nov 11, 2020
68b5e36
remove comment on MHD stuff in 1D stepsize callback
ranocha Nov 11, 2020
7c7a8f6
Merge pull request #324 from ranocha/hr/MHD_time_step
ranocha Nov 11, 2020
30c4b47
Fix time step size calculation in Taal
sloede Nov 11, 2020
2f435a3
adapt 2D examples for linear equations
ranocha Nov 11, 2020
f8f01db
adapt 3D examples for linear equations
ranocha Nov 11, 2020
1dea129
adapt Euler+gravity examples for linear equations
ranocha Nov 11, 2020
05d3c9a
more consistent formatting of solve call in elixirs
ranocha Nov 11, 2020
937a387
adapt CFL numbers in 1D examples
ranocha Nov 11, 2020
02919af
change default value for the analysis polydeg (Flexi style)
ranocha Nov 11, 2020
6de005a
adapt 1D reference values
ranocha Nov 11, 2020
faba064
more consistent formatting of test files
ranocha Nov 11, 2020
2129910
adapt reference values for 2D linear equations
ranocha Nov 11, 2020
bcd0ebe
update paper-self-gravitating-gas-dynamics
ranocha Nov 11, 2020
c07a1b7
adapt reference values for 3D linear equations
ranocha Nov 11, 2020
3730d69
remove some outdated TODO notes
ranocha Nov 11, 2020
3b4bd15
Adapt CFL numbers and reference values for 2D Euler
sloede Nov 11, 2020
eb098b6
Adapt CFL numbers and reference values for 2D MHD
sloede Nov 11, 2020
5f18549
Fix 2D MHD results (there seems to be a O(1e-3) difference between Ju…
sloede Nov 12, 2020
5104db6
Adapt CFL numbers and reference values for 3D Euler, MHD, Euler-gravity
sloede Nov 12, 2020
55a3a1f
Add test for elixir_euler_sedov_blast_wave.jl in 3D
sloede Nov 12, 2020
53c02c8
Merge pull request #326 from trixi-framework/fix-calc-dt-and-analysis…
ranocha Nov 12, 2020
f6476bb
sort tests by dimension and equations
ranocha Nov 12, 2020
741cf93
wrap more tests in modules
ranocha Nov 12, 2020
2a9d8c7
Merge pull request #327 from trixi-framework/sort_tests
ranocha Nov 12, 2020
baa50a2
fix AnalysisCallback initialization with MPI
ranocha Nov 12, 2020
c33ccc9
fix MPI residual colculation
ranocha Nov 12, 2020
c4967bc
use mpi_println
ranocha Nov 12, 2020
7d80448
fix parallel load_mesh
ranocha Nov 12, 2020
cdd6a81
switch order of conditions in test_trixi_include
ranocha Nov 12, 2020
2414997
Update test/test_examples_2d_parallel.jl
ranocha Nov 12, 2020
86aeee1
Update src/callbacks/steady_state.jl
ranocha Nov 12, 2020
0982d66
expand comment on partition!
ranocha Nov 12, 2020
35b9494
Update src/callbacks/save_solution_dg.jl
ranocha Nov 12, 2020
a03436f
Update src/callbacks/analysis.jl
ranocha Nov 12, 2020
314fca8
TODO notes for #328
ranocha Nov 12, 2020
f176993
Merge branch 'dev' into taal_mpi
ranocha Nov 12, 2020
b7b76ff
fix merge conflicts
ranocha Nov 12, 2020
c1ea4b0
move mesh saving/loading to mesh_io.jl
ranocha Nov 12, 2020
7b745c3
add note on hybrid parallelism
ranocha Nov 12, 2020
5486c22
add note on precompile assertions
ranocha Nov 12, 2020
f774c9d
return NaN for non-root ranks in reductions
ranocha Nov 12, 2020
544e834
Update src/mesh/mesh.jl
ranocha Nov 12, 2020
4c716ea
fix parallel reductions
ranocha Nov 12, 2020
c3261d0
Merge pull request #292 from trixi-framework/taal_mpi
ranocha Nov 12, 2020
f40b914
remove Taam tests
ranocha Nov 12, 2020
ab50f5d
remove obsolete TOML parameter files; closes #150
ranocha Nov 12, 2020
b234999
remove Taam aka Trixi as a monolith; closes #185
ranocha Nov 12, 2020
3f19bf1
move resid_tol from hyp. diff. to callback/parameters
ranocha Nov 12, 2020
17f9b14
More detailed description of codecov settings
ranocha Nov 12, 2020
0bc0aee
update README.md for examples ("elixir")
ranocha Nov 12, 2020
04d19af
remove superfluous references to Appveyor
ranocha Nov 12, 2020
a8da157
re-order special_elixirs.jl as suggested by @sloede
ranocha Nov 12, 2020
0e41d16
remove more Taam functions
ranocha Nov 12, 2020
a06d1c9
additional tests using extra_analysis_errors
ranocha Nov 12, 2020
d57067c
fix calculation of primitive variable errors
ranocha Nov 12, 2020
d1ad3c2
remove TODO notes
ranocha Nov 13, 2020
3c4f156
remove another Taam method calc_max_dt
ranocha Nov 13, 2020
43c1b11
remove more dead code and rename parameters file -> elixir
ranocha Nov 13, 2020
12e68b0
remove old juno script from utils
ranocha Nov 13, 2020
930df46
Merge branch 'master' into dev
ranocha Nov 13, 2020
99519ac
Merge pull request #331 from trixi-framework/remove_taam
sloede Nov 13, 2020
6b8f847
fix a comment [skip ci]
ranocha Nov 13, 2020
8c2d4c2
Initial version of "prettier" summary output
sloede Nov 13, 2020
2b8cfe6
Fix type signature
sloede Nov 13, 2020
4ae8e60
Add number of spatial dimensions to semidisc `show`
sloede Nov 13, 2020
ce804c8
rename equations files
ranocha Nov 13, 2020
bc49a38
re-order callbacks (step and stage)
ranocha Nov 13, 2020
31953a2
move semidiscretizations around
ranocha Nov 13, 2020
c6bda6d
fix limiter inclusion
ranocha Nov 13, 2020
67180cd
move time integration methods and auxiliary files
ranocha Nov 13, 2020
44c3797
rename callback step main file
ranocha Nov 13, 2020
02a091c
Merge branch 'dev' into msl/prettify-summary-output
sloede Nov 13, 2020
ccd07f7
Add show for SteadyStateCallback
sloede Nov 13, 2020
d92bb51
Change output width to 100
sloede Nov 13, 2020
a1d97e6
use !:compact to trigger summary output instead of :summary
sloede Nov 13, 2020
c7d5848
Add pretty output for SemiEulerGravity and ParametersEulerGravity
sloede Nov 14, 2020
437612a
remove unused files in utils/ and TODO notes
ranocha Nov 14, 2020
9a4a705
remove u_tmp etc. from element containers
ranocha Nov 14, 2020
28c8237
eachelement for element containers, eachdirection for trees
ranocha Nov 14, 2020
e91f0a5
Fix string indexing
sloede Nov 14, 2020
927c9a4
Merge pull request #334 from trixi-framework/removed_old_parts_of_con…
ranocha Nov 14, 2020
aa56f85
Add show to periodic BC
sloede Nov 14, 2020
e8ed070
Allow nested output in SummaryCallback
sloede Nov 14, 2020
f39e8c7
Change `show` for BoundaryConditionPeriodic() to `boundary_condition_…
sloede Nov 15, 2020
2bfc722
Apply suggestions from code review by @ranocha
sloede Nov 15, 2020
95c7449
Add mesh info semi output
sloede Nov 15, 2020
513708d
Merge pull request #333 from trixi-framework/msl/prettify-summary-output
sloede Nov 15, 2020
690a3d5
Update ASCII cast for `trixi_include`
sloede Nov 15, 2020
650e162
Add OrdinaryDiffEq to the README and the docs
sloede Nov 15, 2020
a681435
Add "extended" elixir as copy of current "basic" elixir and make basi…
sloede Nov 15, 2020
5bef936
Merge pull request #335 from trixi-framework/add-ordinarydiffeq-to-docs
ranocha Nov 16, 2020
b72cddd
Try to find middle ground of "basicness"
sloede Nov 16, 2020
5a11399
Add basic/extended elixirs also for 1D/3D
sloede Nov 16, 2020
773bd83
Use _extended test everywhere instead of _basic, except in original test
sloede Nov 16, 2020
7921166
ExampleLimiter -> ExampleStageCallback; ExampleCallback -> ExampleSte…
sloede Nov 16, 2020
d2c2fa0
Add more comments to basic and extended elixirs
sloede Nov 16, 2020
6ce8645
Merge pull request #340 from trixi-framework/rename-example-callbacks…
gregorgassner Nov 16, 2020
d9122af
tighten relative tolerance to be sqrt(machine epsilon)
andrewwinters5000 Nov 16, 2020
d7fc7da
Re-order callback includes
sloede Nov 16, 2020
59750a7
change of ordering in callbacks for 1d test cases
gregorgassner Nov 16, 2020
0de394e
change callbacks ordering
gregorgassner Nov 16, 2020
66e908a
do we want to change the construction order as well?
gregorgassner Nov 16, 2020
f879ada
changing also the order of callback construction...
gregorgassner Nov 16, 2020
92275c3
Merge pull request #336 from trixi-framework/make-basic-simple-again
sloede Nov 16, 2020
49b90fe
change also construction order of callbacks...1d complete?
gregorgassner Nov 16, 2020
f356364
reordering of callbacks
gregorgassner Nov 16, 2020
29a9b16
weakened tolerance on some tests. pass locally but not on github
andrewwinters5000 Nov 16, 2020
1a9482b
more elixirs in 2d reordered...
gregorgassner Nov 16, 2020
7fbfaa4
further weaken relative tolerance to be on the order of 1e-5 in certa…
andrewwinters5000 Nov 16, 2020
3382e50
more elixirs in 2d
gregorgassner Nov 16, 2020
274b5af
mhd order 2d
Nov 16, 2020
563143b
Merge branch 'reorder-callbacks' of github.com:trixi-framework/Trixi.…
gregorgassner Nov 16, 2020
c188f08
3d advection order of callback
Nov 16, 2020
1b53f21
further weakened tolerance for four tests to be 2e-4
andrewwinters5000 Nov 16, 2020
ff578ef
more restructureing in 3d...
gregorgassner Nov 16, 2020
d9e12db
Merge branch 'reorder-callbacks' of github.com:trixi-framework/Trixi.…
gregorgassner Nov 16, 2020
2cd673c
...more...
gregorgassner Nov 16, 2020
d581402
gravity euler 3d order
Nov 16, 2020
64ba32b
more
gregorgassner Nov 16, 2020
f62b999
Merge branch 'reorder-callbacks' of github.com:trixi-framework/Trixi.…
gregorgassner Nov 16, 2020
44bd866
not alfven wave
Nov 16, 2020
661af14
Add reordered Alfven wave elixirs for 3D
sloede Nov 16, 2020
849012c
Add comment on TrivialCallback
sloede Nov 16, 2020
f7dbfa8
Merge branch 'dev' into reorder-callbacks
sloede Nov 16, 2020
6df10b8
reset some of the parallel test to old rtol value of 1e-3
andrewwinters5000 Nov 16, 2020
9f01fbc
Re-order new extended elixirs
sloede Nov 16, 2020
be4919f
Fix most tests (one 2D amr case probably still broken)
sloede Nov 16, 2020
94bb309
Adapt output to 100 character limit [ci skip]
sloede Nov 17, 2020
ee7167e
Add "local" to LF and "Rusanov" to comment [ci skip]
sloede Nov 17, 2020
2f25faa
updated 1d sedov blast wave test to remove CFL magic
andrewwinters5000 Nov 17, 2020
a68ee40
Merge pull request #341 from trixi-framework/tighten_tols
sloede Nov 17, 2020
0e3a0fb
Merge branch 'dev' into reorder-callbacks
sloede Nov 17, 2020
7b7e209
Update refs for Kelvin-Helmholtz AMR test since the ICs are affected …
sloede Nov 17, 2020
afa267b
Add comment on manually increased test tolerances
sloede Nov 17, 2020
3873781
Merge pull request #338 from trixi-framework/reorder-callbacks
sloede Nov 17, 2020
572adc9
use mpi_print
ranocha Nov 17, 2020
baa3ad8
remove mpi_isserial
ranocha Nov 17, 2020
77be046
test AMR for home-grown time integrators (based on elixir_advection_a…
ranocha Nov 17, 2020
159caef
test additional show methods
ranocha Nov 17, 2020
2692ef0
Merge pull request #345 from trixi-framework/increase_coverage
ranocha Nov 17, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 8 additions & 3 deletions .codecov.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
# https://docs.codecov.io/docs/codecovyml-reference

# We have 6 * 3 parallel jobs in ci.yml
# We have
# 6 * [number of basic OS] + 2 * [number of additional OS]
# with
# [number of basic OS] = 1 (Linux)
# [number of additional OS] = 2 (Windows, MacOS)
# parallel jobs in ci.yml
codecov:
notify:
after_n_builds: 18
after_n_builds: 10
comment:
after_n_builds: 18
after_n_builds: 10

coverage:
range: 70..95
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/CompatHelper.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }} # optional
run: julia -e 'using CompatHelper; CompatHelper.main(; subdirs = ["", "test", "docs"])'
run: julia -e 'using CompatHelper; CompatHelper.main(; subdirs=["", "docs", "examples", "test"])'
49 changes: 44 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,32 @@ on:
push:
branches:
- master
- dev
paths-ignore:
- 'AUTHORS.md'
- 'CONTRIBUTING.md'
- 'LICENSE.md'
- 'README.md'
- '.zenodo.json'
- '.github/workflows/CompatHelper.yml'
- '.github/workflows/TagBot.yml'
- 'docs/**'
- 'utils/**'
pull_request:
paths-ignore:
- 'AUTHORS.md'
- 'CONTRIBUTING.md'
- 'LICENSE.md'
- 'README.md'
- '.zenodo.json'
- '.github/workflows/CompatHelper.yml'
- '.github/workflows/TagBot.yml'
- 'docs/**'
- 'utils/**'

jobs:
test:
if: "!contains(github.event.head_commit.message, 'skip ci')"
name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ matrix.trixi_test }} - ${{ github.event_name }}
name: ${{ matrix.trixi_test }} - ${{ matrix.os }} - Julia ${{ matrix.version }} - ${{ matrix.arch }} - ${{ github.event_name }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
Expand All @@ -20,8 +39,6 @@ jobs:
# - 'nightly'
os:
- ubuntu-latest
- macOS-latest
- windows-latest
arch:
- x64
trixi_test:
Expand All @@ -31,6 +48,23 @@ jobs:
- parallel_2d
- 1D
- misc
include:
- version: 1.5
os: macOS-latest
arch: x64
trixi_test: 2D
- version: 1.5
os: macOS-latest
arch: x64
trixi_test: parallel_2d
- version: 1.5
os: windows-latest
arch: x64
trixi_test: 2D
- version: 1.5
os: windows-latest
arch: x64
trixi_test: parallel_2d
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
Expand All @@ -54,7 +88,12 @@ jobs:
env:
PYTHON: ""
TRIXI_TEST: ${{ matrix.trixi_test }}
- uses: julia-actions/julia-processcoverage@v1
# The following step is inspired by the setup of
# - uses: julia-actions/julia-processcoverage@v1/
# but checks also the examples folder, since the elixirs
# contained therein are considered to be a part of Trixi.
- run: julia --color=yes -e 'using Pkg; Pkg.activate("coveragetempenv", shared=true); Pkg.add(PackageSpec(name="CoverageTools")); using CoverageTools; pf = process_folder(); append!(pf, process_folder("examples")); LCOV.writefile("lcov.info", pf)'
shell: bash
- uses: codecov/codecov-action@v1
with:
file: ./lcov.info
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
*.avi
*.ogv
**/Manifest.toml
out/
out*/
docs/build
docs/src/authors.md
public/
Expand Down
3 changes: 3 additions & 0 deletions .travis.yml → .outdated/.travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,11 @@ env:
- COVERALLS_PARALLEL=true
jobs:
- TRIXI_TEST=2D
- TRIXI_TEST=2D_OLD
- TRIXI_TEST=3D
- TRIXI_TEST=3D_OLD
- TRIXI_TEST=paper-self-gravitating-gas-dynamics
- TRIXI_TEST=paper-self-gravitating-gas-dynamics-old
- TRIXI_TEST=parallel_2d
- TRIXI_TEST=1D
- TRIXI_TEST=misc
Expand Down
File renamed without changes.
1 change: 1 addition & 0 deletions AUTHORS.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,6 @@ are listed in alphabetical order:
* Gregor Gassner
* Julia Odenthal
* Hendrik Ranocha
* Andrés M. Rueda-Ramírez
* Michael Schlottke-Lakemper
* Andrew Winters
11 changes: 6 additions & 5 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,27 +1,28 @@
name = "Trixi"
uuid = "a7f1ee26-1774-49b1-8366-f1abc58fbfcb"
authors = ["Michael Schlottke-Lakemper <mschlott@math.uni-koeln.de>", "Gregor Gassner <ggassner@uni-koeln.de>", "Hendrik Ranocha <mail@ranocha.de>", "Andrew R. Winters <andrew.ross.winters@liu.se>"]
version = "0.2.7-pre"
version = "0.3.0-pre"

[deps]
DiffEqBase = "2b5f629d-d688-5b77-993f-72d75c75574e"
DiffEqCallbacks = "459566f4-90b8-5000-8ac3-15dfb0a30def"
EllipsisNotation = "da5c29d0-fa7d-589e-88eb-ea29b0a81949"
HDF5 = "f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
LinearMaps = "7a12625a-238d-50fd-b39a-03d52299707e"
LoopVectorization = "bdcacae8-1622-11e9-2a5c-532679323890"
MPI = "da04e1cc-30fd-572f-bb4f-1f8673147195"
OffsetArrays = "6fe1bfb0-de20-5000-8ca7-80f57d26f881"
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
Profile = "9abbd945-dff8-562f-b5e8-e1ebf5ef1b79"
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
TimerOutputs = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f"
Tullio = "bc48ee85-29a4-5162-ae0b-a64e1601d4bc"
UnPack = "3a884ed6-31ef-47d7-9d2a-63182c4928ed"

[compat]
EllipsisNotation = "0.4, 1.0"
DiffEqBase = "6.47"
DiffEqCallbacks = "2.14"
EllipsisNotation = "1.0"
HDF5 = "0.13, 0.14"
LinearMaps = "2.7"
LoopVectorization = "0.8.25"
Expand Down
48 changes: 29 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
[![Docs-stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://trixi-framework.github.io/Trixi.jl/stable)
[![Docs-dev](https://img.shields.io/badge/docs-dev-blue.svg)](https://trixi-framework.github.io/Trixi.jl/dev)
[![Build Status](https://github.com/trixi-framework/Trixi.jl/workflows/CI/badge.svg)](https://github.com/trixi-framework/Trixi.jl/actions?query=workflow%3ACI)
[![Build Windows](https://ci.appveyor.com/api/projects/status/uu0xds4hyc1i10n8/branch/master?svg=true)](https://ci.appveyor.com/project/ranocha/trixi-jl/branch/master)
[![Coveralls](https://coveralls.io/repos/github/trixi-framework/Trixi.jl/badge.svg?branch=master)](https://coveralls.io/github/trixi-framework/Trixi.jl?branch=master)
[![License: MIT](https://img.shields.io/badge/License-MIT-success.svg)](https://opensource.org/licenses/MIT)
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3996439.svg)](https://doi.org/10.5281/zenodo.3996439)
Expand All @@ -29,7 +28,10 @@ installation and postprocessing procedures. Its features include:
* Kinetic energy-preserving and entropy-stable split forms
* Entropy-stable shock capturing
* Positivity-preserving limiting
* Explicit low-storage Runge-Kutta time integration
* Compatible with the [SciML ecosystem for ordinary differential equations](https://diffeq.sciml.ai/latest/)
* [Explicit low-storage Runge-Kutta time integration](https://diffeq.sciml.ai/latest/solvers/ode_solve/#Low-Storage-Methods)
* [Strong stability preserving methods](https://diffeq.sciml.ai/latest/solvers/ode_solve/#Explicit-Strong-Stability-Preserving-Runge-Kutta-Methods-for-Hyperbolic-PDEs-(Conservation-Laws))
* CFL-based and error-based time step control
* Square/cubic domains with periodic and weakly-enforced boundary conditions
* Multiple governing equations:
* Compressible Euler equations
Expand All @@ -39,7 +41,8 @@ installation and postprocessing procedures. Its features include:
* Multi-physics simulations
* [Self-gravitating gas dynamics](https://github.com/trixi-framework/paper-self-gravitating-gas-dynamics)
* Shared-memory parallelization via multithreading
* Visualization of results with Julia-only tools (2D) or ParaView/VisIt (2D/3D)
* Visualization of results with Julia-only tools ([Trixi2Img](https://github.com/trixi-framework/Trixi2Img.jl))
or ParaView/VisIt ([Trixi2Vtk](https://github.com/trixi-framework/Trixi2Vtk.jl))


## Installation
Expand All @@ -49,30 +52,35 @@ with Julia v1.5.

### For users
Trixi and related postprocessing tools are registered Julia packages. Hence, you
can install Trixi, [Trixi2Vtk](https://github.com/trixi-framework/Trixi2Vtk.jl),
and [Trixi2Img](https://github.com/trixi-framework/Trixi2Img.jl) by executing
the following commands in the Julia REPL:
can install Trixi, the visualization tools
[Trixi2Vtk](https://github.com/trixi-framework/Trixi2Vtk.jl)
and [Trixi2Img](https://github.com/trixi-framework/Trixi2Img.jl), and the
[OrdinaryDiffEq.jl](https://github.com/SciML/OrdinaryDiffEq.jl) package by
executing the following commands in the Julia REPL:
```julia
julia> import Pkg

julia> Pkg.add("Trixi"); Pkg.add("Trixi2Vtk"); Pkg.add("Trixi2Img")
julia> Pkg.add("Trixi"); Pkg.add("Trixi2Vtk"); Pkg.add("Trixi2Img"); Pkg.add("OrdinaryDiffEq")
```
Note that you can copy and paste all commands to the REPL *including* the leading
`julia>` prompts - they will automatically be stripped away by Julia.
The package [OrdinaryDiffEq.jl](https://github.com/SciML/OrdinaryDiffEq.jl)
provides time integration schemes used by Trixi.

### For developers
If you plan on editing Trixi itself, you can download Trixi locally and run it from
within the cloned directory:
```bash
git clone git@github.com:trixi-framework/Trixi.jl.git
cd Trixi.jl
julia --project=. -e 'import Pkg; Pkg.instantiate()' # Install Trixi's dependencies
julia --project=@. -e 'import Pkg; Pkg.instantiate()' # Install Trixi's dependencies
julia -e 'import Pkg; Pkg.add("Trixi2Vtk"); Pkg.add("Trixi2Img")' # Install postprocessing tools
julia -e 'import Pkg; Pkg.add("OrdinaryDiffEq")' # Install time integration schemes
```
If you installed Trixi this way, you always have to start Julia with the `--project`
flag set to your local Trixi clone, e.g.,
```bash
julia --project=.
julia --project=@.
```
Further details can be found in the [documentation](#documentation).

Expand All @@ -84,7 +92,7 @@ julia> using Trixi
```
Then start a simulation by executing
```julia
julia> Trixi.run(default_example())
julia> trixi_include(default_example())
```
To visualize the results, load the package Trixi2Img
```julia
Expand All @@ -100,21 +108,23 @@ that can be opened with any image viewer:
<img width="300px" src="docs/src/assets/solution_000040_scalar_resized.png">
</p>

The method `Trixi.run(...)` expects a single string argument with the path to a
Trixi parameter file. To quickly see Trixi in action, `default_example()`
returns the path to an example parameter file with a short, two-dimensional
problem setup. A list of all example parameter files packaged with Trixi can be
The method `trixi_include(...)` expects a single string argument with the path to a
Trixi elixir, i.e., a text file containing Julia code necessary to set up and run a
simulation. To quickly see Trixi in action, `default_example()`
returns the path to an example elixir with a short, two-dimensional
problem setup. A list of all example elixirs packaged with Trixi can be
obtained by running `get_examples()`. Alternatively, you can also browse the
[`examples/`](examples/) subdirectory. If you want to
modify one of the parameter files to set up your own simulation, download it to
your machine, edit the configuration, and pass the file path to `Trixi.run(...)`.
[`examples/`](examples/) subdirectory.
If you want to modify one of the elixirs to set up your own simulation,
download it to your machine, edit the configuration, and pass the file path to
`trixi_include(...)`.

*Note on performance:* Julia uses just-in-time compilation to transform its
source code to native, optimized machine code at the *time of execution* and
caches the compiled methods for further use. That means that the first execution
of a Julia method is typically slow, with subsequent runs being much faster. For
instance, in the example above the first execution of `Trixi.run` takes about 15
seconds, while subsequent runs require less than 50 *milli*seconds.
instance, in the example above the first execution of `trixi_include` takes about
20 seconds, while subsequent runs require less than 60 *milli*seconds.


## Documentation
Expand Down
5 changes: 4 additions & 1 deletion docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,11 @@ makedocs(
# Explicitly specify documentation structure
pages = [
"Home" => "index.md",
"Development" => "development.md",
"Visualization" => "visualization.md",
"Conventions" => "conventions.md",
"Time integration" => "time_integration.md",
"Development" => "development.md",
"Performance" => "performance.md",
"Parallelization" => "parallelization.md",
"Style guide" => "styleguide.md",
"GitHub & Git" => "github-git.md",
Expand Down
15 changes: 15 additions & 0 deletions docs/src/conventions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Conventions

## Spatial dimensions and directions

We use the following numbering schemes on Cartesian meshes.
- The `orientation`s are numbered as
`1 => x, 2 => y, 3 => z`.
For example, numerical fluxes such as
`flux_central(u_ll, u_rr, orientation, equations::AbstractEquations)`
use the `orientation` in this way.
- The `direction`s are numbered as
`1 => -x, 2 => +x, 3 => -y, 4 => +y, 5 => -z, 6 => +z`.
For example, the `boundary_conditions` are ordered in this way
when a `Tuple` of boundary conditions per direction is passed
to the constructor of a `SemidiscretizationHyperbolic`.
Loading