Commit Graph

3335 Commits

Author SHA1 Message Date
Martin Diehl 133aa9111c small polishing 2020-07-14 07:18:32 +02:00
Martin Diehl 2b58b3df97 closer to thoroughly tested python code
but with extra safety measures to prevent invalid operations
2020-07-14 06:55:40 +02:00
Martin Diehl 9f79faf819 using tolerances as in python results in invalid operations 2020-07-13 22:48:08 +02:00
Martin Diehl 8de3b67c26 no silent crash 2020-07-13 21:13:53 +02:00
Martin Diehl fcaa319f56 polishing 2020-07-13 14:48:23 +02:00
Martin Diehl 696da9865b Merge branch 'development' into misc-improvements 2020-07-13 13:56:04 +02:00
Martin Diehl dbca47f113 better handling of corner cases
copy and paste from python code
2020-07-13 12:38:21 +02:00
Sharan Roongta 0067b44a0d wrong logic 2020-07-12 18:38:52 +02:00
Sharan Roongta 70fb68d224 cleaning 2020-07-12 16:44:26 +02:00
Sharan Roongta debe096a53 results placed where it belongs; cleaning 2020-07-12 15:22:40 +02:00
Sharan Roongta 5602abe690 generic interfaces makes sense 2020-07-12 13:27:28 +02:00
Sharan Roongta 3a5e3b36c1 better function name, crystallite should not know which physics is involved 2020-07-12 13:04:26 +02:00
Sharan Roongta 77567bd398 To circumvent Marc internal compiler error 2020-07-10 23:41:56 +02:00
Sharan Roongta 3563bce6cb better 2020-07-10 19:17:54 +02:00
Sharan Roongta 4145ac90d7 more cleaning 2020-07-10 18:19:07 +02:00
Sharan Roongta 80fb571fb4 common functions to be clubbed together 2020-07-10 17:10:23 +02:00
Sharan Roongta 957c51fb07 cleaner 2020-07-10 15:13:56 +02:00
Sharan Roongta fd7110ce45 probably a more readable structure 2020-07-10 14:59:07 +02:00
Sharan Roongta bc1d73c03b trying new structure for all constitutive modules 2020-07-09 01:49:48 +02:00
Sharan Roongta b5a10f2386 sources and kinematics modules under submodules 2020-07-09 01:01:08 +02:00
Martin Diehl defe0a8dd8 coordinates are stored in fixed format
width of numers is fixed, if negative numbers are given there is no
space
2020-07-08 10:21:13 +02:00
Sharan Roongta 48b42debe0 redundant 2020-07-03 20:55:05 +02:00
Martin Diehl 5688fc5698 need to do initialization first 2020-07-03 18:12:40 +02:00
Martin Diehl 432609ec14 cleaning 2020-07-03 16:45:11 +02:00
Martin Diehl 76f0c5fc5e Merge branch 'development' into YAML-compatible-debug 2020-07-03 16:19:38 +02:00
Philip Eisenlohr d4f97f8346 Merge branch 'misc-improvements' into 'development'
Misc improvements

See merge request damask/DAMASK!184
2020-07-02 21:52:47 +02:00
Sharan Roongta 5a423103a0 typo 2020-07-02 01:28:53 +02:00
Sharan Roongta 699af6a3f1 avoid variable name conflict with a module name 2020-07-02 01:25:24 +02:00
Sharan Roongta 2056b4223a better name 2020-07-01 23:01:37 +02:00
Sharan Roongta 02ee64bce4 make use of submodule property 2020-07-01 22:51:21 +02:00
Sharan Roongta dda2f2cf22 defined locally 2020-07-01 22:39:44 +02:00
Sharan Roongta c5bd45bf57 use submodule property; simplifying 2020-07-01 22:20:22 +02:00
Sharan Roongta 73f0fa3aba further simplification 2020-07-01 21:22:05 +02:00
Sharan Roongta 8627739963 simplifying 2020-07-01 20:46:26 +02:00
Sharan Roongta a7d26cd1c3 Merge branch 'YAML-compatible-debug' of magit1.mpie.de:damask/DAMASK into YAML-compatible-debug 2020-07-01 19:54:44 +02:00
Sharan Roongta b0ce55de7a store debug options once 2020-07-01 19:54:14 +02:00
Martin Diehl 08fa40a7ae simplified 2020-07-01 19:41:46 +02:00
Sharan Roongta 57e4d01a6b Merge branch 'development' into YAML-compatible-debug 2020-07-01 13:40:56 +02:00
Sharan Roongta 0b2d62e98d polishing 2020-06-29 17:05:11 +02:00
Martin Diehl 640bc7b190 [skip ci] polishing 2020-06-29 15:09:13 +02:00
Sharan Roongta 14a4dc5184 Merge branch 'YAML-compatible-numerics' into YAML-compatible-debug 2020-06-27 21:48:59 +02:00
Sharan Roongta 77e7e3d3c4 polishing 2020-06-26 20:12:05 +02:00
Sharan Roongta 6f9f494654 minor polishing 2020-06-26 12:22:33 +02:00
Martin Diehl 130cf7fe2e spelling mistakes in documentation 2020-06-26 11:44:17 +02:00
Sharan Roongta 6e6e4dcdfd typo during resolve merge conflict 2020-06-25 15:15:48 +02:00
Sharan Roongta 78bf8b0ab7 bugfix: close file before returning 2020-06-25 11:25:39 +02:00
Sharan Roongta 78b6b3ecdb Merge branch 'development' into YAML-compatible-numerics 2020-06-25 11:02:54 +02:00
Sharan Roongta e155bef9a5 better names; polishing 2020-06-24 17:38:39 +02:00
Sharan Roongta 445d8b4f74 sanity checks 2020-06-24 17:09:15 +02:00
Sharan Roongta be84561e2e num structure replicated; polishing 2020-06-24 16:48:51 +02:00
Sharan Roongta 434bfffc46 hard coding of tolerance variables in solvers not correct 2020-06-24 16:39:09 +02:00
Sharan Roongta 6062cc43c4 extending num structure to other modules; hard coding of tol variables was incorrect 2020-06-24 16:37:30 +02:00
Sharan Roongta 692fc98fd5 'num' structure for data to avoid multiple reading of parameters 2020-06-24 16:35:47 +02:00
Sharan Roongta fdf7887b47 handle default internally 2020-06-24 11:56:21 +02:00
Martin Diehl e2a0e98267 small polishing 2020-06-23 11:06:41 +02:00
Martin Diehl d4efadb333 should be availabe outside of this module 2020-06-21 10:03:52 +02:00
Martin Diehl 4c5939ef23 small polishing 2020-06-20 22:51:00 +02:00
Martin Diehl cf1cfb0cd9 Merge branch 'development' into misc-improvements 2020-06-20 21:43:28 +02:00
Sharan Roongta 7c4afe06c9 less generic variables 2020-06-19 03:56:16 +02:00
Sharan Roongta 853f73400e tried to access root pointer before initialization 2020-06-19 01:05:44 +02:00
Sharan Roongta 9a03a6d13a exception for marc 2020-06-18 19:31:08 +02:00
Sharan Roongta 0cf06a77d4 bugfix 2020-06-18 18:14:53 +02:00
Sharan Roongta eb71c1033d extended for FEM 2020-06-18 17:52:25 +02:00
Sharan Roongta 4942304ee8 extended for grid 2020-06-18 17:43:25 +02:00
Sharan Roongta 76614ef278 structure update for constitutive laws 2020-06-18 17:23:05 +02:00
Sharan Roongta c987f55f69 DAMASK structure updated; define debug parameters when used by a module 2020-06-18 16:40:39 +02:00
Sharan Roongta 4e60d8e133 begin cleaning of debug 2020-06-18 16:05:54 +02:00
Franz Roters e959aaab5d Merge branch 'Marc-no-pingpong' into 'development'
Marc no pingpong

