Commit Graph

1436 Commits

Author SHA1 Message Date
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
Martin Diehl bf223e8e00 helpful reporting in case of errors 2021-02-26 06:35:42 +01:00
Philip Eisenlohr 1d62341811 Fixed missing second-to-last entry in representation list. Polished help texts. 2021-02-26 03:20:28 +01:00
Philip Eisenlohr 2dea705fa9 polishing/shortening 2021-02-23 19:01:10 -05:00
Philip Eisenlohr 0b08b3d233 expanded help texts 2021-02-23 18:54:55 -05:00
Philip Eisenlohr dcc42204ec expanded help on material_add 2021-02-23 18:40:32 -05: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 5517be5078 warn the caller of deprecated functions 2021-02-22 08:49:44 +01:00
Martin Diehl 67f0ab2ce8 silence deprecation warning 2021-02-22 08:46:28 +01:00
Martin Diehl b00b4bb0ad more general handling of precision
Anaconda on windows does not have np.float128 defined, but aliases
should work
https://numpy.org/devdocs/user/basics.types.html
2021-02-19 17:03:41 +01:00
Martin Diehl f5f993435b make intention clear 2021-02-19 16:34:28 +01:00
Martin Diehl ab9661d951 don't see how ':=' should help here 2021-02-19 07:04:34 +01: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
Philip Eisenlohr 89e8ca4535 renamed and shortened _separate_arguments() 2021-02-15 11:22:42 -05:00
Sharan Roongta 099cd90890 Merge remote-tracking branch 'origin/development' into python-improvements 2021-02-13 16:51:29 +01: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
Sharan Roongta f1b8978e21 accept variables that will be used
**kwargs allowed the use of extraneous arguments
2021-02-12 11:24:12 +01:00
Martin Diehl 958936c449 Merge branch 'development' into polishing-for-release 2021-02-11 21:59:59 +01:00
Martin Diehl e8fae6b2a7 simplified 2021-02-11 21:56:53 +01:00
Martin Diehl 4e31862f0f avoid repetition 2021-02-10 18:35:13 +01:00
Martin Diehl 6895ef6b18 always write LF line endings
small pitfall: I windows users use a filehandle that results from a call
to open() without the newline option, they get still CRLF line endings
2021-02-10 10:03:35 +01:00
Martin Diehl 4bcbcb34d0 ensures that at least one orientation in the FZ is found 2021-02-09 23:58:00 +01:00
Martin Diehl 869307c5ec temperature not needed for pure mechanics
would also require to define thermal homogenization
2021-02-08 22:56:37 +01:00
Sharan Roongta 14ce127dc4 fraction --> v 2021-02-04 13:46:01 +01:00
Martin Diehl 051e3ed0ae not needed anymore 2021-02-02 12:26:08 +01:00
Martin Diehl 0f6094890a simplified
damask.environment does not offer any advantage over os.environ for
variables. After 'root_dir' was removed, the whole module became
obsolete
2021-01-15 12:14:05 +01:00
Martin Diehl 37de561938 shell variables are more robust
they will also work if Fortran and python code are installed in
different locations.
2021-01-13 18:53:16 +01:00
Martin Diehl d76543f759 better name 2021-01-13 14:57:58 +01:00
Martin Diehl a7d998dd48 standard name 2021-01-13 14:53:50 +01:00
Martin Diehl 4c35da8627 simplified 2021-01-13 11:33:28 +01:00
Martin Diehl 196902948f simplified 2021-01-13 09:54:04 +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
Vitesh Shah c3c4b05c01 handling point based data enabled 2021-01-12 13:01:11 +01:00
Vitesh Shah 6bffb91951 Added example 2021-01-11 15:16:46 +01:00
Vitesh Shah 6c367ec010 conform to docstring conventions 2021-01-11 15:05:48 +01:00
Vitesh Shah 2951617e28 able to take phaseID into account 2021-01-11 15:02:15 +01:00
Vitesh Shah dbab3c3a83 dream3D has an extra row at start for grain based data 2021-01-11 14:21:56 +01:00
Vitesh Shah 028d47034d conversion from dream3D for single phase materials 2021-01-11 13:31:08 +01: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 80b8693a66 avoid adding to existing data, i.e. when reading a file 2021-01-03 12:10:39 +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 9a278daa3f copy not needed
YAML writer does not write out references anymore
2021-01-03 12:07:02 +01:00
Martin Diehl 35ca1ffb0a consistent copy functionality 2021-01-03 12:03:40 +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
Philip Eisenlohr 4796afdd92 fix for broken representation of no-rotation orientations and averaging weights 2020-12-28 12:10:21 -05:00
Philip Eisenlohr d8b57680ec raise NotImplemented when using R*b instead of R@b 2020-12-21 15:47:18 -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
Martin Diehl 5fb0e4908b Examples reflect actual behavior 2020-12-18 07:09:05 +01:00
Philip Eisenlohr 403ac693da need to pass init argument to dict superclass 2020-12-17 18:08:55 -05:00
Philip Eisenlohr e11be7e600 preinitialize a ConfigMaterial object with 'constituents','homogenization','phase' keys 2020-12-17 10:49:33 -05:00
Martin Diehl 2dd520b4a2 P_aim should be independent from P_av
P_av is not defined after restart or cutback. Restart with change of
load case is probably still an issue
2020-12-15 08:06:50 +01: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 2e28bc127a better message in case that GUI is not possible 2020-12-10 23:44:54 +01:00
Martin Diehl a881e6e57a Merge remote-tracking branch 'origin/development' into misc-improvements 2020-12-10 23:41:59 +01: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 9b6f5ba9c6 Merge branch 'development' into compressed-hdf5 2020-12-10 00:23:22 +01:00
Martin Diehl de1708b20a missing renames + better help 2020-12-08 00:36:41 +01:00
Martin Diehl 78192ef3fd clearer naming + better comments, thanks to @p.eisenlohr 2020-12-07 17:49:37 +01:00
Martin Diehl 429b84004d more filters
- shuffle: significanlty better compression
- Fletcher32: checksum to detect errors

