Commit Graph

283 Commits

Author SHA1 Message Date
Martin Diehl 7c771647ad adjustments for easier access to output data 2019-04-18 11:55:50 +02:00
Martin Diehl c4784e6673 better readable 2019-04-13 15:34:51 +02:00
Martin Diehl 89679147e8 leaner group structure, centrally handled 2019-04-13 09:47:56 +02:00
Martin Diehl 52555d8c3c key words don't contain small letters
moved more variables from numerics to crystallite
2019-04-11 11:27:03 +02:00
Martin Diehl 8f7239b75d repetition not needed
- implicit none at the beginning of the module is enough
2019-04-11 07:35:58 +02:00
Martin Diehl 67eb39255a keep connected data together
- avoids dependencies
- easier to read and modify
2019-04-11 07:24:04 +02:00
Martin Diehl c3925b3497 small polishing 2019-04-07 14:47:21 +02:00
Martin Diehl 0b70f01e04 polishing 2019-04-07 14:28:08 +02:00
Martin Diehl 5075e1c2fb constituent (ex crystallite) results are stored in HDF5
currently, not the best code but new structure for crystallite data will
fix that
output of orientations still missing
2019-04-06 12:08:25 +02:00
Martin Diehl bfb6ad557f WIP: crystallite HDF5 results
will be stored according to the phase sections
2019-04-06 12:08:25 +02:00
Martin Diehl 453eb538f7 preparing for PGI compiler 2019-04-03 16:24:15 +00:00
Martin Diehl 9759d3d041 forall is deprecated
- performance-wise, there should be no difference for the small loops we
have
- still, the on-liner syntax was much nicer
2019-04-03 13:25:01 +02:00
Martin Diehl e33807aab3 fixed indentation 2019-04-03 12:54:07 +02:00
Martin Diehl 1d31c5c2db pInt not needed 2019-04-03 12:32:30 +02:00
Martin Diehl 4604e65a42 use matmul instead of hand-written functions
- performance is the same
- leaner code
- matmul works (was buggy a few years ago)
2019-04-03 08:22:04 +02:00
Martin Diehl 60f4f9f39c norm2 for PGI 2019-03-10 10:05:47 +01:00
Martin Diehl 2394880741 Tstar renamed to S (following the DAMASK paper) 2019-03-09 11:11:40 +01:00
Martin Diehl 05eb80d38c pLongInt was not used 2019-03-06 15:49:31 +01:00
Philip Eisenlohr 6e9b745ca1 shorterned line to avoid compile time truncation warning 2019-02-26 21:22:14 -05:00
Philip Eisenlohr ff5ac56cfb shortened too long lines 2019-02-26 15:31:47 -05:00
Philip Eisenlohr cfb2770b93 merged and added correction to FreeSurface.config example 2019-02-26 13:56:49 -05:00
Philip Eisenlohr cb9543dff7 more elaborate debug labelling 2019-02-26 13:47:46 -05:00
Martin Diehl 56e2c1264b Merge branch 'development' into New-Thermal 2019-02-26 07:54:45 +01:00
Martin Diehl 6fab99bca5 Merge branch 'development' of magit1.mpie.de:damask/DAMASK into development 2019-02-25 20:10:38 +01:00
Martin Diehl d83847446d Merge branch '32_NewStyleNonlocal-4' into development 2019-02-25 20:06:20 +01:00
Martin Diehl 7115382729 not used anymore 2019-02-24 10:08:09 +01:00
Martin Diehl 93ae5cbd07 Merge remote-tracking branch 'origin/development' into 10-consistent-orientation-conversions-3 2019-02-22 23:05:36 +01:00
Martin Diehl 194824fd0f WIP: cleaned
no file reading
getting rid of a number of obsolete dependencies
2019-02-22 20:37:41 +01:00
Martin Diehl 435dce220c move stress conversion one level up
should be totally avoided
2019-02-18 07:24:56 +01:00
Martin Diehl cf32e7d1f5 use parameter structure and avoid conversion 33<->6 2019-02-17 12:15:46 +01:00
Martin Diehl dcd16dda70 variables from mesh object 2019-02-02 12:15:05 +01:00
Martin Diehl 3a5a50cb03 use variables from theMesh 2019-02-02 10:53:55 +01:00
Martin Diehl 7a8d98d135 using theMesh (object oriented mesh description) 2019-02-02 10:35:10 +01:00
Martin Diehl 9a4e9e62b6 using new rotation class 2019-02-01 20:28:51 +01:00
Martin Diehl 407f94082f no need for orientation class at the moment
implement only if we need symmetry aware operations
2019-02-01 16:52:42 +01:00
Martin Diehl 9d25d677e6 using new orientation class
not sure if transpose is needed for initialization
2019-02-01 10:11:46 +01:00
Martin Diehl aabd98bee9 no need to repeat the same code 2019-01-31 09:14:02 +01:00
Martin Diehl cbeb3dcff0 use the same formulation for convergence every where 2019-01-31 09:12:44 +01:00
Martin Diehl 5eaeb37ea4 just polishing 2019-01-31 06:04:49 +01:00
Martin Diehl 3b13a1af63 calculated convergence criteria wrongly 2019-01-30 17:04:58 +01:00
Martin Diehl e1c2747393 logic error for nonlocal 2019-01-30 16:06:14 +01:00
Martin Diehl fe88e5bf9c [skip ci] cleaning 2019-01-30 14:52:12 +01:00
Martin Diehl 1d88057ce4 avoid superflous variables 2019-01-30 13:24:35 +01:00
Martin Diehl 64b89484d2 logic better visible 2019-01-30 13:19:05 +01:00
Martin Diehl 39e766bba0 improved readability 2019-01-30 12:36:02 +01:00
Martin Diehl 3dd21177a0 no need to store relative residual pointwise 2019-01-30 11:28:41 +01:00
Martin Diehl fd069a96cd unifying name 2019-01-30 10:51:24 +01:00
Martin Diehl 4ec0fd70a2 only one variable needed 2019-01-30 10:48:59 +01:00
Martin Diehl 0876787e3c avoid loops 2019-01-30 10:46:53 +01:00
Martin Diehl 72c4f2b25f same names everywhere if possible 2019-01-30 10:37:18 +01:00
Martin Diehl 0745d7ebc2 convergence flag is set only later 2019-01-30 10:33:57 +01:00
Martin Diehl 46be595ea8 no need to store relative residual for all points 2019-01-30 10:28:47 +01:00
Martin Diehl 31906e3ebd no need for 2 loops 2019-01-30 09:21:50 +01:00
Martin Diehl df6ec59f76 use "s" for source 2019-01-30 09:21:50 +01:00
Martin Diehl ca7c105f36 only one loop needed 2019-01-30 09:21:50 +01:00
Martin Diehl 462b1b7c18 sorted according to importance 2019-01-30 06:47:36 +01:00
Martin Diehl 5908e3fd34 wrong tolerance selection 2019-01-30 06:44:26 +01:00
Martin Diehl 77f1f45c23 just figured out that RK4 integrator is totally broken
readable code helps ;)
2019-01-30 00:17:04 +01:00
Martin Diehl a09036ff48 on-the-fly initialization 2019-01-30 00:11:10 +01:00
Martin Diehl 1a66f976b7 common variable name 2019-01-30 00:01:40 +01:00
Martin Diehl 6a3dac1df2 still improving readability 2019-01-29 23:45:41 +01:00
Martin Diehl bdd193fbd7 now readable (kind of) 2019-01-29 23:31:26 +01:00
Martin Diehl eade54a68f consistent variable names 2019-01-29 23:04:50 +01:00
Martin Diehl 1408d66c0c s is used for source 2019-01-29 23:02:59 +01:00
Martin Diehl 0be05b3ee1 one variable is enough 2019-01-29 22:46:21 +01:00
Martin Diehl b4afc303be clearer logic 2019-01-29 22:40:18 +01:00
Martin Diehl 73f39136c4 taking over from old branch 2019-01-29 22:19:38 +01:00
Martin Diehl 38d8e429ff layout adjustments 2019-01-29 22:07:31 +01:00
Martin Diehl 066c598203 wrong dot product in state damper 2019-01-29 10:52:00 +01:00
Martin Diehl 34f3c15552 no need for temp variables 2019-01-29 07:24:06 +01:00
Martin Diehl 41832fb554 no need for two variables
only resulted in confusing code
2019-01-29 07:24:06 +01:00
Martin Diehl a24d8b86bf convergence of plastic state can be done earlier 2019-01-29 07:24:06 +01:00
Martin Diehl 4a69032637 better readable 2019-01-29 07:24:06 +01:00
Martin Diehl 1e4da6fbdb nonlocal convergence check in function 2019-01-29 07:24:06 +01:00
Martin Diehl 3fdf8e19bb further simplifications 2019-01-29 07:24:06 +01:00
Martin Diehl 9892da717a bugfix: missing initialization 2019-01-29 07:06:16 +01:00
Martin Diehl ee586dfa0c avoid code duplication 2019-01-29 00:46:57 +01:00
Martin Diehl 2cf44f4060 shorter 2019-01-29 00:39:44 +01:00
Martin Diehl 2f9a571b96 no need for 2 variables 2019-01-29 00:38:18 +01:00
Martin Diehl b62232022b polishing 2019-01-29 00:27:58 +01:00
Martin Diehl 95cb404f81 further cleaning 2019-01-28 11:49:24 +01:00
Martin Diehl 8c2d6400b1 cleaning 2019-01-28 11:28:46 +01:00
Martin Diehl f2882f195a fuction for convergence check
avoid code repetition
2019-01-25 07:20:05 +01:00
Martin Diehl f4fef6448d stress integration for all points in one function 2019-01-24 17:59:38 +01:00
Martin Diehl fcdab21565 avoid flush of full array
more clear logic
2019-01-24 14:15:26 +01:00
Martin Diehl 30dc8b4831 delta state update for all points
replaced stateJump, which works only on one point
2019-01-24 11:33:04 +01:00
Martin Diehl c3b48c3484 WIP: update_deltaState 2019-01-24 07:34:30 +01:00
Martin Diehl a8a5c8eec0 preparing function for deltaState
essential a "stateJump" over all points
2019-01-24 07:12:20 +01:00
Martin Diehl a458dc831b prepare for consistent use of full tensor representation 2019-01-24 06:56:43 +01:00
Martin Diehl 1cccd761cd variables were not used 2019-01-23 23:18:14 +01:00
Martin Diehl ae931c49a1 more "building block" separation 2019-01-23 23:02:21 +01:00
Martin Diehl c60bb2edd3 function for update of dependent state
not introduced everywhere
2019-01-23 18:04:19 +01:00
Martin Diehl 0a6bcadafe using a function for state update
avoids a lot of code repetition
2019-01-23 11:51:43 +01:00
Martin Diehl b1522b1b9d common function to update dot state 2019-01-23 06:14:19 +01:00
Martin Diehl ac9d49f6be state = subState0 + doState * dt
this is the usual state update used in all other integrators. also
in-line with logic in crystallite_stress
2019-01-22 23:23:48 +01:00
Martin Diehl 443519be72 cleaning
no reason to assume that the math functions are not thread safe
2019-01-19 10:02:04 +01:00
Martin Diehl 1be4426dc5 not needed 2019-01-19 09:54:37 +01:00
Martin Diehl 6fe099b978 [skip ci] re-ordered functions
internal/private functions at the end
2019-01-19 09:35:45 +01:00
Martin Diehl 30f28c9f4e do concurrent causes problems on some Intel compilers
use forall instead.
Mandel/Plain prefixes not needed any more
2019-01-18 23:20:44 +01:00
Martin Diehl 695b331db0 takeover from old 46-XXX branch 2019-01-18 23:09:46 +01:00
Martin Diehl 221c587362 using separate functions for stress and tangent
extensively tested in 46-simplification-of-crystallite-f90-NEW3 already
2019-01-18 15:30:50 +01:00
Martin Diehl 406a2cc542 further separation
still using old combined function
2019-01-18 14:42:44 +01:00
Martin Diehl e433aea193 preparing for separation of stress calculation and tangent calculatin 2019-01-18 12:18:13 +01:00
Martin Diehl 6049e292c1 no need to store converged tangent 2019-01-15 08:04:50 +01:00
Martin Diehl 80dca6d304 also not needed
was a remainder from time syncinc
2019-01-15 07:52:01 +01:00
Martin Diehl daaa7cc2ba internal (private) functions at the end
ordered state integrators according to their id
2019-01-15 04:27:57 +01:00
Martin Diehl 43f9d043d2 removed time syncing 2019-01-14 12:56:46 +01:00
Martin Diehl 3f40eeacf9 disorientation was never use
not even for nonlocal, but it slows down calculation a lot
2019-01-14 07:44:36 +01:00
Franz Roters d5cf7d2144 Merge branch '19-NewStylePhenopowerlaw' into 'development'
Resolve "New coding style for phenopowerlaw"

