Commit Graph

595 Commits

Author SHA1 Message Date
Martin Diehl 94b6be4e83 preferred way to say that something needs to be implemented 2021-05-29 10:54:34 +02:00
Martin Diehl 46dc6b4dab functionality to add field data on regular grids
allows to add curl, divergence, and gradient to results from the grid
solver
2021-05-28 15:38:00 +02:00
Martin Diehl 89fc2f05cf no need to attach static data
if needed, a 'kinematics' function that provides slip direction and
plane normal rotated according to the orientation would be helpful
2021-05-27 20:23:22 +02:00
Martin Diehl bfc3fe410f no direct connection to Orientation object 2021-05-27 19:10:23 +02:00
Martin Diehl 545a085c93 no need to hide, just add suffix to avoid clash with string argument 2021-05-27 18:41:42 +02:00
Martin Diehl 40698740aa fixed symmetry handling
- ort not tested, no examples, no documentation => removed
- aP is the opposite of isotropic => removed

isostropic materials can be easily specified as cI or cF, using C_44 =
1/2 * (C_11 - C_12). Acceptable extra effort for special use case

orthorhombic can be easily implemented if needed, but needs test,
documentation, and examples
2021-05-24 15:45:25 +02:00
f.basile 10c6070873 added {123} slips systems of bcc 2021-05-20 18:45:15 +02:00
Martin Diehl 85ecb68b8f Merge remote-tracking branch 'origin/development' into MatrixInteraction_clean 2021-05-11 06:00:16 +02:00
Martin Diehl 053c427509 adjusting to new interaction matrices 2021-05-09 14:50:55 +02:00
Martin Diehl b1ad8197f2 object oriented approach
Orientation (of special lattice) should not have generic attributes
Also, import at the beginning of the file
2021-04-29 20:59:54 +02:00
Martin Diehl ff8ce3840b handle infinite loop 2021-04-28 08:03:22 +02:00
Martin Diehl de79d2d897 test handling of Marc results 2021-04-26 00:28:39 +02:00
Martin Diehl 62c987badf add tracer to vtk files 2021-04-25 23:54:33 +02:00
Martin Diehl d4a46b9be8 Merge remote-tracking branch 'origin/development' into drop-old-DADF5-support 2021-04-25 17:34:14 +02:00
Martin Diehl 0459f17f58 improved usability 2021-04-25 07:58:15 +02:00
Martin Diehl 18aa6f7f12 support for string arrays
allows to add phase label from mapping. Only scalar string arrays are
allowed (no real restriction)
2021-04-24 22:50:59 +02:00
Martin Diehl 3977e230b3 documenting and ensuring consistent argument names
'name' for a dataset matches the analogy to a file name
2021-04-24 14:47:45 +02:00
Martin Diehl 4d67c85a33 clarify out-of-place behavior and document return values 2021-04-23 23:32:09 +02:00
Martin Diehl 37df78a8e0 don't show progress bar for empty iterations 2021-04-10 15:01:50 +02:00
Martin Diehl 07d573a56d more helpful dataset descriptors
phase label for single phase material not helpful
2021-04-10 09:32:21 +02:00
Martin Diehl 63b343ad87 Merge branch 'development' into allclose-rotation-orientation 2021-04-10 08:05:25 +02:00
Martin Diehl e89236b14d bugfix:
don't overwrite data when doing a 'place-like' operation to merge
datasets
2021-04-08 17:36:33 +02:00
Martin Diehl 00aed99419 naming of tests should follow naming in class 2021-04-08 13:39:48 +02:00
Martin Diehl bc1454970c mandatory symmetry
if symmetry is not of interest, damask.Rotation should be used
2021-04-06 22:49:08 +02:00
Philip Eisenlohr bf2515c4c1 removed `Grid.diff` in lieu of `__eq__` 2021-04-06 12:10:35 -04:00
Philip Eisenlohr bf4c88a39e renamed result.read to get; polishing 2021-04-06 11:39:44 -04:00
Martin Diehl d5806075d4 distinguish isclose/allclose and __eq__ 2021-04-05 22:15:03 +02:00
Martin Diehl 115e3dd4c7 simplified 2021-04-05 17:18:12 +02:00
Martin Diehl 9db1ef9ed7 polishing 2021-04-05 13:41:49 +02:00
Martin Diehl 65b03aeb2d Merge remote-tracking branch 'origin/development' into Results.read-.place 2021-04-05 10:22:49 +02:00
Martin Diehl 62c85db745 out of place behavior 2021-04-05 08:03:00 +02:00
Martin Diehl e1d57f176d simplifying
[] has a special meaning for glob, use () to indicate direction for IPF
color. It is anyways the sample direction, not a crystallographic
direction
2021-04-04 19:05:58 +02:00
Martin Diehl d78e0085fc simplified 2021-04-04 18:32:17 +02:00
Martin Diehl 6f3dc80079 simplified/using new functionality 2021-04-03 16:32:48 +02:00
Martin Diehl 1b2d892b42 keep reference folder clean 2021-04-03 07:31:31 +02:00
Martin Diehl 20d0242d59 using new logic 2021-04-02 12:21:27 +02:00
Martin Diehl cf1ce6a1fe support for masked array
masked arrays are the outcome of Result.place
2021-04-02 08:07:22 +02:00
Philip Eisenlohr f6d6aefe1d function renaming; rewording of help messages 2021-04-01 18:41:28 -04:00
Martin Diehl 84e117c6b3 polished and added tests 2021-04-01 17:26:51 +02:00
Martin Diehl 4b9fcf2f77 testing new read functionality 2021-04-01 14:55:50 +02:00
Martin Diehl 85aaaa96f3 new tests 2021-04-01 10:47:45 +02:00
Martin Diehl 8a3af87e3e Merge remote-tracking branch 'origin/development' into spring-cleaning 2021-04-01 00:09:51 +02:00
Philip Eisenlohr 07c9cf5f1a - improved reporting and slicing of table.
- implemented numpy-like `allclose` and `isclose`
2021-03-31 18:30:07 +00:00
Martin Diehl e9c65dee73 documenting and testing 2021-03-31 10:59:21 +02:00
Martin Diehl be9e00347b cleaning
dropped support for legacy table
2021-03-27 10:11:31 +01:00
Martin Diehl 111a1a76c6 cleaning 2021-03-27 07:35:49 +01:00
Martin Diehl 9fd244d8a0 cleaning 2021-03-26 20:59:49 +01:00
Martin Diehl 9e9eb391ba handle floating point errors 2021-03-25 22:33:14 +01:00
Martin Diehl 3b392281e4 consistent naming in HDF5 output 2021-03-25 19:22:59 +01:00
Martin Diehl fe0cd8e5e2 transparently handle orientations/rotations 2021-03-25 15:30:31 +01:00
Martin Diehl 1ff6a09746 tests/specifications 2021-03-23 18:51:21 +01:00
Martin Diehl 572c3204d0 let the computer do the work 2021-03-23 14:28:56 +01:00
Martin Diehl e0e088eaa8 EBSD dataset for testing
use only non-segmented data. Automatically fall back to numeric phase
names if cell_ensemble_data is not found
2021-03-23 13:42:04 +01:00
Martin Diehl 394fda5f37 improving import from DREAM.3D
- no duplicated entries even for non-segmented data
- using phase labels from file
- material.yaml: Dummy homogenization and phase
- tests to ensure correct order and match between Grid and
  ConfigMaterial