See merge request damask/DAMASK!180
2020-06-18 15:29:21 +02:00
Sharan Roongta cdb4a11a2e proper error message; Comments starting point is standardized 2020-06-18 00:17:43 +02:00
Sharan Roongta 0fc482585b used for both grid & mesh; polishing 2020-06-17 23:00:03 +02:00
Sharan Roongta ac2539b305 further cleaning of numerics.f90 2020-06-17 20:46:03 +02:00
Sharan Roongta d3f9e9f115 polishing 2020-06-17 18:02:22 +02:00
Sharan Roongta d4d29ff376 cleaning: comments added 2020-06-17 17:19:21 +02:00
Sharan Roongta f6355d199a better as local variables 2020-06-17 16:47:13 +02:00
Sharan Roongta e455dd4b9a sanity checks 2020-06-17 15:21:51 +02:00
Sharan Roongta 1e2df54bb0 Not used anywhere 2020-06-17 13:38:14 +02:00
Sharan Roongta 45f1e3a986 further removal of public variables 2020-06-17 13:31:21 +02:00
Martin Diehl 62384b5836 bugfix: invalid description/unit 2020-06-16 23:43:15 +02:00
Martin Diehl 829896390c hopefully not needed any more 2020-06-16 23:37:24 +02:00
Sharan Roongta 7f0c2d3825 further removal of public variables 2020-06-16 20:49:58 +02:00
Sharan Roongta 5cd2be0569 less global variables 2020-06-16 19:15:01 +02:00
Sharan Roongta 19c44d5e97 Read numerics.yaml once 2020-06-16 18:47:19 +02:00
Sharan Roongta c19ed21468 Begin to update DAMASK structure 2020-06-16 17:53:14 +02:00
Sharan Roongta eb98649793 compilation order matters 2020-06-16 17:50:35 +02:00
Sharan Roongta 846a50c871 Simplified logic; treating defaults correctly 2020-06-16 15:57:16 +02:00
Martin Diehl e0d4ee44a3 better name 2020-06-16 13:59:59 +02:00
Martin Diehl 753fbb70fd cleaning 2020-06-16 13:55:32 +02:00
Martin Diehl 06f6e15123 avoid public variables 2020-06-16 07:05:31 +02:00
Martin Diehl 54aa5a67ff polishing 2020-06-16 06:41:53 +02:00
Martin Diehl 0a9902818c polishing 2020-06-16 06:34:12 +02:00
Martin Diehl e952ab7127 bugfix
do not access unitinialized memory
2020-06-15 23:12:49 +02:00
Martin Diehl e5c9380bac cleaning 2020-06-11 08:52:22 +02:00
Martin Diehl 579ced6a52 removed global public variables 2020-06-11 08:44:24 +02:00
Martin Diehl b353129ba8 cleaning 2020-06-11 08:36:21 +02:00
Martin Diehl 82326ed812 drop support for ping-pong scheme 2020-06-11 08:22:25 +02:00
Martin Diehl 5c544a6e4e bugfix
- IO_read sanities files such that they end with EOL (unless 0 byte)
- IO_readline simply counts EOL to determine number of lines
2020-06-05 20:58:36 +02:00
Martin Diehl 9cd9ee71c5 off-by-one issue fixed 2020-06-05 14:44:31 +02:00
Martin Diehl a9e0e93213 need to handle case of zero length file when splitting 2020-06-05 13:38:40 +02:00
Martin Diehl 512e54a7ee before we forget ... 2020-06-02 17:34:58 +02:00
Martin Diehl 742b3718ec using iostat solved the issue for ifort
but for a zero length file, ifort returns -1
2020-06-02 10:09:19 +02:00
Martin Diehl d31417b050 Ifort can not handle 0-length files
Not sure whether this is a bug or not:
https://software.intel.com/en-us/forums/intel-fortran-compiler/topic/856789
2020-06-02 09:31:26 +02:00
Martin Diehl 79c17ec407 use names known from python 2020-06-02 07:57:19 +02:00
Martin Diehl f84e5aaaf9 bugfix (do not keep EOL in last string)
simplified further
2020-06-02 07:39:27 +02:00
Martin Diehl ac9fddd9e9 Merge remote-tracking branch 'origin/development' into misc-improvements 2020-06-02 00:12:50 +02:00
Martin Diehl 37d7e593e8 correct counting of lines
counts like "wc -l" either with or without EOL in last line
2020-06-01 22:09:28 +02:00
Martin Diehl 2badf257fc same information but shorter 2020-06-01 21:36:36 +02:00
Martin Diehl 431284aa95 not needed 2020-06-01 18:23:01 +02:00
Martin Diehl 44fc65b812 Merge branch 'development' into FEM-PETSC_3.11+ 2020-06-01 15:19:37 +02:00
Martin Diehl 1885a701fa nothing to debug here 2020-06-01 15:19:30 +02:00
Martin Diehl a5bd0958a1 polishing 2020-05-31 23:50:06 +02:00
Martin Diehl 733208a83c Merge branch 'development' into misc-improvements 2020-05-28 19:38:18 +02:00
Sharan Roongta 8ae7f8f991 polishing 2020-05-26 20:56:53 +02:00
Sharan Roongta 9732726cfa editorial changes 2020-05-26 11:46:28 +02:00
Martin Diehl e8992e7b72 documentation 2020-05-25 22:09:46 +02:00
Martin Diehl eced5d0a3c bugfixes for date reporting 2020-05-25 20:13:57 +02:00
Martin Diehl 248f199a7b track creation time 2020-05-25 18:51:10 +02:00
Sharan Roongta 3f221ab5ed polishing 2020-05-25 12:54:43 +02:00
Martin Diehl 376e45d7bf don't even start to compile 2020-05-23 13:55:00 +02:00
Sharan Roongta 677e081937 YAML related errors 2020-05-21 21:03:39 +02:00
Sharan Roongta 873cb80edd access issue resolved 2020-05-21 20:52:15 +02:00
Sharan Roongta 72fdb639f0 YAML parser 2020-05-21 20:41:40 +02:00
Martin Diehl 23b1381eaf give credit 2020-05-21 11:30:25 +02:00
Martin Diehl d8764f2b8f status is not the first argument 2020-05-16 18:32:30 +02:00
Martin Diehl ae20ab8d42 more reasonable name 2020-05-16 17:05:03 +02:00
Martin Diehl a279785149 Merge branch 'development' into misc-improvements 2020-05-16 17:01:48 +02:00
Martin Diehl 1ccd3aab89 suppress warnings
the compiler does not know that IO_error terminates the program
2020-05-15 22:33:38 +02:00
Martin Diehl 661604ff94 more error checking 2020-05-14 06:59:30 +02:00
Martin Diehl 530623a2b3 function was only renamed in PETSc 3.12 2020-05-13 13:15:37 +02:00
Martin Diehl f2d1343cdf need to select the whole mesh 2020-05-13 12:58:39 +02:00
Karo 90f93d2399 Merge branch 'integrate-lambert' into 'development'
Integrate lambert