See merge request damask/DAMASK!39
2018-10-01 16:08:05 +02:00
Martin Diehl fc016bbc6e Merge branch 'development' of magit1.mpie.de:damask/DAMASK into development 2018-09-20 07:16:03 +02:00
Martin Diehl 310ea62964 only print out the essential information 2018-09-20 06:58:31 +02:00
Martin Diehl fcff6b908a can be easily computed during post processing 2018-09-20 06:40:23 +02:00
Martin Diehl 901355d2ae don't use unnecessarily long names 2018-09-20 06:27:53 +02:00
Martin Diehl df0464c31b use (import) debug variables only when needed 2018-09-20 06:24:03 +02:00
Martin Diehl 6aa4dd842a define debug variables only if needed 2018-09-20 06:09:02 +02:00
Martin Diehl 1623a33b48 cleaning (mainly OMP FLUSh) 2018-09-19 21:46:26 +02:00
Martin Diehl 11d4c28d88 flushes not needed + further cleaning 2018-09-19 19:45:57 +02:00
Martin Diehl c313dc1675 only read access 2018-09-19 17:04:12 +02:00
Martin Diehl 0bf64645a1 should be done by the plasticity laws (for the moment) 2018-09-19 14:22:35 +02:00
Martin Diehl a8fb7d7ade not needed
but I'm under the impression that the compiler removes such things anyway
2018-09-19 14:21:10 +02:00
Martin Diehl 20f0bee459 fallback dPdF not needed
save a lot of memory
2018-09-19 06:19:40 +02:00
Martin Diehl e6fa3f3d35 correct stress in postResults 2018-09-16 22:57:50 +02:00
Martin Diehl f98243e4ac Merge branch 'development' into 43-wrong-stress-in-dotstate-and-deltastate 2018-09-14 05:39:15 +02:00
Martin Diehl ce6e6679d5 causes array access out of bounds, needs further checks 2018-09-11 12:20:05 +02:00
Philip Eisenlohr 9be2c084e4 Merge branch '39-simplify-obscure-numerics-integration-mode' into 'development'
Resolve "simplify obscure numerics integration mode"

