Commit Graph

1553 Commits

Author SHA1 Message Date
Martin Diehl 47a9d88a15 read vector-parameters 2019-02-13 09:19:37 +01:00
Martin Diehl 3ca34c8f80 simplified 2019-02-13 09:09:30 +01:00
Martin Diehl a421525d15 preparing storage of output parameters 2019-02-13 08:06:22 +01:00
Martin Diehl f34c10a477 sdot_0 already available as parameter 2019-02-13 07:36:36 +01:00
Martin Diehl b3e705e628 polishing, fixed typo 2019-02-13 07:34:16 +01:00
Martin Diehl aa8d218ce7 was never used 2019-02-13 07:28:28 +01:00
Martin Diehl 6a0d739d48 use parameters from param structure 2019-02-13 07:24:48 +01:00
Martin Diehl 61baa66c38 avoid code duplication 2019-02-13 07:22:37 +01:00
Martin Diehl 9574dfae2d avoiding repeated reading of material.config 2019-02-13 07:04:13 +01:00
Martin Diehl 55cef533f1 conversion 3x3-matrix <-> 6-vector not helpful 2019-02-13 00:00:07 +01:00
Martin Diehl 01fe7a9731 Merge branch 'development' into New-Damage 2019-02-12 23:37:39 +01:00
Martin Diehl c9fc7ea982 cleaning
trying to find logic with less dependencies on the various
mappings
2019-02-12 23:35:22 +01:00
Martin Diehl 69d53ed869 determining output size was overly complicated
general cleaning
2019-02-12 23:20:24 +01:00
Martin Diehl be7f740e65 Merge branch 'development' into New-Thermal 2019-02-12 22:52:21 +01:00
Arko Jyoti Bhattacharjee 1a471bcd8a signal handling implemented
allows to trigger action in running simulation, i.e. writing restart or results
2019-02-11 18:46:14 +01:00
Martin Diehl 87f3e3f621 more flexible and user friendly 2019-02-11 10:08:34 +01:00
Martin Diehl af28e9cdd9 not needed anymore 2019-02-09 17:23:56 +01:00
Martin Diehl c4eef520fc initialize all variables 2019-02-09 17:21:11 +01:00
Martin Diehl 09859f1b12 wrong variable rename (was forgotten) 2019-02-09 16:53:05 +01:00
Martin Diehl de26e41684 some first steps to support debugging with the PGI compiler
norm2 and sum for initialization are not supported yet, need fixes
2019-02-09 15:02:07 +00:00
Martin Diehl 8167f09ec6 using functions as far as possible 2019-02-09 12:01:31 +01:00
Martin Diehl 5d9c3fcf27 finalize for write 2019-02-09 09:44:41 +01:00
Martin Diehl 73749dd788 merged also finalization 2019-02-09 09:38:49 +01:00
Martin Diehl d934f2b141 also modularize write 2019-02-09 09:03:31 +01:00
Martin Diehl c668260c37 avoiding code duplication 2019-02-09 08:05:29 +01:00
Martin Diehl 36662f8419 more generic formulation (works for all dimensions) 2019-02-09 07:50:33 +01:00
Martin Diehl 542ab946cc [skip ci] not needed 2019-02-04 19:05:02 +01:00
Martin Diehl 3f61c97ded don't support non-DAMASK materials 2019-02-04 18:58:36 +01:00
Martin Diehl 453f4556e5 bracket was missing 2019-02-04 00:12:27 +01:00
Martin Diehl 5320803842 bugfix: valid range for unit quaternion range is [-1,+1] 2019-02-04 00:06:38 +01:00
Martin Diehl a57aa7985a wrong name 2019-02-03 18:11:16 +01:00
Martin Diehl 59dd9b16e1 cleaning 2019-02-03 16:40:15 +01:00
Martin Diehl b0b1ea3b84 input argument not needed any more 2019-02-03 14:23:32 +01:00
Martin Diehl ec23fca057 it's a property of the element, not of the mesh 2019-02-03 14:22:06 +01:00
Martin Diehl 2d0c74d7d9 implicit dependencies made explicit 2019-02-03 14:22:06 +01:00
Martin Diehl 2aba6faf40 cleaning and making dependencies clear 2019-02-03 14:22:06 +01:00
Martin Diehl 91992debf2 Marc now works also with the module
reason, why it did NOT work earlier still not clear
2019-02-03 13:30:04 +01:00
Martin Diehl b9f93d5460 is now a subfunction 2019-02-03 11:22:23 +01:00
Martin Diehl d605adc92e avoid the use of global variables to make dependencies clear 2019-02-03 11:12:23 +01:00
Martin Diehl f45ba0ff5b functions specific for MSC.Marc and/or Abaqus
these functions are very specific for the input files and might be
better located in the respective mesh module
2019-02-03 08:27:20 +01:00
Martin Diehl 2c7553653b only used by MSC.Marc 2019-02-03 08:11:19 +01:00
Martin Diehl 40ad1aef2f was not used 2019-02-03 08:07:58 +01:00
Martin Diehl a92937a7e3 grid does reading in of geometry independently 2019-02-03 08:06:53 +01:00
Martin Diehl 1eb30f3ae7 re-ordered according to calling sequence 2019-02-02 20:49:15 +01:00
Martin Diehl bb135463c4 using data from theMesh instead of local variables 2019-02-02 20:45:19 +01:00
Martin Diehl 35c37ef9dc forgotten format specifier 2019-02-02 17:39:31 +01:00
Martin Diehl abedb5c3db ordered according to calling sequence 2019-02-02 17:24:18 +01:00
Martin Diehl 16cb9ebed9 no need to read homogenization info extra
but currently, it is not very elegant
2019-02-02 17:24:18 +01:00
Martin Diehl d51a379376 avoid jump labels 2019-02-02 17:24:18 +01:00
Martin Diehl 819ec40b44 clearer order:
1) parse file
2) set up element
3) set up mesh
2019-02-02 17:24:18 +01:00
Martin Diehl 07cca77fce left over jump marks 2019-02-02 17:19:12 +01:00
Martin Diehl 3edbfc1cb5 bugfix:
infinite loop for geom file without new line at end
also, a lot of cleaning
2019-02-02 15:10:35 +01:00
Martin Diehl 933136ec1e nNodes form element is used already 2019-02-02 13:10:21 +01:00
Martin Diehl b514bf78a5 avoiding duplicated variables 2019-02-02 12:31:07 +01:00
Martin Diehl 4f2a3d7f55 unused variables 2019-02-02 12:23:53 +01:00
Martin Diehl dcd16dda70 variables from mesh object 2019-02-02 12:15:05 +01:00
Martin Diehl 326cbd0398 Merge branch 'development' into 53-separate-mesh-for-different-solvers-3 2019-02-02 11:52:06 +01:00
Martin Diehl 8962635136 use new elem/mesh variables 2019-02-02 11:50:07 +01:00
Martin Diehl 94a24e45ee bugfixes:
theMesh%Nelems need to be set (using an intermediate function until a
routine does that)
spectral.geom file can have "N+n to N" (backwards counting)
2019-02-02 11:46:38 +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 f0b5b9fd59 unused variable 2019-02-02 10:34:38 +01:00
Martin Diehl e17278a926 using new mesh structure (initial test) 2019-02-02 10:11:18 +01:00
Martin Diehl 9975048f29 better avoid jump marks: Abaqus, Part 2 2019-02-02 09:56:11 +01:00
Martin Diehl 5810dce618 better avoid jump marks 2019-02-02 09:29:58 +01:00
Martin Diehl 4a28284058 only parse geom file once 2019-02-02 09:18:01 +01:00
Martin Diehl 3d750e7933 overwriting of init did not work 2019-02-01 21:56:38 +01:00
Martin Diehl 9a4e9e62b6 using new rotation class 2019-02-01 20:28:51 +01:00
Martin Diehl 08009079ff avoiding numerical errors (if quaternion norm is > 1.)
use consistently "self" instead of "this"
function for misorientation
2019-02-01 20:27:29 +01:00
Martin Diehl feb87c7db8 same name as in the python module 2019-02-01 19:09:17 +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 8e0556fe3e [skip ci] nicer reporting 2019-02-01 12:43:14 +01:00
Martin Diehl 614a8d694c re-implement mesh reporting later on in mesh_base 2019-02-01 12:28:18 +01:00
Martin Diehl 5f8b110f63 initialize mesh and element 2019-02-01 12:24:23 +01:00
Martin Diehl b87a09a466 not needed 2019-02-01 11:22:06 +01:00
Martin Diehl 06f67ce500 orientations module was not compiled but is needed now 2019-02-01 10:24:10 +01:00
Martin Diehl 11a509970b some comments 2019-02-01 10:17:20 +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 53a95ea84f cleaned and documented 2019-02-01 10:01:54 +01:00
Martin Diehl 17a682e883 P/epsijk parameter has nothing to do with precision 2019-02-01 08:53:57 +01:00
Martin Diehl 8a2689da0a documentation was for a lot of things that are not in here
setting constants without truncation
2019-02-01 08:52:38 +01:00
Martin Diehl a260bd2d2b Merge branch 'development' into 10-consistent-orientation-conversions 2019-02-01 07:33:52 +01:00
Martin Diehl 721af0a9a9 plastic_nonlocal still has confusing state handling 2019-02-01 07:06:19 +01:00
Martin Diehl b9c834f86a missing use from IO 2019-01-31 17:01:26 +01:00
Martin Diehl ccb320fa6e central function for less depencies 2019-01-31 14:00:26 +01:00
Martin Diehl a3e61c82dc Merge branch 'development' into 32_NewStyleNonlocal-3 2019-01-31 12:42:35 +01:00
Martin Diehl bcd9908a88 all variables/functions were not used 2019-01-31 12:23:23 +01:00
Martin Diehl fbd8912237 Merge branch 'development' into 53-separate-mesh-for-different-solvers-3 2019-01-31 11:41:45 +01:00
Martin Diehl 6b66563be7 Merge branch '46-simplification-of-crystallite-f90-NEW5' into development 2019-01-31 11:40:23 +01:00
Martin Diehl 615b166992 removed unused stuff 2019-01-31 11:39:28 +01:00
Martin Diehl beb0ca01eb define functions where needed
only use solver specific element names
2019-01-31 11:29:56 +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 370b23d5da Merge branch '46-simplification-of-crystallite-f90-NEW5' into development 2019-01-30 06:29:41 +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
Philip Eisenlohr 27b034eb76 fixed bug in recursiveRead that failed to properly {include} in the last line of a file 2019-01-29 12:32:11 -05: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 4967ac0132 need to check for significant stress only once 2019-01-29 07:22:56 +01:00
Martin Diehl 9892da717a bugfix: missing initialization 2019-01-29 07:06:16 +01:00
Martin Diehl c10922de2b vector notation easier to read 2019-01-29 07:06:01 +01:00
Martin Diehl a46b4a52a8 sanity checks in more sensible order 2019-01-29 06:41:27 +01:00
Martin Diehl 918860ab38 easier to store atomic volume instead of scaling factor 2019-01-29 06:14:58 +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 cd3cbf473c Merge remote-tracking branch 'origin/46-simplification-of-crystallite-f90-NEW5' into development 2019-01-29 00:18:46 +01:00
Martin Diehl 346561beed fixed dependencies 2019-01-28 18:46:47 +01:00
Franz Roters 8a2524b5d2 requiredShape outdated: use requiredSize 2019-01-28 15:56:05 +01:00
Franz Roters cf3efaaa02 Merge remote-tracking branch 'remotes/origin/42-new-coding-style-for-homogenization-NEW' into development 2019-01-28 15:51:34 +01:00
navyanthkusam 09dc1041a5 variable attributes adjusted
compiles now
2019-01-28 14:36:44 +01:00
navyanthkusam 848a81fd39 :Merge branch '53-separate-mesh-for-different-solvers-3' of magit1.mpie.de:damask/DAMASK into 53-separate-mesh-for-different-solvers-3 2019-01-28 14:25:16 +01:00
navyanthkusam 5101a3796f tMesh_abaqus object extends tMesh
Functionality seperated for mesh_abaqus
2019-01-28 13:59:54 +01:00
navyanthkusam 3ebc0c2e37 tMesh_marc object extends tMesh
Functionality seperated for mesh_marc
2019-01-28 13:53:44 +01:00
Martin Diehl 9260af2eaa Merge branch 'development' into 53-separate-mesh-for-different-solvers-3 2019-01-28 12:53:09 +01:00
Martin Diehl ab93a86b3e initialize element where defined 2019-01-28 12:52:28 +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 ef06e7c4fd cleaning 2019-01-27 23:36:34 +01:00
Martin Diehl 3fb99b06ca avoid calculation in output routine 2019-01-27 22:13:45 +01:00
Martin Diehl 35972fbb8e output would need to be store on demand 2019-01-27 22:12:27 +01:00
Martin Diehl 6983718685 dst for "dependentState" 2019-01-27 22:08:36 +01:00
Martin Diehl 5630b38962 stress induced transformation was never really implemented 2019-01-27 22:06:08 +01:00
Martin Diehl 4b3efac4e5 simplified 2019-01-27 19:44:53 +01:00
Martin Diehl 5903e19e18 signature as in disloUCLA 2019-01-27 16:59:44 +01:00
Martin Diehl 3fcb7d72c8 shortened 2019-01-27 16:39:36 +01:00
Martin Diehl 3843bf599c removed
- accumulatedshear_twin: linearly depends on twin volume fraction
- output of further derived quantities
2019-01-27 15:14:50 +01:00
Martin Diehl aecb5f20bf shortened 2019-01-27 12:18:42 +01:00
Martin Diehl 8c18b29420 mutual unification 2019-01-27 11:37:50 +01:00
Martin Diehl fc9e80b3c2 using real name, not compatibility aliases 2019-01-27 10:48:27 +01:00
Martin Diehl 7484849b22 Merge remote-tracking branch 'origin/development' into 42-new-coding-style-for-homogenization-NEW 2019-01-27 08:44:46 +01:00
Martin Diehl 4b2da52e87 following example of disloUCLA 2019-01-27 08:35:07 +01:00
Martin Diehl 3b5a6b2877 have internal functions at the end of the module 2019-01-27 08:17:08 +01:00
Martin Diehl e9c1299a30 requiredShape makes no sense
the return value is always a 1D array, only its size might change
2019-01-26 09:02:44 +01:00
Martin Diehl e9087f83fe small improvements
checking size of arguments (not shape)
length of lattice structure not limited to 3 any more
2019-01-25 14:01:17 +01:00
Martin Diehl 99ef353446 more sanity checks
structure string can be now of arbitrary length (technically)
only fcc,hex,bcc,bct,ort are accepted labels
2019-01-25 13:42:38 +01:00
Martin Diehl f2882f195a fuction for convergence check
avoid code repetition
2019-01-25 07:20:05 +01:00
Martin Diehl 7f6408966b Merge branch '46-simplification-of-crystallite-f90-NEW5' into development 2019-01-25 06:49:43 +01:00
Satya Gupta 1c4dc2e05f material_allocatePlasticState now takes care of setting offsetDeltaState 2019-01-24 19:18:11 -05:00
Martin Diehl 42cc9b8d2b dependency was missing 2019-01-25 00:15:46 +01:00
Martin Diehl 13f66c9ca0 Merge branch '44-column-major-access-to-interaction-matrices' into 'development'
Resolve "column-major access to interaction matrices"

