Commit Graph

405 Commits

Author SHA1 Message Date
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
Martin Diehl 07ebd8d1b3 only damage/thermal 'homogenization' postResults is currently needed 2019-12-09 05:48:37 +01:00
Martin Diehl acc252ea5b thermal/damage constitutive (i.e. source) results are not tested 2019-12-09 05:38:15 +01:00
Martin Diehl ab1f0dc16b submodules allow inter-module communication 2019-12-04 22:31:15 +01:00
Martin Diehl c36a5bdfbb bugfix: calculation of size of postResults was wrong 2019-12-02 23:06:28 +01:00
Martin Diehl c7d675a1e9 not needed anymore 2019-11-30 16:03:18 +01:00
Martin Diehl 97474e05a8 not needed anymore 2019-11-24 11:01:04 +01:00
Martin Diehl e20477099e no crystallite output 2019-11-24 09:46:46 +01:00
Martin Diehl 50b48b8bf7 IP neighbourhood deprecated
trivial for grid and, hence, not written out.
Test for marc/abaqus/mesh would make more sense
2019-11-24 07:54:34 +01:00
Martin Diehl 872c85112f bugfix, Lp not available anymore for crystallite 2019-10-20 14:02:12 +02:00
Martin Diehl f93336b072 postResults for isotropic not needed anymore 2019-10-20 13:21:51 +02:00
Martin Diehl 11993a3ad1 phasing out crystallite output
some outputs are still needed for a few remaining tests.
2019-10-20 12:03:08 +02:00
Martin Diehl 603973e963 correct output for multipe integration points 2019-10-19 19:55:00 +02:00
Martin Diehl de912c22b4 Merge branch 'development' into HDF5-spectral-displacements 2019-10-18 12:54:12 +02:00
Franz Roters e85e13b380 [skip ci] only corrections to comments made 2019-10-11 15:21:29 +02:00
Martin Diehl 8fd9341e39 not needed 2019-09-27 14:23:19 -07:00
Martin Diehl 77011a5dba this fix restores the previous behavior of dislotwin
very strange behavior in plasticity_detect changes for dislotwin. This
fix restores the old behavior with respect to number of iterations.
Using orientation%fromMatrix() results in much more iterations and an
increase in runtime for the test from approx 6 min to 40 min. Results
still match in the end. Also, crystallite_Fp0 differs by approx 1e-15
only between the two methods.
I assume that something is wrong with either dislotwin or the
state/stress integration
2019-09-22 07:46:30 -07:00
Martin Diehl 53283d5c01 using newer interface 2019-09-20 18:20:33 -07:00
Martin Diehl ad83c8541d same names as in python 2019-09-20 17:18:09 -07:00
Martin Diehl 792dda866d rotation class has consistent set of conversions
crytallite_oriention0 was essentially a copy of material_EulerAngles
2019-09-19 19:42:28 -07:00
Martin Diehl be0d961954 cleaning 2019-09-19 13:40:03 -07:00
Eureka Pai Kulyadi cf37f8d405 added some lines to help while debugging 2019-09-06 15:45:49 -04:00
Martin Diehl 5ff4664b6d polishing 2019-06-30 22:09:51 -07:00
Martin Diehl 0c52262e4a white space adjustments 2019-06-15 15:44:15 +02:00
Martin Diehl 57a0d33293 consistent names 2019-06-15 14:33:20 +02:00
Martin Diehl 7a76740c31 using new names 2019-06-14 08:51:23 +02:00
Martin Diehl 0f531d5dee clearer name 2019-06-14 08:42:12 +02:00
Martin Diehl 9dfe71aa06 better readable 2019-06-10 09:42:23 +02:00
Martin Diehl f22fcc7271 further removal of mesh 2019-06-07 10:20:56 +02:00
Martin Diehl 042ff7e491 microstructure is only a property of the discretization
will be used only by material.f90 once crystallite is removed
2019-06-07 07:44:34 +02:00
Martin Diehl 2a35a78d93 phase out mesh_elem and theMesh 2019-06-07 07:38:48 +02:00
Martin Diehl cfc1dcf04b mesh_elem and theMesh are deprecated 2019-06-06 22:49:17 +02:00
Martin Diehl 9e8bc7d9b1 better names 2019-06-06 11:08:58 +02:00
Martin Diehl 2f40f7a727 separating 2019-06-06 08:34:01 +02:00
Martin Diehl 9b37c62e15 mesh_element is deprecated (meaningless name) 2019-06-05 10:05:59 +02:00
Martin Diehl ce9d6a5077 Merge branch 'development' into grid-mesh-cleanup 2019-05-30 23:52:37 +02:00
Martin Diehl 01e3b646c2 don't clutter the code with useless stuff
we only need to be more strict about prefixing
functions/subroutines/variables to see in which module they reside
2019-05-16 22:56:48 +02:00
Martin Diehl 028bdcff22 less compiler complaints 2019-05-16 22:24:42 +02:00
Franz Roters d29967d8b2 Merge remote-tracking branch 'remotes/origin/improve-Lp-guessing' into development 2019-05-15 08:10:46 +02:00
Martin Diehl 3be5c6a5bc Merge remote-tracking branch 'origin/development' into grid-mesh-cleanup 2019-05-14 11:13:09 +02:00
Martin Diehl a8b9b5d1c9 homogenizationAt array had wrong shape for MPI (too large) 2019-05-14 08:11:23 +02:00
Martin Diehl 8dea95879c specific for nonlocal, can be calculated during post processing 2019-05-14 07:22:29 +02:00
Martin Diehl 23cf134d6c cleaning 2 2019-05-08 22:41:09 +02:00
Martin Diehl 4eef54f4d2 Merge branch 'development' into improve-Lp-guessing 2019-04-30 10:43:47 +02:00
Philip Eisenlohr d74599d39a Merge branch 'HDF5-postprocessing' into 'development'
Hdf5 postprocessing

See merge request damask/DAMASK!72
2019-04-29 23:24:42 +02:00
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