Closes #39

See merge request damask/DAMASK!36
2018-09-07 19:34:35 +02:00
Satyapriya Gupta a16454f1f9 fixed missing propagation of dependent state variables 2018-09-06 16:48:28 -04:00
Martin Diehl b884349e7b only renaming
3333 not needed for dX_dY if X and Y are 3x3 tensors
PK2 stress is S not T according to the DAMASK paper
2018-08-29 13:16:37 +02:00
Martin Diehl fc3ce54667 return more than one tangent 2018-08-28 15:07:39 +02:00
Martin Diehl 4c14f988a3 rename according to paper 2018-08-28 14:58:17 +02:00
Martin Diehl b8b5bac684 dotState and deltaState parse Mstar instead of Tstar
requires to parse in Fi
2018-08-25 15:59:34 +02:00
Martin Diehl ab45818d51 seems to work now
anyway, nicer code
2018-08-22 14:30:51 +02:00
Martin Diehl 52088691d1 improved linked list and fixed solution for strange bug
Bug: Using automated LHS re-allocation for a string array that with global scope seems to cause trouble
     Hence, "parse_file" works with a local string and assings only once to it

Linked_List: Now storing data in the list head also and last element is always empty.
             Finalize allows simple handling of deallocation
2018-08-22 11:51:23 +02:00
Martin Diehl 3b3e0bc068 forgotten use 2018-08-18 17:11:50 +02:00
Martin Diehl 2618593568 :Merge branch 'development' into Integration-Mode-Confusion 2018-08-18 16:37:25 +02:00
Martin Diehl b64b5b82de integrationMode was always 1, very obscure code
was most likely the leftover of old functionality
2018-08-16 23:33:39 +02:00
Martin Diehl 7f05bf9c0a leftover variables not needed anymore 2018-07-16 11:54:46 +02:00
Martin Diehl 771b8f00ec leftover from performance reporting/debugging 2018-07-07 13:50:39 +02:00
Philip Eisenlohr 3c1012ef38 cut out more now useless pieces 2018-07-03 22:12:25 +02:00
Martin Diehl a308b2130a Merge branch 'development' into 21_removeperformanceprofiling 2018-06-28 13:09:11 +02:00
Martin Diehl fc83a76318 consistent naming 2018-06-26 20:54:54 +02:00
Martin Diehl bb415e8a02 using array size not to rely on correctly set variable, cleaning crystallite data after use 2018-06-26 20:33:41 +02:00
Martin Diehl 1add0f3d84 gfortran does not recognice an empty array as 'present' 2018-06-22 08:03:22 +02:00
Martin Diehl f61f22924a empty string list as default value simplifies logic 2018-06-21 22:38:06 +02:00
Martin Diehl 5302782dad need to search for cumulative tag 2018-06-19 23:42:15 +02:00
Martin Diehl 9aa211605f having no output in crystallite caused trouble 2018-06-19 22:58:46 +02:00
Martin Diehl 9c12ce5539 more general name (should include parsing of debug and numerics) 2018-06-14 06:39:49 +02:00
Martin Diehl 91d9c11612 material.config is read in centrally
moving data from material to config_material. use statements need to
change. All aspects of reading from file will be removed from the
individual modules
2018-06-10 18:01:52 +02:00
Martin Diehl e93e380ad3 output tag was empty: 2018-06-02 21:00:47 +02:00
Martin Diehl 142ce51c9c homogenization and crystallite use new structure
math_transpose33 has no advantage over transpose intrinsic
2018-06-02 19:28:08 +02:00
Arka Lahiri c45d9f9ee9 Deleted performance profiling code 2018-05-17 16:33:35 +02:00