Commit Graph

4366 Commits

Author SHA1 Message Date
Martin Diehl e3a9adc722 not used 2022-02-07 07:20:15 +01:00
Martin Diehl 2a59251b1d deprecated reporting
crystallite does not exist anymore, information was discretization
related
2022-02-06 22:23:21 +01:00
Martin Diehl a37438ca29 helpful information about the parallel environment 2022-02-06 22:07:13 +01:00
Martin Diehl 0cf0112029 simplified 2022-02-06 15:59:46 +01:00
Martin Diehl 9386ba5ef5 allocate not needed 2022-02-06 12:59:41 +01:00
Martin Diehl 59fdd9b586 in agreement with paper
this is the sytem-wise formulation of D. Steinmetz' model
2022-02-06 10:07:15 +01:00
Martin Diehl 20b2079135 need to read V_mol, default of 1.0 gives strange results 2022-02-06 08:10:35 +01:00
Martin Diehl 519ca6f990 ifort does not allow rename of already imported symbols 2022-02-05 20:00:55 +01:00
Martin Diehl 4ca0ea6af2 avoid linking issues with gfortran+MPI
most likely related to the fact that HDF5 uses the old Fortran
inferface, not MPI_f08 as DAMASK
2022-02-05 18:38:06 +01:00
Martin Diehl 12e7922faf use modern Fortran interface
not possible for HDF5...
2022-02-05 18:37:38 +01:00
Martin Diehl 6c032e3ce6 remove deprecated mappings
almost done with having a consistent access pattern

solver
======
grid: x,y,z; mesh: el,ip

homogenization
==============
interface to solver: ce
internal: ho,en