2021-03-20 12:56:18 +01:00
Martin Diehl 35c5bfcc45 reference files for DREAM.3D operations
will be used for the configuration of material.yaml and grid (using
symbolic links)
2021-03-19 11:45:04 +01:00
Philip Eisenlohr a26e586b14 More general 'delete' (accepts iterables) and backports of '|' and '|=' for union/add.
'|=' would work for python 3.9 without extra code, but '|' unfortunately casts 'damask.Config' (subclass of 'dict') to a 'dict'.
2021-03-09 19:15:15 +00:00
Philip Eisenlohr 175d724ded added keepdims=False option to project_stereographic 2021-02-27 18:38:40 -05:00
Philip Eisenlohr ea763fd941 generalized stereographic projection to cope with all three directions (x,y,Z) 2021-02-27 11:15:01 -05:00
Philip Eisenlohr 2549d7a05a [skip ci] removed debug print statement 2021-02-24 15:50:06 +01:00
Philip Eisenlohr 69316f186b fixed ConfigMaterial.from_table; 2D grid.from_table now acceptable 2021-02-23 11:50:13 -05:00
Philip Eisenlohr 4a00254dba shortened material_add and allow for multi-constituent; broken from_table... 2021-02-22 22:47:08 -05:00
Martin Diehl 0461c404f7 numpy uses __array__ for casting
avoids infinite loop of __init__, __getitem__, and shape. Found on
8cf07f6113
2021-02-22 18:52:06 +01:00
Martin Diehl 67f0ab2ce8 silence deprecation warning 2021-02-22 08:46:28 +01:00
Philip Eisenlohr f609b61157 Merge branch 'development' into account-for-floating-point-precision-in-orientation 2021-02-15 16:26:25 -05:00
Philip Eisenlohr 6bbd55d967 exchanged c for x in from_cubochoric 2021-02-15 16:25:36 -05:00
Philip Eisenlohr 002cfbd085 Merge branch 'account-for-floating-point-precision-in-orientation' into 'development'
ensures that at least one orientation in the FZ is found

