63 Commits

Author SHA1 Message Date
31a34c4380 PARAMETERS: Add verbose flag to read_parameters().
Slightly clean up other subroutines.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-07-30 10:13:48 -03:00
62e989e0b7 DRIVER: Read parameters' file by all processes.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-07-30 10:00:12 -03:00
a533978dff DRIVER: read_snapshot_parameter() is supported independently of HDF5.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-29 17:39:19 -03:00
408f42151d IO, DRIVER: Store x/y/zblocks separately.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-28 14:40:04 -03:00
63013b25be DRIVER: Fix compilation with empty OUTPUT flag.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-28 14:31:53 -03:00
6217358c99 RANDOM: Add status argument to initialize_random().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-28 14:04:22 -03:00
24d33316ae RANDOM: Change Marsaglia's xorshift to Vigna's xoshiro256+ generator.
Completely rewrite the random generator module. The new method is
true 64-bit floating point generator in contrast to 32-bit Marsaglia's
methods. Add recommended seeds' initialization and jump for parallel
computations. Make function names more meaningful and add new functions
in IO module to store the seeds properly.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-25 18:37:58 -03:00
b76eec7022 DRIVER: Print forcing parameters.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-20 13:13:20 -03:00
c0df378235 Merge branch 'master' into forcing 2020-04-07 16:24:15 -03:00
ad0303d3ba Update copyright.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-03-02 13:18:53 -03:00
a80b8cf41f BOUNDARIES, DRIVER, EVOLUTION: Use nf for the number of block fluxes.
Now, since the number of variables and fluxes may be different, it is
important to keep the size of the block flux array using nf instead of
nv.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-10-02 15:39:25 -03:00
76d7cf8826 IO, DRIVER, PYTHON: Fix domain block dimensions with job restart.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-21 15:58:38 -03:00
e1ee6f39bb DRIVER: There is no need to limit tm_exec.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-18 17:07:52 -03:00
a66cd2e27f DRIVER: Fix ETA and EXECUTION time calculation.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-18 16:57:35 -03:00
5086bf6bd4 DRIVER: Print problem name before initializations.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-18 12:07:02 -03:00
035db8370a Merge branch 'master' into forcing
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-15 18:26:13 -02:00
da9e895406 DRIVER: Use check_status() to verify subroutine status flag.
In addition, print error in case of any initialization or finalization
subroutine indicates problems.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-12 13:59:17 -02:00
721cf8efae EVOLUTION: Add status argument to advance().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-12 10:34:38 -02:00
5368b60f18 MESH: Add status argument to generate_mesh().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-12 10:22:53 -02:00
e6faf7dea9 BLOCKS: Remove set_block_dimensions().
Instead, initialize block dimensions through initialize_blocks().

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-11 13:30:02 -02:00
55b8e2f073 BLOCKS: Add status argument to build/wipe_leaf_list().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-11 12:56:14 -02:00
3b352c89ee INTERPOLATIONS, DRIVER: Correct nghosts in initialize_interpolations().
The number of ghosts zone is important for the selected recontruction.
For higher order reconstruction methods, nghosts >= 4 usually.
Therefore, initialize interpolations before coordinates and correct the
number of ghost zone according to the selected interpolation method.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-11 11:27:22 -02:00
601adc8037 IO, DRIVER: Allow for restart with different number of ghost zones.
Now we can restart from restart snapshots with different number of ghost
zones. Also, remove the old restart snapshot format support from
read_datablocks_h5().

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-11 11:02:36 -02:00
cfe9614db2 MPITOOLS: Update the initialization/finalization status flag.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-11 09:36:02 -02:00
40f15e3117 INTEGRALS: Update the initialization/finalization status flag.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-11 08:38:15 -02:00
dc8c1aaaa7 DRIVER: Do not print timings in the case of initialization errors.
If there was any problem with the initialization, there is no point in
printing the timings. Just leave the last error message and quit the
program.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-08 09:56:51 -02:00
3dc8f57fb5 DRIVER: Use bcells instead of im, jm, km.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-04 17:57:06 -02:00
eb7b5aa775 DRIVER, HELPERS: Print problem name in the main program part.
Also add print_parameter_string() to module HELPERS.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 18:33:04 -02:00
cb2b0c60ef HELPERS: Add module with helper subroutines.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 18:22:54 -02:00
4eb292c67d DRIVER: Small change in welcome message and MPI process number.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 15:34:39 -02:00
0582774e10 SHAPES, DRIVER: Add print_shapes().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 15:32:34 -02:00
a97bbc736f INTERPOLATIONS, DRIVER: Add print_interpolations().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 15:17:21 -02:00
122d228248 SCHEMES, DRIVER: Add print_schemes().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 14:58:40 -02:00
63bde5a72b EVOLUTION, DRIVER: Add print_evolution().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 14:45:07 -02:00
d32f7bb21a REFINEMENTS, DRIVER: Add print_refinement().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 12:47:15 -02:00
838ec1e465 BOUNDARIES, DRIVER: Add print_boundaries().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 12:29:48 -02:00
cf3fbf6902 DRIVER, SOURCES, EQUATIONS: Add print_sources().
Also add magnetized flag in EQUATIONS to indicate if the equations
system is magnetized. This helps to reduce printing some unnecessary
info.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 12:20:18 -02:00
e7d5d00da8 DRIVER, IO: Move precise_snapshot variable to IO module.
Also improve a bit print_io().

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-30 12:06:26 -02:00
6c23e9af19 DRIVER: Reorganize the initialization/finalization of modules.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 18:13:24 -02:00
feb14685bc DRIVER: Initialize refinement after domains.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 17:49:40 -02:00
09f032faba DOMAINS, DRIVER: Initialize and finalize domains module.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 17:46:57 -02:00
ea993ed8d0 BLOCKS, DRIVER: Initialize block dimensions in initialize_blocks().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 17:26:24 -02:00
b5d177bc72 COORDINATES, DRIVER: Separate coordinate info from initialization.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 17:02:50 -02:00
2ecdf030d6 DRIVER, EQUATIONS: Separate equation info from initialization.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 15:54:02 -02:00
7a2d694629 DRIVER, IO: Initialize I/O after reading parameters.
Use it to handle parameters from restart snapshots. Also separate
printing I/O parameters from I/O module initialization.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 15:07:50 -02:00
0f0e14dfed DRIVER: Organize IO and mesh initialization and finalization.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 11:02:57 -02:00
220e881b58 DRIVER: Initialize evolution, schemes, interpolations after shapes.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 10:56:20 -02:00
908b94c482 DRIVER: Initialize shapes after refinement.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 10:52:08 -02:00
86bf933f05 DRIVER: Initialize refinement after boundaries.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 10:47:47 -02:00
e045c30e1a DRIVER: Initialize blocks and boundaries after coordinates.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-29 10:45:50 -02:00