Commit Graph

2275 Commits

Author SHA1 Message Date
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