See merge request damask/DAMASK!337
2021-02-15 20:53:37 +00:00
Martin Diehl fe63adcca4 mimic python error message and ensure that error is raised 2021-02-12 18:20:39 +01:00
Sharan Roongta 9e8a243d6f avoid name conflict with lattice parameter 'c' 2021-02-12 12:15:08 +01:00
Martin Diehl 4bcbcb34d0 ensures that at least one orientation in the FZ is found 2021-02-09 23:58:00 +01:00
Sharan Roongta cab5a5cec7 homogenization 'none' name misleading. 2021-02-04 15:37:40 +01:00
Sharan Roongta 14ce127dc4 fraction --> v 2021-02-04 13:46:01 +01:00
Martin Diehl d76543f759 better name 2021-01-13 14:57:58 +01:00
Martin Diehl f4247e0f35 simpler (and scipy compatible) 2021-01-13 09:35:42 +01:00
Philip Eisenlohr 2d6e6a2370 Rotation composition uses "*"; application of Rotation to object uses "@"; "apply()" works on both 2021-01-12 18:57:33 -05:00
Philip Eisenlohr f0351e403a removed duplicate test 2021-01-07 11:01:15 -05:00
Philip Eisenlohr bde66d85fc Merge branch 'development' into python-improvements 2021-01-07 10:58:33 -05:00
Philip Eisenlohr 94cfe28128 polishing help; Rotation.apply(Rotation) now acceptable. 2021-01-06 18:03:10 -05:00
Martin Diehl acbb564afc restored functionalitity for adding list.
got accidently lost
2021-01-04 07:23:14 +01:00
Martin Diehl d8b4b7e0f5 != and == work componentwise 2021-01-03 21:52:19 +01:00
Martin Diehl f48a446353 compatible with scipy.spatial.transform.Rotation
also introduced inplace variants and '/' as multiplicative inverse of
'*'
2021-01-03 16:08:22 +01:00
Martin Diehl 98723cb0ed need to handle special case of Re() = 0
ensuring that the real part is positive seems to be a good idea on first
sight, but it would be easier to simply acknowledge that qu = -qu
2021-01-03 15:50:15 +01:00
Martin Diehl 5f1399acc3 consistent behavior with other classes
python dictionary operates in-place, so wrappers for out-of-place
behavior let it use like the other DAMASK classes
2021-01-03 12:09:21 +01:00
Martin Diehl 6fe1ff8e39 fixed test for rodrigues parametrization
for angle close to 180deg, the sign of the axis does not matter
2021-01-03 11:50:45 +01:00
Philip Eisenlohr da62daf15d added test for appending rotation lists; better check for type==list 2020-12-28 12:26:09 -05:00
Sharan Roongta 6cc78cb41e Merge branch 'misc-improvements' into 'development'
Misc improvements

