Commit Graph

2775 Commits

Author SHA1 Message Date
Martin Diehl 3b8dd17e5b avoiding hard-coded constants 2020-01-26 12:25:45 +01:00
Martin Diehl fe22b84d5c maximum path length is 4096 2020-01-26 12:19:36 +01:00
Martin Diehl 9c7f6811a2 use default string length 2020-01-26 12:17:59 +01:00
Martin Diehl 1be37de993 not used (defaults are given in the respective modules) 2020-01-26 11:46:14 +01:00
Martin Diehl 24a8d7ed29 256 (pStringLen) might not be sufficient for file operations 2020-01-26 11:40:25 +01:00
Martin Diehl 9a0d8db23e [skip ci] replacement is done 2020-01-26 10:53:24 +01:00
Martin Diehl ffea69955e polishing and testing
element 11/12 (7/57 for MSC.Marc) have the same geometry type, i.e. both
are a hexahedral with 8 integration points/cells
Type 11 is linear (8 nodes), type 12 quadradic with reduced integration (20 nodes).
The modified definition ensures that the cell nodes 9-20 of element 11
are in the same order as the real nodes 9-20 of element 12. Real nodes
1-8 (corners) and 21-27 needed no modification.

Notes:
 * Documentation on https://damask.mpie.de/Documentation/ElementType is now outdated.
 * Element defition in MSC.Marc manual volume B (2001 version) is
   confusing because element numbering is sometimes clowise and
   sometimes counterclockwise. The latter one seems to be correct
