Commit Graph

106 Commits

Author SHA1 Message Date
Martin Diehl 136a4b1377 PETSc defines are rather complicated
now mpi_f08 can be used on newer PETSc installations if old MPI modules
are not exposed
2021-07-09 18:48:25 +02:00
Martin Diehl 3870a70a4e HDF5 seems to use MPI (F90 style) 2021-07-09 12:37:39 +02:00
Martin Diehl 139f2c177a use MPI_f08 if possible
most PETSc installations provide outdated MPI (f90 version)

MPI_COMM_WORLD is now of derived type (Fortran 08 style)
PETSC_COMM_WORLD is the plain integer (f90 style) alias.
Note that HDF5 is assumed to have f90 interfaces
2021-07-08 16:27:37 +02:00
Martin Diehl 4c3ff4bef4 consistent capitalization 2021-07-08 15:05:01 +02:00
Martin Diehl 58bc6e2ba6 avoid chained inclusions 2021-07-08 14:27:04 +02:00
Martin Diehl 5d0fc4fca3 more meaningful order
and intent(out) variables for read are at the front
2021-06-01 16:46:24 +02:00
Martin Diehl b353f8ed92 workaround for HDF5: https://forum.hdfgroup.org/t/6186
writing chunked/compressed data can cause problems with MPI. Even though not 100%
clear from the reference, it seems that the issue only appears for HDF5
< 1.12.
Of special importance for Ubuntu since the Debian package is still at 1.10.6
2021-05-03 18:19:06 +02:00
Vitesh d54e49e3bc restore functionality to write non-parallel
not needed at the moment, but in general useful. If PETSc = parallel
should always hold, we can simplify much more
2021-02-22 13:37:21 +01:00
Sharan Roongta a51b32ccdf only input 2021-01-26 20:18:04 +01:00
Martin Diehl 3ad741dbeb only used in one function 2020-12-10 00:31:58 +01:00
Martin Diehl 97ee7e6ee5 not needed anymore 2020-12-07 17:26:50 +01:00
Martin Diehl 429b84004d more filters
- shuffle: significanlty better compression
- Fletcher32: checksum to detect errors

computational overhead is very small
2020-12-06 19:57:00 +01:00
Martin Diehl bc4361c2ae use variable string length
for array, padding is needed to get same length
2020-12-06 13:32:20 +01:00
Martin Diehl 52e3fb50bc compress.
Datasets are chunked along first timension. Chunk size (1MB for real) is
probably not optimal
2020-12-06 11:44:52 +01:00
Martin Diehl 018709bfcf error stop better suited for internal errors
error stop gives full stack trace, which is very helpful for debugging.
2020-11-11 10:19:47 +01:00
Martin Diehl 03a68248b5 polishing 2020-11-06 13:25:00 +01:00
Martin Diehl e649fb195f update to use variable-length strings 2020-11-05 22:34:41 +01:00
Martin Diehl 2b6001222d black magic
compiles also with Intel (complained about non-existing interface
before).
Direct pointer crashes ..
2020-11-05 17:59:05 +01:00
Martin Diehl b8c97c5b7e change string type
normal fortran strings are fixed-length, spacepad. h5py (at least v3.x)
creates variable-length, nullterm
2020-11-05 15:36:13 +01:00
Martin Diehl e848590c5c Merge remote-tracking branch 'origin/development' into Fortran-simplifications 2020-09-17 19:39:31 +02:00
Martin Diehl 5b83c8ad3c use 'error stop'
- does not require IO
- prints stack trace
2020-09-13 12:09:32 +02:00
Martin Diehl da0e16520c handling of MPI in 'parallelization' 2020-09-13 10:26:33 +02:00
Sharan Roongta 7754a1ea56 Restructuring for material.yaml 2020-08-15 16:08:46 +02:00
Martin Diehl 93adee2581 no need to have fixed string here 2020-08-09 06:27:29 +02:00
Martin Diehl 9565f15415 clearer description 2020-04-28 10:30:03 +02:00
Martin Diehl ae49e6710d documenting for doxygen 2020-03-15 12:54:35 +01:00
Martin Diehl 18ccc49d6f avoid duplicated public/private statements
variables should be private
2020-02-29 15:15:41 +01:00
Martin Diehl 62865e779d polishing 2020-01-26 18:31:56 +01:00
Martin Diehl 41650cdd11 use standard string length 2019-12-21 07:38:17 +01:00
Martin Diehl 4b6388fbb2 always use HDF5 output 2019-12-18 20:05:51 +01:00
Martin Diehl e3b16639bf native integer needs to match
otherwise, results are wrong. Therefore, we need to use our own HDF5
library since MSC provides one for 4 byte integers
2019-10-13 18:20:54 +02:00
Martin Diehl 4dfb1f6450 next try for MARC 2019 2019-09-21 01:07:04 +02:00
Martin Diehl f54a6cdc3b white space adjustments 2019-06-15 16:42:16 +02:00
Martin Diehl 0a5dc6d503 HDF5 is not always available 2019-06-12 19:59:17 +02:00
Martin Diehl b2409d6998 cleaning 2019-06-11 13:34:55 +02:00
Martin Diehl eb8c41b3b5 cleaning 2019-06-06 10:43:08 +02:00
Martin Diehl a5c6e4b17c do not clutter the code with use statements 2019-05-28 12:06:21 +02:00
Martin Diehl 3c8d96c54c enable more complex attributes 2019-04-11 15:44:08 +02:00
Martin Diehl 8e295cbadf no need to create type for native data types 2019-04-11 12:48:39 +02:00
Martin Diehl 0b70f01e04 polishing 2019-04-07 14:28:08 +02:00
Martin Diehl 7d0ebc4ded implicit none only needed once per module 2019-04-07 14:24:46 +02:00
Martin Diehl d6d3f7aad7 write rotation as quaternion to HDF5 in named type 2019-04-07 13:26:23 +02:00
Martin Diehl 280a11c4bc avoid checking of unitialized variables 2019-04-04 11:49:23 +02:00
Martin Diehl 811883df28 avoid error for empty datasets 2019-04-04 10:03:52 +02:00
Martin Diehl 658befa1a1 no pInt and some renames 2019-04-04 09:12:57 +02:00
Martin Diehl 121bafd989 required for HDF5 output 2019-03-09 15:55:25 +00:00
Martin Diehl 48cfc35996 polishing 2019-03-08 23:16:35 +01:00
Martin Diehl de330517eb rank not supported by older compiler/older dialects 2019-03-08 07:42:13 +01:00
Martin Diehl 8224797e75 simplified 2019-03-07 22:31:54 +01:00
Martin Diehl ccb62da24a kind-ID does not need to coincide with the number of bytes 2019-03-06 16:33:39 +01:00