Commit Graph

3231 Commits

Author SHA1 Message Date
Martin Diehl b83f2e5444 Merge branch 'development' into Marc-use-statev-2 2020-09-15 07:41:38 +02:00
Martin Diehl 50599bc5c5 Merge branch 'development' into fix-vtr-sanity-check 2020-09-15 07:20:44 +02:00
Philip Eisenlohr df548e95fc [skip ci] added reference to explain Fp_0 = O_0 2020-09-14 15:11:48 +02:00
Martin Diehl a2e9420336 boundary conditions to not change during iteration 2020-09-14 14:58:44 +02:00
Martin Diehl 89f25eb7d7 use reasonable tolerances for checking regular grid spacing 2020-09-14 14:06:09 +02:00
Martin Diehl 3ebba9b3c0 more sensible locations for reporting 2020-09-13 21:21:55 +02:00
Martin Diehl 5558d95886 print is better suited for output to screen then write 2020-09-13 21:15:08 +02:00
Martin Diehl 0153bca277 better print then write
- shorter, always writes to STDOUT

also, report only details (paper) of active models
2020-09-13 21:00:34 +02:00
Martin Diehl 84b9104302 clearly indicate origin of functions
also supresses (flawed) error message of gfortran related to
non-standard type 'bytes'
2020-09-13 20:14:34 +02:00
Martin Diehl f266def906 Merge branch 'vtr-as-input' into Fortran-simplifications 2020-09-13 19:34:48 +02:00
Philip Eisenlohr 507910ffcd improved language/descriptions 2020-09-13 18:32:49 +02:00
Martin Diehl bb6b91e857 simpler 2020-09-13 13:04:54 +02:00
Martin Diehl b497ec4371 use print instead of write
https://www.scivision.dev/print-vs-write-fortran/
2020-09-13 13:01:38 +02:00
Martin Diehl 7d929122af forgotten renames 2020-09-13 12:45:35 +02:00
Martin Diehl 22544d6978 systematic naming 2020-09-13 12:43:49 +02:00
Martin Diehl c14241a8e9 no need to store variables that are used only during init 2020-09-13 12:31:01 +02:00
Martin Diehl 316c5f7d20 internal errors (do not depend on user input) 2020-09-13 12:20:44 +02:00
Martin Diehl 0f0dfb4c04 0-base counting for MPI 2020-09-13 12:13:59 +02:00
Martin Diehl e6dd118a1d not needed anymore 2020-09-13 12:11:26 +02:00
Martin Diehl 5b83c8ad3c use 'error stop'
- does not require IO
- prints stack trace
2020-09-13 12:09:32 +02:00
Martin Diehl 16f8df3420 standard "docstring"
- start with capital
- active form
- end with full stop
2020-09-13 11:32:36 +02:00
Martin Diehl 3c5b89ac78 not needed anymore 2020-09-13 11:28:48 +02:00
Martin Diehl 07f23d3d1d no need for alias 2020-09-13 11:21:43 +02:00
Martin Diehl 74b35f5612 short numpy name 2020-09-13 11:18:57 +02:00
Martin Diehl e5c2382f73 missing renames ... 2020-09-13 11:17:49 +02:00
Martin Diehl 38a4118dc5 prefix to global variables increases readability 2020-09-13 11:05:42 +02:00
Martin Diehl b499578a95 prefix should be name of the module
poor substitute for namespace
2020-09-13 10:39:17 +02:00
Martin Diehl da0e16520c handling of MPI in 'parallelization' 2020-09-13 10:26:33 +02:00
Martin Diehl e2ded43636 polishing
- unified style (CamelCase)
- more sanity checks
- simplified determination of grid
2020-09-13 06:58:34 +02:00
Martin Diehl 81063046c4 improved error handling, potentially faster algorithm 2020-09-12 22:55:30 +02:00
Martin Diehl 126ef8be9f separating functionality
- config: reads config files
- parallelization: determines parallelization environment
2020-09-12 16:25:58 +02:00
Martin Diehl a46b888cff WIP: introducing separate module for parallelization 2020-09-12 16:07:49 +02:00
Martin Diehl 3f9e9a120a simplified 2020-09-12 15:56:59 +02:00
Martin Diehl 7b414454f0 nicer reporting 2020-09-12 15:42:03 +02:00
Martin Diehl 307b1b20cc forgotten rename for ifort workaround 2020-09-12 15:26:16 +02:00
Martin Diehl 767e0506df older Fortran compilers are not supported anymore 2020-09-12 15:05:07 +02:00
Martin Diehl 566ab7e7d9 reading in VTR files
will replace geom file in the near future
2020-09-12 14:43:04 +02:00
Martin Diehl a6ac875db8 short and clear names for integer precision 2020-09-12 11:02:39 +02:00
Martin Diehl 7a6ada9ad7 clearer name 2020-09-12 08:47:46 +02:00
Franz Roters c5bce78faf [skip ci] corrected error number 2020-09-10 08:55:56 +02:00
Philip Eisenlohr d7932aeacb Merge branch 'vtr-as-input-prerequisites' into 'development'
prerequisites for using VTR as input format for spectral solver