2020-01-26 09:24:32 +01:00
Martin Diehl b16f4155d4 cell definition follows correct order for 11/12 (7/57 in MSC.Marc) 2020-01-26 09:06:45 +01:00
Martin Diehl 7671e257bd reorder elem 11 (Marc 7) to match 12 (Marc 57) 2020-01-26 08:17:59 +01:00
Martin Diehl 2100742a31 better have no support then untested support 2020-01-26 08:17:25 +01:00
Martin Diehl 13107abd39 not working and significat efforts needed to test it 2020-01-26 07:44:22 +01:00
Martin Diehl 8a2a9d3861 avoid direct file operations 2020-01-25 13:30:42 +01:00
Martin Diehl a2e4160e61 read file only once 2020-01-25 10:58:04 +01:00
Martin Diehl ddeebc189a [skip ci] documenting further use 2020-01-25 09:31:27 +01:00
Martin Diehl e532641015 dependency on element not needed for homogeneous meshes 2020-01-25 09:24:42 +01:00
Martin Diehl 624ede8177 clear separation between solver and DAMASK 2020-01-25 09:12:09 +01:00
Martin Diehl bdae2a40cc independent of IO 2020-01-25 08:56:39 +01:00
Martin Diehl bfe8585903 Merge branch 'development' into MiscImprovements 2020-01-24 20:08:14 +01:00
Martin Diehl 5fae924e88 Merge branch 'MiscImprovements' of magit1.mpie.de:/damask/DAMASK into MiscImprovements 2020-01-24 19:58:57 +01:00
Sharan Roongta 3d6ec6955f Merge branch 'PGI-support' into development 2020-01-24 12:24:38 +01:00
Martin Diehl b807406a70 avoid public variables 2020-01-23 14:08:14 +01:00
Martin Diehl f0ad18102d preparing to clean FEsolving
should not have solver dependent functionality
2020-01-23 13:49:12 +01:00
Martin Diehl bd67d2bb6a new mappings have clear name, not (1,2) 2020-01-23 13:16:45 +01:00
Martin Diehl 7f66d4e975 avoid fixed string length
solved issues with wrong trim and is more robust
2020-01-23 11:21:42 +01:00
Martin Diehl 7273f1461c avoid fixed string length where possible 2020-01-23 09:35:41 +01:00
Martin Diehl 1bfd8a8c21 continuousIntValues is very specific for Marc
define where it is used
2020-01-23 08:37:03 +01:00
Martin Diehl 246187865e more flexibility 2020-01-23 08:19:21 +01:00
Martin Diehl cc67b1bd3b automatic length determination for more flexibility 2020-01-23 07:29:38 +01:00
Martin Diehl d28b18267b polishing 2020-01-23 07:19:44 +01:00
Martin Diehl 2c942de45d do no rely on IO functions
should become part of the marc specific code
2020-01-22 08:55:39 +01:00
Martin Diehl 0c4790d468 solver specific, should not be reported here 2020-01-22 08:24:55 +01:00
Martin Diehl d27aac0970 clearer structure 2020-01-21 19:33:22 +01:00
Martin Diehl 0ef0db586f Merge branch 'MiscImprovements' of magit1.mpie.de:/damask/DAMASK into MiscImprovements 2020-01-21 19:24:30 +01:00
Martin Diehl 91d25ec897 rename in PETSc function 2020-01-21 18:18:27 +01:00
Martin Diehl ad2520bec1 compiles with PETSc > 3.10
but does not run
2020-01-21 15:27:11 +01:00
Martin Diehl 8ef3985da7 debug info 2020-01-21 14:58:35 +01:00
Martin Diehl 1857a5e58a skip empty lines (i.e. blank line at the end) 2020-01-21 11:45:11 +01:00
Martin Diehl 9b4f773a0b work around for bug in Intel 2020-01-21 08:43:16 +01:00
Martin Diehl 1a31ff82bb avoid code duplication 2020-01-21 07:46:32 +01:00
Martin Diehl a18057ba4d use central functionality for file IO 2020-01-21 07:37:04 +01:00
Martin Diehl 2e38582824 no need for additional variables 2020-01-21 07:08:02 +01:00
Martin Diehl 47e5b0077a fixed typo 2020-01-21 06:53:32 +01:00
Martin Diehl 843676fb10 grouping variables for better readability 2020-01-21 06:10:19 +01:00
Martin Diehl db96ee0fc2 cleaning 2020-01-20 23:46:48 +01:00
Martin Diehl 80ae2f5f6b no need for public variables 2020-01-20 23:39:24 +01:00
Martin Diehl 4d673866b8 bugfix: copy and paste error 2020-01-20 23:31:51 +01:00
Martin Diehl b98ecccf73 better readable 2020-01-20 21:06:08 +01:00
Martin Diehl 56ab4f723d polishing 2020-01-20 20:36:21 +01:00
Franz Roters 701a9b18cc Merge remote-tracking branch 'remotes/origin/marc-improvements' into development 2020-01-18 12:21:24 +01:00
Martin Diehl d722c6db4a clear separation between OO and imperative arguments 2020-01-14 11:52:22 +01:00
Martin Diehl 9d1c1fdb92 enforce Re(q) > 0 2020-01-14 11:33:18 +01:00
Martin Diehl 27bc23c2e1 missing renames
wondering how this has passed the syntax check earlier
2020-01-14 07:55:18 +01:00
Martin Diehl e70c56701f not needed 2020-01-13 21:09:25 +01:00
Martin Diehl cad6fc7843 Merge branch 'development' into plasticity-submodule 2020-01-13 20:57:12 +01:00
Martin Diehl 544ff9b6ee gfortran rejects (Intel seems fine)
assume a bug, see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93251
2020-01-13 16:11:36 +01:00
Martin Diehl bd4db68a12 support for non QUAD cell type 2020-01-13 10:03:13 +01:00
Martin Diehl 0cf27a8229 indicate parameters and report vtk type 2020-01-13 10:02:23 +01:00
Martin Diehl a025edd09f Merge branch 'MoreImprovements' into PGI-support 2020-01-13 01:44:45 +01:00
Martin Diehl 2d294aba23 need to store cell nodes, not elem nodes 2020-01-12 18:32:20 +01:00
Martin Diehl ac0fa2fce9 no need for separate allocation 2020-01-12 16:50:36 +01:00
Martin Diehl eb7bd41acd no need for special functions 2020-01-12 16:08:38 +01:00
Martin Diehl fb8494e2b8 write out nodal displacements
does not work: Not updated and wrong size
2020-01-12 15:42:08 +01:00
Martin Diehl 9d1543c9cc functionality was used only once 2020-01-12 01:54:38 +01:00
Martin Diehl 8aa13a55ce enable handling of connectivity that spreads over multiple lines
same code works also for old style tables, probably some flexibility
regarding non-CP elements is lacking ..
2020-01-12 00:58:12 +01:00
Martin Diehl 46cb787934 avoid HDF5 error when creating link twice 2020-01-12 00:55:00 +01:00
Martin Diehl 5bc1c98da7 use 0-based indexing for worldrank 2020-01-12 00:49:03 +01:00
Martin Diehl ddd8027b8a autodetect string length 2020-01-12 00:10:42 +01:00
Martin Diehl 3938f34978 Merge branch 'MiscImprovements' into MoreImprovements 2020-01-11 22:37:41 +01:00
Martin Diehl 2d9c25f8e5 Merge branch 'development' into MiscImprovements 2020-01-11 20:34:35 +01:00
Martin Diehl d4535dadb4 use American english 2020-01-11 20:33:29 +01:00
Martin Diehl ac112d2d36 tolerance needed for optimized code 2020-01-11 13:55:56 +01:00
Martin Diehl e762cb4dfd issue with gfortran < 9
the false branch of merge seems to be evaluated which results in a
signaling NaN
2020-01-11 12:36:35 +01:00
Martin Diehl 842666cc20 no overlap with Marc's code 2020-01-11 11:25:50 +01:00
Martin Diehl 3a6819f548 check for invalid operations 2020-01-11 05:19:15 +01:00
Martin Diehl f028519597 some facts from wikipedia as tests 2020-01-11 04:59:38 +01:00
Martin Diehl de95ca5906 inverse of a quaternion 2020-01-11 04:15:51 +01:00
Martin Diehl 115716b8c2 polishing/use existing functions 2020-01-11 03:58:12 +01:00
Martin Diehl c7180c3295 some more tests for quaternion operations 2020-01-11 03:50:17 +01:00
Martin Diehl aefd401e8c this is a quaternion class
it is meant to represent any quaternion, not only unit
quaternions/rotations that follow a specific convention. Need to check
in rotations.f90 where the homomorph should happen
2020-01-11 03:11:45 +01:00
Martin Diehl 79cafebffe following https://www.python.org/dev/peps/pep-0257/ 2020-01-11 03:08:39 +01:00
Philip Eisenlohr 3a08a8bbe2 always using intrinsic init when assigning quaternions as output variables 2020-01-10 12:16:18 -05:00
Martin Diehl 115a2552f8 4 newer versions are out 2020-01-10 03:19:39 +01:00
Martin Diehl 87c7a5d5a3 polishing 2020-01-10 02:11:19 +01:00
Martin Diehl 8f43f05437 stronger encapsulation 2020-01-10 01:45:00 +01:00
Martin Diehl 0771411cd8 group similar operations 2020-01-10 01:33:03 +01:00
Martin Diehl 7d2012f492 no need to exclude small values
no danger of division by zero
2020-01-10 01:29:35 +01:00
Martin Diehl 70e23fea93 polishing 2020-01-10 01:28:32 +01:00
Martin Diehl bd6f2a6b5c consistent string length 2020-01-04 19:01:36 +01:00
Martin Diehl 6b6ad52355 use variable string as return (no need for trim) 2020-01-04 18:53:55 +01:00
Martin Diehl 3999c0b630 is not used anymore (and IO_fixedXXXvalue seem to be superfluous) 2020-01-04 17:29:25 +01:00
Martin Diehl bd5f963260 polishing 2020-01-04 16:54:07 +01:00
Martin Diehl 0898cc2605 PGI has problems with forall in this case 2020-01-04 03:18:51 +01:00
Martin Diehl d2a9946f83 PGI compiler has problems with norm2 or dEq 2020-01-04 01:54:19 +01:00
Martin Diehl 00e14b9861 PGI does not allow sum in init for parameter 2020-01-04 01:04:20 +01:00
Martin Diehl e1b35be23a not used anymore 2020-01-03 15:41:46 +01:00
Martin Diehl 326e3d0824 polishing 2020-01-03 14:02:14 +01:00
Martin Diehl 886e111064 not needed 2020-01-03 13:53:23 +01:00
Martin Diehl 2975e46ca1 not needed 2020-01-03 13:52:06 +01:00
Martin Diehl 4ebd89c040 shape is known (no need for automatic allocation) 2020-01-03 13:47:04 +01:00
Martin Diehl a6ddbbd70c cleaning 2020-01-03 12:40:25 +01:00
Martin Diehl d81dc01ce0 we consider indvidual systems, not families 2020-01-03 12:14:20 +01:00
Martin Diehl e1168c09b9 use specialized functions 2020-01-02 21:28:34 +01:00
Martin Diehl c919237998 one loop is enough 2020-01-02 21:02:37 +01:00
Martin Diehl f633c67fe4 polishing 2020-01-02 20:49:02 +01:00
Martin Diehl 1ad8464821 not needed
object-oriented mesh did not work out nicely
2020-01-02 20:38:40 +01:00
Martin Diehl 6a0593bf9e everything is anyway public 2020-01-02 19:47:48 +01:00
Martin Diehl e0110c676e avoid long lines 2020-01-02 18:44:51 +01:00
Martin Diehl 27a6d1d682 private functions do not need a prefix 2020-01-02 15:14:12 +01:00
Martin Diehl ce08571cd8 documentation was outdated 2020-01-02 13:39:52 +01:00
Martin Diehl d4d419b713 better readable 2019-12-30 06:48:55 +01:00
Martin Diehl f9fcaca60b aliases are just confusing 2019-12-26 15:24:51 +01:00
Martin Diehl af0a4c5d26 unused 2019-12-26 15:24:37 +01:00
Martin Diehl be319c5a83 single source of truth 2019-12-25 09:24:42 +01:00
Martin Diehl 0d975e7023 polishing
- default string length
- Nslip/Ntwin/Ntrans not stored in state anymore
2019-12-21 12:42:18 +01:00
Martin Diehl 34af10fac1 using default string length 2019-12-21 12:39:54 +01:00
Martin Diehl 127678e2e1 use default string length 2019-12-21 12:28:24 +01:00
Martin Diehl 27483bafbc non-existing value evaluates to 0 or 1 2019-12-21 11:52:33 +01:00
Martin Diehl 747a340599 unified string length 2019-12-21 11:46:12 +01:00
Martin Diehl 83cf062318 better define only once 2019-12-21 11:19:33 +01:00
Martin Diehl ac182ef536 less variable, same style 2019-12-21 11:13:05 +01:00
Martin Diehl 6678770c43 public variables not needed anymore 2019-12-21 10:43:36 +01:00
Martin Diehl 7baf4e7f53 cleaning 2019-12-21 10:37:18 +01:00
Martin Diehl 91ad5092f4 preparing removal of old output data 2019-12-21 10:31:19 +01:00
Martin Diehl 4dc5dac831 was only needed for postResults 2019-12-21 10:20:50 +01:00
Martin Diehl af6973adf6 HDF5 out is always on 2019-12-21 10:13:52 +01:00
Martin Diehl 6425c37f2d use default string length
256 characters are more than enough for string values and keys
2019-12-21 10:07:37 +01:00
Martin Diehl 19a45d9c2b cleaning of source modules:
- offset and instance are only used locally
- output names are needed only temporarly
- HDF5 is always enabled
2019-12-21 07:55:42 +01:00
Martin Diehl 41650cdd11 use standard string length 2019-12-21 07:38:17 +01:00
Martin Diehl b10e862be8 the compiler can do the counting 2019-12-21 07:34:40 +01:00
Martin Diehl f0d3b29b82 Merge branch 'development' into MiscImprovements 2019-12-21 06:53:56 +01:00
Martin Diehl befd4e2adf avoid imports 2019-12-19 07:49:53 +01:00
Martin Diehl f0ad075802 fixed indentation 2019-12-19 00:01:44 +01:00
Martin Diehl 98e606d6f0 correct type 2019-12-19 00:00:00 +01:00
Martin Diehl 4b6388fbb2 always use HDF5 output 2019-12-18 20:05:51 +01:00
Martin Diehl 63fc125398 include origin do DADF5
requires updat of file version
2019-12-13 09:12:07 +01:00
Martin Diehl ee56b82c8a avoid spaces 2019-12-12 23:22:37 +01:00
Martin Diehl a0a99c526b some remaining IntOut format strings 2019-12-11 19:28:31 +01:00
Martin Diehl 9e801928b0 Merge branch 'development' into noPostResults 2019-12-11 09:28:45 +01:00
Martin Diehl 9b67ead62f removed postResults completely 2019-12-11 00:10:02 +01:00
Martin Diehl 8fb8e9be6e write temperature to DADF5 2019-12-10 20:25:19 +01:00
Martin Diehl db91803b80 cleaning 2019-12-10 17:52:37 +01:00
Martin Diehl ac35759c2f not a module subroutine 2019-12-10 17:25:51 +01:00
Martin Diehl 5681e661e2 DADF5-results replaces postResults 2019-12-10 07:31:09 +01:00
Martin Diehl 4be7aa990c HDF5 results output for constitutive damage models 2019-12-10 06:45:00 +01:00
Martin Diehl 5abe27ab60 only locally used 2019-12-09 06:24:37 +01:00
Martin Diehl 1c18086402 not needed anymore 2019-12-09 05:58:27 +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 c2e91ae5e1 copy and paste error, wrong array was set 2019-12-08 20:52:05 +01:00
Martin Diehl b0ce324213 Merge remote-tracking branch 'origin/development' into simple-int-formatting 2019-12-08 20:24:05 +01:00
Martin Diehl fbe2228ade avoid string length mismatch 2019-12-07 20:22:55 +01:00
Vitesh 3e269f0419 Merge branch 'only-use-rotation-class' into 'development'
Only use rotation class