See merge request damask/DAMASK!166
2020-05-12 23:36:08 +02:00
Franz Roters 24c2e5ba61 Merge branch 'YAML-Prerequisites' into 'development'
Yaml prerequisites

See merge request damask/DAMASK!167
2020-05-12 08:59:46 +02:00
Martin Diehl 72c835a554 not used 2020-05-11 16:00:53 +02:00
Sharan Roongta 620154a1a8 not needed 2020-05-11 14:00:19 +02:00
Martin Diehl 5a94218d23 fixes error:
[0]PETSC ERROR: Object is in wrong state
[0]PETSC ERROR: Cannot set coordinates until after DMDA has been setup
2020-05-11 08:02:34 +02:00
Martin Diehl 4340d30f05 Merge branch 'development' into misc-improvements 2020-05-08 12:26:35 +02:00
Martin Diehl 4f8c7ea2d5 Merge branch 'development' into YAML-Prerequisites 2020-05-07 23:11:38 +02:00
Martin Diehl 1610a6e12a editorial changes 2020-05-07 23:10:27 +02:00
Sharan Roongta 0c70f1a54f polishing 2020-05-07 21:13:25 +02:00
Martin Diehl 9553a7838b needs to be logical 2020-05-06 22:15:09 +02:00
Martin Diehl 0f2447d413 restart does not overwrite existing results 2020-05-06 21:48:55 +02:00
Martin Diehl a5b78dc30a potential glitch 2020-05-05 11:20:16 +02:00
Martin Diehl 4dcec8b309 not needed 2020-05-05 11:18:58 +02:00
Martin Diehl 6e99956b58 Merge branch 'development' into misc-improvements 2020-05-05 09:22:53 +02:00
Martin Diehl 76d37b5bcd flux debug would need temporary variable 2020-05-03 20:38:25 +02:00
Martin Diehl 520a484df2 reasonable name 2020-05-03 13:09:49 +02:00
Martin Diehl 2a1badb548 not needed 2020-05-03 12:04:57 +02:00
Martin Diehl 53de95798a separated local and nonlocal part of dotState 2020-05-03 11:49:16 +02:00
Martin Diehl 6f627892bc not needed 2020-05-03 11:47:23 +02:00
Martin Diehl 8995faae8b WIP: part of dotState should be in deltaState 2020-05-03 10:49:36 +02:00
Sharan Roongta 00deddac44 initialization needed 2020-05-02 23:17:53 +02:00
Sharan Roongta 47f85402c4 using function makes it more readable 2020-05-02 23:03:11 +02:00
Martin Diehl c7a77ebc26 Merge branch 'development' into integrate-lambert 2020-05-02 09:21:42 +02:00
Sharan Roongta 815608ac42 polishing 2020-04-30 21:34:11 +02:00
Sharan Roongta 10710bc446 using pointers makes finalize general for GNU and Intel 2020-04-30 21:29:59 +02:00
Martin Diehl ad312201dd keep order 2020-04-29 14:53:27 +02:00
Martin Diehl d0dcfedb47 no extra function needed 2020-04-29 14:52:18 +02:00
Martin Diehl ce9bdc50a4 common variable names 2020-04-29 14:46:58 +02:00
Martin Diehl 5a4a7393b9 statements belong together 2020-04-28 19:17:34 +02:00
Martin Diehl 81b3dc74d5 default value needed (fcc/bcc)
thanks to Richard (TU Delft) and Vitesh for reporting
2020-04-28 19:07:17 +02:00
Martin Diehl 20b604a334 finalize does not work for gfortran 2020-04-28 11:22:09 +02:00
Martin Diehl d99c05860e FEM is now Mesh 2020-04-28 10:35:43 +02:00
Martin Diehl 9565f15415 clearer description 2020-04-28 10:30:03 +02:00
Martin Diehl f3be26ffa2 long error and warning functions at the end of public methods 2020-04-28 10:05:36 +02:00
Martin Diehl f2164a5bd3 simplified
openMP is not used here ...
2020-04-27 13:40:22 +02:00
Martin Diehl 9750f267c8 missing initialization
can lead to infinite loops for no 'ping pong' (MSC.Marc)
2020-04-27 13:39:32 +02:00
Martin Diehl 9671a632b5 compare floats with tolerances 2020-04-26 14:58:07 +02:00
Martin Diehl 0effa71276 cleaning
large alias lists complicate things
2020-04-26 08:36:16 +02:00
Martin Diehl 7ec1ae977e new names
spectral => grid
FEM      => mesh