See merge request damask/DAMASK!214
2020-09-09 18:13:09 +02:00
Martin Diehl a5f9ef118a feature complete test 2020-09-09 12:38:02 +02:00
Martin Diehl 85d9e843f0 better readable 2020-09-09 07:50:12 +02:00
Martin Diehl 95af422d5f complain about invalid microstructure
many error messages are not needed any more
2020-09-08 23:49:44 +02:00
Martin Diehl b1b556fc08 Merge remote-tracking branch 'origin/development' into Marc-use-statev-2
PRIVATE repository is synced again (including changes to RGC test)
2020-09-08 23:24:57 +02:00
Martin Diehl 0368fdafc1 keyword was missing 2020-09-08 23:21:45 +02:00
Martin Diehl 6d42d13321 Merge branch 'base64-simplification' into vtr-as-input-prerequisites 2020-09-08 23:16:53 +02:00
Martin Diehl fb68d430ec decode only relevant part of the base64 string 2020-09-08 23:15:43 +02:00
Sharan Roongta f38e32572f Merge branch 'modernize-testing' into development 2020-09-08 12:30:13 +02:00
Martin Diehl a70819e458 simplified base64 encoding
- ensure valid Base64 string (needs to be padded correctly)
- background routine expects proper Base64 string (length = N*4)
- user routine ensures correct length of byte representation
2020-09-08 10:36:22 +02:00
Martin Diehl 049ad4e202 simplify base64 handling
require valid base64 string, which allows to calculate output size
automatically
2020-09-08 07:03:23 +02:00
Martin Diehl 1f28592fcd improved documentation
Python/numpy style: Active description, start with capital, end with
full stop
2020-09-08 06:55:04 +02:00
Martin Diehl 43e9ea352a typo 2020-09-08 05:56:10 +02:00
Martin Diehl cfad4a71f6 clearer logic 2020-09-08 05:56:01 +02:00
Franz Roters 44f5f2cc01 only statevar 2 is used for material definition 2020-09-07 17:01:38 +02:00
Martin Diehl d176a89c78 ensure defined initital state 2020-09-07 13:20:00 +02:00
Martin Diehl 751bf7862d variable name = parameter name 2020-09-07 11:48:26 +02:00
Martin Diehl 2f7414de22 only m=1 makes sense for isobrittle 2020-09-07 11:46:12 +02:00
Martin Diehl 3fdcebc0a0 following python recommendation
functions have "active" docstring
2020-09-06 17:50:32 +02:00
Martin Diehl 9ce406ed11 wrapper for zlib library
assume that zlib is available for linking. This is usually the case
(zlib is a stable standard library), but there is currently no check
that gives a nice error message or the possibility to use zlib from a
non-standard location
2020-09-06 17:49:00 +02:00
Martin Diehl a931625be0 functionality to decode base64 strings into bytes 2020-09-06 17:44:02 +02:00
Martin Diehl 54207760db conversion byte -> float/int with 4/8 byte length 2020-09-06 17:36:05 +02:00
Martin Diehl d66cdc8324 fixed incomplete rename 2020-08-30 06:52:15 +02:00
Martin Diehl 80b84cf76a fixed hickup of state variables
two times the wrong location resulted in the correct behavior before
2020-08-29 23:37:59 +02:00
Martin Diehl 23bf51cca0 homogenizationAt from discretization not needed anymore 2020-08-29 16:45:18 +02:00
Martin Diehl 44bb99c57a not needed 2020-08-29 16:34:19 +02:00
Martin Diehl 4fe4190ee0 mapping renamed
now we have two mappings, 'phase' and 'homogenization'. They `unwind`
the definition in 'materialpoint' in 'material.yaml'. Since we
never introduced the inverse mapping, I have removed the cellResults
subfolder.
2020-08-25 11:02:51 +02:00
Martin Diehl 55443a3ff5 reflect change of variable names in file layout version 2020-08-24 22:54:09 +02:00
Martin Diehl 8ef473b71c new names in output
- constituent -> phase
- materialpoint -> homogenization