See merge request damask/DAMASK!55
2019-01-24 23:14:16 +01:00
Martin Diehl f4fef6448d stress integration for all points in one function 2019-01-24 17:59:38 +01:00
Martin Diehl 5c2020c3b4 initialize element 2019-01-24 16:17:20 +01:00
Martin Diehl 7d3ae1673f not needed 2019-01-24 16:16:41 +01:00
Martin Diehl cda85b0d2d might be needed somewhere 2019-01-24 15:51:03 +01:00
Martin Diehl 738114bc27 clean and initialize element 2019-01-24 15:19:17 +01:00
Martin Diehl 7e039dff67 verbose initialization 2019-01-24 15:18:53 +01:00
Martin Diehl 8f106ca8c4 base class for mesh
no functions defined yet, only common variables
2019-01-24 14:53:23 +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 badf9e9cca object oriented element definitions 2019-01-24 10:24:10 +01:00
Martin Diehl 55845d222d function was removed 2019-01-24 10:13:40 +01:00
Martin Diehl f6cd37f11a removing non-grid(spectral) related functionality 2019-01-24 10:12:27 +01:00
Martin Diehl 012759d036 remove non-marc specific code 2019-01-24 10:04:43 +01:00
Martin Diehl 612fa31188 preparing solver-specific mesh functionality 2019-01-24 09:52:18 +01:00
Martin Diehl 558a610df1 underscore for separation 2019-01-24 09:49:21 +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