Commit Graph

4571 Commits

Author SHA1 Message Date
Daniel Otto de Mentock 592936f21f missing allocation statement was causing gnu and intel debug compiler to fail 2022-10-14 11:44:42 +02:00
Martin Diehl 8937967067 length of macro seems to depend on PETSc location 2022-10-13 13:08:13 +02:00
Martin Diehl 2e24ce4770 Merge branch 'phenopowerlaw_fix_clean' into 'development'
asymptotic hardening respects own (not other) saturation

See merge request damask/DAMASK!631
2022-10-13 07:54:47 +00:00
Sharan Roongta 759c95471c asymptotic hardening respects own (not other) saturation
from @p.eisenlohr
2022-10-07 19:00:09 +02:00
Martin Diehl 0ca4d42678 PETSc 3.18.0 compatibility
CHKERR macros are now longer, should be replaced with PetscCall in the
future
2022-10-02 12:48:54 +02:00
Sharan Roongta dd3b385ae5 correct dotT passed 2022-09-29 15:04:57 +02:00
Martin Diehl 0c83245d4b example files for TWIP/TRIP
I'm not able to reproduce the results from https://doi.org/10.1016/j.actamat.2016.07.032,
but these parameters give results that are qualitatively ok
2022-09-22 16:39:23 +02:00
Yi Hu bb65d58214 add read-in init phi, correct write-out damage result 2022-09-21 08:50:00 +02:00
Martin Diehl b11ca71786 no need to pass determinant if not needed 2022-09-10 10:31:18 +02:00
Martin Diehl 043415c4bb unused and untested 2022-08-31 09:06:11 +00:00
Franz Roters 8c097b08d5 missing declaration 2022-08-29 16:08:24 +02:00
Martin Diehl 0b9597e74e better error message/simpler code 2022-08-16 18:26:50 +02:00
Martin Diehl fbc6a1ebbf following naming convention
the variable is NOT related to the base64 module
2022-08-16 17:10:49 +02:00
Martin Diehl 237bda5ccf ensuring matching domain decomposition for all transforms 2022-07-29 07:29:20 +02:00
Martin Diehl aee8ecd43d Merge remote-tracking branch 'origin/development' into prepare-transposed-FFTW 2022-07-29 07:27:12 +02:00
Daniel Otto de Mentock 27a8610d92 loops over tensors in fourier space need to correspond to transposed structure 2022-07-22 14:58:30 +02:00
Daniel Otto de Mentock b1257d6b54 correcting wrong access to scalarfield_fourier 2022-07-19 14:47:05 +02:00
Daniel Otto de Mentock dda157aa5a accesses to fourier space tensors now need to correspond to transposed structure 2022-07-13 14:10:13 +02:00
Sharan Roongta bb63048a0f Merge branch 'implicit-none-external' into 'development'
implicit none cover external

See merge request damask/DAMASK!610
2022-07-08 11:43:19 +00:00
Martin Diehl ec0c486a2c transition to transposed storage 2022-07-06 18:01:39 +02:00
Sharan c3ba8b6588 dot state is 0 in isibrittle 2022-07-02 18:59:21 +02:00
Martin Diehl 771ccb4485 testing average behavior 2022-07-01 14:33:10 +02:00
Martin Diehl fc76f9f60f preparing for use of transposed data in Fourier space 2022-06-30 22:23:27 +02:00
Martin Diehl 44ecedc7b0 unified names 2022-06-30 22:01:35 +02:00
Martin Diehl af2eb3e51d systematic names 2022-06-30 21:59:21 +02:00
Martin Diehl ef8f0becd4 only used within module 2022-06-30 21:45:49 +02:00
Martin Diehl 64fad03b97 explicit casting 2022-06-27 23:39:54 +02:00
Martin Diehl 60e097a04e something is wrong with interfaces for 64 bit 2022-06-27 22:35:29 +02:00
Martin Diehl de1633f420 limit access 2022-06-27 21:51:44 +02:00
Martin Diehl 61dc14e0b9 Merge remote-tracking branch 'origin/development' into implicit-none-external 2022-06-27 15:13:20 +02:00
Daniel Otto de Mentock de89d0fe38 Merge branch 'Marc-Precision-handling' into 'development'
Marc precision handling