this gives a one-to-one correspondence to the material.yaml definition

next steps
1) adjust damask.Result python class
2) implement materialpoint output (homogeneous over the whole domain)
   for homogenized quantities (currently T,F,P,phi)
2020-08-24 19:22:53 +02:00
Sharan Roongta 7754a1ea56 Restructuring for material.yaml 2020-08-15 16:08:46 +02:00
Philip Eisenlohr c1358294f7 Corrected Kirchoff --> Kirchhoff 2020-08-12 15:14:00 -04:00
Martin Diehl e6f1b17149 Gfortran 8 failed with
At line 115 of file DAMASK/src/system_routines.f90
Fortran runtime error: Unequal character lengths (93/52) in MERGE intrinsic

not sure whether this is a false alarm or not ...
2020-08-09 08:53:10 +02:00
Martin Diehl 68bf21c900 can use string of dynamic length 2020-08-09 06:40:43 +02:00
Martin Diehl 93adee2581 no need to have fixed string here 2020-08-09 06:27:29 +02:00
Martin Diehl 28bc1fae50 don't repeat code 2020-08-09 06:17:14 +02:00
Martin Diehl 2db8ba13fc better reporting: show small values 2020-08-08 20:01:32 +02:00
Franz Roters 8f79338889 support for Marc2020
Mentat does not work for now
2020-08-01 12:03:12 +02:00
Martin Diehl c55e6edbf3 removed duplicate 2020-07-25 09:59:22 +02:00
Martin Diehl 86bef605e3 polishing 2020-07-24 23:40:42 +02:00
Martin Diehl 3ed1850d68 calculate R directly from F
no detour via inverse of U/V needed.
Determinant of R seems to deviate less from 1.0 with this version
2020-07-24 23:08:05 +02:00
Martin Diehl 0f2c0cf4b2 indentation fix 2020-07-24 22:44:41 +02:00
Martin Diehl 57b4236be8 more stable version
tests need to consider that quaternion definition is not unique for
Re(q) = 0.
2020-07-24 22:43:59 +02:00
Martin Diehl ed16cb087e Merge branch 'development' into marc-python-modifications 2020-07-22 14:10:56 +02:00
Franz Roters fb02c69ac2 Merge branch 'Marc-IP-neighborhood' into 'development'
Marc ip neighborhood

See merge request damask/DAMASK!192
2020-07-20 11:07:04 +02:00
Martin Diehl 4860f9c9ce drop support for parallel marc versions
can still be handled by the user, but is a niche use case
2020-07-18 09:51:53 +02:00
Franz Roters d47273f564 Merge branch 'Marc-2019.1' into 'development'
Marc 2019.1

See merge request damask/DAMASK!191
2020-07-17 15:48:11 +02:00
Martin Diehl d8e112c042 phaseAt needs constituent/element tuple
constituent is always 1 for nonlocal
2020-07-16 23:38:37 +02:00
Martin Diehl ec56316683 IPneighborhood for MSC.Marc
tested for 8 ip hexahedaron
2020-07-16 15:26:00 +02:00
Martin Diehl e1b018c47a symlink was missing 2020-07-16 09:34:53 +02:00
Martin Diehl 190c9a1b0d Merge branch 'misc-improvements' into Marc-2019.1 2020-07-16 09:28:11 +02:00
Sharan Roongta 98d0da8e31 Merge branch 'development' into using-submodules 2020-07-16 00:13:41 +02:00
Vitesh f0fdcd0dee Merge branch 'misc-improvements' into 'development'
Misc improvements

See merge request damask/DAMASK!189
2020-07-15 19:15:29 +02:00
Sharan Roongta 50a7caa61a cleaning 2020-07-15 14:35:21 +02:00
Sharan Roongta 78eee9fe96 unnecessary debug output 2020-07-15 00:54:16 +02:00
Franz Roters 78c1b9c745 Marc 2019.1 is new standard version 2020-07-14 12:10:43 +02:00
Martin Diehl b16508dd6c clean namespace 2020-07-14 07:40:42 +02:00
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