because there are FEM solvers for both discretizations. old names will
be available for a certain time
2020-04-25 09:56:51 +02:00
Sharan Roongta ca6aa4bcd1 child type would inherit procedures from parent type 2020-04-24 16:50:42 +02:00
Martin Diehl 49963b9f04 Merge branch 'development' into unified-RK4-RKCK45 2020-04-24 06:29:51 +02:00
Sharan Roongta 7fe2a52b65 better logic for finalization 2020-04-23 17:10:33 +02:00
Franz Roters 289808875c Merge branch 'state-integration-cleaning' into 'development'
State integration cleaning

See merge request damask/DAMASK!155
2020-04-23 13:38:37 +02:00
Sharan Roongta 11c4ff7787 finalization error 2020-04-22 16:49:31 +02:00
Sharan Roongta 6a0a8f1d27 Fortran syntax check showed an error 2020-04-22 15:51:05 +02:00
Martin Diehl d61f302305 no need for separate file 2020-04-22 15:34:47 +02:00
Sharan Roongta c4bcd3b430 Functions needed to store and read yaml data 2020-04-22 14:59:23 +02:00
Sharan Roongta b9fec2a4cf Public functions required 2020-04-22 12:23:09 +02:00
Martin Diehl e06251e53e proper doxygen style 2020-04-19 14:20:34 +02:00
Martin Diehl 064f4d9d9d polishing 2020-04-17 13:18:20 +02:00
Martin Diehl 328dcf0101 polishing 2020-04-17 11:58:03 +02:00
Martin Diehl cf53e1e8e6 bugfix: wrong logic for RK and source state 2020-04-17 11:55:43 +02:00
Martin Diehl a51d27858e polishing 2020-04-17 11:53:55 +02:00
Martin Diehl 65c3831add polishing 2020-04-17 10:17:00 +02:00
Martin Diehl 7fffa26d7f bugfix: size depends on shape 2020-04-17 10:04:10 +02:00
Martin Diehl 667d371f2e avoid code duplication 2020-04-17 08:24:35 +02:00
Martin Diehl 2ad5bfbc3b preparing modularization 2020-04-17 08:17:32 +02:00
Martin Diehl 84d6521183 Merge branch 'development' into state-integration-cleaning 2020-04-17 07:46:40 +02:00
Martin Diehl a4c52ec1fa extra variable not needed 2020-04-15 21:56:20 +02:00
Philip Eisenlohr 2a6132b793 Merge branch 'polish-homogenization' into 'development'
Polish homogenization