phase
=====
interface to homogenization: co,ce
internal: ph,en
2022-02-05 10:01:55 +01:00
Martin Diehl 5f0a630fa6 remove deprecated phaseAt/phaseMemberAt 2022-02-05 08:24:07 +01:00
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 3c148b5b0e bugfix: openMP variable was not protected 2022-02-04 18:55:59 +01:00
Martin Diehl 3990536f1c consistent order of arguments 2022-02-04 17:42:05 +01:00
Martin Diehl afed13e2ca ip/el not of interest 2022-02-04 13:23:37 +01:00
Martin Diehl 8aed927989 avoid use of co/ip/el at the phase level 2022-02-04 11:28:54 +01:00
Martin Diehl 3a0596a274 use en/ph access 2022-02-04 09:43:27 +01:00
Martin Diehl 2bd10a1261 avoid use of IP/el 2022-02-04 08:40:15 +01:00
Martin Diehl 900ef0a2c9 store IP neighborhood for ph/en access 2022-02-04 08:03:16 +01:00
Martin Diehl 8b12814eec common variable names 2022-02-04 06:42:14 +01:00
Martin Diehl c70e535da8 avoid access by el/ip 2022-02-04 00:32:13 +01:00
Martin Diehl ce1eb4f59e no need to store dot state
saves memory and flow is easier to understand
2022-02-03 23:40:25 +01:00
Martin Diehl a9a5c8fb73 simplify acces with pointer
naming will be adjusted once global deltaState is removed
2022-02-03 23:08:29 +01:00
Martin Diehl 85ca3a3f24 simplified/standardized 2022-02-03 22:57:32 +01:00
Martin Diehl 0807112a71 new tests with T_ref = 293.15K (20°C)
seems to be the most common choice for room temperature
2022-02-03 22:36:27 +01:00
Martin Diehl a243e10641 Merge remote-tracking branch 'origin/development' into Fortran-polishing 2022-02-03 09:01:33 +01:00
Martin Diehl 2cb3b2cc45 not needed 2022-02-03 07:58:51 +01:00
Sharan 038cdad85e new naming 2022-02-02 23:58:21 +01:00
Sharan d72347fe25 Merge remote-tracking branch 'origin/development' into thermal-restart 2022-02-02 23:07:32 +01:00
Martin Diehl 97f849c098 Merge remote-tracking branch 'origin/typehints_rngseed' into development 2022-02-02 22:45:52 +01:00
Martin Diehl d868a240b2 bugix: change of behavior 2022-02-02 16:45:13 +00:00
Martin Diehl 8fead8e306 relaxed tolerances
for optimized code, the last digit might differ
2022-02-02 13:48:04 +01:00
Sharan 3e73d28631 Merge remote-tracking branch 'origin/development' into thermal-restart 2022-02-01 23:07:55 +01:00
Martin Diehl a14735f3db first step towards removal of global dot state
less state => better code
2022-02-01 13:40:09 +01:00
Martin Diehl 4eb9c3dea7 correct name 2022-02-01 13:40:09 +01:00
Martin Diehl 49ca62f3af only Chuck Norris can divide by zero 2022-02-01 11:22:27 +01:00
Martin Diehl 1871dcd75a small polishing 2022-02-01 09:03:39 +01:00
Martin Diehl 08d3e22bcd size is known 2022-02-01 08:35:00 +01:00
Martin Diehl 39aa243695 Polynomial Class 2022-01-31 14:05:15 +00:00
Martin Diehl a673abb413 indicate that this mapping should be used only for C 2022-01-30 06:24:50 +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 477f2d8167 capitalize constants 2022-01-29 14:49:45 +01:00
Martin Diehl 774ec4e8c4 not used 2022-01-29 14:47:14 +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 4a84c42112 improving constants
IUPAC does not specify an official ambient temperature, T=273.15K from
standard temperature and pressure (STP) is not particularly suited for our
purposes
2022-01-29 13:49:41 +01:00
Martin Diehl 978aa8a690 Merge remote-tracking branch 'origin/development' into dislotwin-fix-TWIP-TRIP 2022-01-27 15:22:51 +01:00
Martin Diehl ea33b321aa correct calculation of shear
need to convert volume to shear (and back for output)
2022-01-27 08:08:42 +01:00
Martin Diehl 1e748dc54e commenting 2022-01-27 07:28:33 +01:00
Martin Diehl e7ed32ba4e not needed 2022-01-27 00:01:53 +01:00
Martin Diehl 3bb2ae45d3 bugfixes
- L_tw/tr are not in lengths of Burgers vectors anymore
- need to define characteristic shear for tr
2022-01-26 23:57:59 +01:00
Martin Diehl 7d0d13bfed following paper
eq (10), eq (14), eq (49), eq (50), and Fig. 1
2022-01-26 23:28:39 +01:00
Martin Diehl 9e17efd1f8 transformation is for fcc-> hcp 2022-01-26 23:13:56 +01:00
Martin Diehl 95fff5d6f7 limit to TWINNING to fcc 2022-01-26 23:01:47 +01:00
Martin Diehl 8ceab5326f more systematic handling of bcc/hcp case 2022-01-26 22:49:11 +01:00
Martin Diehl d9f96bc0ec following paper, eq. (36) and eq. (37) 2022-01-26 22:33:44 +01:00
Martin Diehl 60e6e90874 avoid global states 2022-01-26 22:21:34 +01:00
Martin Diehl 5267794ff2 second order expansion of temperature-dependent variables 2022-01-26 22:04:44 +01:00
Martin Diehl c5fd467b44 power to one not needed 2022-01-26 21:47:33 +01:00
Franz Roters e7a999ffb1 Merge branch '146_grid-indexing+allocation' into 'development'
avoid duplicated variables + name adjustments

See merge request damask/DAMASK!505
2022-01-26 14:52:43 +00: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 f1051ec28f polishing 2022-01-21 23:34:42 +00:00
Martin Diehl 96fed368ad name adjustments 2022-01-21 14:51:46 +01:00
Martin Diehl bc1b391449 Merge remote-tracking branch 'origin/development' into 146_grid-indexing+allocation 2022-01-21 07:23:24 +01:00
Sharan Roongta c2a822d8fd keys() function for dictionary as in Python.
Does not work for gfortran which fails with an ICE.
2022-01-20 23:45:47 +00: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 c5fd6a3677 random seed should contain some entropy
setting all elements to the same value does not make sense. Moreover,
negative values are allowed
2022-01-18 10:47:26 +01:00
Philip Eisenlohr 8b5122f52a Merge branch 'physics-based-hex-interactions' into 'development'
Physics based hex interactions