computational overhead is very small
2020-12-06 19:57:00 +01:00
Martin Diehl 52e3fb50bc compress.
Datasets are chunked along first timension. Chunk size (1MB for real) is
probably not optimal
2020-12-06 11:44:52 +01:00
Martin Diehl 000de75617 write orientation as plain array, not derived type 2020-12-06 08:36:16 +01:00
Martin Diehl c80e1c5420 less confusing in the standard case, more helpful in the special case 2020-12-05 10:47:42 +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 ccf1a849fa Merge branch 'ShowGrainBoundaries' into 'development'
Show grain boundaries

See merge request damask/DAMASK!297
2020-12-03 17:13:15 +01:00
Philip Eisenlohr 4877334986 added getitem and where functionality to Table 2020-12-02 19:25:54 -05:00
Philip Eisenlohr 97df1ab9b3 reinstated write functionality 2020-12-02 13:04:56 -05:00
Martin Diehl d3a5979d25 meaningful result 2020-12-02 14:45:47 +01:00
Martin Diehl c880052250 avoid evil eval 2020-12-02 14:37:44 +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 f48f5cb0e8 bugfix/better readable 2020-11-29 08:58:48 +01:00
Martin Diehl c712332e87 using consistent names for Bravais lattice in Fortran and Python 2020-11-28 22:38:12 +01:00
Martin Diehl a8da1e5ed9 Paraview 5.9 supports datasets of arbitrary length in XDMF 2020-11-27 22:57:15 +01:00
Martin Diehl 3c1f1af009 more then one direction in file 2020-11-27 20:16:06 +01:00
f.basile c2be41b9f6 remove import vtk because unused 2020-11-25 12:53:29 +01:00
f.basile eb085958f8 polishing 2020-11-25 11:32:07 +01:00
f.basile cd58278a01 returns vtk object 2020-11-25 10:39:58 +01:00
f.basile 7abc32b09c alternative for if d_s== , not sure it improves the previous 2020-11-24 19:59:46 +01:00
f.basile c8b1f8d9f1 shortest possible way i found to include directions in an elegant way 2020-11-24 17:49:58 +01:00
Francisco Jose Gallardo Basile 030062d293 Merge branch 'unit-in-vtk' into 'development'
Unit in vtk

