492 Commits

Author SHA1 Message Date
b2a7bd08b6 EVOLUTION: Consider dte only for methods with error control.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-19 13:16:31 -03:00
8ec801228c EVOLUTION: Fix formatting once again.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-19 13:03:40 -03:00
d8bd7eb800 EVOLUTION: Fix formatting.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-19 13:02:14 -03:00
30215029d4 EVOLUTION: Be explicit about the method with error control.
Do not show the parameters controlling the integration errors if the
method do not control this error.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-19 12:58:57 -03:00
3817822f6f HELPERS: Move flush_and_sync() to HELPERS.
Use it in mesh statistics.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-18 19:25:49 -03:00
92f5905b6b MESH: Store statistics when the distribution of blocks changes too.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-18 19:07:00 -03:00
7ba3d7ae37 DRIVER: Print message on received signal to error unit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-16 11:33:49 -03:00
047e9af130 MESH: Balance data blocks not only among processes but nodes too.
This change tries to maintain a similar number of data blocks per node,
while balancing them across all processes. This should improve the
memory utilization among nodes.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-15 21:10:17 -03:00
19e89c4dd2 MPITOOLS: Add maximum rank of the node.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-15 17:25:32 -03:00
b933c444df MPITOOLS: Determine the number of nodes, processes per node, and local rank.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-15 17:22:00 -03:00
6532c998fb IO: Implement restoring from version 2.0 of AmunXML restart snapshots.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-15 12:57:34 -03:00
3b44444211 IO: Implement storing the version 2.0 of AmunXML restart snapshots.
This version avoids allocation of big arrays to store the array fields
of data blocks. Fields with primitive and conservative variables are
stores separately for each block.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-15 12:06:48 -03:00
d78b827f37 BOUNDARIES: Fix compilation with MPI=off.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-13 10:58:42 -03:00
339d8e3ca4 BOUNDARIES: Simplify 2D and 3D cases in boundary_fluxes().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-12 22:10:06 -03:00
b455ddaa6b BOUNDARIES: Add support for passive scalars to boundary_fluxes().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-12 16:26:01 -03:00
02a516aa6d BOUNDARIES: Fix missing indices in boundary_fluxes().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-11 12:30:44 -03:00
1836f733c7 BLOCKS: Remove field %f from data block structure.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-11 01:28:12 -03:00
580e1b832e BOUNDARIES: Rewrite bondary_fluxes() to update dU.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-11 01:26:15 -03:00
2509cf3d5a BLOCKS, EVOLUTION: Add block interface fluxes and update them.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-10 19:25:44 -03:00
0a03dd6f2f EVOLUTION: Separate dU update from the intermitate state update.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-10 18:52:55 -03:00
8c46b83626 EVOLUTION: Call update_flux() in update_increment().
Remove update_fluxes().

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-10 18:26:52 -03:00
c4a0d1df09 BLOCKS, EVOLUTION: Make dU to be blocks field and use it.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-10 17:51:28 -03:00
9b5e809ca9 IO: Make sure only available block's %uu fields are re/stored.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-10 14:31:15 -03:00
8d167e3895 MESH: Distribute whole block field %uu in redistribute_blocks().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-10 14:22:16 -03:00
3d45fcca34 BLOCKS: Use %uu instead of %u0, %u1, and %u2.
Block field %uu addopts its size according to the used integration
methods. Use it for all operation insteado of fields %u0, %u1, and %u2.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-10 14:05:00 -03:00
3b954802a5 BLOCKS, DRIVER: Pass the number of registers to BLOCKS.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-10 12:47:01 -03:00
a5d7bc6aff DRIVER: Initialize EVOLUTION before BLOCKS.
This is required for the number of memory registers to be ready for
using in module BLOCKS.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-10 12:41:42 -03:00
b5540ed58d EVOLUTION: Add variable for required number of registers.
The number of registers indicates how many memory copies of the
conserved variables are required to perform the integration using a
selected method.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-07-10 12:24:20 -03:00
cb7a9fce7b HASH: Remove unused seed, simplify initialization of lane(1).
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-06-03 16:26:02 -03:00
ec16bdff05 IO: Fix restart from XML format when nghosts becomes smaller.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-03-18 17:26:52 -03:00
e51da1c696 IO: Restart correctly from XML format for different nghosts.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-03-18 16:59:57 -03:00
118d643524 PARAMETERS: Initialize status flag in read_parameters().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-02-25 20:05:27 -03:00
3cbb8da21e EVOLUTION: Add missing update_variables() in SSPRK(m,2).
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-02-05 16:16:26 -03:00
18a25d3775 EVOLUTION: Make sure the system is always consistent for SSPRK(m,3).
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-02-05 16:15:43 -03:00
5728c1cab5 IO: Use stream access to store/read binary files.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-02-04 22:26:15 -03:00
fa8cfa8f8f COMPRESSION: Remove the 2GiB limit in compress().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-02-04 17:40:17 -03:00
3f0bd444c8 HASH: Remove the 2GiB limit for xxh64().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-02-04 17:37:53 -03:00
3d16d5c13d Update copyrights.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-02-04 17:35:04 -03:00
ca1cc9fb31 COORDINATES: Add indices for nb-1, nb+1, ne-1, ne+1.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-12-29 17:42:20 -03:00
4833067bea SCHEMES: Improve detection of numerical degeneracies in HLLD solvers.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-12-27 11:37:07 -03:00
37fdafd28d EVOLUTION: Fix unphysical cells after applying shapes.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-11-26 10:50:49 -03:00
7fdac2f584 SCHEMES: Make HD ROE solvers numerically symmetric.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-11-17 17:52:22 -03:00
56fb625e59 SCHEMES: Make adiabatic MHD ROE solver numerically symmetric.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-11-17 17:49:05 -03:00
52747633f8 SCHEMES: Make isothermal MHD ROE solver numerically symmetric.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-11-17 17:27:37 -03:00
c677e18ecf INTEGRALS: Add subroutine to flush and sync specific IO unit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-11-12 07:22:49 -03:00
b2f2b35d0b INTEGRALS: Flush integral buffers.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-11-12 06:33:56 -03:00
0b1da7d42d INTERPOLATIONS: Enable positivity fix by default.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-11-11 08:49:27 -03:00
0b6797ede7 INTERPOLATIONS: OCMP7 method requires 6 ghost cells.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-11-10 14:54:17 -03:00
16a7842fc0 SCHEMES: Make adiabatic MHD HLLD solver numerically symmetric.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-11-10 12:04:03 -03:00
ff7ba2e015 SCHEMES: Make isothermal MHD HLLD solver numerically symmetric.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-11-10 12:03:03 -03:00