See merge request damask/DAMASK!158
2020-04-15 16:27:15 +02:00
Martin Diehl 6e48585de1 prefix for local variables not needed 2020-04-15 13:09:05 +02:00
Martin Diehl ae95a96c88 better readable 2020-04-15 08:53:25 +02:00
Karo Sedighiani 03aa6f9c80 Merge branch 'vectorize_rotation' into development 2020-04-14 19:34:11 +02:00
Martin Diehl c7e6277758 not needed
https://stackoverflow.com/questions/19687233
2020-04-14 15:34:38 +02:00
Martin Diehl bf970bb146 2 space indentation 2020-04-14 09:49:03 +02:00
Martin Diehl 9d831cf268 not needed as module variable 2020-04-14 09:43:43 +02:00
Martin Diehl 912c064b57 indicate read-only public variables 2020-04-14 09:38:48 +02:00
Martin Diehl 0de4520580 directly calculate subF 2020-04-14 08:24:28 +02:00
Martin Diehl 0894886744 can be calculated when needed 2020-04-14 07:57:25 +02:00
Martin Diehl d616c1dda8 better use explicit arguments 2020-04-14 07:45:39 +02:00
Martin Diehl 95e41e0b3f not needed (just linear interpolation) 2020-04-14 07:22:30 +02:00
Martin Diehl 3bfa2d679c simpler/correct logic for eu2om 2020-04-11 11:36:37 +02:00
Martin Diehl a6d1e02b32 LAPACK calls the unblocked versions for our small matrices
so a work that holds exactly the data seems to be the best choice
2020-04-10 23:54:38 +02:00
Martin Diehl 1d5b1a17cd same style for plastic and source 2020-04-10 19:36:29 +02:00
Martin Diehl 399a0f1b66 store information about state size only once 2020-04-10 18:53:59 +02:00
Martin Diehl b375af83a3 bugfix for issue introduced in last merge 2020-04-10 15:52:54 +02:00
Martin Diehl 6082f3c1aa Merge branch 'development' into state-integration-cleaning 2020-04-10 13:20:38 +02:00
Martin Diehl a2e70612ff interface checking for LAPACK 2020-04-10 12:52:27 +02:00
Martin Diehl ccf62ede52 bugfix for Cubochoric
forward and backward mappings are different
2020-04-08 11:41:42 +02:00
Sharan Roongta bb03483bb7 Merge branch 'MiscImprovements2' into development 2020-04-04 23:50:15 +02:00
Franz Roters 8631653fde Merge remote-tracking branch 'remotes/origin/memory-efficient-state-storage' into development 2020-04-03 15:57:05 +02:00
Franz Roters 5e9ff7947b [skip ci] plastic_dotstate always before source_dotstate 2020-04-03 14:01:35 +02:00
Martin Diehl f174dd6aa7 PETSc 3.13 is out
grid solver still works, mesh solver is still broken
2020-04-02 09:50:02 +02:00
Martin Diehl 565cf8239f can be done in parallel 2020-04-02 09:29:58 +02:00
Martin Diehl d9806cb7f3 do not clutter with nonlocal checks 2020-04-02 00:23:59 +02:00
Martin Diehl 3a4bb59057 no need to store the same information multiple times 2020-04-01 18:58:48 +02:00
Martin Diehl d0d963a2cc set independent of number of slip systems 2020-04-01 17:58:50 +02:00
Martin Diehl cf5fcf389b phase is a property of the element
and we have no homogenization for nonlocal
2020-04-01 17:57:26 +02:00
Martin Diehl 70dd06c4ec constitutive should handle state jump alone 2020-04-01 14:42:38 +02:00
Martin Diehl b5efaa08a4 use already known mappings 2020-04-01 13:10:16 +02:00
Martin Diehl 5af53f0be7 nonlocal is a property of the phase 2020-04-01 11:30:01 +02:00
Martin Diehl 97e89f3f88 nonlocal can run in local mode 2020-04-01 11:09:30 +02:00
Martin Diehl cde8c65bd1 better store data locally 2020-04-01 11:00:55 +02:00
Martin Diehl 79012c9ffb not needed 2020-04-01 10:00:12 +02:00
Martin Diehl b996b6c42e merge functionality 2020-04-01 09:56:59 +02:00
Martin Diehl ce61606c0b not needed 2020-04-01 09:34:49 +02:00
Martin Diehl 079596f7cd unix standard 0/.false. = OK, 1/.true. = not OK 2020-04-01 09:27:09 +02:00
Martin Diehl 6eee8f34ac homogeneous mesh 2020-04-01 09:01:03 +02:00
Martin Diehl d50d55cef3 avoid public variables 2020-04-01 08:54:20 +02:00
Martin Diehl ec53e4c318 avoid writing to public variable crystallite_todo 2020-04-01 08:39:49 +02:00
Martin Diehl 6b11d43842 handle error checking centrally 2020-04-01 08:02:08 +02:00
Martin Diehl 9e926f1545 centralize test for error 2020-04-01 07:41:55 +02:00
Martin Diehl 570c042100 update of dependent state always in conjunction with state integration 2020-04-01 07:18:37 +02:00
Martin Diehl 54e3455bd4 RKCK45 store intermediate state only per point 2020-04-01 07:10:02 +02:00
Martin Diehl 6bfa51c307 LHS allocation does not work for pointers 2020-04-01 07:02:23 +02:00
Martin Diehl e46220cd8a OMP bugfix for FPI integrator, memory-efficient RK4 2020-03-31 22:02:53 +02:00
Martin Diehl 9c95ce36f4 automatic LHS (re)-allocation does not work for pointers
group_float has pointers, not allocatables
2020-03-31 20:57:09 +02:00
Martin Diehl e818dfdb3e not used anymore 2020-03-31 20:42:51 +02:00
Martin Diehl 20a3ebecea Merge branch 'state-integration-one-loop' into memory-efficient-state-storage 2020-03-31 20:29:01 +02:00
Martin Diehl e810b6b23b not needed here 2020-03-31 12:39:23 +02:00
Martin Diehl 00be291fa0 todo will be reset after state integration 2020-03-31 12:14:54 +02:00
Martin Diehl 2de4b87c61 bugfix for FPI: loop over sources!
no memory waste for adaptive Euler
2020-03-31 11:24:13 +02:00
Martin Diehl 5b29af8473 clearer 2020-03-31 10:16:14 +02:00
Martin Diehl 505c1432b1 no need for temp storage 2020-03-31 10:12:25 +02:00
Martin Diehl 2cc0c746d3 no variable needed 2020-03-31 10:07:01 +02:00
Martin Diehl 28dadb4422 no need to check multiple times 2020-03-31 09:49:41 +02:00
Martin Diehl 604bcd1229 memory efficient FPI state integrator 2020-03-31 09:38:08 +02:00
Martin Diehl 18f60a94a9 one variable suffices 2020-03-31 09:04:08 +02:00
Martin Diehl c0d03a8c26 not needed 2020-03-31 08:37:34 +02:00
Martin Diehl a7b602f4ca Merge branch 'development' into state-integration-one-loop 2020-03-31 08:35:07 +02:00
Martin Diehl 9507101969 can be done in one loop 2020-03-31 08:33:35 +02:00
Martin Diehl 5f2759c03c no need to check for converged 2020-03-31 08:23:38 +02:00
Martin Diehl 2080749189 does not change during the iteration 2020-03-31 08:09:41 +02:00
Franz Roters 369682aa03 Merge branch 'fix-RK4' into 'development'
Fix rk4