See merge request damask/DAMASK!288
2020-11-24 16:21:01 +01:00
Martin Diehl 7fa98ef084 DEcode bytes into str 2020-11-23 20:17:04 +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
Martin Diehl f85dba2835 small polishing 2020-11-23 19:43:19 +01:00
Martin Diehl 287d44c5df Merge remote-tracking branch 'origin/development' into unit-in-vtk 2020-11-23 19:19:02 +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 c58f9f23a1 read old version while resolving merge conflicts 2020-11-22 14:32:32 +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
Philip Eisenlohr 662a033d91 adapted to VTR geom files 2020-11-19 14:26:15 -05: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 894a8de9f9 avoid name clash: as_Rodrigues_vector(vector = ...) 2020-11-19 14:31:14 +01:00
Martin Diehl 1c07152b96 sorted alphabetically 2020-11-19 14:05:59 +01:00
Martin Diehl 20d0732b2e output unit to XDMF/vtk 2020-11-19 13:45:40 +01:00
Martin Diehl 5a5dd24687 removed aliases 2020-11-19 10:50:14 +01:00
Martin Diehl 903c185ee6 distinguish 'file not found' and 'invalid file' 2020-11-19 10:39:41 +01:00
Martin Diehl c74e57f225 vtk error handling is not very helpful 2020-11-19 09:59:39 +01:00
Martin Diehl 96826dca73 Geom.load_ASCII now auto-shifts material indices 2020-11-19 09:40:19 +01:00
Martin Diehl b9b26cb2cc output results for all constituents 2020-11-18 23:36:02 +01:00
Martin Diehl 5359e05fd3 always merge homogenization results 2020-11-18 23:17:12 +01:00
Martin Diehl b885e38b3f better readable 2020-11-18 22:12:23 +01:00
Martin Diehl 4bf802a28e fixed documentation 2020-11-18 21:51:37 +01:00
Martin Diehl 843d7d8cac Merge remote-tracking branch 'origin/development' into new_names_result 2020-11-18 21:37:52 +01:00
Martin Diehl 7352431143 vectorized 2020-11-18 20:10:04 +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 c60d9cde2a merge 'mechanics' datasets
was like that for 'generic'. Needs detailed discussion in future
2020-11-18 15:52:55 +01:00
Martin Diehl 838a4ea592 [skip ci] fix for scalar values 2020-11-18 14:57:32 +01:00
Martin Diehl 870c0f7aca removed aliases
required bump of DADF5 version
2020-11-18 14:53:11 +01:00
Martin Diehl 1c9028d0b1 simplified 2020-11-18 14:01:52 +01:00
Martin Diehl 89c748fdf1 Merge remote-tracking branch 'origin/development' into vector-mechanics 2020-11-18 13:55:05 +01:00
Martin Diehl 9a1e8e3c38 for the transition period 2020-11-18 13:28:53 +01:00
f.basile 7291b95055 avoid pyflake for blank line 6 final 2020-11-18 12:29:10 +01:00
f.basile ee5822b721 avoid pyflake for blank line 5 2020-11-18 12:25:08 +01:00
f.basile 4dbfad74cb avoid pyflake for blank line 4 2020-11-18 12:24:17 +01:00
f.basile eda3837874 avoid pyflake for blank line 3 2020-11-18 12:21:09 +01:00
f.basile c681101136 avoid pyflake for blank line 2 2020-11-18 12:19:47 +01:00
f.basile 33aa888fc7 avoid pyflake for blank line 2020-11-18 12:17:05 +01:00
f.basile e8f82d52cc fix bug 2020-11-18 12:16:08 +01:00
f.basile be206d28b3 vectorized and more options 2020-11-18 12:14:12 +01:00
Martin Diehl 6bedd84759 self-explanatory names 2020-11-18 08:15:04 +01:00
Martin Diehl cd8434b991 Merge remote-tracking branch 'origin/development' into python-improvements 2020-11-16 22:57:49 +01:00
Sharan Roongta c16ad845bc Merge branch 'modernize-testing' into 'development'
Modernize testing