See merge request damask/DAMASK!495
2022-01-17 15:24:05 +00:00
Sharan Roongta 40ee4d3dd1 Merge branch 'petsc-64bit-integer' into 'development'
support for PETSc with 64bit integers

See merge request damask/DAMASK!496
2022-01-17 09:16:39 +00:00
Franz Roters 1d2bbc8cd9 Merge branch 'dislotwin-fix-tangent' into 'development'
corrected tangent calculation for twinning and transformation

See merge request damask/DAMASK!492
2022-01-17 07:57:51 +00:00
Martin Diehl a37178ddee handle case of -0.0
-0.0 < 0.0 ! false
so need sign to change direction for also for the corner case of -0.0
2022-01-15 12:28:39 +01:00
Martin Diehl d1cd125a5b direct array reversal, don't duplicate FFTW manual 2022-01-15 12:27:07 +01:00
Philip Eisenlohr 2c054f2b38 use same hex-hex interaction documentation as webpage 2022-01-13 11:23:09 -05:00
Philip Eisenlohr 45e33782e4 documentating more hex interactions 2022-01-13 10:42:05 -05:00
Martin Diehl 82dabe29c1 mesh: separate kind for DAMASK and PETSc integers 2022-01-13 16:30:42 +01:00
Philip Eisenlohr 4562f4262c add documentation to source code 2022-01-13 10:14:36 -05: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 d7dbb6ffc2 needs to be public for Marc 2022-01-13 12:03:22 +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 1c46e7ea1a not needed 2022-01-13 08:30:46 +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
Martin Diehl 4727652856 default integer is set via a compiler flag 2022-01-13 07:37:38 +01:00
Sharan Roongta 236f0297ac test added 2022-01-12 20:42:37 +01:00
Martin Diehl fd3c18ea4d calculate global entry in 64 bit 2022-01-12 17:58:44 +01:00
Martin Diehl ae0eead748 write out mapping as 64 bit integer 2022-01-12 17:44:07 +01:00
Martin Diehl 18913bb94e autodetect datatype 2022-01-12 17:33:14 +01:00
Martin Diehl a87db2ba0b test for long long integer 2022-01-12 16:56:24 +01:00
Martin Diehl 4bfc814a53 Merge remote-tracking branch 'origin/development' into petsc-64bit-integer 2022-01-12 16:37:22 +01:00
Franz Roters 76fe2d2b36 Merge branch 'misc-improvements' into 'development'
polishing

See merge request damask/DAMASK!497
2022-01-11 15:45:09 +00:00
Sharan Roongta e80d91e30a thermal restart (WIP) 2022-01-11 16:11:18 +01:00
Martin Diehl 16fbd1757c integer exponents are potentially faster 2022-01-10 20:50:46 +01:00
Martin Diehl eea8aa94af not used 2022-01-10 18:50:28 +01:00
Martin Diehl 1026d56842 credit where credit is due
referencing DOI gives faster access to actual data
2022-01-09 08:05:42 +01:00
Martin Diehl a884b99aa9 Merge remote-tracking branch 'origin/development' into physics-based-hex-interactions 2022-01-08 20:45:46 +01:00
Martin Diehl dd6e9a016e just off by 46 orders of magnitude ;) 2022-01-08 12:07:29 +00:00
Philip Eisenlohr b12a180974 added literature reference for constitutive law 2022-01-06 09:54:33 -05:00
Martin Diehl 1140625b12 copy and paste error 2022-01-04 17:29:45 +01:00
Martin Diehl 03e3fbd98f compute only when needed 2022-01-04 07:44:14 +01:00
Martin Diehl 4a7f23069c avoid misleading variable name 2022-01-04 07:32:56 +01:00
Martin Diehl 79fa888c99 Merge remote-tracking branch 'origin/development' into dislotwin-fix-tangent 2022-01-04 07:05:40 +01:00
Sharan Roongta b8203e94d8 Merge branch 'pure-LAPACK' into 'development'
improved function attributes