See merge request damask/DAMASK!607
2022-06-27 08:37:41 +00:00
Martin Diehl 3b57934d6e Marc precision handling 2022-06-27 08:37:41 +00:00
Martin Diehl 445a091fec easier to understand 2022-06-24 07:36:25 +02:00
Martin Diehl 2f1904efec only MPI_f08 is standard conforming 2022-06-21 23:11:22 +02:00
Martin Diehl b8c3d75700 [skip sc] enforce interfaces (quick fix: declare as external) 2022-06-21 22:59:01 +02:00
Martin Diehl 074cdf5dff following default style 2022-06-15 20:15:35 +02:00
Martin Diehl 0b8473d7ec Merge remote-tracking branch 'origin/development' into polishing 2022-06-15 20:13:39 +02:00
Martin Diehl 703798b080 test needs update after change of parameter names for sb 2022-06-15 08:31:25 +02:00
Martin Diehl 576c79a619 following DAMASK paper 2022-06-13 14:08:45 +02:00
Martin Diehl 0d63284c01 increase test coverage 2022-06-12 16:16:25 +02:00
Martin Diehl f60c950a7c numerically better normalization
slightly more expensive, but guarantees a det(R) = 1.0
2022-06-12 10:25:14 +02:00
Martin Diehl 9f4e354b12 polishing 2022-06-11 23:12:30 +02:00
Martin Diehl 9e0a0ee166 not needed 2022-06-11 23:04:21 +02:00
Martin Diehl f8833043b3 consistent capitalization 2022-06-08 23:28:41 +02:00
Martin Diehl 78838c2f75 consistent variants including space 2022-06-08 23:27:09 +02:00
Sharan Roongta fa974574af Merge branch 'consistent-damage-parameter-names' into 'development'
Consistent damage parameter names

See merge request damask/DAMASK!593
2022-06-04 11:27:28 +00:00
Martin Diehl 1b5194288b polished tests, consistent variable name 2022-06-04 07:26:45 +02:00
Franz Roters 5155a3f958 Merge branch 'MPI-FFTW-fix' into 'development'
bugfix: prevent segmentation fault

Closes #192

See merge request damask/DAMASK!595
2022-06-02 16:13:24 +00:00
Martin Diehl b8530bbcc9 Merge branch 'implicit-none-in-interface' into 'development'
implicit none does not propagate

See merge request damask/DAMASK!596
2022-05-31 12:06:03 +00:00
Philip Eisenlohr 3d10d29254 Merge branch 'warning-error-cleanup' into 'development'
more flexible error/warning handling