See merge request damask/DAMASK!280
2020-11-16 20:10:38 +01:00
Martin Diehl a8fec922d5 show name in title 2020-11-16 17:25:13 +01:00
Philip Eisenlohr 5a53f8743b added to docstring 2020-11-16 10:44:33 -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 b3955573f6 using new tests 2020-11-15 22:39:47 +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 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 05c1007add documentation improvments + acceptance of lists
example code at respective function, no space in 'or' variable names
(sphinx cannot handle this)
2020-11-15 10:31:01 +01:00
Martin Diehl 1eb9d494c7 not specific to Orientation class 2020-11-14 19:51:15 +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
Philip Eisenlohr b3e8b85d25 normalizing coordinates _before_ rotation causes wrong primitive shape for non-cubic VEs 2020-11-12 18:34:29 -05:00
Martin Diehl e15678e7a4 consistent handling of comments 2020-11-12 21:31:09 +01:00
Martin Diehl e90c20ccd6 Merge remote-tracking branch 'origin/geom-attributes-as-checked-properties' into development 2020-11-10 14:54:40 +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
Philip Eisenlohr f105631015 redefined attributes material,size,origin,comments as properties; enhanced help/descriptions 2020-11-08 12:11:30 -05: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 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 e26bb962c8 encode from str to bytes 2020-11-05 21:19:49 +01:00
Martin Diehl 68d384bbdd bugfix: missing rename 2020-11-05 21:14:02 +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 708c83dcf1 polishing 2020-11-05 07:15:59 +01:00
Martin Diehl 1fcf9cb721 don't compute silently the wrong von Mises kind
and allow the user to set it explicitly
2020-11-05 05:48:12 +01:00
Martin Diehl 7341b9830a h5py v 3.x handles strings differently 2020-11-05 05:39:45 +01:00
Martin Diehl 01af348cd9 symmetric behavior load/save
default name reflects fact that material.yaml has a fixed name
2020-11-04 21:14:08 +01:00
Martin Diehl ae959b9cc2 allow '.' in filenames 2020-11-04 18:08:04 +01:00
Philip Eisenlohr eaceb16203 added +1 to nanmax(material) as auto offset, now consistent with help and intention... 2020-11-03 17:43:57 -05:00
Sharan Roongta 11f1f4f555 Merge branch 'modernize-testing' into development 2020-11-03 12:49:19 +01:00
Philip Eisenlohr 4d4278e6dd shortened tainted_neighborhood logic 2020-11-02 18:20:52 -05:00
Martin Diehl cf958d32b4 Merge branch 'development' into vector-mechanics 2020-11-02 15:23:11 +01:00
Martin Diehl be47c744d8 Merge branch 'development' into geom-sort 2020-11-02 12:26:31 +01:00
Martin Diehl 212ed62b19 pytest-based tests
removed unused functionality from deprecated python library modules
2020-11-02 12:07:16 +01:00
Martin Diehl 086b215d94 Merge branch 'test-new-dir' into development 2020-11-01 19:29:52 +01:00
Martin Diehl cf18954db9 hint for future improvement 2020-11-01 19:20:52 +01:00
Martin Diehl 7059e6af6e might not be in the last line 2020-11-01 18:34:52 +01:00
Martin Diehl 946da2379b Merge remote-tracking branch 'origin/development' into modernize-testing 2020-11-01 10:06:52 +01:00
Martin Diehl 0a3598c338 Merge branch 'simplify-from_table' into development 2020-10-31 22:34:17 +01:00
Martin Diehl 0ebb9b611d functionality to sort material id
convenient for layered materials
2020-10-31 20:46:21 +01:00
Martin Diehl 67f69fc8a5 data is consecutive 2020-10-31 17:23:58 +01:00
Martin Diehl 8224122bb9 more user friendly error handling 2020-10-31 13:16:25 +01:00
Martin Diehl aecf2f539e allow one homogenization
quite useless ...
2020-10-30 22:26:02 +01:00
Martin Diehl c29e3650f3 don't squeeze into scalar 2020-10-30 22:24:27 +01:00
Franz Roters 392803e47d Merge remote-tracking branch 'origin/Marc_version_names' into development 2020-10-30 17:49:18 +01:00
Philip Eisenlohr 46e5023f8b Merge branch 'geom-improvements' into 'development'
Geom improvements

