849 Commits

Author SHA1 Message Date
4534972a1d SCHEMES: Make riemann_mhd_iso_kepes() numerically symmetric.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-04 12:11:07 -03:00
9dd79d7124 SCHEMES: Make riemann_hd_iso_kepes() numerically symmetric.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-04 11:56:55 -03:00
446bb2e8bd SCHEMES: Fix lmean().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-04 11:52:40 -03:00
ab86dd07d5 SCHEMES: Get rid of function diff().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-03 17:25:13 -03:00
49d42b268f SCHEMES: There is no need for matrix transposition in KEPES methods.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-03 12:45:11 -03:00
894a3362a2 SCHEMES: Make lmean() numerically symmetric.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-03 11:38:08 -03:00
e6cca5468e SCHEMES: Make isothermal MHD HLLD solver numerically symmetric.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-03 10:28:36 -03:00
fc0448a156 STATISTICS: Store total entropy in the integrals file.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-02 23:21:52 -03:00
08c95ef5bf STATISTICS: Store forcing statistics in a separate file.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-02 22:57:35 -03:00
e52fb7c633 SCHEMES: Fix KEPES to not produce non-zero Vz and Bz in 2D.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-02 17:25:04 -03:00
04456a0696 PROBLEMS: Implement Orszag-Tang MHD test problems.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-02 13:07:30 -03:00
edfed7e732 SCHEMES: Make isothermal MHD HLLD solver consistent with other solvers.
The isothermal MHD HLLD solver by Mignone gives results too different
comparing with HLL, ROE, and KEPES solvers. Modify it allowing for the
density jump across the Alfvén waves to make is consistent.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-02 12:56:24 -03:00
d5bf2990d1 EQUATIONS: Print adiabatic index and sound speed.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-01 12:39:49 -03:00
03345b82a3 SCHEMES: Implement KEPES Riemann solver for isothermal magnetohydrodynamics.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-01 12:36:53 -03:00
9ac92c740c PROBLEMS: Remove unused variables.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-31 18:45:12 -03:00
d4685960fe PROBLEMS: Add missing turbulence test problem.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-24 10:27:29 -03:00
fdf8dbc6c9 SCHEMES: Implement KEPES Riemann solver for isothermal hydrodynamics.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-24 07:45:30 -03:00
8089cb8cb3 SCHEMES: Small optimizations in riemann_hd_adi_kepes().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-24 07:12:05 -03:00
d40393690a SCHEMES: Use matmul in riemann_hd_adi_kepes().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-24 06:44:56 -03:00
3e1a5553b6 SCHEMES: Implement optimized version of the logarithmic average.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-23 23:45:29 -03:00
c715c87676 SCHEMES: Implement KEPES Riemann solver for adiabatic magnetohydrodynamics.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-23 23:30:46 -03:00
ef52c8e707 SCHEMES: Move riemann_hd_adi_kepes() to a different location.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-22 06:44:17 -03:00
9bcd8d8c5a SCHEMES: Treat separatelly KEPES solvers in numerical_flux().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-21 22:59:19 -03:00
242942a35b SCHEMES: Implement KEPES Riemann solver for adiabatic hydrodynamics.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-21 22:11:44 -03:00
c85fc678fe SCHEMES: Add state averaging and difference functions.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-21 22:09:43 -03:00
b86d51b755 CMAKE, MAKE: Add support for NV HPC version 21.11.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-17 15:47:09 -03:00
e977548f41 IO: Replace non-standard SYSTEM with Fortran 2008 EXECUTE_COMMAND_LINE.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-17 14:47:25 -03:00
27fd2fb6e1 EVOLUTION: Improve the initial time step estimation.
First of all, the estimation is of the third order, so use the cubic
square in the calculation of h1. Secondly, fix the normalization factor
fnorm. Finally, use only the variables corresponding to the fluxes in
the increment norms sc(..) and df(..).

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-16 09:18:32 -03:00
8843b6f45f EQUATIONS: Rewrite a bit esystem_roe_mhd_adi().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 16:45:33 -03:00
e0f11b9b21 EQUATIONS: Rewrite a bit esystem_roe_mhd_iso().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 16:22:37 -03:00
94b54723b7 EQUATIONS: Rewrite a bit esystem_roe_hd_adi().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 14:06:44 -03:00
ad7fa788f8 EQUATIONS: Rewrite a bit esystem_roe_hd_iso().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 13:02:12 -03:00
5ae63db0b4 EQUATIONS: Remove unused matrix evroe.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 12:47:19 -03:00
37af0380f4 EQUATIONS: Make esystem_roe_hd_iso() to work with OpenMP.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 12:46:39 -03:00
5094050026 EQUATIONS: Make esystem_roe_hd_adi() to work with OpenMP.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 12:44:10 -03:00
751c08ea9d EQUATIONS: Make esystem_roe_mhd_iso() to work with OpenMP.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 12:40:40 -03:00
32ea1f68e6 EQUATIONS: Make esystem_roe_mhd_adi() to work with OpenMP.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 12:35:02 -03:00
df9b301734 EVOLUTION: Restore the initial state in initialize_time_step().
The estimation of the initial time step requires the advance of the
system by one step. This, however, alters the primitive variables of
data blocks. Restore the primitive variables to the initial state, once
the initial time step has been estimated, in order to solve this
inconsistency.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 09:11:49 -03:00
76695febbd EVOLUTION: Reorganize integration method selection.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-15 08:47:23 -03:00
5d8c6d994d EVOLUTION: Produce the same initial time step for OpenMP on and off.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-10 13:16:26 -03:00
71a0e03114 STATISTICS: Fix mesh statistic header when MPI=off.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-10 10:45:33 -03:00
bb72ee3a5b MESH: Parallelize check_block_refinement() using OpenMP.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-10 10:22:09 -03:00
e936ade934 BOUNDARIES: Parallelize update_ghost_cells() using OpenMP.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-10 10:03:42 -03:00
c54539a379 EVOLUTION: Parallelize initialize_time_step() using OpenMP.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-10 09:44:02 -03:00
535b5274c9 MESH: Remove unused variables.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-09 22:08:31 -03:00
21cbecef26 EVOLUTION: Remove unused variables.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-09 22:07:36 -03:00
46696e4790 EVOLUTION: Rename local variables c to something else.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-09 22:00:09 -03:00
93068909d9 EVOLUTION: Add 4th order 5-step SSPRK(5,4) method.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-09 21:45:14 -03:00
416c35ed9a EVOLUTION: Parallelize evolve_ssprk410() using OpenMP.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-09 16:23:53 -03:00
aa8f9b6fe9 EVOLUTION: Parallelize evolve_ssprk35() using OpenMP.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-09 16:03:22 -03:00