1664 Commits

Author SHA1 Message Date
a489837d63 Update copyright info.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-28 09:06:57 -02:00
21ded794e8 IO: Remove coordinate scaling factors dcor and ucor.
These factors aren't necessary, since the block coordinate is calculate
with respecto the all blocks at given level. Therefore, even if we
change the maximum refinement level during job restart, these coordinate
do not change.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-27 09:47:40 -02:00
d88a1396dd COORDINATES: Update toplev only if it was not changed before.
If we restart a job from a run with different maximum refinement level,
toplev parameter is set from a restart file and coordinate variables are
recreated. Setting toplev to maxlev all the time fails in recreating
correct coordinate variables and results in crashes.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-01-26 11:35:53 -02:00
a9123e466a PYTHON: Make sure indices are integers in rebin().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-11-07 12:10:28 -02:00
5b28e11182 PYTHON: Rewrite subroutine amun_dataset().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-11-06 12:45:07 -02:00
43e5b0b5f2 PYTHON: Rename amun_coordinates() to amun_coordinate().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-11-06 12:35:30 -02:00
5fa42b71cc PYTHON: Reorganize amun.py.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-11-06 12:34:39 -02:00
8eb5a2550a PYTHON: Add subroutine amun_coordinates() to retrive coordinate items.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-11-06 12:08:53 -02:00
d8b7e73b9f PYTHON: Rewrite amun_attribute().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-11-06 12:02:56 -02:00
25bbb78c63 PYTHON: Use amun_compatible() in all subroutines.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-11-06 11:37:29 -02:00
cbe94a21b6 PYTHON: Add amun_compatible() function.
This function returns True or False if the file is an HDF5 file
written in the AMUN code format.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-11-06 11:34:02 -02:00
87dc667040 Add PGI and Intel compilers support to default host file.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-31 11:05:16 -03:00
0a71fbc697 MULTIPLE MODULES: Introduce interfaces for procedure pointers.
This change allows the code to be compiled with the PGI compilers, and
at the same time does not affect the compilation with the GNU compilers.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-29 23:25:11 -03:00
ec1274541b SHAPESPROBLEMS: Add interface for update_shape.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-28 22:53:44 -03:00
e99a5c008e PROBLEMS: Add interface for setup_problem.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-28 22:52:08 -03:00
cf693eb938 EVOLUTION: Use ieee_is_nan from IEEE_ARITHMETIC.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-28 22:49:51 -03:00
9ea880b686 INTEGRALS: Remove IBM case for OPEN statement.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-28 22:42:59 -03:00
1881db4e82 ALGEBRA, INTERPOLATION: Detect maximum real kind automatically.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-28 22:35:01 -03:00
7b9e4192b7 Use scientific format (ES instead of E) for displayed real numbers.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-27 19:51:45 -03:00
8c0dd1d7f0 EQUATIONS: Print errors to error unit in fluxspeed_srmhd_adi().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-27 19:22:57 -03:00
32822544b0 INTERPOLATIONS: Return error in prepare_mgp() or prepare_gp() fail.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-27 19:15:21 -03:00
b8b9f6feac ALGEBRA: Return error instead of stopping execution in tridiag().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-27 19:07:29 -03:00
e229e68d25 PARAMETERS: Use error_unit for error reporting.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-27 18:56:58 -03:00
87b66c1ec2 ERROR: Remove module, since it is not used anymore.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-26 23:11:11 -03:00
3af1d2d982 EQUATIONS: Print error messages directly to error unit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-26 23:08:57 -03:00
794433c17f IO: Print error messages directly to error unit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-26 23:01:02 -03:00
0128f976f0 BLOCKS: Print error messages directly to error unit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-26 21:04:50 -03:00
88d8aa4b06 INTERPOLATIONS: Print error messages directly to error unit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-26 19:32:10 -03:00
3490e84825 ALGEBRA: Print error messages directly to error unit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-26 19:18:03 -03:00
91b710f8a5 BOUNDARIES: Print error messages directly to error unit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-26 19:14:31 -03:00
8096dbaca5 MESH: Print error messages directly to error unit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-26 19:04:12 -03:00
bfcd38a16c MPITOOLS: Print error messages directly to error unit.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-25 23:06:27 -03:00
df79530b0c PROBLEMS: Do not depend on ERROR module.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-25 22:36:21 -03:00
32cbdec6b6 MAKEFILE: Remove utils from source files.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-25 22:27:43 -03:00
523737835e UTILS: Remove unused module.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-25 22:26:23 -03:00
840d70bd2b mkdep.sh: Consider only source files in building dependencies.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-23 18:11:30 -03:00
f2a203bd17 EQUATIONS: Print unphysical cell info to standard error.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-23 18:05:00 -03:00
1cefe88de4 EQUATIONS: More control over the unphysical cell correction.
Give more control over the unphysical cell correction by allowing to
specify the minimum number of physical cells to perform averaging
(parameter "npavg") and the maximum distance to be considered from the
corrected cell (parameter "ngavg").

These two parameters allow to avoid averaging of extended unphysical
regions from two physical points.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-21 23:02:51 -03:00
808c1583ba EQUATIONS: Improve unphysical cell correction.
If there are no enough physical neighbors, the cell cannot be corrected
and the code simply stops. Allow the code to continue the execution in
such a case by simply correcting the unphysical cells by replacing the
negative values of positive variables with a lower bounds, dmin and
pmin, for density and pressure, respectively.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-21 22:45:49 -03:00
ae06f4fb73 MESH: Avoid infinite loop in prolong_block().
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-07 15:19:56 -03:00
a3383488ce BOUNDARIES: Avoid infinite loop in prolong subroutines.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-07 15:15:08 -03:00
8c0c89d0af INTERPOLATIONS: Avoid infinite loop in interfaces_tvd() and interfaces_mgp().
In case an interpolated cell, which should be positive, is zero or negative,
and the sum of derivatives is zero as well, the correction of
derivatives can enter into an infinite loop. It shouldn't normally
happen, since such a situation is unphysical.

Avoid the infinite loop and print a warning about encountered problems.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-07 14:59:42 -03:00
5964d50720 EVOLUTION: Fix unphysical cells after mesh update.
Unphysical cells can appear due to various reasons, e.g conservative to
primitive variable conversion in recently created block after mesh
refinements. Such unphysical cells can be immediately propagated to
neighbor blocks through boundary update, blocks which have not been
marked as recently updated. In such situation, the unphysical cells are
not corrected in these neighbors.

This change fixes this by marking all neighbors of blocks created in the
mesh update to be verified for unphysical cells too.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-08-07 14:13:34 -03:00
cd4474ad23 Makefile: Fix module path for non-GNU compilers.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-05-03 16:57:46 -03:00
444b78450e PYTHON: Add two subroutines to read integral (.dat) files.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-03-31 12:01:40 -03:00
461260ed38 Improve 'make clean' even more.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-03-31 11:44:37 -03:00
c35d5ccf64 Improve slightly makefile for makedeps generation and cleaning.
File 'makedeps' is now generated automatically if it does not exist or
any of source files has been modified.

Improve the cleaning of compilation files. Only files created during the
compilation are removed. Also if the OBJDIR is empty, it is removed as
well.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-03-31 11:33:06 -03:00
f0594b0b06 Update the code building steps in README.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-03-30 21:38:53 -03:00
bcf7495e0e Generate object file dependency only if makedeps not present.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-03-30 21:36:10 -03:00
ed38be7ebf Make mkdeps.sh script more robust.
Get rid of 'grep' and use only 'awk', 'sort' and 'uniq'. All should be
available in any linux system.

Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2018-03-30 21:31:36 -03:00