See merge request damask/DAMASK!264
2020-10-29 23:53:33 +01:00
Martin Diehl b2289e80b2 simplified 2020-10-29 20:09:13 +01:00
Martin Diehl 4b700d367e improved test 2020-10-29 17:59:44 +01:00
Vitesh Shah 904c338b13 Reflect version underscore of installation files 2020-10-29 15:21:40 +01:00
Martin Diehl 999cf53c07 tests+fixes 2020-10-29 07:42:41 +01:00
Martin Diehl 3be0c462a8 explicit is better then implicit:
user should sort Table according to coordinates to create geometry. This
allows to have consistent behavior for from_table in Geom and
ConfigMaterial. We always ensure to keep the order
2020-10-29 07:25:16 +01:00
Martin Diehl 1b2cd6caf6 documentation was misleading 2020-10-28 21:53:46 +01:00
Martin Diehl 4ff99a7af4 more logical layout 2020-10-28 21:51:20 +01:00
Martin Diehl 855bf124d3 faster
https://stackoverflow.com/questions/16992713
2020-10-28 16:53:16 +01:00
Sharan Roongta 21f095c9d8 Merge branch 'flexible-yaml-dump' into development 2020-10-28 16:19:17 +01:00
Martin Diehl 98e0ef3881 no loops
taken from https://stackoverflow.com/questions/3403973
2020-10-28 13:38:20 +01:00
Martin Diehl d72343c865 keep order of unique values found in table 2020-10-28 11:56:28 +01:00
Martin Diehl b38a498197 fast 2020-10-28 09:43:20 +01:00
Martin Diehl 5f03e8cf8f 0-based material indices 2020-10-28 09:31:55 +01:00
Martin Diehl 0804e6ee74 pythonic names 2020-10-27 13:50:47 +01:00
Martin Diehl fa67a2ddf8 cell_coordinates is now a property 2020-10-27 13:35:14 +01:00
Martin Diehl 201a62d7c9 easier visualization if verts have a point-cell 2020-10-27 13:19:53 +01:00
Martin Diehl 4dd387d7f5 compatibility with old pyyaml + test for numpy 2020-10-27 06:39:58 +01:00
Martin Diehl 4159ae5f3d keep order of keys 2020-10-26 21:44:38 +01:00
Martin Diehl 5834d95012 support for more types
- allow to directly use Config and its sublasses (cast to dict)
- convert numpy arrays
2020-10-26 21:38:24 +01:00
f.basile 802e09be4f python/damask/_geom.py exceeds line length limit (maximum line length 143 > 132) 2020-10-26 15:11:06 +01:00
f.basile 2715e7b1a7 a bit more vectorized 2020-10-26 15:09:32 +01:00
f.basile 1cbfa866d2 get rid of scalar variables 2020-10-23 16:23:36 +02:00
Vitesh Shah bd67296e8d MARC_VERSION as MSCVERSION 2020-10-22 11:50:13 +02:00
f.basile 7fa31a8a1b solving imported but unused pyflake 2020-10-19 12:55:35 +02:00
f.basile 4c22efc6ce added show GB 2020-10-19 12:52:10 +02:00
Martin Diehl bac7ace413 Merge remote-tracking branch 'origin/general-N_constituents' into vtr-only 2020-10-13 17:39:19 +02:00
Martin Diehl 86d91baf90 0-offset for geom 2020-10-10 10:36:15 +02:00
Martin Diehl ffabeacbcb removing functionality related to deprecated 'geom' format 2020-10-10 09:41:11 +02:00
Martin Diehl 06d11a72da better fitting name
load implies a more direct takeover.
2020-10-09 19:19:05 +02:00
Martin Diehl 57180952ec typo 2020-10-09 19:05:05 +02:00
Martin Diehl 347c88cbb6 documented 2020-10-09 14:24:29 +02:00
Martin Diehl 75401dd280 generate configuration from table 2020-10-09 07:45:20 +02:00
Martin Diehl 6ecaaa31c9 fairly general function to generate material configuration 2020-10-08 22:07:26 +02:00
Martin Diehl 952ad4f8fe functionality for geom generation in python lib 2020-10-08 18:39:05 +02:00
Martin Diehl 3050471a2d avoid circular inclusion 2020-10-08 18:05:03 +02:00
Martin Diehl 3d49678e93 new names part 2 2020-10-02 17:51:33 +02:00
Martin Diehl a04966582a Merge remote-tracking branch 'origin/development' into general-config 2020-10-02 14:54:16 +02:00
Martin Diehl b29f22f513 documenting the actually available TMPS 2020-10-01 09:25:32 +02:00
Philip Eisenlohr a59e64a8e4 renamed TPMS and added more from additional references 2020-09-30 17:28:25 -04:00
Martin Diehl 33685bc493 allow user do control output style
(numerics.yaml looks strange otherwise)
2020-09-30 12:32:37 +02:00
Martin Diehl 5ad46ae021 completely tested 2020-09-30 09:05:23 +02:00
Martin Diehl fdfcb16d15 not needed 2020-09-30 08:16:12 +02:00
Martin Diehl b383a4530e better name, subclassing for easy extension to load 2020-09-30 07:53:25 +02:00
Martin Diehl 54e4943353 get rid of shell scripts 2020-09-30 07:11:33 +02:00
Philip Eisenlohr 350f5eb66a improved from_ODF documentation 2020-09-29 12:55:00 -04:00
Philip Eisenlohr 31f86c28f4 [skip ci] added parameter description; shortened hybrid_IA pre-loop logic 2020-09-29 11:15:10 -04:00
Martin Diehl d2cfcdaca0 reference Data for ODF sampling (hybridIA) + skeleton of a test 2020-09-28 16:14:27 +02:00
Martin Diehl 95b85626d8 general hybridIA functionality 2020-09-28 07:40:43 +02:00
Martin Diehl 8ec1014134 Merge remote-tracking branch 'origin/development' into cleaning 2020-09-27 18:11:43 +02:00
Vitesh Shah e8e1960391 Consistency for docstrings 2020-09-26 18:02:25 +02:00
Vitesh Shah d0028b2eea Merge branch 'development' into fix-docstrings-for-sphinx 2020-09-26 17:56:42 +02:00
Martin Diehl 9e3506b8ef thorougly testing seeding functionality 2020-09-25 07:41:58 +02:00
Philip Eisenlohr e58cc4bfa0 removed substitute call for direct mapping; added seed from averaging of material ID cloud 2020-09-24 22:06:43 -04:00
Martin Diehl 4960cf43d4 documented and tested 2020-09-24 21:43:04 +02:00
Martin Diehl e5b414419a Poisson disc for periodic situation 2020-09-24 21:26:16 +02:00
Martin Diehl b5ea04424b Merge remote-tracking branch 'origin/development' into seeds-module 2020-09-24 20:58:53 +02:00
Philip Eisenlohr 8c8db5b99f switched "Geom.materials" to "Geom.material" 2020-09-23 17:27:15 -04:00
Martin Diehl b995f34834 Merge branch 'development' into geom-fully-out-of-place 2020-09-23 22:50:20 +02:00
Martin Diehl 8c83566b71 suppress warning
we already handle the invalid FPE
2020-09-23 21:10:39 +02:00
Martin Diehl 9bce1ddc29 simplified 2020-09-23 20:48:34 +02:00
Franz Roters 3612b17295 corrected Sphinx warnings 2020-09-23 16:21:20 +02:00
Martin Diehl c85d27baec functionality for seed creation 2020-09-23 09:45:36 +02:00
Martin Diehl ae579d8baa allow to specify seed IDs explicitly 2020-09-23 09:28:00 +02:00
Sharan Roongta 5a64dd30e1 Merge branch 'development' into modernize-testing 2020-09-23 00:05:59 +02:00
Philip Eisenlohr 683161d479 Merge branch 'development' into geom-fully-out-of-place 2020-09-22 15:22:58 -04:00
Philip Eisenlohr 05835bacd3 removed set_X(), duplicate(), and .homogenization; renamed ".microstructure" to ".materials" 2020-09-22 14:49:28 -04:00
Martin Diehl 716a406361 Merge remote-tracking branch 'origin/master' into modernize-testing 2020-09-22 16:51:36 +02:00
Franz Roters 7801f527f2 Merge remote-tracking branch 'origin/load-save-X-no-suffix' into development 2020-09-22 14:57:39 +02:00
Martin Diehl 5ef761fb98 inform the user about missing items in material.yaml 2020-09-21 19:10:20 +02:00
Philip Eisenlohr 188905766f removed Geom.get_X() methods in favor of direct property access 2020-09-21 11:13:53 -04:00
Philip Eisenlohr ca2f3f9493 set_X and add_comments methods now default to out-of-place 2020-09-21 10:29:07 -04:00
Martin Diehl 7bdd44a3d9 consistent names:
default file operations: save/load, non-default save_xx/load_xx
2020-09-20 22:04:28 +02:00
Martin Diehl 6ab88aad2b default format for Table is ASCII
hence, renamed load_ASCII/save_ASCII to load/save
2020-09-20 20:45:06 +02:00
Philip Eisenlohr 7cbd422ae3 fixed coprime error when encountering NaN 2020-09-19 13:38:32 -04:00
Martin Diehl 6f45203c98 first version of a pyaml based class for material configuration
pyaml is (again) actively maintained and the ruamel.pyaml API is
instable
2020-09-19 13:01:19 +02:00
Martin Diehl 0746a2f3a4 give visual feedback
in most tests, this is done manually
2020-09-19 08:33:15 +02:00
Martin Diehl c42511f101 small polishing 2020-09-18 16:32:59 +02:00
Martin Diehl f23b89f055 get rid of annoying warning during test 2020-09-18 16:30:22 +02:00
Martin Diehl c935ba1215 user friendly self reporting 2020-09-18 16:23:23 +02:00
Martin Diehl 1849ff0330 polishing 2020-09-18 15:03:51 +02:00
Martin Diehl cdf3323774 Merge remote-tracking branch 'origin/development' into load-save-X 2020-09-18 14:21:43 +02:00
Franz Roters 190f8a82d4 Merge branch 'texture-components-in-rotation-class2' into 'development'
Texture components in rotation class2