See merge request damask/DAMASK!110
2019-12-07 17:33:34 +01:00
Martin Diehl 4eacc1d16d polishing 2019-12-07 15:45:37 +01:00
Martin Diehl 23944de6de less variables for better readability 2019-12-07 15:20:04 +01:00
Sharan Roongta 5a6111ec69 Merge branch 'incs-no-leading-zero' into 'development'
Incs no leading zero

See merge request damask/DAMASK!108
2019-12-07 11:32:37 +01:00
Martin Diehl 7ecb0245ec simplified (use novel i0 format specifier) 2019-12-07 11:12:46 +01:00
Martin Diehl 137b235bc1 i0 format specifier easier then hand-written IO_intOut
using variable pStringLen allows string assignment without length issues
2019-12-07 11:06:39 +01:00
Martin Diehl 04492eeb0a Merge branch 'almost-no-postResults' into only-use-rotation-class 2019-12-05 19:42:50 +01:00
Martin Diehl 78e96993df Merge branch 'almost-no-postResults' into only-use-rotation-class 2019-12-05 19:41:32 +01:00
Martin Diehl f585e1a553 not used 2019-12-05 11:20:05 +01:00
Martin Diehl ab1f0dc16b submodules allow inter-module communication 2019-12-04 22:31:15 +01:00
Martin Diehl 7d6a57dc17 Merge branch 'only-use-rotation-class' into plasticity-submodule 2019-12-04 19:02:01 +01:00
Martin Diehl cb0d39eee6 not needed anymore 2019-12-04 19:00:56 +01:00
Martin Diehl 58a190ede8 Merge branch 'development' into incs-no-leading-zero 2019-12-04 05:19:38 +01:00
Martin Diehl 93da6d3f63 was not used 2019-12-02 23:07:01 +01:00
Martin Diehl c36a5bdfbb bugfix: calculation of size of postResults was wrong 2019-12-02 23:06:28 +01:00
Martin Diehl 9882c3532a avoid use of low-level HDF5 routines 2019-12-02 22:26:08 +01:00
Martin Diehl 4ee2e551b8 migrating to submodules 2019-12-02 22:15:34 +01:00
Martin Diehl 226b715c46 file names reflect hierarchical structure 2019-12-02 21:38:41 +01:00
Martin Diehl e52a747774 submodules allow inter-module communication 2019-12-02 20:57:18 +01:00
Martin Diehl f5292019e5 use rotation class 2019-12-02 20:23:50 +01:00
Martin Diehl 8a9d3f8d6d avoid code duplication 2019-12-02 20:09:27 +01:00
Martin Diehl 83453d10ef use rotation class for consistent handling of rotations 2019-12-02 16:37:22 +01:00
Martin Diehl be099e38c2 might be of use 2019-12-02 16:22:27 +01:00
Martin Diehl 8189b50509 same functionality but tested 2019-12-02 12:58:23 +01:00
Martin Diehl 2969a53338 not used/needed anymore 2019-12-02 12:54:45 +01:00
Martin Diehl f85ee7d7fb plasticity is postResults-free 2019-12-02 12:39:44 +01:00
Martin Diehl 2b3b26087f consistent names 2019-12-01 20:07:16 +01:00
Martin Diehl 05aa38cc71 using short names 2019-12-01 15:05:49 +01:00
Martin Diehl bb152a171a consistent naming among plasticity laws 2019-12-01 10:32:45 +01:00
Martin Diehl 1cf1da5bcc consistent naming 2019-12-01 09:35:44 +01:00
Martin Diehl 33c090d2ac pointers for better readability 2019-12-01 08:55:24 +01:00
Martin Diehl afad2f2dce short and consistent naming 2019-12-01 08:39:30 +01:00
Martin Diehl df4b642400 polishing 2019-12-01 08:33:04 +01:00
Martin Diehl 07fb915a7e postResults not needed anymore 2019-12-01 08:27:56 +01:00
Martin Diehl c7d675a1e9 not needed anymore 2019-11-30 16:03:18 +01:00
Martin Diehl d93fb12e8c remove extra output
current implementation was not very general, no separation of different
dislocation types.
if output is needed, re-implemenation is straight forward
2019-11-30 14:36:54 +01:00
Martin Diehl 8f77843b0f improved naming
- clearer variable names
- no '-' in attributes
- single source of truth
2019-11-30 09:01:37 +01:00
Martin Diehl dc3fc8f70c do not clutter with leading zeros 2019-11-29 17:00:48 +01:00
Martin Diehl 530f2d3c08 Merge branch 'no-crystallite' into almost-no-postResults 2019-11-25 21:51:15 +01:00
Martin Diehl 67c8d3899d crystallite output fully removed 2019-11-25 08:44:44 +01:00
Martin Diehl 127a29ab1a cleaning 2019-11-24 13:42:19 +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 a6a6519678 more local data handling 2019-11-24 07:44:17 +01:00
Martin Diehl bb73a08cf4 better encapsulation
for results operations, do not rely directly on HDF5 module
2019-11-24 07:27:05 +01:00
Martin Diehl 1c10459a5a also use fast operation order 2019-10-30 21:09:17 +01:00
Martin Diehl ffb112b0d8 Merge branch 'development' into DADF5-improvements 2019-10-30 17:16:54 +01:00
Martin Diehl 368d4debda calculate average nodal position directly
no need to average and have second memory access
2019-10-30 14:49:08 +01:00
Martin Diehl 40507846c9 cell displacement are between nodes which start at (0,0,0) 2019-10-30 14:47:42 +01:00
Martin Diehl 1d2d7d1ea3 remove public variables
they make code unreadable and unmaintainable
2019-10-29 23:24:12 +01:00
Martin Diehl 0c6b7e1112 not nice, but working ... 2019-10-29 23:15:02 +01:00
Martin Diehl 402e681cf5 initialization of arrays for fourier transform more reasonable
- padding entries in real data array need to be zero
- all values of the fourier data arrays are explicitly set
2019-10-29 16:18:58 +01:00
Martin Diehl 1ae33cf215 avoid one loop and use filtered frequencies 2019-10-29 09:15:35 +01:00
Martin Diehl f451d19c1e forall is obsolete
some calculation simplified
2019-10-28 21:27:57 +01:00
Martin Diehl c47f516769 do not correct fluctuations 2019-10-28 21:16:43 +01:00
Martin Diehl ed8834e371 maybe we can do some guessing for CPFEM .. 2019-10-28 13:38:30 +01:00
Martin Diehl d1f719d3cf separation of "age" and "forward" not useful 2019-10-28 13:36:36 +01:00
Martin Diehl 8de6fcfc24 unifying names 2019-10-28 13:29:32 +01:00
Martin Diehl ab4a98fb53 make use of HDF5 and structure data 2019-10-28 13:17:05 +01:00
Martin Diehl 10f2c53256 clearly distiguish
- DAMASK as a materialpoint model (CPFEM, not fitting name)
- solver
2019-10-25 08:30:12 +02:00
Martin Diehl 07d8379313 further untangling 2019-10-25 07:55:23 +02:00
Martin Diehl cf8b16c066 better have one function per task
but separating ageing and forward for the solver is not trivial due to
guessing
2019-10-25 07:31:09 +02:00
Martin Diehl eb4cad17b5 avoid public variables 2019-10-25 00:53:48 +02:00
Martin Diehl 378729f5c4 clearer structure 2019-10-25 00:42:59 +02:00
Martin Diehl 9db5cbb667 trying to get rid of a global "restartWrite" variable 2019-10-24 22:50:30 +02:00
Martin Diehl 3d44e7598e works only for MSC.Marc 2019-10-24 13:57:14 +02:00
Martin Diehl 0bc4326618 better have one function per task 2019-10-24 13:46:36 +02:00
Martin Diehl 7c0bb2fdf8 consistent description 2019-10-24 13:37:40 +02:00
Martin Diehl 71def397d5 no need to age before writing restart data 2019-10-24 13:14:40 +02:00
Martin Diehl 176f6028cd CPFE2 writes current variables (like grid solvers) 2019-10-24 13:06:42 +02:00
Martin Diehl c1cf64bf00 was not used/tested 2019-10-24 12:15:22 +02:00
Martin Diehl c0c0831c92 multiple keyword are more confusing then helpful 2019-10-24 06:37:28 +02:00
Martin Diehl 50769b52a5 don't continue if calculation did not converge 2019-10-24 06:32:46 +02:00
Martin Diehl 0483fc7b3f small functions with one task are better 2019-10-24 06:16:42 +02:00
Martin Diehl 534073358e arguments are better than public variables 2019-10-23 23:06:47 +02:00
Martin Diehl 67228b46a6 modularize 2019-10-23 22:50:01 +02:00
Martin Diehl 52190382ac cleaning 2019-10-23 22:42:46 +02:00
Martin Diehl dfe65e406d restart for commercial FE solvers untested
better no code than unreliable code. If functionality is needed,
implement it without the use of publicly writeable variables
2019-10-23 22:13:31 +02:00
Martin Diehl 8a4a5a8bef Merge remote-tracking branch 'origin/development' into age-separately-2 2019-10-23 22:05:30 +02:00
Martin Diehl e1d820bff1 does not support restart 2019-10-23 22:04:50 +02:00
Martin Diehl 60a19c020d cleaning 2019-10-23 21:17:56 +02:00
Martin Diehl ac0149e55e not needed (is initialized to 0) 2019-10-21 11:48:35 +02:00
Martin Diehl 0b4605361b plotv only needed for postResults 2019-10-20 19:23:50 +02:00
Martin Diehl 872c85112f bugfix, Lp not available anymore for crystallite 2019-10-20 14:02:12 +02:00
Martin Diehl b96bd71b09 postResults not needed anymore 2019-10-20 13:24:47 +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 fe94718bcd avoid accessing null-pointer 2019-10-20 10:32:14 +02:00
Martin Diehl 65eb4e364f phasing out postResults 2019-10-19 23:14:17 +02:00
Martin Diehl 603973e963 correct output for multipe integration points 2019-10-19 19:55:00 +02:00
Martin Diehl 3de605d782 better name 2019-10-19 16:06:01 +02:00
Martin Diehl 1253c6abf1 Merge remote-tracking branch 'origin/development' into labeled-systems 2019-10-18 19:31:08 +02:00
Sharan Roongta 2c0264191e typo! 2019-10-18 17:13:19 +02:00
Martin Diehl de912c22b4 Merge branch 'development' into HDF5-spectral-displacements 2019-10-18 12:54:12 +02:00
Franz Roters fea6c268a8 Merge branch 'nonlocal-again-with-Marc' into 'development'
Nonlocal again with marc

