620 Commits

Author SHA1 Message Date
a93bf0daea INTERPOLATIONS: Determine ci5(:) coefficients using di5(:) in OCMP5.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-10-07 08:46:42 -03:00
25dbf151e1 ALGEBRA: Rewrite slightly the tridiagonal solver.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-29 12:04:59 -03:00
168cb03f9f INTERPOLATIONS: Implement 5th order Optimized Compact MP method.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-28 11:04:19 -03:00
3da83e901d INTERPOLATION: Improve MP limiting for high-wavenumbers.
This improvement is according to Ahn & Lee, JPC, 2020, 83, 34.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-28 09:58:59 -03:00
098122cf3f INTERPOLATIONS: Add low dissipation version of CRMP7 method.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-26 10:05:33 -03:00
ddb2117660 INTERPOLATIONS: Add explicit MP methods with lower dissipation.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-25 19:18:13 -03:00
deede9452d EVOLUTION: Determine the relative maximum error.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-16 06:40:50 -03:00
36b10a40d7 EVOLUTION: Add limiting factors and correct exponents in error control.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-15 22:59:20 -03:00
2450ec2a34 IO: Store dte in the restart snapshots.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-15 20:06:49 -03:00
415d081e42 EVOLUTION: Get umax from the block interiors only.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-15 20:05:05 -03:00
af5673108e IO: Search for the last restart snapshot only if nrest = 0.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-11 19:09:58 -03:00
d82eb99a8a EVOLUTION: Fix variables which may not be initialized.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-01 18:12:37 -03:00
55e6d810d2 BOUNDARIES, MESH: Implement parabolic interpolation for prolongation.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-01 17:16:18 -03:00
d72c6019b8 EVOLUTION: Implement step repetition in evolve_ssprk2_m().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-01 16:57:36 -03:00
d969608541 EVOLUTION: Implement step repetition in evolve_ssprk3_m().
If the desired tolerance was not achieved, the integration step is
repeated. The tolerance is controlled by two parameters:
"absolute_tolerance" and "relative_tolerance". The number of allowed
repetitions is controlled by parameter "maximum_repetitions".

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-01 16:48:28 -03:00
f199e231e6 EVOLUTION, IO: Add tolerances, interations and rejections counters.
Store these variables in restart snapshots.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-09-01 16:38:11 -03:00
c1fa4d1cff EVOLUTION: Estimate timestep due to error limitation.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-31 22:38:46 -03:00
0c04d4986b EVOLUTION: Add parameters for absolute and relative tolerances.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-31 22:29:40 -03:00
1d0cf0758c EVOLUTION: Rewrite evolve_ssprk3_m() to use %u2(:,:,:,:).
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-31 22:27:38 -03:00
931c984dca EVOLUTION: Rewrite evolve_ssprk2_m() to use %u2(:,:,:,:).
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-31 20:10:48 -03:00
f24f071540 BLOCKS: Add additional conserved variable array to data blocks.
It is required for high-order low-storage embedded SSPRK integration
methods.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-31 18:52:21 -03:00
d86fea463c EVOLUTION: Remove stat atribute from allocation of lerr(..).
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-31 11:52:19 -03:00
a754fd6a56 EVOLUTION: Remove one variable from evolve_ssprk3_m().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-28 23:38:12 -03:00
60255efe9f EVOLUTION: Add error estimation in evolve_ssprk2_m().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-28 23:36:52 -03:00
73e2743e07 DRIVER: Print maximum error.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-28 23:07:32 -03:00
8a23da2802 EVOLUTION: Remove few comments from evolve_ssprk3_m().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-28 22:44:51 -03:00
100fcf12f2 EVOLUTION: Add error estimation in evolve_ssprk3_m().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-28 22:42:26 -03:00
b9e9ce1daf INTEGRALS: Remove unused variable from store_integrals().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-28 22:41:35 -03:00
51d883b5db INTEGRALS: Store integration errors in a separate file.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-28 21:46:29 -03:00
0d47d35104 EVOLUTION: Add time step resulting from the error limit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-28 21:41:04 -03:00
3d13d30e60 EQUATIONS: Add vector to store integration errors of variables.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-28 21:30:56 -03:00
e23f97bbd6 COMPRESSION: Remove long lines.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-24 22:15:54 -03:00
1cac584c46 IO: Use newunit instead of unit in read_restart_snapshot_xml().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-24 22:06:42 -03:00
38fb24f9d6 IO: Always write all three dimensions of bounds(:,:,:).
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-24 20:43:23 -03:00
30c012d01a IO: Add more Intel dependent inquire statements.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-24 19:29:21 -03:00
f0a7edb6ea IO: Detect record length in write_binary_xml().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-23 19:44:49 -03:00
945e627199 COMPRESSION, IO: Replace sizeof() with size() and transfer().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-22 20:29:43 -03:00
3fae5b58fe EQUATIONS: Take into account passive scalars in positivity indicators.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-22 18:32:08 -03:00
cac043487c SCHEMES: Slightly rewrite HLLD solver for adiabatic MHD.
This fixes some weird behavior when Bx is small too.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-20 17:39:03 -03:00
40619aa119 SCHEMES: Slightly rewrite HLLD solver for isothermal MHD.
This fixes some weird behavior when Bx is small.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-20 14:52:43 -03:00
8634f89ce0 SCHEMES: Properly average total pressure in MHD HLLC solver.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-20 11:27:00 -03:00
fe9c223489 IO: Fix a warning in the case of no forcing modes.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-19 22:49:46 -03:00
3115ecdabb IO: Restart job from the last available restart snapshot.
If parameter 'restart_number' was not set or is negative, it is
determined from the last available restart snapshot. The restart
snapshots should be all in the same restart path in the complete
sequence, i.e., from first one to the last one.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-19 22:38:51 -03:00
f8dae064b9 EVOLUTION: Change 'glm_alpha' value.
It seems more numerically stable in the case of tearing mode problem
with HLLD or ROE solver for adiabatic EoS.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-19 21:34:40 -03:00
0a5a502079 IO: Store parameters 'cfl' and 'glm_alpha' in snapshots.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-19 18:45:23 -03:00
1f4b9e35f7 EVOLUTION: Rename parameter 'alpha' to 'glm_alpha'.
This parameter is used for GLM cleaning of magnetic divergence, so it
shouldn't be confused with anything else.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-19 18:38:25 -03:00
77122f8854 COMPRESSION: Implement compression level for LZ4 compression.
Also increase the compression buffer and turn on internal checksum.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-18 18:01:12 -03:00
ec8683a7a0 COMPRESSION: Add CRC64 check to LZMA compression.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-18 17:58:10 -03:00
fec8708ac9 IO: Update header for XML files to be compatible with Python.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-18 12:20:52 -03:00
e509ea4e9a IO: Change order of attributes in write_attribute_xml_file().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-18 11:58:53 -03:00