See merge request damask/DAMASK!302
2020-12-18 15:19:04 +01:00
Martin Diehl 35f9861818 Fortran standard is 2018
will not work for older compilers
2020-12-18 15:19:04 +01:00
Philip Eisenlohr 403ac693da need to pass init argument to dict superclass 2020-12-17 18:08:55 -05:00
Martin Diehl aad123f41b Merge branch 'table-getitem' into development 2020-12-12 19:58:42 +01:00
Philip Eisenlohr 36e4042f0b removed "where" method from Table class 2020-12-11 19:31:19 -05:00
Martin Diehl 32c2de6b91 Ensuring regular spacing for grid 2020-12-10 22:47:30 +01:00
Martin Diehl 4286fc3b82 Merge branch 'development' into misc-improvements 2020-12-10 20:21:00 +01:00
Martin Diehl 78192ef3fd clearer naming + better comments, thanks to @p.eisenlohr 2020-12-07 17:49:37 +01:00
Martin Diehl ed286ee09f Merge branch 'rename-grid-2' into misc-improvements 2020-12-05 09:50:46 +01:00
Martin Diehl 171d642dbd rename: Geom -> Grid 2020-12-04 07:50:47 +01:00
Martin Diehl 0fdefa5e78 renames:
after the rename of "grid" to "cell", the name cell should not be used
for the coordinates of the cell centers. In agreement with the names
x_p/u_p for point positions/displacements, now the "point" is used to
refer to the materialpoints (i.e. cell centers)

Additionally, "_node"/"_point" are now suffixes to
"coordinates"/"displacements".

Finally, "coords" is renamed to "coordinates"
2020-12-03 23:59:37 +01:00
Martin Diehl ac0a20696c rename: grid -> cells 2020-12-03 22:16:34 +01:00
Philip Eisenlohr 4877334986 added getitem and where functionality to Table 2020-12-02 19:25:54 -05:00
Martin Diehl d3a5979d25 meaningful result 2020-12-02 14:45:47 +01:00
Martin Diehl aa8f30d746 Merge branch 'development' into ShowGrainBoundaries 2020-12-02 12:50:04 +01:00
Martin Diehl 1c2cdbd5a1 support of all standard numpy types
+ tests
2020-11-30 12:33:21 +01:00
Martin Diehl 813ef927c4 consistent with "save_XDMF" (capitalized) 2020-11-30 09:28:46 +01:00
Martin Diehl 4d2bf37193 Merge branch 'lattice-structure-rename' into ShowGrainBoundaries 2020-11-29 20:53:58 +01:00
Martin Diehl 1d05edd7b3 fixes:
- need to get crystal structure as attribute in test (generic function
  was removed, because the crystal structure is in general not the same
  over the whole domain)