See merge request damask/DAMASK!99
2019-10-18 11:30:15 +02:00
Franz Roters 7ddb724861 [skip ci] corrected wrongly copied comment 2019-10-18 11:27:37 +02:00
Sharan Roongta cebbfc906d Merge branch 'hex-reorder-2ndtry' into development 2019-10-17 14:58:43 +02:00
Martin Diehl b9027e3257 checking size of unallocated array does not work 2019-10-17 08:40:05 +02:00
Martin Diehl 88df7f2957 store cell normal directions 2019-10-17 07:48:57 +02:00
Martin Diehl b386dc73b2 enable to non-transposed tensor data
usually, we store per data per cell, i.e. len(shape(x)) == 3 means x is
a tensor.
Due to the use of transposed tensors (due to column-major storage order
in Fortran), we usually want to store the transpose of (3x3) tensors.
Now the default can be changed
2019-10-17 07:46:20 +02:00
Martin Diehl 008f717c08 avoid reading from file 2019-10-17 06:10:00 +02:00
Martin Diehl 2b68c108f0 read from memory, not from file 2019-10-17 05:54:08 +02:00
Martin Diehl f33a99d125 polishing 2019-10-17 00:21:48 +02:00
Martin Diehl 3f481e1cea corrected volume calculation and write to DADF5.
follows https://www.osti.gov/servlets/purl/632793/
2019-10-16 22:00:25 +02:00
Martin Diehl 9b5545229f leftover comment ... 2019-10-16 21:13:43 +02:00
Martin Diehl 95ecc05cb0 better test ... 2019-10-16 21:13:26 +02:00
Martin Diehl 0ae0e23325 volume calculation was wrong
could result in negative volumes
2019-10-16 20:56:31 +02:00
Martin Diehl dbe15f88f2 bugfix: forgot to read file
first draft of nonlocal functions for area normal, area, and volume
2019-10-16 17:19:19 +02:00
Martin Diehl 4e213514bd cleaning 2019-10-16 13:04:20 +02:00
Martin Diehl 3a1c4f95c3 some polishing 2019-10-16 08:40:27 +02:00
Martin Diehl 3abb549eab better encapsulation
inputRead fully parses the input file and gives back the required data
2019-10-16 04:45:38 +02:00
Martin Diehl 0f77d2efdb consistent use of subroutines
clearly reveal input(out) arguments
2019-10-16 04:22:21 +02:00
Martin Diehl ffb4b2a455 theMesh is not useful
maybe a shared mesh class becomes useful when Abaqus and PETSc mesh
require similar functionality
elem type can be reported directly
2019-10-16 03:57:51 +02:00
Martin Diehl 1d70d9b6ae mesh type not very beneficial 2019-10-15 21:58:49 +02:00
Martin Diehl c4db2841ab further cleaning 2019-10-15 14:16:03 +02:00
Martin Diehl aab19af131 consistent use of subroutines, not functions.
grouping file reading into meta function
2019-10-15 12:54:46 +02:00
Franz Roters 91691744c6 Merge branch 'Marc-No-nonlocal' into 'development'
Marc no nonlocal

