Commit Graph

419 Commits

Author SHA1 Message Date
Martin Diehl 6d78400f87 the concept of IP/element_ID should not be used at the DAMASK core 2022-02-05 07:29:00 +01:00
Martin Diehl a243e10641 Merge remote-tracking branch 'origin/development' into Fortran-polishing 2022-02-03 09:01:33 +01:00
Sharan 3e73d28631 Merge remote-tracking branch 'origin/development' into thermal-restart 2022-02-01 23:07:55 +01:00
Martin Diehl f70df11b67 consistent reporting 2022-01-29 15:59:22 +01:00
Martin Diehl 762f93d724 following naming convention 2022-01-29 15:30:59 +01:00
Martin Diehl 487912cfb0 following Python notation 2022-01-29 15:14:40 +01:00
Martin Diehl dd0f2cfa3c tau is often easier to use than pi
https://tauday.com/tau-manifesto
2022-01-29 14:46:09 +01:00
Martin Diehl 68ea33c591 start at 1 for the same loop pattern 2022-01-26 12:21:08 +01:00
Martin Diehl a86dc322fb consistently put the check on the next line 2022-01-26 12:18:26 +01:00
Martin Diehl 96fed368ad name adjustments 2022-01-21 14:51:46 +01:00
Martin Diehl 292cbdee30 consistent name 2022-01-20 14:56:21 +01:00
Martin Diehl 7bd8452bf8 set return value 2022-01-20 07:56:45 +01:00
Martin Diehl 7b1080fdb7 better and consistent variable name 2022-01-20 07:42:16 +01:00
Martin Diehl 1f86111f57 call SNESSetDM after DMDASNESSetFunctionLocal
following example ex5f.F90, seems to resolve segmentation fault
2022-01-19 22:57:22 +01:00
Martin Diehl fe094939e6 better to understand 2022-01-19 19:43:54 +01:00
Martin Diehl 0f4f2b6717 use only grid, not (x/y/z) start and end 2022-01-19 19:38:07 +01:00
Martin Diehl 89cb018189 polishing 2022-01-19 18:58:46 +01:00
Martin Diehl 3d6dcad385 Merge remote-tracking branch 'origin/thermal-solver-improvements' into 146_grid-indexing+allocation 2022-01-19 18:50:55 +01:00
Martin Diehl 25ddec76e7 avoid (x/y/z)end and (x/y/z)start, same information is in grid 2022-01-19 17:41:16 +01:00
Martin Diehl 96ff3314a3 simplified 2022-01-19 17:10:47 +01:00
Martin Diehl 642df40634 one-based counting 2022-01-19 16:56:54 +01:00
Sharan Roongta 1ad537b60c better to use global grid dimensions
also checking early allocation of Temperature field
2022-01-19 16:54:10 +01:00
Martin Diehl b18483cc6e simplify MPI debugging
needs manual modification in the source code
2022-01-19 16:45:14 +01:00
Martin Diehl 869fdc847a Merge branch 'development' into misc-improvements 2022-01-18 11:02:18 +01:00
Martin Diehl d1cd125a5b direct array reversal, don't duplicate FFTW manual 2022-01-15 12:27:07 +01:00
Martin Diehl 29530da579 use correct kind of constants for calls to MPI/PETSc 2022-01-13 13:50:30 +01:00
Martin Diehl 91a3ea96ec final MPI-DAMASK integer kind decoupling
bugfix: set error for openMP-calucations
2022-01-13 13:21:44 +01:00
Martin Diehl a7417a7ad7 default integer, PETSc integer, and MPI integer might be different 2022-01-13 12:02:33 +01:00
Martin Diehl a3a3388855 decouple DAMASK default integer from MPI default integer 2022-01-13 10:25:45 +01:00
Martin Diehl 8223dc7fa7 polishing
MPI, HDF5, PETSc, and DAMASK might have different integer kinds ..
2022-01-13 08:17:31 +01:00
Martin Diehl 3fb5bd459c pInt leftovers 2022-01-13 07:44:15 +01:00
Sharan Roongta 236f0297ac test added 2022-01-12 20:42:37 +01:00
Sharan Roongta e80d91e30a thermal restart (WIP) 2022-01-11 16:11:18 +01:00
Martin Diehl 1e965c42b7 don't rely on ML
avoid dependencies to external packages as much as possible
2021-12-27 17:44:22 +01:00
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
Martin Diehl adb1e51e24 support for 2D tensor in load case
currently optional, but should become mandatory after a transition
period
2021-05-26 08:04:14 +02:00
Martin Diehl d2855913b5 new mappings 2021-05-22 11:48:42 +02:00
Martin Diehl c8cdd7e622 better numerical parameters for thermal solver/PETSc
works for realistic values for thermal problems
parameters copied from spectral_damage
2021-05-05 18:14:53 +02:00
Martin Diehl 887524bcc1 polishing 2021-04-11 16:09:29 +02:00
Martin Diehl b67e837548 needs broadcast, otherwise rank>0 fail 2021-04-11 09:58:40 +02:00
Martin Diehl 547f2ffa69 cleaning 2021-04-11 09:46:11 +02:00
Martin Diehl 5f608ed572 only 2 and 3 dimension can be 1 2021-04-09 08:25:30 +02:00
Martin Diehl 1b89032086 names as in DAMASK paper 2021-04-08 23:45:26 +02:00
Martin Diehl c4765d3742 following paper 2021-04-08 13:31:21 +02:00
Martin Diehl d59051f576 systematic names 2021-04-07 22:42:10 +02:00
Martin Diehl 0fc7f66ef8 consistent names 2021-04-07 21:25:11 +02:00
Martin Diehl c53927ad6f not needed 2021-04-07 08:47:46 +02:00
Martin Diehl 1fbf14c148 encapsulation and namespace-like names 2021-04-07 07:53:24 +02:00
Martin Diehl 2e96fcf768 Merge branch 'development' into spring-cleaning 2021-03-29 07:26:17 +02:00
Martin Diehl 710f5b74b2 Merge remote-tracking branch 'origin/development' into 2d-table-yaml 2021-03-29 00:00:39 +02:00
Martin Diehl 0072ebfa64 polishing 2021-03-27 23:17:04 +01:00