Commit Graph

335 Commits

Author SHA1 Message Date
Martin Diehl 1ddf1e5694 support for PETSc with 64bit integers
compiles, but untested
2021-12-21 23:53:46 +01:00
Martin Diehl 6ba2a08e5a easier to read 2021-12-11 11:50:40 +01:00
Martin Diehl f51633d43a forall is deprecated
do concurrent is the successor but ifort had problems and generated
faulty code
2021-12-11 09:01:42 +01:00
Martin Diehl 7d7d0c2659 only local variable are good variables 2021-12-11 08:49:30 +01:00
Martin Diehl 2f067b544e use variables, not descriptors 2021-12-06 07:55:13 +01:00
Nikhil Prabhu 96e4cb591c Merge branch 'integer-exponents' into 'development'
Using integer exponent

See merge request damask/DAMASK!467
2021-11-29 07:32:04 +00:00
Philip Eisenlohr a531b7ccae transitioned remaining real exponents to int 2021-11-28 12:46:26 -05:00
Martin Diehl ccd6e44b6b Merge remote-tracking branch 'origin/development' into 134-output_none 2021-11-27 19:17:27 +01:00
Martin Diehl bfc6b69ee2 integer exponents: faster and shorter 2021-11-25 20:52:22 +01:00
Philip Eisenlohr 43ae4983ed fixed misaligned/too short "writing..." statements 2021-11-15 12:58:59 -05:00
Philip Eisenlohr 69843d0833 Merge branch 'development' into pretty-print-init 2021-11-15 12:39:14 -05:00
Philip Eisenlohr da9fdf53d2 consistent indentation and line-spacings in reporting 2021-11-15 12:35:44 -05:00
Nikhil Prabhu 64d70d9be3 user option to have no output
f_out = none
2021-11-15 14:39:29 +01:00
Martin Diehl b7ad5b3167 'standard' style 2021-11-10 20:53:20 +01:00
Philip Eisenlohr 186b688b04 only look for opening part of <CellData> tag 2021-11-09 15:10:19 -05:00
Martin Diehl 256c48831e better readable 2021-10-19 23:08:21 +02:00
Martin Diehl 29431eb8c5 same reporting as in python 2021-09-12 21:55:14 +02:00
Martin Diehl 949eea1624 bugfix: did not work with VTK 8 2021-09-01 11:07:39 +02:00
Martin Diehl 4160c4fdb4 fix for parallel HDF5
if filters are applied, writing from one process does not work if the
file is opened for parallel write
2021-08-15 13:26:15 +02:00
Philip Eisenlohr f75235f6a9 Merge branch 'more-flexible-L' into 'development'
more flexibility for the L in the load case

See merge request damask/DAMASK!420
2021-08-09 21:27:13 +00:00
Martin Diehl 044a048944 taking care of corner cases (e.g. restart)
adjusting tests to take care of new 'setup' group
2021-08-01 22:46:11 +02:00
Martin Diehl b9d4eb23cc only rank 0 reads file for MPI 2021-07-27 08:54:17 +02:00
Martin Diehl 812b0f07f5 read file only once (per process) 2021-07-27 08:35:52 +02:00
Martin Diehl ddb0429a1d store load case (full reproducibility for grid solver) 2021-07-27 07:57:04 +02:00
Martin Diehl e01d271ee4 store geometry (for full reproducibility) 2021-07-27 07:43:35 +02:00
Martin Diehl 574cfd7034 Merge remote-tracking branch 'origin/development' into more-flexible-L 2021-07-22 00:20:33 +02:00
Martin Diehl 9d349f8a7c symbolic notation 2021-07-21 06:50:28 +02:00
Martin Diehl 6f19113072 L, P, F, etc. are second order tensors 2021-07-21 06:19:04 +02:00
Martin Diehl 85735605f8 more flexibility for the L in the load case
Note that mixed boundary conditions for L introduce an ambiguity.
Consider:

L = [[1.0, x, x],
     [  0, 0, 0],
     [  0, 0, 0]]
P = [[x, 0, 0],
     [x, x, x],
     [x, x, x]]

What we need is F^(n+1)=F_dot^(n+1) x Delta_t, where F_dot^(n+1) is
F_dot^(n+1)_ij = L_ik F^n_kj.

So component F_11 has contributions from L_12 and L_13. We first assume
L_12=L_13=0 and then choose F^(n+1)_12 and F^(n+1)_13 to get
P_12=P_13=0. This implicitly gives a solution for L_12 and L_13, which
is however only one out of infinitely many.
2021-07-20 07:10:28 +02:00
Martin Diehl 03b7532cc5 numpy.MaskedArray behavior 2021-07-19 23:27:10 +02:00
Martin Diehl 1c1dc9383e symbolic names 2021-07-19 22:30:20 +02:00
Martin Diehl f9edeb40a5 descriptive names 2021-07-17 11:50:21 +02:00
Martin Diehl ed6b1be352 solver handles terminally ill 2021-07-16 20:43:08 +02:00
Martin Diehl 2a84aa7ae4 obvious, no need for comment 2021-07-16 20:32:21 +02:00
Martin Diehl 5f78f1753c split up thermal
only for grid at the moment
2021-07-16 18:03:38 +02:00
Martin Diehl 3f0eafd640 first step towards separating of mechanics, thermal, and damage 2021-07-16 17:53:11 +02:00
Martin Diehl 2f1fa8292b unify style to majority of occurences 2021-07-16 10:30:45 +02:00
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 637f78bd52 old name (for PETSc < 3.15) 2021-07-09 14:50:29 +02:00
Martin Diehl 8e75e87ad9 Merge branch 'MPI_F08' into polishing-for-beta 2021-07-09 11:32:32 +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 58bc6e2ba6 avoid chained inclusions 2021-07-08 14:27:04 +02:00
Martin Diehl a13e02da44 easier to follow 2021-07-06 22:33:12 +02:00
Martin Diehl 06e76c1a81 consistent default absolute tolerances
better use conservative values, users can easily relax if needed
2021-06-25 10:13:03 +02:00
Martin Diehl ae9a48c124 polishing 2021-06-24 15:23:24 +02:00
Martin Diehl 1bfbd30ae2 polishing 2021-06-15 19:53:05 +02:00
Martin Diehl 218e6a79a8 VTK image data is the appropriate type, not VTK rectilinear grid
FFTs require constant spacing in all three directions, this is
guaranteed by the vtkImageData but not by vtkRectilinearGrid
2021-06-15 19:02:26 +02:00
Martin Diehl 3705f1d3a2 F,P, ... in loadcase are 2nd order tensors 2021-06-03 08:21:16 +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
Sharan Roongta d1a6607782 Merge branch 'load2Dtensor' into 'development'
support for 2D tensor in load case

See merge request damask/DAMASK!391
2021-05-29 13:21:47 +00:00