See merge request damask/DAMASK!150
2020-03-30 20:05:09 +02:00
Martin Diehl 81c8ffe5c1 integrate into the same loop 2020-03-30 14:16:23 +02:00
Martin Diehl 28cf06ca98 extra loop not needed 2020-03-30 14:13:04 +02:00
Martin Diehl 7eeb5db15f intention clearer
slip/twin/trans happens in untwinned/untransformed volume, shear banding
is independent of that
2020-03-29 22:41:47 +02:00
Martin Diehl 11e58bcc2f not needed
why debugging allocate?
2020-03-29 22:37:48 +02:00
Martin Diehl 9c90aa5acb polishing 2020-03-29 20:07:09 +02:00
Martin Diehl 2a37acfe5e store data where it is needed 2020-03-29 20:04:51 +02:00
Martin Diehl ba5538516c simplified 2020-03-29 20:04:24 +02:00
Martin Diehl 08ad9d1d57 was mixed up 2020-03-29 19:18:06 +02:00
Martin Diehl b6596a0310 compiler can do the counting 2020-03-29 19:17:24 +02:00
Martin Diehl 7b7ac294ca volatile seems to make sense here
the value can be changed surprisingly
2020-03-29 19:13:29 +02:00
Martin Diehl cff62219b6 Merge branch 'development' into adaptive-euler-substate0 2020-03-27 14:43:55 +01:00
Martin Diehl 75fff766e1 not needed anymore 2020-03-26 22:02:28 +01:00
Martin Diehl fdbbb94aac takeover from RKCK45 2020-03-26 21:46:28 +01:00
Martin Diehl c490b4bea4 standard names 2020-03-26 20:19:05 +01:00
Martin Diehl adbf6739a9 Merge branch 'Adaptive-Euler-one-loop' into RKCK45-one-loop 2020-03-26 10:56:51 +01:00
Martin Diehl fe8ee825d6 bugfix: F, not Fp for explicit nonlocal 2020-03-26 10:52:10 +01:00
Martin Diehl 8725c2ceba Merge remote-tracking branch 'origin/development' into Adaptive-Euler-one-loop 2020-03-26 10:49:34 +01:00
Martin Diehl a4674a6461 whitespace adjustments 2020-03-25 20:55:37 +01:00
Martin Diehl 3ce8902245 no need to split up 2020-03-25 20:47:10 +01:00
Martin Diehl aa2d440107 finally one loop left 2020-03-25 20:37:37 +01:00
Martin Diehl 599de26dad further integration 2020-03-25 19:44:51 +01:00
Martin Diehl 939d2af1d9 bugfix: explicit nonlocal requires F, not Fe 2020-03-25 18:58:58 +01:00
Martin Diehl 9900bf0be7 Merge branch 'FPI-one-loop' into RKCK45-one-loop 2020-03-25 18:56:51 +01:00
Martin Diehl 2d5d48288c bugfix, related making nonlocal state update explicit 2020-03-25 13:20:14 +01:00
Martin Diehl ddef241dcc Merge branch 'FPI-one-loop' into Euler-one-loop 2020-03-25 13:19:42 +01:00
Martin Diehl a6f94efa51 bugfix, introduced when making nonlocal explicit 2020-03-25 13:17:48 +01:00
Martin Diehl 86abba477a use same loop 2020-03-25 11:27:03 +01:00
Martin Diehl b54a109d99 do plasticState and sourceState at once 2020-03-25 11:20:39 +01:00
Martin Diehl 652846cdc9 no need for extra loop 2020-03-25 11:16:26 +01:00
Martin Diehl 67f64cf7e1 correct iteration skipping 2020-03-25 11:13:46 +01:00
Martin Diehl 32b9a5ab15 all in one loop 2020-03-25 11:07:47 +01:00
Martin Diehl 9a188784e2 no need for an extra loop 2020-03-25 10:54:17 +01:00
Martin Diehl 02774a89d9 2 space indentation 2020-03-25 10:33:41 +01:00
Martin Diehl 52ca7cc43c only one stateJump per integration 2020-03-25 10:27:55 +01:00
Martin Diehl 2dd3ccdad1 no need to transpose 2020-03-25 10:22:21 +01:00
Martin Diehl 8f6dc054d0 move up the nonlocal skip 2020-03-24 22:25:40 +01:00
Martin Diehl e7c585a02e loop order that allows more memory efficient code 2020-03-24 20:47:41 +01:00
Martin Diehl 66aa20ad39 extra check for nonlocal needed 2020-03-24 20:35:27 +01:00
Martin Diehl 0740c9f339 dot state in loop 2020-03-24 20:33:26 +01:00
Martin Diehl 44e24a9c4f merging into one loop 2020-03-24 20:25:29 +01:00
Martin Diehl eb6fe8a3a2 merge into one loop 2020-03-24 16:14:14 +01:00
Martin Diehl 369ea31a4b name unification for simple copy and paste 2020-03-24 15:02:55 +01:00
Martin Diehl 93abf2b6d8 this SEEMS to be the way how it was planned 2020-03-24 13:06:29 +01:00
Martin Diehl 424fcabb90 move into the same loop 2020-03-24 12:54:31 +01:00
Martin Diehl 871241e31b first round of loop removal 2020-03-24 12:43:41 +01:00
Martin Diehl b88ffb8d4f converged(g,i,e) matters only for FPI 2020-03-24 12:30:43 +01:00
Martin Diehl d16af3bfb3 one loop for Euler integrator 2020-03-24 12:19:36 +01:00
Martin Diehl d45f1f1c6f further integration into one loop 2020-03-24 11:37:00 +01:00
Martin Diehl 0e5f0a3068 no need for two loops 2020-03-24 11:27:53 +01:00
Martin Diehl 106cc1de92 complete iteration of each materialpoint step by step 2020-03-24 10:45:38 +01:00
Martin Diehl cde558e736 convergence check on the fly 2020-03-24 10:34:15 +01:00
Martin Diehl 4c485f1af0 state jump in same loop 2020-03-24 10:18:17 +01:00
Martin Diehl 3a6269e802 wrong omp pragmas 2020-03-24 10:06:08 +01:00
Martin Diehl 8d6dcd779c dotstate/residual/state calculation in the same loop 2020-03-24 06:34:42 +01:00
Martin Diehl 830ea61739 better readable 2020-03-24 06:27:43 +01:00
Martin Diehl 9c134e68fc in-line dot state 2020-03-23 08:15:33 +01:00
Martin Diehl e5743c7d27 same logic 2020-03-23 06:53:23 +01:00
Martin Diehl 027818c942 run in one loop 2020-03-23 00:32:41 +01:00
Martin Diehl 0b321bd9d4 bugfix for nonlocal
logic is hard to understand ...
2020-03-23 00:18:57 +01:00
Martin Diehl 86db8f8ca4 avoid flush 2020-03-23 00:15:00 +01:00
Martin Diehl e7d61e49fe can be done in the same loop 2020-03-22 23:16:00 +01:00
Martin Diehl 48c9d31720 matching names 2020-03-20 15:08:07 +01:00
Martin Diehl 03bec0221a systematic names 2020-03-20 15:00:18 +01:00
Martin Diehl dd30a4ca65 module name = file name 2020-03-20 14:56:04 +01:00
Martin Diehl b569e9cd6e clearer name 2020-03-20 14:55:10 +01:00
Martin Diehl 6ad1315b60 consistent name 2020-03-20 13:37:37 +01:00
Martin Diehl d54b3bd3b7 typo 2020-03-20 13:30:30 +01:00
Martin Diehl 7e7b32add1 useful defaults 2020-03-20 13:25:37 +01:00
Martin Diehl 7aa47d8f5a module name follows filename 2020-03-20 07:18:11 +01:00
Martin Diehl 91e728d065 polishing 2020-03-19 11:30:36 +01:00
Martin Diehl e1bd49a12b constants/parameters in capitals 2020-03-17 08:17:14 +01:00
Martin Diehl b4ed508745 Store data only where needed 2020-03-17 07:51:14 +01:00
Martin Diehl 6097267cd2 treat as 'normal' internal function 2020-03-17 07:17:40 +01:00
Martin Diehl 71d4de269a better store data locally 2020-03-17 00:39:32 +01:00
Martin Diehl 8d46a22f5a better keep data close to its use 2020-03-17 00:10:23 +01:00
Martin Diehl f718587011 was not used 2020-03-17 00:01:42 +01:00
Martin Diehl 160ef4af7e simplified 2020-03-16 23:43:59 +01:00
Martin Diehl fecd1586b0 using notation from paper 2020-03-16 23:31:43 +01:00
Martin Diehl caa0e502df only remainder of old mapping exist
and they are clearly marked as deprecated
2020-03-16 22:56:33 +01:00
Martin Diehl becb04c234 simpler ... 2020-03-16 22:50:09 +01:00
Martin Diehl c0fc7ad9a9 simpler 2020-03-16 22:50:09 +01:00
Martin Diehl 1434aa529f default name 2020-03-16 22:50:09 +01:00
Martin Diehl 44d12669a4 works if Nslip=[0] 2020-03-16 22:50:09 +01:00
Martin Diehl c702a9f1d7 numpy name 2020-03-16 22:50:09 +01:00
Martin Diehl 9733f4a140 standard names 2020-03-16 22:50:09 +01:00
Martin Diehl e4792e56fb store data where it is needed
avoid globals, even if they are read only
2020-03-16 21:39:53 +01:00
Martin Diehl 0bb7fea782 sort into folders ...
and avoid names like mesh_mesh
2020-03-16 21:03:54 +01:00
Martin Diehl 71e6c24102 2 space indentation 2020-03-16 20:58:40 +01:00
Martin Diehl 6ce0101a3d getting rid of global totalNslip 2020-03-16 17:54:31 +01:00
Martin Diehl c965b14d1d forall is deprecated 2020-03-16 17:18:50 +01:00
Martin Diehl 0ff54d1c43 transpose not needed twice
"static" part of the interaction matrix is symmetric for one slip family
2020-03-16 16:46:16 +01:00
Martin Diehl ad014d40be vectorized 2020-03-16 16:41:55 +01:00
Martin Diehl 9d6bd1cb77 vectorized
There seems to be a bug in the interaction matrix, there should be no
transpose. However, the transpose recovers the old behavior (up to
machine precision)
2020-03-16 16:02:14 +01:00
Martin Diehl 8d5d31988a cleaning 2020-03-16 15:36:34 +01:00
Martin Diehl ecd74ff8b5 internal functions need no prefix 2020-03-16 15:22:44 +01:00
Martin Diehl 47f91d08ca handle most stupid case 2020-03-16 15:04:51 +01:00
Martin Diehl b19665f235 works for elasticity only 2020-03-16 14:58:42 +01:00
Martin Diehl 8ae5814815 symbol name as in DAMASK paper 2020-03-16 13:36:24 +01:00
Martin Diehl 5760c680b6 no need to store for the whole simulation 2020-03-16 13:14:44 +01:00
Martin Diehl f8049b85be works for no active slip systems 2020-03-16 13:06:39 +01:00
Martin Diehl 5d7ff888fc should work for elasticity only 2020-03-16 11:14:55 +01:00
Martin Diehl 7b3b4ffb1c following python style 2020-03-16 11:14:27 +01:00
Martin Diehl 9ed48f7e5f getting rid of totalNslip in nonlocal 2020-03-16 10:09:58 +01:00
Martin Diehl 044b816005 better to read w/o cycle 2020-03-16 09:42:58 +01:00
Martin Diehl ab5177e0be better readable 2020-03-16 09:37:25 +01:00
Martin Diehl fc15616ef7 simplifying 2020-03-16 09:18:05 +01:00
Martin Diehl 4d62432d34 internal functions at the end 2020-03-16 08:22:36 +01:00
Martin Diehl ef4b24646d only store parameters that are needed during the simulation 2020-03-16 08:16:55 +01:00
Martin Diehl 23c6510faa atol=0.0 is fine
crystallite takes max(atol, rtol*X), so atol=0.0 means that convergence
is based on rtol only
2020-03-16 00:52:18 +01:00
Martin Diehl e3bbd32b1e polishing 2020-03-16 00:12:18 +01:00
Martin Diehl 0735d2da7c no need to store # sytems/family 2020-03-16 00:05:51 +01:00
Martin Diehl c7f3c2cb56 notation from DAMASK paper 2020-03-15 21:58:28 +01:00
Martin Diehl e53ba801fa more systematic file structure 2020-03-15 17:04:28 +01:00
Martin Diehl d37f42da4f better sort files according to solver 2020-03-15 16:58:30 +01:00
Martin Diehl 5b71f1050f better make internal function
- not used
- no check whether matrix is positive-definite, i.e. danger of NaN
2020-03-15 16:11:28 +01:00
Martin Diehl 8c78347a8b equivalent, but systematic better visible 2020-03-15 16:05:56 +01:00
Martin Diehl 7677bc876b more precise documentation
symmetric is not enough, could result in taking the square root of negative eigenvalues
2020-03-15 15:58:25 +01:00
Martin Diehl 253ee0013d equivalent, but more systematic 2020-03-15 15:03:53 +01:00
Martin Diehl 65decfc48a intention more clear 2020-03-15 14:54:25 +01:00
Martin Diehl 66302fa6da rotational part is always of 3x3 tensor 2020-03-15 14:21:11 +01:00
Martin Diehl 4b3f4834b5 unified documentation and variable names 2020-03-15 14:07:38 +01:00
Martin Diehl 2d678fae8f better readable 2020-03-15 13:52:50 +01:00
Martin Diehl 6a0d4678a9 better readable 2020-03-15 13:19:07 +01:00
Martin Diehl 9aa9b7ff69 documenting parameters 2020-03-15 13:09:27 +01:00
Martin Diehl ae49e6710d documenting for doxygen 2020-03-15 12:54:35 +01:00
Martin Diehl 8cc16da53f atol is part of the state structure, no need for suffix 2020-03-15 09:51:40 +01:00
Martin Diehl 7ec5a0bd6b make consistency check 2020-03-15 09:39:35 +01:00
Martin Diehl a3e2d39854 no need to store atol twice 2020-03-15 08:47:16 +01:00
Martin Diehl 9ad391ae50 include sanity check 2020-03-14 22:53:05 +01:00
Martin Diehl 38b755740b no need to store atol 2020-03-14 20:55:46 +01:00
Martin Diehl eb08f9f0b2 polishing 2020-03-14 19:40:05 +01:00
Martin Diehl 33aaa94865 use centralized (and tested) funtionality 2020-03-14 17:29:08 +01:00
Martin Diehl 8bd708f3b1 correct type 2020-03-14 13:53:21 +01:00
Martin Diehl 5c4ddf5138 Merge branch 'development' into MiscImprovements 2020-03-14 12:52:30 +01:00
Martin Diehl 07ecf60722 more explicit and flexible 2020-03-13 14:03:04 +01:00
Martin Diehl e8b5a6dfe4 bugfix:
full stress tensor should be used
2020-03-10 14:02:09 +01:00
Martin Diehl 705ee908a2 Merge remote-tracking branch 'origin/development' into clean-and-polish-damage 2020-03-10 13:49:11 +01:00
Martin Diehl aa75591ea9 no need to prefix internal parameters
also, use CAPITALS for parameters, but not for module prefixes (does not
work for IO and HDF5 anyway)
2020-03-10 13:45:00 +01:00
Martin Diehl 2f16c1cacf more relevant test
restricting to reasonable F allows to use a reasonable tolerance
2020-03-10 07:58:03 +01:00
Martin Diehl 39b2f8d2d9 clearer name 2020-03-10 06:13:54 +01:00
Martin Diehl 3fadbaa369 fixed typo 2020-03-09 22:20:33 +01:00
Martin Diehl 6bc57d4911 mainly code duplication and not used 2020-03-09 14:17:41 +01:00
Martin Diehl 4a93f2206d avoid early return + use numpy names 2020-03-09 14:17:05 +01:00
Martin Diehl 105853004a correct type conversions 2020-03-09 14:07:31 +01:00
Martin Diehl a1f36b14d3 simplifying
still trying to figure out how to best use HDF5 for reference stiffness
2020-03-09 14:05:49 +01:00
Martin Diehl cf8e3fb91a single source of truth 2020-03-09 14:00:58 +01:00
Martin Diehl a0f1509045 full out of source build
no temporary variables appear in src if following cmake procedure
2020-03-09 13:55:28 +01:00