See merge request damask/DAMASK!594
2022-05-28 16:56:53 +00:00
Martin Diehl d858d753e3 implicit none does not propagate
each subroutine/function is independent and not part of a scope
2022-05-27 22:38:47 +02:00
Martin Diehl 6fa87b4038 not needed anymore 2022-05-27 20:58:18 +02:00
Martin Diehl 2bfcc4d0b8 standardized reporting 2022-05-27 20:53:16 +02:00
Martin Diehl b56ded62d9 encapsulate data, prefix only public functions 2022-05-27 18:01:40 +02:00
Philip Eisenlohr f85e8a3ff4 more precise warning for fftw_plan_mode 2022-05-27 12:00:53 -04:00
Philip Eisenlohr 75bd643258 more precise warning for fftw_plan_mode 2022-05-27 11:58:10 -04:00
Philip Eisenlohr d66c777d6e introduced "IO_panel" to write statements to STDERR 2022-05-27 11:47:14 -04:00
Martin Diehl dc59beb59c following advince from FFTW3 manual
silences a lot of gfortran warnings about unused variables
2022-05-27 09:54:00 +02:00
Martin Diehl 064b9c5cc4 bugfix: prevent segmentation fault
need to rely on FFTWs calculation for amount of storage needed
2022-05-27 09:53:04 +02:00
Martin Diehl 6c6b3e64b3 more flexible reporting 2022-05-27 09:38:47 +02:00
Martin Diehl cfa2be44e9 internal errors should trigger error stop 2022-05-27 08:48:42 +02:00
Martin Diehl f7d23ad151 internal variable, no prefix needed 2022-05-27 08:40:01 +02:00
Martin Diehl f31dd8cbe8 unknown error/warning numbers are internal errors 2022-05-27 08:34:52 +02:00
Martin Diehl f90523eb07 more flexible reporting 2022-05-27 08:33:50 +02:00
Martin Diehl 5f0ae4fe7a user errors are catched earlier
internal errors (essentially programming faults) should stop with 'error
stop'
2022-05-27 06:41:55 +02:00
Martin Diehl 79fad5ca19 IP was only used for an argument that is NOT the IP ID 2022-05-27 06:41:15 +02:00
Martin Diehl 1d4c476cd4 collect errors for more helpful message 2022-05-27 06:30:25 +02:00
Martin Diehl d5db083fec more convenient to see all invalid parameters 2022-05-27 00:25:25 +02:00
Martin Diehl 7a23699aa4 not needed
error occurs in <phase ... init>
2022-05-27 00:24:40 +02:00
Martin Diehl 724c4fcf5d not used
ip,el,g is anyways not flexible enough. Remove unused arguments before
developing a more flexible approach
2022-05-27 00:23:51 +02:00
Martin Diehl 19b78cb647 easier to read 2022-05-26 23:29:06 +02:00
Martin Diehl 82cad00f81 simplified interface 2022-05-26 19:07:23 +02:00
Martin Diehl a514d30060 standardized names 2022-05-26 19:03:29 +02:00
Martin Diehl 77f586b1d7 Merge remote-tracking branch 'origin/development' into consistent-damage-parameter-names 2022-05-22 23:35:42 +02:00
Martin Diehl f42bb5d175 mitigate rounding errors 2022-05-20 06:43:32 +02:00
Martin Diehl 491e2ec0b2 avoid negative zero when not needed 2022-05-20 06:30:07 +02:00
Martin Diehl 6b6c2548c5 Merge branch 'development' into initial-V_e 2022-05-19 17:03:09 +02:00
Martin Diehl 41a732f62d assumed rank solution gives wrong results #194 2022-05-19 16:38:37 +02:00
Martin Diehl 556d9d840e specifying V_e is more natural than F_i 2022-05-19 01:15:17 +02:00
Daniel Otto de Mentock 85fa92ee1f Merge branch 'use-openMP-module' into 'development'
using the module is the recommended approach

See merge request damask/DAMASK!582
2022-05-17 12:57:15 +00:00
Daniel Otto de Mentock 5f3203cecf Merge branch 'element-cleanup' into 'development'
only relevant for Marc

See merge request damask/DAMASK!583
2022-05-17 12:56:50 +00:00
Martin Diehl c0bb576117 Merge remote-tracking branch 'origin/development' into sigint-to-quit 2022-05-13 11:58:18 +02:00
Martin Diehl 3f85027b9e better use SIGINT for actions triggered by the user
SIGTERM is send by MPI if one process fails, catching it results in
deadlocks
2022-05-13 11:58:03 +02:00
Martin Diehl 6b17787be1 only relevant for Marc 2022-05-13 10:02:02 +02:00
Martin Diehl 05d3a92944 using the module is the recommended approach 2022-05-13 08:43:24 +02:00
Martin Diehl 6f7e8491bc Merge branch 'Marc2022.1' into 'development'
Marc2022.1