See merge request damask/DAMASK!225
2020-09-18 13:31:42 +02:00
Vitesh ca689193f6 Merge branch 'new-random-style' into 'development'
new style for numpy random numbers

See merge request damask/DAMASK!224
2020-09-16 11:12:55 +02:00
Martin Diehl c71768a37a polishing 2020-09-16 06:33:17 +02:00
Philip Eisenlohr ed006d1a89 streamlined fiber/spherical component sampling 2020-09-15 19:12:30 -04:00
Philip Eisenlohr c6be6fe87f fixed spherical component sampling and testing 2020-09-15 18:40:05 -04:00
Philip Eisenlohr 82ed546ff7 Merge branch 'texture-components-in-rotation-class2' of magit1.mpie.de:damask/DAMASK into texture-components-in-rotation-class2 2020-09-15 18:14:19 -04:00
Philip Eisenlohr 0a34e342e4 fixed fiber component sampling and testing 2020-09-15 18:14:15 -04:00
Philip Eisenlohr d6378ec9bc shortened from_fiber_component algorithm 2020-09-15 16:34:19 -04:00
Martin Diehl ad2badd3be [skip ci] vectorized and simplified
based on Philips ideas. Test requires from_axis_angle fix
2020-09-15 22:13:28 +02:00
Philip Eisenlohr d02617c961 fixed normalization of multidimensional axes (from_Rodrigues, from_axis_angle) 2020-09-15 13:09:24 -04:00
Martin Diehl 18c38f1284 polishing 2020-09-15 13:49:44 +02:00
Martin Diehl 2a082b7983 methods for texture component calculations 2020-09-15 12:11:46 +02:00
Martin Diehl 82e41d92ce new style for numpy random numbers
https://numpy.org/doc/stable/reference/random/index.html?highlight=random#quick-start
https://albertcthomas.github.io/good-practices-random-number-generators/
2020-09-15 08:12:02 +02:00
Philip Eisenlohr 2114c51098 revert mistakenly made header length change in array-comparison 2020-09-15 01:47:26 -04:00
Philip Eisenlohr 96ad358f83 modified file reading/writing methods to load_X, save_X formalism 2020-09-15 01:14:05 -04:00
Martin Diehl b298962101 Merge branch 'development' into table-out-of-place-only 2020-09-14 08:06:44 +02:00
Martin Diehl f6758ecc28 table class operates out of place 2020-09-14 07:04:01 +02:00
Martin Diehl a5d5638e4a allow uncompressed files 2020-09-12 13:46:55 +02:00
Philip Eisenlohr 865c90d00b first check data type, then determine length of data... 2020-09-09 19:10:03 -04:00
Philip Eisenlohr 7d9a4c08ce Do not strictly require np.ndarrays for grid, size, or origin when not essential for functionality. 2020-09-10 00:59:40 +02:00
Philip Eisenlohr 9fb3fef4b0 changed British "normalise" to US "normalize" as we (should) follow US English everywhere else. 2020-09-08 10:39:31 -04:00
Philip Eisenlohr a4785ba562 modified file writing of geom and table to a general to_file() that takes a "format=" argument 2020-09-03 10:53:16 -04:00
Philip Eisenlohr 6785062a10 Merge branch 'development' into 'vtk-to-file-method'
# Conflicts:
#   python/tests/test_VTK.py
2020-08-31 21:10:29 +02:00
Franz Roters 6986d20b32 Merge branch 'geom-out-of-place' into 'development'
Geom methods are now out-of-place, i.e. return an updated duplicate