See merge request damask/DAMASK!98
2019-10-15 10:35:37 +02:00
Martin Diehl 9ee709d214 polishing 2019-10-14 15:09:16 +02:00
Martin Diehl 1726d95a56 wrong macro was defined 2019-10-14 14:39:53 +02:00
Martin Diehl dcbd7624dd array order was wrong 2019-10-14 11:25:48 +02:00
Martin Diehl 57af822396 better readable 2019-10-14 10:36:59 +02:00
Martin Diehl 57fef8fa57 consistent naming 2019-10-14 10:08:35 +02:00
Martin Diehl fae4546cfd polishing 2019-10-14 09:37:31 +02:00
Martin Diehl 513b1906f6 bugfixes:
cell definition was not stored correctly due to wrong indexing
2019-10-14 08:23:21 +02:00
Martin Diehl c41d8eb257 use new data structure to calculate cell node coordinates 2019-10-13 23:34:03 +02:00
Martin Diehl 2b65c888c4 avoid public variables 2019-10-13 22:16:42 +02:00
Martin Diehl 33e639426a polishing 2019-10-13 21:45:08 +02:00
Martin Diehl d03efade06 better calculate nodes later 2019-10-13 21:09:49 +02:00
Martin Diehl 369cae5332 no public variables 2019-10-13 20:52:49 +02:00
Martin Diehl 6456f9891b avoid public variables 2019-10-13 20:34:20 +02:00
Martin Diehl c2a8701940 further removal of deprecated stuff 2019-10-13 19:55:25 +02:00
Martin Diehl 4999aa4e14 more cleaning 2019-10-13 19:41:55 +02:00
Martin Diehl e0cb1a87cd cleaning 2019-10-13 19:22:57 +02:00
Martin Diehl e3b16639bf native integer needs to match
otherwise, results are wrong. Therefore, we need to use our own HDF5
library since MSC provides one for 4 byte integers
2019-10-13 18:20:54 +02:00
Martin Diehl 004abc2d4e cell node definition needs to be stored 2019-10-13 13:28:04 +02:00
Martin Diehl ed1d06d6f1 make functions independent of file state 2019-10-13 11:53:35 +02:00
Martin Diehl 9ea91b84e8 easier to read and without file access 2019-10-13 11:48:27 +02:00
Martin Diehl 680ed535d7 avoid file operations and line labels 2019-10-13 10:42:34 +02:00
Martin Diehl d6b6096007 avoid global variables 2019-10-12 22:40:00 +02:00
Martin Diehl 7611513bb8 strange indentation 2019-10-12 22:18:55 +02:00
Martin Diehl 4c9bc326f6 better read file only once 2019-10-12 21:58:26 +02:00
Martin Diehl e6d25bfdab almost no shared functionality 2019-10-12 19:24:03 +02:00
Martin Diehl d8d99f3694 geometry folder needs to be created earlier 2019-10-12 16:39:44 +02:00
Martin Diehl fabab08936 did not run without HDF5 support 2019-10-12 16:25:59 +02:00
Martin Diehl 8cebf8a10d needed 2019-10-12 15:50:10 +02:00
Martin Diehl 734e6ef15f writing initial coordinates to DADF5 2019-10-12 15:03:26 +02:00
Franz Roters e85e13b380 [skip ci] only corrections to comments made 2019-10-11 15:21:29 +02:00
Martin Diehl bf35589d66 DOI was pointint to the correction 2019-10-11 12:31:46 +02:00
Martin Diehl b502300ffc get labels of slip and twin systems
this info is for HDF5 output
2019-10-10 13:11:02 +02:00
Martin Diehl 1d51443607 polishing/unifying names 2019-10-10 12:26:45 +02:00
Martin Diehl 02d7ead3ab better readable 2019-10-10 12:10:13 +02:00
Martin Diehl cf0e279d93 labels were not used
better use automated labeling of all systems
2019-10-10 10:48:55 +02:00
Martin Diehl a2a05158f2 not existing anymore 2019-10-09 01:32:19 +02:00
Martin Diehl df3bb7c559 cleaning 2019-10-08 23:53:16 +02:00
Martin Diehl 90c03d94d1 further separation for clearer structure 2019-10-08 19:08:29 +02:00
Martin Diehl b647245e39 general polishing 2019-10-08 18:52:34 +02:00
Martin Diehl 7d438d3868 not needed 2019-10-08 17:37:30 +02:00
Martin Diehl 040cd3e35d no public variables 2019-10-08 17:26:02 +02:00
Martin Diehl 16fd608da6 more reasonable name 2019-10-08 17:12:53 +02:00
Martin Diehl 098f2903ea not used anymore 2019-10-08 17:04:27 +02:00
Martin Diehl 5e79c360e9 no need for double definition 2019-10-08 10:03:03 +02:00
Martin Diehl 04272f88d5 untangling
- avoid public variables
- openMP in initialization hardly useful
- structure of init should reflect tasks:
1) reading
2) discretization
3) nonlocal stuff
2019-10-08 09:30:32 +02:00
Martin Diehl 795939c989 tests for re-ordered systems + new PETSc 3.11 2019-10-07 20:23:17 +02:00
Martin Diehl 2d7293726c more useful order 2019-10-07 18:04:29 +02:00
Martin Diehl 7f403ad50e avoid global variables 2019-10-05 20:23:33 +02:00
Martin Diehl 18b8e71f69 polishing 2019-10-05 20:09:01 +02:00
Martin Diehl 1d35699884 ip volume is only needed by plastic nonlocal 2019-10-05 19:46:08 +02:00
Martin Diehl 076aa3f72b not needed 2019-10-05 17:37:14 +02:00
Martin Diehl 019f0556e6 better have explicit arguments 2019-10-05 17:18:21 +02:00
Martin Diehl 0b29d08109 bump to DADF5 v0.3
contains displacements (for grid solver)
2019-10-03 19:02:17 +02:00
Martin Diehl fd3f8e2cc7 fixed precision even if compiler flag is not set 2019-09-29 15:59:10 -07:00
Martin Diehl d47dff9dd8 typo 2019-09-29 14:18:21 -07:00
Martin Diehl ad75ebd973 polishing 2019-09-29 11:26:57 -07:00
Martin Diehl 56c0f30687 tried to send to much data 2019-09-29 10:34:55 -07:00
Martin Diehl 8e5fd7c5e8 nodal discplacements for MPI
needs improvement with respect to readability and placement of origin
2019-09-29 10:04:07 -07:00
Martin Diehl e04b074f3c easier to read 2019-09-28 18:32:17 -07:00
Martin Diehl c71374a3f3 do not write nodes shared over several processes
- probably useful only for grid solver, FEM have connectivity matrix
anyway
- name could be improved (in fact, the index is the last not-shared
node)
2019-09-28 18:08:15 -07:00
Martin Diehl 3206ee04bc nodal displacements for grid solver
currently for non-MPI only
2019-09-27 20:38:02 -07:00
Martin Diehl 5ba6b6c244 name reflects planned functionality:
should update node and cell center coordinates
2019-09-27 15:02:36 -07:00
Martin Diehl cc54139dae no need for being compatible 2019-09-27 14:54:02 -07:00
Martin Diehl fc6b603e3d names reflect functionality 2019-09-27 14:48:51 -07:00
Martin Diehl e311c913b8 avoid public variable without write protection 2019-09-27 14:44:28 -07:00
Martin Diehl 13c62b890b module name should reflect file name 2019-09-27 14:34:34 -07:00
Martin Diehl 032b65fe65 not needed 2019-09-27 14:33:56 -07:00
Martin Diehl 8fd9341e39 not needed 2019-09-27 14:23:19 -07:00
Martin Diehl 114f21e8f7 setter for current nodal coordinates 2019-09-27 14:07:34 -07:00
Martin Diehl 2bb6f74de9 use new data structure 2019-09-27 14:07:03 -07:00
Martin Diehl 2e63affe47 [skip ci] better to read 2019-09-25 12:48:16 -07:00
Martin Diehl 9ebd91312a avoid size(xxx) of unallocated xxx 2019-09-25 12:21:57 -07:00
Martin Diehl fc090a1960 [skip ci] indentation only 2019-09-25 12:05:37 -07:00
Martin Diehl 116f43f401 [skip ci] indentation hick-up 2019-09-23 22:15:13 -07:00
Martin Diehl ffcb7a0a24 aim of the calculation clearer
don't know if brackets are honored here
2019-09-23 09:31:14 -07:00
Martin Diehl da041f43bc floating point arithmetic refinement
Intel 18.4 could not detect 0.0
2019-09-23 09:29:38 -07:00
Martin Diehl 96811f77ca not used 2019-09-23 06:50:25 -07:00
Martin Diehl 0620eae797 less code 2019-09-23 06:48:39 -07:00
Martin Diehl 611cc9bcae preprocessor does not allow spaces 2019-09-23 06:48:20 -07:00
Martin Diehl 48e0a7ad97 no floating point comparison for equality 2019-09-23 06:35:02 -07:00
Martin Diehl b8204015f5 wrong type (math_range returns integers) 2019-09-23 06:29:32 -07:00
Martin Diehl 02fef16b38 used only by MARC/Abaqus 2019-09-23 06:28:10 -07:00
Martin Diehl 78344c01ac avoid floating point comparison 2019-09-23 05:37:36 -07:00
Martin Diehl da15ff85f3 tests now operational 2019-09-23 00:11:45 -07:00
Martin Diehl 285dab4451 self consistent solutions 2019-09-22 23:53:56 -07:00
Martin Diehl bbb2441cc2 preparing more tests 2019-09-22 22:08:19 -07:00
Martin Diehl 0655ef2c90 small precision adjustments required
one in a Mio might have degenerated precision...
Also now finally testing core functionality
2019-09-22 21:58:18 -07:00
Martin Diehl c1398e5fa4 more robust agains overflow + tests 2019-09-22 21:41:00 -07:00
Martin Diehl 40099fd581 typo 2019-09-22 17:46:37 -07:00
Martin Diehl 9fd65b0617 need to relax tolerance for case 3 2019-09-22 16:57:16 -07:00
Martin Diehl d1566aa5bf GNU 8 has issues with IEEE_infinite
errors occur when running aggressively optimized code. GNU 9.1 seems to
be ok
2019-09-22 16:05:41 -07:00
Martin Diehl c0210659b6 statUnit was not opened, stat file was written to STDERR 2019-09-22 15:56:37 -07:00
Martin Diehl 26bdcd64b9 this might resolve the occasional MPI restart test failuers 2019-09-22 15:34:05 -07:00
Martin Diehl 4ff292ba70 IEEE infinite causes problems with older GNU 2019-09-22 14:46:27 -07:00
Martin Diehl 171a93ca30 also small negative values cause problems
Logic differs from the original formulation now
2019-09-22 14:17:17 -07:00
Martin Diehl 6b5b0fae22 mixed up real and aimag part in quaternion
+ some tests
2019-09-22 12:10:39 -07:00
Martin Diehl 25c9bb1cd7 testing some corner cases 2019-09-22 11:29:34 -07:00
Martin Diehl 62174a8978 testing all conversions
using norm(Delta q) ensures that the quality of the conversion is
tested, not the numerical properties of any orientation representation.
2019-09-22 11:15:27 -07:00
Martin Diehl 6e5b9ca665 unused variables 2019-09-22 08:54:59 -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 de632ec85c better names 2019-09-22 07:22:24 -07:00
Martin Diehl 372536d57e unit test for rotation class 2019-09-22 06:53:03 -07:00
Martin Diehl 5fa1ecb170 determinant calculations give slightly different results 2019-09-22 06:41:55 -07:00
Martin Diehl 30afaf2a95 bugfic: Blocksize parameter was too small 2019-09-21 23:45:54 -07:00
Martin Diehl 51bd67fa29 findloc is in gfortran 9.1 2019-09-21 23:03:53 -07:00
Martin Diehl 25d91c79af larger block size seems favorable 2019-09-21 23:03:27 -07:00
Martin Diehl 8b908fb350 some more testing 2019-09-21 21:25:55 -07:00
Martin Diehl a963f1d2c3 better explicit 2019-09-21 09:16:58 -07:00
Martin Diehl f5caee8026 issue now clearer 2019-09-21 08:23:56 -07:00
Martin Diehl 7ef4aca170 vectorized
there seems to be a conflict in the definition of the projection for
edge and screw.
Nonlocal uses the transpose compared to dislotwin/disloUCLA.
2019-09-21 08:21:39 -07:00
Martin Diehl 8013dec45f safer 2019-09-21 07:14:45 -07:00
Martin Diehl 7837a6dc01 not used ...
... and equivalentStress33 seemed wrong
... and equivalentStrain33 was confusing
2019-09-20 18:45:54 -07:00
Martin Diehl a17046cfdf full merger 2019-09-20 18:44:23 -07:00
Martin Diehl a16af9a7ad single source of truth 2019-09-20 18:33:12 -07:00
Martin Diehl 97127f9034 following standard: Output first 2019-09-20 18:28:46 -07:00
Martin Diehl 53283d5c01 using newer interface 2019-09-20 18:20:33 -07:00
Martin Diehl 09c1150e3c more error checking 2019-09-20 18:16:08 -07:00
Martin Diehl c1d1c83088 better check input data 2019-09-20 17:49:55 -07:00
Martin Diehl a8b72c3f53 even better to read 2019-09-20 17:42:55 -07:00
Martin Diehl 7fe3e3b406 easier to read 2019-09-20 17:38:57 -07:00
Martin Diehl 44125f3f09 convenience function for symmetric 4th order tensors
unfortunately, array size does not qualify to distinguish generics
2019-09-20 17:36:37 -07:00
Martin Diehl ad83c8541d same names as in python 2019-09-20 17:18:09 -07:00
Martin Diehl 7e6265b128 make use of consistency checks 2019-09-20 16:52:55 -07:00
Martin Diehl ef4204da14 Merge branch 'MiscImprovements' of magit1.mpie.de:/damask/DAMASK into MiscImprovements 2019-09-20 16:48:50 -07:00
Martin Diehl 6c0e92d5c1 functionality to rotate 4-tensor 2019-09-20 16:47:44 -07:00
Martin Diehl 4dfb1f6450 next try for MARC 2019 2019-09-21 01:07:04 +02:00
Martin Diehl 93c8aa8f75 bugfix: used uninitialized vector 2019-09-21 00:08:14 +02:00
Martin Diehl 7ff106a1fc better readable 2019-09-20 08:45:23 -07:00
Martin Diehl d69d57221d consistent type handling and stronger encapsulation
components of quaternion are private now
qu is an array, not a quaterion (as in the python module). conceptually
cleaner because eu,ax,om, etc. are also plain array
2019-09-20 08:36:16 -07:00
Martin Diehl 0b6620bfb7 Merge branch 'development' into MiscImprovements
F***ing commits to development!
2019-09-20 07:40:52 -07:00
Martin Diehl 42fba28fa1 getting rid of conversions with unclear behavior 2019-09-20 07:37:58 -07:00