See merge request damask/DAMASK!579
2022-05-12 20:38:25 +00:00
Martin Diehl 0b6ead1a48 avoid console-spam during initialization 2022-05-12 15:36:12 +02:00
Martin Diehl 53796fce7a trustworthy reference 2022-05-08 20:10:12 +02:00
Martin Diehl b376b10b7a classic Intel gives FPE 2022-05-08 17:47:20 +02:00
Martin Diehl 10d8a63cb6 not used
and current code is not good (not using Horner scheme)
2022-05-08 17:18:15 +02:00
Martin Diehl d713026f7e fast evaluation for (most common) case of constant 2022-05-08 16:49:30 +02:00
Martin Diehl b2052cb3c7 less strict tolerances
values can be in the order of 1e5, so 1e-6 precision is not too bad
2022-05-08 16:41:19 +02:00
Martin Diehl 8f9fbb30e5 use fused multiply-add where possible
only possible for Intel compiler
2022-05-08 15:48:13 +02:00
Martin Diehl 5b8e5591ed Merge remote-tracking branch 'origin/development' into order4-polynomial 2022-05-08 14:35:48 +02:00
Martin Diehl 240426402c using (faster) Horner evaluation
https://rosettacode.org/wiki/Horner%27s_rule_for_polynomial_evaluation
2022-05-08 13:32:14 +02:00
Martin Diehl 72c29f744c better tests 2022-05-08 12:49:29 +02:00
Martin Diehl 7d18ed307d hickup in documentation 2022-05-08 09:30:26 +02:00
Martin Diehl 2741fbd977 whitespace adjustments
- 1 empty line between dummy arguments/return value
- 2 empty lines between variable definition and actual code
2022-05-08 09:27:21 +02:00
Martin Diehl ec184cb8fe need to relax absolute tolerance
absolute values for quartic become quite high
2022-05-08 08:30:58 +02:00
Martin Diehl 9605a5c2de polynomial expansion up to order 4 2022-05-07 23:04:06 +02:00
Martin Diehl 71e4fa222c generic code for variable order 2022-05-07 22:53:31 +02:00
Martin Diehl 70b9943920 allow to specify only quadratic term in Dict 2022-05-07 22:47:13 +02:00
Martin Diehl 7cf3bcb9c9 easier to read 2022-05-07 22:01:47 +02:00
Franz Roters 7eddfab994 Merge branch 'development' into Marc2022.1 2022-05-06 18:18:55 +02:00
Franz Roters da595d46db add support for Marc2022.1 2022-05-04 14:56:50 +02:00
Franz Roters 6236ad52d1 consistent naming 2022-05-03 13:00:28 +02:00
Franz Roters fc4619189f unified capitalization 2022-05-03 12:55:27 +02:00
Martin Diehl be39865ff7 more systematic naming 2022-05-02 09:52:15 +02:00
Martin Diehl e29a732d9f improved naming 2022-04-29 14:58:12 +02:00
Martin Diehl 730cda2020 more explicit name 2022-04-29 14:50:27 +02:00
Martin Diehl bb83d20fe9 Merge branch 'development' into structure-improvements 2022-04-27 05:55:19 +02:00
Philip Eisenlohr dece12a1a6 remove unused CLI module inclusion 2022-04-26 12:19:13 -04:00
Martin Diehl 7a4097d52b Marc code belongs to Marc subfolder 2022-04-24 19:03:22 +02:00
Martin Diehl d41d03015a better matching name 2022-04-24 17:38:59 +02:00
Martin Diehl 26ab0365be only used by the grid solver 2022-04-24 17:30:37 +02:00
Martin Diehl 91b71fdff8 systematic naming scheme 2022-04-24 04:45:41 +02:00
Martin Diehl b80b406ad5 more specific name
'interface' can be an interface to anything, 'CLI' is an established
abbreviation for 'command line interface'
2022-04-23 16:09:31 +02:00
Martin Diehl 0e65d44bdc separating functionality
signal handling and CLI handling are not really related
2022-04-23 14:46:26 +02:00
Martin Diehl 690b2e9c21 tolerances were to strict for certain operations 2022-04-22 07:18:53 +02:00
Martin Diehl 745f5348cd running new tests 2022-04-22 00:01:54 +02:00
Martin Diehl df3f4d9480 testing forward/backward FFT 2022-04-20 07:02:59 +02:00
Martin Diehl dff78154a0 Merge branch 'fast-list-append' into 'development'
Performance improvements when storing/retrieving data from YAML