See merge request damask/DAMASK!491
2022-01-03 14:07:54 +00:00
Martin Diehl 510a26ded9 is used in dislotwin according to original paper 2022-01-03 10:36:23 +01:00
Martin Diehl 03c6708629 polishing 2022-01-01 19:52:32 +01:00
Martin Diehl d181b988c1 using vector access 2022-01-01 19:52:20 +01:00
Martin Diehl 770cf33667 correct calculation of tangent.
thanks to Seyedamirhossein Motaman (RWTH Aachen) for reporting
2022-01-01 19:51:31 +01:00
Martin Diehl b34655b7fc functions without side-effects are 'pure'
basically all 'getter' functions should be pure
2022-01-01 11:39:14 +01:00
Martin Diehl 2f74e0d070 avoid failing self test
increase number of samples to have less corner cases.
Needs to be allocatable to avoid stack/heap issue on ifort
2022-01-01 11:39:02 +01:00
Martin Diehl e678b231d9 following naming convention 2021-12-31 13:32:18 +01:00
Martin Diehl 017c182640 branch only once 2021-12-31 13:30:53 +01:00
Martin Diehl 0116e2dae6 bugfix: write only to active twin/trans system 2021-12-31 10:44:12 +01:00
Martin Diehl f2b6ddece1 reduce memory footprint 2021-12-31 08:12:30 +01:00
Martin Diehl d130225c9f polishing 2021-12-31 08:12:17 +01:00
Martin Diehl da00f33487 transformation is only for fcc 2021-12-31 08:11:12 +01:00
Martin Diehl 1661b815b2 correct calculation of temperature dependent stacking fault energy 2021-12-31 08:11:01 +01:00
Martin Diehl de9183af4e functions without side-effects are 'pure'
basically all 'getter' functions should be pure
2021-12-31 08:10:49 +01:00
Martin Diehl 95c64f7a0a avoid failing self test
increase number of samples to have less corner cases.
Needs to be allocatable to avoid stack/heap issue on ifort
2021-12-31 08:10:09 +01:00
Martin Diehl fb51e3c4cd functions have no side-effects, hence 'pure' 2021-12-29 07:19:26 +01:00
Martin Diehl 59bb264b5f LAPACK routines can be considered pure
all arguments have 'intent' specification and don't access any global
variables.
output to screen only occurs in the case that someting goes wrong
2021-12-29 07:09:52 +01:00
Martin Diehl 4583c17080 corrent 'intent' specification
- http://www.netlib.org/lapack/explore-html/d7/d3b/group__double_g_esolve_ga5ee879032a8365897c3ba91e3dc8d512.html
- http://www.netlib.org/lapack/explore-html/dd/d9a/group__double_g_ecomputational_ga56d9c860ce4ce42ded7f914fdb0683ff.html
2021-12-29 07:00:28 +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 e10dea5b6c easier to understand 2021-12-19 22:53:48 +01:00
Martin Diehl 00230d482f use data from other physics directly
more clear code, simplified interfaces
2021-12-19 22:07:23 +01:00
Martin Diehl 5af6cc288b whitespace adjustments 2021-12-19 21:46:10 +01:00
Martin Diehl f833d348e0 testing random sampling 2021-12-17 08:01:15 +01:00
Martin Diehl f40d731fe1 use the Box-Muller transform instead of random sampling
still needs testing.
2021-12-16 21:22:44 +01:00
Martin Diehl 6ba2a08e5a easier to read 2021-12-11 11:50:40 +01:00
Martin Diehl d6ba73d9e2 consistent names 2021-12-11 09:54:46 +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 a23a714bd0 polishing 2021-12-07 19:10:24 +01:00