- consistent sorting of attributes
2020-11-29 09:06:47 +01:00
f.basile 31df4c04c8 added test 2020-11-25 12:51:52 +01:00
Martin Diehl 5ab2847b36 polishing 2020-11-23 20:06:34 +01:00
Martin Diehl cbe8160e13 Merge remote-tracking branch 'origin/development' into vector-mechanics 2020-11-23 19:55:34 +01:00
Franz Roters 7356330cf6 Merge remote-tracking branch 'origin/new_names_result' into development 2020-11-23 11:49:15 +01:00
Sharan Roongta 24fabdec22 Merge branch 'development' into vector-mechanics 2020-11-22 12:02:29 +01:00
Martin Diehl 2de3a6a205 fits better to stretch_left/right 2020-11-19 22:46:52 +01:00
Martin Diehl a87596cefc return rotation type (ensures proper rotation) 2020-11-19 22:36:19 +01:00
Martin Diehl a4b5c2a537 shorter (but still self-explanatory) name 2020-11-19 15:20:44 +01:00
Martin Diehl 6e5cb60132 general tensor functionality 2020-11-19 15:16:01 +01:00
Martin Diehl 903c185ee6 distinguish 'file not found' and 'invalid file' 2020-11-19 10:39:41 +01:00
Philip Eisenlohr cb22c34db2 Geom.load_ASCII now auto-shifts material indices 2020-11-18 18:25:25 -05:00
Martin Diehl 843d7d8cac Merge remote-tracking branch 'origin/development' into new_names_result 2020-11-18 21:37:52 +01:00
Martin Diehl 564ee6c96a make uvw/hkl keyword-only arguments
avoid to prefer one over the other, since they are mutually exclusive
2020-11-18 16:45:53 +01:00
Martin Diehl 870c0f7aca removed aliases
required bump of DADF5 version
2020-11-18 14:53:11 +01:00
Martin Diehl 89c748fdf1 Merge remote-tracking branch 'origin/development' into vector-mechanics 2020-11-18 13:55:05 +01:00
Martin Diehl 6bedd84759 self-explanatory names 2020-11-18 08:15:04 +01:00
Philip Eisenlohr fa25a13264 fixed typo 2020-11-16 10:34:49 -05:00
Philip Eisenlohr de20e6b35d code shortening; list_predefined() --> property "predefined" 2020-11-16 10:23:26 -05:00
Martin Diehl 5ebde607a2 einsum simplifications 2020-11-16 07:43:20 +01:00
Martin Diehl 9b9d83d93c adding '_tensor' not needed 2020-11-16 01:15:39 +01:00
Martin Diehl b893967b68 more systematic names and extended docstrings 2020-11-16 01:02:36 +01:00
Martin Diehl 6f81f5278d separating general tensor math from mechanics operations 2020-11-16 00:13:34 +01:00
Martin Diehl fd8743af5e clearly distinguish seeds for tessellation and seeds for RNG 2020-11-15 13:49:17 +01:00
Martin Diehl 1541ac0add more intuitive use 2020-11-15 12:38:54 +01:00
Martin Diehl 01d84c1477 testing also functions with graphical output 2020-11-15 11:49:52 +01:00
Martin Diehl 15af12bbb4 __ne__ is automatically set to !__eq__, __neq__ has no special meaning 2020-11-15 11:38:26 +01:00
Martin Diehl 51e5dda702 documentation + consistent string formatting 2020-11-15 10:54:20 +01:00
Martin Diehl 149fce0a7e increase test coverage 2020-11-14 19:42:52 +01:00
Martin Diehl 764aacf2a1 increasing test coverage 2020-11-14 17:54:47 +01:00
Martin Diehl 9eb4e2d0de corrected handling of scalar/array arguments
+ more tests
+ corrected handling of numpy types
2020-11-14 17:26:38 +01:00
Martin Diehl 6529613726 Merge remote-tracking branch 'origin/development' into vector-mechanics 2020-11-14 15:10:52 +01:00
Martin Diehl bacfe9f462 Merge branch 'fix-add_primitive-rotation' into 'development'
Avoids coordinate normalization _before_ rotation

See merge request damask/DAMASK!276
2020-11-13 14:11:54 +01:00
Martin Diehl 7b7b449877 testing fixed behavior 2020-11-13 06:50:57 +01:00
Martin Diehl 8429a9d695 Merge remote-tracking branch 'origin/development' into modularize-mech 2020-11-11 07:04:23 +01:00
Martin Diehl 5926f84851 WIP: refactoring Orientation=Symmetry+Rotation, Lattice=subclass of Sym, and Crystal=Lattice+Rotation 2020-11-09 21:20:56 +01:00
Sharan Roongta 287d56fc3d consistent with new output names 2020-11-08 16:01:11 +01:00
Sharan Roongta 7d4163e8a9 new format of material.yaml 2020-11-08 15:57:06 +01:00
Martin Diehl 03a68248b5 polishing 2020-11-06 13:25:00 +01:00
Martin Diehl bbaeeb02da Merge remote-tracking branch 'origin/misc-improvements' into h5py3 2020-11-06 13:19:47 +01:00
Martin Diehl 58a5d2666c ensure correct Mises mode 2020-11-06 00:10:46 +01:00
Martin Diehl 4ccd068d3b catch error in case of exisiting dataset 2020-11-05 23:00:56 +01:00
Martin Diehl e649fb195f update to use variable-length strings 2020-11-05 22:34:41 +01:00
Martin Diehl 30938a8278 correct order (brackets) 2020-11-05 21:38:00 +01:00
Martin Diehl a416f5ed5b encode/decode for h5py3 not needed anymore
attribute values with variable-length strings will be interpreted as
str, not bytes
2020-11-05 16:13:29 +01:00
Martin Diehl ae959b9cc2 allow '.' in filenames 2020-11-04 18:08:04 +01:00
Philip Eisenlohr 2867050397 corrected shortened test logic 2020-11-02 18:31:37 -05:00
Philip Eisenlohr 4fa44d388d shortened test for monotonous increase of material index after sorting 2020-11-02 18:21:51 -05:00