Commit Graph

377 Commits

Author SHA1 Message Date
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 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 91e728d065 polishing 2020-03-19 11:30:36 +01:00
Martin Diehl 9ed48f7e5f getting rid of totalNslip in nonlocal 2020-03-16 10:09:58 +01:00
Martin Diehl 66302fa6da rotational part is always of 3x3 tensor 2020-03-15 14:21:11 +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 eb08f9f0b2 polishing 2020-03-14 19:40:05 +01:00
Martin Diehl 3713810592 simplified allocation for same shape 2020-02-29 13:53:04 +01:00
Martin Diehl bcccf06450 Merge remote-tracking branch 'origin/development' into less-public-variables 2020-02-29 13:18:02 +01:00
Martin Diehl 82dee9db0e matching names 2020-02-25 17:53:15 +01:00
Martin Diehl 48604292e2 Merge remote-tracking branch 'origin/development' into MiscImprovements 2020-02-25 17:33:39 +01:00
Martin Diehl 2c952c3410 these variables can be at leat write protected 2020-02-25 09:50:21 +01:00
Martin Diehl 7d7eff0d94 crystallite should be responsible of crystallite variables 2020-02-25 09:42:07 +01:00
Martin Diehl 2cf89b1fdd bugfix: output dataset was too large in case of Ngrains>1
material_phaseAt is defined per constituent/grain/component => no need
to multiply with homogenization_maxNgrains
2020-02-22 11:28:03 +01:00
Martin Diehl a2e710c89c alinged for better readability 2020-02-21 08:45:11 +01:00
Martin Diehl c9c78aa90d do not store invFp and invFi for all points
requires to explicitly calculate inverse of Fp and Fi for the tangent
calculation. Hence, classical tradeoff between memory consumption and
runtime.
2020-02-21 08:41:08 +01:00
Martin Diehl d108d76a61 was never read
probably it was optimized away by the compiler, still confusing
2020-02-20 15:08:32 +01:00
Martin Diehl a8e2ee0a86 [skip ci] is read only for other modules 2020-02-14 21:31:03 +01:00
Martin Diehl 6adb116712 [skip ci] whitespace adjustments 2020-02-14 06:24:17 +01:00
Martin Diehl 4f7bbb323e not needed 2020-02-13 18:43:20 +01:00
Martin Diehl 64e86666c6 also set initial det(Fp)=0
Marc element lib test failed otherwise for type 117
2020-02-13 17:10:27 +01:00
Martin Diehl 0f70a19266 Fp matters, not Fp^-1
mathematically absolutely equivalent, but numerically not. Sometikes makes a
huge difference in convergence behavior, even though abs(det(Fp)-1) is
in the order of 1e-15
2020-02-13 14:48:32 +01:00
Martin Diehl fc82ec9b1b tiny deviations from det(Fp) = 1 cause convergence problems 2020-02-13 09:18:49 +01:00
Martin Diehl b861ad11c1 tiny differences between orientation conversions result in more
iterations

Seen so far only for plasticityDetectChanges test (confirmed for dislotwin and
phenopowerlaw).
The max difference between the entries of the rotation matrix from
orientation0%asMatrix() and eu2om(Eulers)/eu2om(orientation0%asEulers) is
1e-15. This is the ratio of km/atom radius! Still, the number of
iterations is consistently higher.
Results are the same. I believe this is a strange coincidence where one
particular orientation causes problems. The current version recovers almost the 'good' behavior
of math_EulerToR(Eulers)
2020-02-12 20:49:02 +01:00
Martin Diehl 8770613e9c better readable 2020-02-12 06:26:22 +01:00
Martin Diehl ab475b7c6b need 'error return'
revert from change in 5b72110d
2020-02-12 06:02:37 +01:00
Martin Diehl 08174a119f consistent name 2020-02-11 17:50:07 +01:00
Martin Diehl 5b72110d0a simplified 2020-02-11 17:47:48 +01:00
Martin Diehl e212f91fac print statements prevents reading code
first re-structure and clean, than re-implement where useful
2020-02-11 17:41:30 +01:00
Martin Diehl 6463fcdabd consistent names 2020-02-11 17:36:43 +01:00
Martin Diehl c2c84d698f Merge remote-tracking branch 'origin/development' into MiscImprovements 2020-02-11 17:11:43 +01:00
Martin Diehl e932b386b9 Merge branch 'development' into MiscImprovements 2020-02-07 17:11:01 +01:00
Martin Diehl 5d4d1dcf9a all nonlocal parts are fully explicit
i.e. they are based on converged (partioned0) states
2020-02-07 12:41:01 +01:00
Martin Diehl f854dc27e9 explicit dotState for nonlocal
all flux related quantities are calculated based on the converged
quantities
2020-02-07 12:23:22 +01:00
Franz Roters 47109b903b Merge branch 'plasticity-submodule' into 'development'
Plasticity submodule

See merge request damask/DAMASK!120
2020-02-06 10:13:48 +01:00
Martin Diehl 3f96c12e06 avoid code duplication 2020-01-29 11:09:57 +01:00
Martin Diehl 9c7f6811a2 use default string length 2020-01-26 12:17:59 +01:00
Martin Diehl e532641015 dependency on element not needed for homogeneous meshes 2020-01-25 09:24:42 +01:00
Martin Diehl cad6fc7843 Merge branch 'development' into plasticity-submodule 2020-01-13 20:57:12 +01:00
Martin Diehl 4ebd89c040 shape is known (no need for automatic allocation) 2020-01-03 13:47:04 +01:00
Martin Diehl 34af10fac1 using default string length 2019-12-21 12:39:54 +01:00
Martin Diehl f0d3b29b82 Merge branch 'development' into MiscImprovements 2019-12-21 06:53:56 +01:00
Martin Diehl 4b6388fbb2 always use HDF5 output 2019-12-18 20:05:51 +01:00
Martin Diehl 9b67ead62f removed postResults completely 2019-12-11 00:10:02 +01:00