Closes #180

See merge request damask/DAMASK!561
2022-04-20 03:31:10 +00:00
Philip Eisenlohr 4a93dbec11 more descriptive variable names 2022-04-19 13:11:40 -04:00
Martin Diehl b796ccb04a DAMASK requires gfortran >= 9 2022-04-18 13:18:14 +02:00
Martin Diehl 808ef139ae avoid code duplication by using assumed rank "(..)"
- lack of modern Fortran interface for HDF5 still requires branching to
  call the same code
- not sure how to handle the read function (assumed rank and intent(out)
  ) does not work together
2022-04-18 13:16:45 +02:00
Martin Diehl 954a336d92 Fortran side does not support tags (i.e. 'type hints') 2022-04-16 16:24:29 +02:00
Martin Diehl 3cc3229792 string new line which is added by libfyaml 2022-04-16 16:19:33 +02:00
Martin Diehl f9c43e9db7 Merge remote-tracking branch 'origin/development' into consistent-damage-parameter-names 2022-04-15 10:32:36 +02:00
Martin Diehl dbf5ee84cb better readable 2022-04-14 21:21:32 +02:00
Martin Diehl b56176d670 all YAML related initialization is constant (linear in number of points) 2022-04-14 16:17:17 +02:00
Martin Diehl 3309360e4b avoit out of bounds access 2022-04-14 07:20:16 +02:00
Martin Diehl 563d566a3f made two loops faster
the most annoying one is still slow.
2022-04-14 06:39:19 +02:00
Martin Diehl ca0df3389a avoid long pointer transversal 2022-04-14 00:06:54 +02:00
Martin Diehl 00671f943b easier to understand 2022-04-13 23:45:14 +02:00
Martin Diehl c806885cb5 include libfyaml headers from non-standard locations
the CMake manual promises more than it holds.
Also adding some diagnostics+fixes for zlib, we still assume that it
exists (true on most systems, HDF5 also requires it normally)
see also https://stackoverflow.com/questions/21593
2022-04-13 07:58:31 +02:00
Martin Diehl 723252ef15 libfyaml backend
currently it simply converts the whole file content to flow mode.
The nice thing is: It can convert EVERYTHING to flow mode. libfyaml is
the only library that passes the whole YAML test suite
2022-04-12 23:24:07 +02:00
Martin Diehl 0376de4a11 not needed 2022-04-04 08:17:06 +02:00
Martin Diehl 34cc66f1bf use old interface for previous PETSc versions 2022-04-04 08:14:48 +02:00
Martin Diehl 8d44c55141 support for PETSc 3.17.0
DCHKERRQ has been replaced by PetscCall
2022-04-03 17:56:17 +02:00
Martin Diehl fb633798af following paper 2022-04-01 19:47:40 +02:00
Martin Diehl 945b10e3e6 avoid segmentation fault (null is returned if not scalar) 2022-03-20 00:00:52 +01:00
Martin Diehl 8f9ba9d6e4 test with initial conditions in grid file 2022-03-10 18:51:27 +01:00
Martin Diehl e8383cec69 Merge remote-tracking branch 'origin/development' into initial-temp 2022-03-10 08:52:05 +01:00
Martin Diehl 790ca57ea0 specify initial temperature per point 2022-03-09 21:29:40 +01:00
Martin Diehl da5ba82299 initial condition can be specified per point/cell 2022-03-09 20:40:03 +01:00
Martin Diehl c2453c56f1 Merge remote-tracking branch 'origin/development' into polishing 2022-03-09 15:22:22 +01:00
Philip Eisenlohr 73f01c07d0 clarified colormap default; accept string as colormap name 2022-03-08 09:31:08 -05:00
Martin Diehl b86292d19c Merge branch 'state-type-cleanup' into polishing 2022-03-06 09:31:25 +01:00
Martin Diehl 612f739794 homogenization state is not integrated 2022-03-06 08:33:36 +01:00
Martin Diehl d8de8f8b39 initial conditions are of type real 2022-03-05 22:13:37 +01:00