See merge request damask/DAMASK!203
2020-08-31 12:39:01 +02:00
Martin Diehl c58693328e don't try to access folders that don't exist
this happened in the case when different types of output exist in
different phases, e.g.

Aluminum: generic, plastic, sources
Steel: generic, plastic

We are a little bit inconsistent because 'generic' and 'plastic' are
always created (even if empty) but 'sources' will only exist if it
contains output. In future, we should have only folders that actually
contain data
2020-08-28 12:45:41 +02:00
Franz Roters 9457435612 Merge branch 'polishing-for-release' into 'development'
Polishing for release

See merge request damask/DAMASK!206
2020-08-27 17:01:43 +02:00
Martin Diehl 94797f8325 ignore all kinds of FPE 2020-08-27 09:32:49 +02:00
Martin Diehl c5761831e2 more meaningful message
if add_xxx (Results) does not find matching datasets, inform the user
about this fact instead of saying
TypeError: object of type 'IMapUnorderedIterator' has no len()
2020-08-27 00:14:37 +02:00
Philip Eisenlohr c2191fd930 Make logic to mask (outside of) primitive more apparent (hopefully). 2020-08-27 00:06:52 +02:00
Martin Diehl 229f6139c8 better user experience
- no meaningless warnings regarding floating point precision
- meaningful error message for invalid header
2020-08-26 23:54:56 +02:00
Philip Eisenlohr b9f1421c6b [skip ci] removed unnecessary line continuations "\" 2020-08-26 17:27:08 -04:00
Philip Eisenlohr 3f24d16603 renamed VTK.write() to VTK.to_file() 2020-08-26 16:15:15 -04:00
Philip Eisenlohr da46e5ea9a cannot use np.linalg.norm when dealing with exponent triple 2020-08-26 15:49:25 -04:00
Philip Eisenlohr 06b524d13e added 'iso' as possible lattice (with no symmetry) 2020-08-26 21:39:20 +02:00
Sharan Roongta 68c2908ba8 Merge branch 'rename-hdf5-output' into development 2020-08-26 12:34:56 +02:00
Martin Diehl bf401e56cf avoid name clash with damask.Geom 2020-08-25 09:56:24 +02:00
Martin Diehl 800dac5d01 correct type handling
no reason to calculate fill twice
2020-08-25 08:47:24 +02:00
Martin Diehl 96d4975fc4 using numpy functionality 2020-08-25 08:34:04 +02:00
Martin Diehl 51da632108 aiming at testing each individual statement 2020-08-25 07:49:56 +02:00
Martin Diehl 2d98325fa4 increasing test coverage 2020-08-25 01:21:17 +02:00
Martin Diehl 2751cdb6af support comments also in vtr 2020-08-25 00:40:14 +02:00
Martin Diehl 9a2ac31545 explicit is better then implicit 2020-08-24 23:35:46 +02:00
Martin Diehl 0ceba2a6d3 use central functionality 2020-08-24 23:28:26 +02:00
Martin Diehl 71e08ea66a small fixes:
- numpy has multiple float variants
- start renaming microstructure -> materialpoint where it does not hurt
- no need for type check if comparing against set of valid directions
  (or I miss some corner cases)
2020-08-24 23:23:47 +02:00
Philip Eisenlohr 2560f014a3 Merge remote-tracking branch 'origin/increase-geom-test-coverage' into geom-out-of-place 2020-08-24 17:17:31 -04:00
Martin Diehl 55443a3ff5 reflect change of variable names in file layout version 2020-08-24 22:54:09 +02:00
Martin Diehl 279d43ccc6 include version info + date in comments (Table class) 2020-08-24 19:04:59 +02:00
Martin Diehl 9d505c8518 better readable
- more explicit reporting
- always relative import for DAMASK
2020-08-24 09:58:24 +02:00
Martin Diehl 0d3ef29554 more logical encapsulation
- getting data out of VTK is a functionality of the VTK class. Need to
  discuss whether the VTK class should also provide grid and size (works
  only for rectilinear grid, so hiding VTK type is not possible
  anymore), but the current situation requires the Geom class to rely on
  'internals' of the VTK class
- header is specific to *.geom format, not to Geom objects.
2020-08-24 06:46:22 +02:00
Martin Diehl 507a165733 functionality for getting data
- handy for Geom class, but could be of general interest
- add/set/get comments: follows same functions as for Geom class
2020-08-24 06:40:36 +02:00
Philip Eisenlohr 446ac03b07 All geom methods are now out-of-place, i.e. return an updated duplicate (to allow for daisy chaining).
* Added comments when methods acted.
* Added diff method
* Added flip method
* Fixed add_primitive inversion bug (again...)
* Fixed cell centering bug in add_primitive

* Added missing tests
2020-08-23 19:43:46 -04:00
Martin Diehl 44015082a3 dead code (copy and paste error) 2020-08-24 00:34:07 +02:00
Martin Diehl 9867830d68 store history of geometry modifications 2020-08-23 23:52:48 +02:00
Martin Diehl a1c78b778a WIP: track history in VTK objects 2020-08-23 23:22:53 +02:00
Martin Diehl 7b50a3b364 material.config is not used anymore 2020-08-23 15:20:11 +02:00
Martin Diehl d65371d42f removed unused and untested functionality
PEP 20: Explicit is better than implicit.
2020-08-23 12:55:55 +02:00
Martin Diehl 6f79573140 more test coverage 2020-08-23 11:05:56 +02:00
Martin Diehl 07af7b2f98 geom is written to vtr exlcusively, not to general vtk
base tests on vtr
2020-08-23 10:50:15 +02:00
Martin Diehl 64e7582e8e consistent interface to ndimage filters
Boolean 'periodic' sets mode to 'wrap' or 'nearest'
2020-08-23 10:02:22 +02:00
Martin Diehl 975db01f31 microstructure -> materialpoint
at least for new functionality
2020-08-23 09:38:08 +02:00
Martin Diehl 5fb2d30ee4 fast and for arbitrary type 2020-08-23 09:02:17 +02:00
Martin Diehl b731b1e768 Geom.to_vtk improvements
- should be integer
- should have a test
2020-08-23 08:49:49 +02:00
Philip Eisenlohr 2b09a7d31d fixed Geom.canvas bug, added Geom.from_vtk, added mode,selection options to Geom.clean 2020-08-22 21:36:11 -04:00
Philip Eisenlohr 499ce01748 added Geom.copy() method 2020-08-22 13:57:31 -04:00
Martin Diehl ff7eed4477 (unified) type hints 2020-08-08 20:56:17 +02:00
Martin Diehl 55a620b378 migrating to library 2020-08-08 20:14:30 +02:00
Martin Diehl a0e0f28e51 migrating shell scripts to library 2020-08-08 19:42:34 +02:00
Martin Diehl 5fcff876f9 replace selectively
useful for vicinity_offset and add_primitive
2020-08-08 18:41:47 +02:00
Martin Diehl 56eb57d253 homogenization will be removed soon, stop reporting it 2020-08-08 18:24:17 +02:00
Karo 7824a61f2e Merge branch 'user_defined_add_calculation' into 'development'
User defined add calculation

See merge request damask/DAMASK!195
2020-08-06 00:53:16 +02:00
Philip Eisenlohr ce00371f52 fixed rounding bug and updated reference images 2020-08-05 10:44:10 -04:00
Philip Eisenlohr e4103564a9 16bit color index; proper rounding of index values 2020-08-05 10:08:48 -04:00
Philip Eisenlohr e73ffd6da9 fixed and condensed lo,hi range assignment 2020-08-04 20:29:27 +02:00