Commit Graph

975 Commits

Author SHA1 Message Date
Martin Diehl e779e190ea new colormap class for use in python
- based on matplotlib "ListedColormap"
- constructors
  - Array of RGB values (inherited),
  - 'from_bounds': perceptual uniform colormap within given bounds
  - 'from_predefined': from matplotlib or DAMASK templates
- export to files (WIP)
- preview on screen
2020-06-27 16:12:40 +02:00
Martin Diehl 1f9b5280cb forgotten debug statement 2020-06-26 11:47:04 +02:00
Martin Diehl a69f82e7c3 speed up vtk out
- limit to single precision
- write in background
2020-06-26 11:45:54 +02:00
Martin Diehl bfae88a364 numpy compatible 2020-06-26 11:45:30 +02:00
Martin Diehl bddb514072 more systematic reporting 2020-06-26 11:45:06 +02:00
Martin Diehl 27220a03bc not invalid anymore 2020-06-25 09:23:43 +02:00
Martin Diehl 3290e2c585 handle even obscure directions 2020-06-25 08:29:36 +02:00
Martin Diehl 5d7213b062 restore reminder to document changes
causes conflicts with outdated tests and is not urgent: postpone until
release.
2020-06-25 08:19:07 +02:00
Martin Diehl c9829f0f1f only Chuck Norris can divide by zero 2020-06-25 08:18:39 +02:00
Martin Diehl cd23937af5 Merge branch 'development' into f-strings 2020-06-25 07:46:24 +02:00
Philip Eisenlohr e64d353865 condensed scale_to_coprime; added test of scale_to_coprime 2020-06-24 18:37:33 -04:00
Philip Eisenlohr 9999560247 easier understanding of from_ang data layout interpretation 2020-06-24 18:36:43 -04:00
Philip Eisenlohr 14d3b7e66d more f-stringing 2020-06-24 16:59:55 -04:00
Philip Eisenlohr 966b6f8007 shapes init copes with integers instead of strict tuples; introduced f-strings 2020-06-24 14:18:06 -04:00
Philip Eisenlohr f8f433e826 introduced f-strings 2020-06-24 14:13:56 -04:00
Philip Eisenlohr ff858fd4c8 [skip ci] corrected help string for "srepr" 2020-06-24 20:13:09 +02:00
Philip Eisenlohr 4314ec1f37 [skip ci] started to replace .format() with f-strings 2020-06-24 11:02:37 -04:00
Anderson Wallace Paiva do Nascimento 3d93a5ff00 Merge branch 'migrate-to-pathlib' into 'development'
Migrate to pathlib

See merge request damask/DAMASK!177
2020-06-24 14:54:36 +02:00
Martin Diehl 6fa5ae6ebf literature from Karo 2020-06-22 23:14:58 +02:00
Martin Diehl e33895dd35 [skip ci] better logic 2020-06-21 10:37:09 +02:00
Martin Diehl c6a5bb8a3b is 2020 2020-06-21 10:04:45 +02:00
Martin Diehl 4c5939ef23 small polishing 2020-06-20 22:51:00 +02:00
Martin Diehl 15b43bcebf from_directions is not general, removed
polishing
2020-06-20 19:57:49 +02:00
Martin Diehl 3f63a4fdbc [skip ci] typo 2020-06-20 18:13:34 +02:00
Martin Diehl 4dae3643c9 vectorized IPF color working
results also uses the vectorized form.
Still needs careful checking
2020-06-20 17:15:13 +02:00
Martin Diehl ebdb65d31f standard broadcast_to behavior 2020-06-20 16:35:22 +02:00
Martin Diehl 262346ff5a polishing 2020-06-20 16:34:19 +02:00
Martin Diehl d93ed2bc5c several improvements:
- vectorized from_directions
- more tests (96% coverage, only random functionality is untested)
- updated documentation, folloing numpy standard
- inverse operator '~' introduced
2020-06-20 12:20:43 +02:00
Martin Diehl 055fa64f5f better readable 2020-06-19 12:25:46 +02:00
Martin Diehl 13bf7515ce WIP (broken?): vectorized calculation of IPF color 2020-06-19 10:54:13 +02:00
Martin Diehl 1648963b57 vectorized equivalent orientation calculation 2020-06-18 22:53:04 +02:00
Martin Diehl cdda556e18 small improvements
- hack for reporting multiple rotation
- bugfix for vectorized Rodrigues vector
- more general broadcasting (even more powerfull then np.broadcast_to)
2020-06-18 22:30:22 +02:00
Martin Diehl fe5e5babfe more useful for vectorized calculations 2020-06-18 22:29:28 +02:00
Martin Diehl d0d9245707 clearer intention 2020-06-16 23:35:50 +02:00
f.basile a76b5233be fix pyflakes imported but unused in pytest 2 2020-06-05 13:54:38 +02:00
f.basile 54c20cdd3c fix pyflakes imported but unused in pytest 2020-06-05 13:53:47 +02:00
f.basile cb1779ef9a fix pep257: D415 / First line should end with a period, question mark, or exclamation point (not e) 2020-06-05 13:49:30 +02:00
f.basile eae9698d22 equivalent,related and inFZ vectorized + pytest 2020-06-05 13:48:12 +02:00
f.basile ac09a2912a fix python/damask/_orientation.py contains invalid python3 code 2 2020-06-04 16:45:44 +02:00
f.basile 6a24aee171 fix python/damask/_orientation.py contains invalid python3 code 2020-06-04 16:44:57 +02:00
f.basile 3897136f85 avoid python/damask/_orientation.py exceeds line length limit (maximum line length 141 > 132) 2020-06-04 16:43:28 +02:00
f.basile 0c41e33434 orientation.equivalent takes several rotations at the same time + small test"
"

""
2020-06-04 16:39:24 +02:00
Martin Diehl a9c61ede69 bugfix: should also work if DAMASK_NUM_THREADS is not set 2020-06-03 20:24:18 +02:00
Martin Diehl bda555fd1c we are looking for a path, not for a file 2020-06-03 16:47:03 +02:00
Martin Diehl bb5485927e names like 2020.2 cannot be converted to int 2020-06-03 15:18:46 +02:00
Martin Diehl 5da1aa49bc string should be a Path object 2020-06-03 15:17:00 +02:00
Martin Diehl 9b04a45bbd bugfix (wrong variable name) 2020-06-03 13:53:00 +02:00
Martin Diehl 3be1a33820 easier to read 2020-06-03 13:32:47 +02:00
Martin Diehl c67fbacfc7 higher test coverage
- invalid operations
- legacy output
2020-06-03 11:03:31 +02:00
Martin Diehl c5d0c7e52e easier to read, more flexible 2020-06-03 10:44:40 +02:00
Martin Diehl ac9fddd9e9 Merge remote-tracking branch 'origin/development' into misc-improvements 2020-06-02 00:12:50 +02:00
Martin Diehl a51cc39613 proper docstring 2020-06-01 22:13:01 +02:00
Martin Diehl 72a0b1fae5 testing and polishing 2020-06-01 11:33:22 +02:00
Martin Diehl 7a193639fb also show datasets without unit
currently, this is only the orientation dataset
Also enable renames. Since this alters the history, the user need to
enable this
2020-05-31 23:50:06 +02:00
Martin Diehl bcb0ce5e5e typo 2020-05-31 18:51:12 +02:00
Martin Diehl adb92de8cc Merge branch 'development' into less-shell-scripts 2020-05-31 18:49:51 +02:00
Martin Diehl 421b8f4268 documented function interfaces 2020-05-30 17:31:50 +02:00
Martin Diehl 1afa00a19c testing systematically all possibilities 2020-05-28 08:05:16 +02:00
Martin Diehl 0fe450a033 Merge branch 'misc-improvements' into less-shell-scripts 2020-05-27 17:40:13 +02:00
Martin Diehl 31f72aa912 handle min/mid/max eigenvalues/vectors separately
storing as matrix/vector is not favorable for paraview and in many
cases, either min or max are of interest only
2020-05-27 17:39:46 +02:00
Martin Diehl addc4c36d1 test for XDMF writer
just ensure that it does not throw an exception
2020-05-26 08:06:39 +02:00
Martin Diehl 520dfe216a cleaning 2020-05-26 07:57:32 +02:00
Martin Diehl 908788271a Merge branch 'misc-improvements' into less-shell-scripts 2020-05-26 07:24:03 +02:00
Martin Diehl 5ad7fe04d0 bugfix:
used wrong type
2020-05-26 07:15:27 +02:00
Martin Diehl 670e08468b reorder
tests depend on other functionality that should be tested first
2020-05-26 06:49:29 +02:00
Martin Diehl 88c49fc4f4 also check values 2020-05-26 06:48:52 +02:00
Martin Diehl 7f09c90c7d different h5py versions seem to throw different errors 2020-05-26 06:39:11 +02:00
Martin Diehl 6f7c7005b0 bugfix:
- proper overwrite
- no out of bounds error for empty time selection (just pick nothin)
2020-05-25 23:54:06 +02:00
Martin Diehl 9855c61747 store vtk file in tmp directory 2020-05-25 23:39:19 +02:00
Martin Diehl 9076fbe525 testing overwrite functionality 2020-05-25 23:05:31 +02:00
Martin Diehl d6877da2b6 single source of truth 2020-05-25 20:15:45 +02:00
Martin Diehl d9d089c359 avoid repetition and do correct encode/decode 2020-05-25 20:13:57 +02:00
Martin Diehl 5d0a2aac8f polishing reporting 2020-05-25 20:13:57 +02:00
Martin Diehl b9e16ea951 overwriting datasets makes sense in special cases
but prevent user from accidently doing that and store the information
2020-05-25 20:13:57 +02:00
Martin Diehl 248f199a7b track creation time 2020-05-25 18:51:10 +02:00
Martin Diehl b1b8d02320 typo 2020-05-25 16:41:23 +02:00
Martin Diehl 9d7158b51a Merge branch 'misc-improvements' of magit1.mpie.de:/damask/DAMASK into misc-improvements 2020-05-25 16:40:23 +02:00
Martin Diehl f07eaf19d0 fixed broadcasting + corresponding test 2020-05-25 16:37:08 +02:00
Martin Diehl 784d6d09d9 cleaning 2020-05-25 15:55:38 +02:00
Martin Diehl dad7c7a2a0 Merge branch 'vectorize_rotation' into misc-improvements 2020-05-25 15:50:03 +02:00
Martin Diehl 3e2cbef780 Merge remote-tracking branch 'origin/development' into vectorize_rotation 2020-05-25 15:46:27 +02:00
Martin Diehl 77b68ab86f using rotation class for rotations 2020-05-25 09:39:39 +02:00
Martin Diehl 39505507f1 not needed anymore 2020-05-25 08:07:12 +02:00
Martin Diehl 17aa3c00dc more tests 2020-05-24 22:52:00 +02:00
Martin Diehl 296308e11e fix for rotation around 90 deg
more tests
2020-05-24 20:52:19 +02:00
Martin Diehl 34adefd4ca simplified 2020-05-24 18:30:45 +02:00
Martin Diehl 594fcb2b72 seems more appropriate 2020-05-24 15:10:53 +02:00
Martin Diehl 3231a49107 centralize functionality 2020-05-24 09:39:58 +02:00
Martin Diehl a26cba1457 calling a few missing statements 2020-05-24 09:06:11 +02:00
Martin Diehl a3d9520c4b polishing 2020-05-23 15:54:28 +02:00
Martin Diehl 82419f8649 testing selection 2020-05-23 10:38:25 +02:00
Martin Diehl 8a848979aa missing test for IPF color 2020-05-23 09:13:45 +02:00
Martin Diehl 0549e33a00 vectorized/fast 2020-05-23 08:38:57 +02:00
Martin Diehl e2cf527dfb add missing test 2020-05-23 08:19:08 +02:00
Martin Diehl b8e83cd263 do not overwrite 2020-05-22 20:42:13 +02:00
Martin Diehl 7bd681a5ed very simple test 2020-05-22 19:04:02 +02:00
Martin Diehl 11eda510aa testing functionality of Lattice separately 2020-05-22 18:45:27 +02:00
Martin Diehl b33de48528 testing broadcasting 2020-05-22 15:12:37 +02:00
Martin Diehl 23b1381eaf give credit 2020-05-21 11:30:25 +02:00
Martin Diehl 16f30a10d0 polishing 2020-05-20 23:50:08 +02:00
Martin Diehl 353fd3ceb6 more tests
now 95% test coverage of Rotation class
2020-05-20 19:16:31 +02:00
Martin Diehl 128a96e7f6 vectorized formula is enough 2020-05-20 18:13:51 +02:00
Martin Diehl bb419d49df polishing 2020-05-20 16:19:12 +02:00
Martin Diehl b59d773689 store all test data together 2020-05-20 15:26:49 +02:00
Martin Diehl 9240dd59b2 mark as internal
all functionality (+ sanity checks) can be done with the class
functionality
2020-05-20 11:11:07 +02:00
Martin Diehl 9694767997 all seems to work now 2020-05-20 09:01:38 +02:00
Martin Diehl 1d8903bb0c transition code 2020-05-20 00:18:44 +02:00
Martin Diehl 1fa4a07bb8 for backward compatibility 2020-05-19 23:39:01 +02:00
Martin Diehl 3e00269179 again some more tests 2020-05-19 23:24:12 +02:00
Martin Diehl 1c53a37de4 more tests and adjustments to tolerances 2020-05-19 21:03:30 +02:00
Martin Diehl a6b0aaffba more tests
Hotfix needed for axis angle to matrix (not used in DAMASK, needs
further investigation)
2020-05-19 19:41:50 +02:00
Martin Diehl de79a5af43 directly test the internal conversions
some work to do ...
2020-05-19 09:55:23 +02:00
Martin Diehl 065c624f94 fix for backward compatibility 2020-05-19 09:10:14 +02:00
Martin Diehl ebf05a279e standard name 2020-05-19 08:59:03 +02:00
Martin Diehl 1a3a4a800e vectorized 2020-05-19 07:59:24 +02:00
Martin Diehl b6eebcd704 small fixes (testing P=+1) 2020-05-19 07:57:40 +02:00
Martin Diehl b200894a40 bugfix and further test 2020-05-19 07:57:40 +02:00
Martin Diehl 3dc90ddb94 use the formula from the paper, not from the reference implementation
a few multiplications should be faster than a transpose
2020-05-19 07:57:40 +02:00
Martin Diehl a25dd1c438 cleaning 2020-05-19 07:57:40 +02:00
Martin Diehl 743e91a78d cleaning 2020-05-17 08:01:34 +02:00
Martin Diehl 652ece6bb3 fix: wrong capitalization 2020-05-17 07:25:17 +02:00
Martin Diehl 2550447169 Merge branch 'development' into docstring-sphinx-adjustments 2020-05-17 00:10:58 +02:00
Martin Diehl a90865c877 non-vectorized versions not needed anymore
using them only for testing purposes
2020-05-17 00:10:18 +02:00
Martin Diehl 9ba419c2c3 Merge branch 'development' into vectorize_rotation 2020-05-16 20:58:06 +02:00
Martin Diehl a4dfd7fc74 missing tests 2020-05-16 17:23:05 +02:00
Martin Diehl 044f069437 bugfix: selected wrong data 2020-05-16 17:06:55 +02:00
Martin Diehl a279785149 Merge branch 'development' into misc-improvements 2020-05-16 17:01:48 +02:00
Martin Diehl 61ac40c259 more tests 2020-05-16 13:54:53 +02:00
Martin Diehl 19638168e6 more sensible type checking and errors 2020-05-16 13:23:32 +02:00
Martin Diehl 9fa1539163 using new names 2020-05-16 11:17:12 +02:00
Martin Diehl 235f3c0df7 bugfix: copy and paste error 2020-05-16 11:16:52 +02:00
Martin Diehl e2ba294b75 bugfix: wrong variable 2020-05-16 09:40:32 +02:00
Martin Diehl 2dc46b783a simplified and tested 2020-05-16 00:58:40 +02:00
Martin Diehl dc508cdfce Merge remote-tracking branch 'origin/misc-improvements' into vectorize_rotation 2020-05-15 23:25:42 +02:00
Martin Diehl 3fd868dc45 Merge branch 'development' into vectorize_rotation 2020-05-15 23:25:36 +02:00
Martin Diehl b5b9bfaa99 need space at end of definition list 2020-05-13 11:36:16 +02:00
Martin Diehl 66b928c5af using doctest style
https://docs.python.org/3/library/doctest.html
https://numpy.org/doc/stable/docs/howto_document.html#sections (section
15)
2020-05-13 10:47:49 +02:00
Martin Diehl 6f3b526811 Merge branch 'development' into docstring-sphinx-adjustments 2020-05-13 10:38:45 +02:00
Karo 90f93d2399 Merge branch 'integrate-lambert' into 'development'
Integrate lambert

See merge request damask/DAMASK!166
2020-05-12 23:36:08 +02:00
Martin Diehl 6928a8290f less whitespace,
alingment only within one vector/tensor
2020-05-10 13:02:26 +02:00
Vitesh Shah c8701a4665 Cleanup/better readability 2020-05-08 12:15:10 +02:00
Martin Diehl b75e98ca3f forgotten debug statements
+ polishing of XDMF output
2020-05-07 19:12:05 +02:00
Martin Diehl c2b4f5516e DADF5_postResults tries to combine datasets, this does not work 2020-05-07 00:14:14 +02:00
f.basile fcd0028b83 avoid line length limit (maximum line length 182 > 132 2020-05-06 14:33:04 +02:00
f.basile d977f2ad25 already merged 2020-05-06 14:26:54 +02:00
f.basile 26f55781ae merge test into gridFilters 2020-05-06 14:26:15 +02:00
f.basile a122a307b9 div test done 2020-05-06 14:14:18 +02:00
f.basile d4091a21a8 grad test done 2020-05-06 13:05:53 +02:00
f.basile 8b4baecdee better looking test fields 2020-05-06 12:54:24 +02:00
f.basile bd518b2806 test_curl done 2020-05-06 12:44:56 +02:00
Martin Diehl 9626833339 Merge branch 'development' into pytest-curl-div-grad-2 2020-05-05 22:45:30 +02:00
Martin Diehl ef4a4dad4a shape property and numpy-like broadcasting
this makes it easy to apply a single rotation to a field
2020-05-05 14:44:08 +02:00
Martin Diehl eeb0df3a55 do not store absolute path 2020-05-05 10:42:54 +02:00
Vitesh Shah 307debebd4 Correct shapes for gradient calculations 2020-05-05 10:22:23 +02:00
Martin Diehl 31c397255d equivalent (for a valid DADF5 file) but faster 2020-05-05 10:18:48 +02:00
Vitesh Shah 0650f46ab1 Tests for gradient 2020-05-05 10:13:30 +02:00
Martin Diehl 14cdc031e0 write XDMF files
the limitation to scalar, 3-vector and 3x3-tensor comes currently from
XDMF/vtk/paraview

extension to multiple constituents and unstructured meshes might be
possible
2020-05-05 09:57:22 +02:00
Martin Diehl 6e99956b58 Merge branch 'development' into misc-improvements 2020-05-05 09:22:53 +02:00
Martin Diehl 5f3f87cd68 vectorizing cubochoric conversions 2020-05-04 17:43:38 +02:00
Martin Diehl 7d1e0850ab test + resulting bug fix 2020-05-03 17:04:03 +02:00
Martin Diehl 5d4b554b00 WIP: vectorizing 2020-05-03 07:48:13 +02:00
Martin Diehl c241eaec15 rely on correct input data 2020-05-03 07:23:46 +02:00
Martin Diehl f0bb50b97d vectorized rotation function 2020-05-02 15:22:17 +02:00
Martin Diehl c7a77ebc26 Merge branch 'development' into integrate-lambert 2020-05-02 09:21:42 +02:00
Martin Diehl 2df78e4e2f vecorized pyramid function for lambert projection 2020-05-02 09:17:31 +02:00
Martin Diehl b88f5ec0c8 clean up 2020-05-01 14:53:40 +02:00
Martin Diehl ce9bdc50a4 common variable names 2020-04-29 14:46:58 +02:00
Martin Diehl 9e79935add Merge branch 'development' into less-shell-scripts 2020-04-28 20:43:16 +02:00
Martin Diehl 9273c88782 [skip ci] WIP: migrating from PRIVATE repo 2020-04-28 09:42:27 +02:00
Martin Diehl 2d14790863 the result of a differential operator operating on a constant field is 0 2020-04-27 05:08:47 +02:00
Martin Diehl 6864b9525d go back to original dir as soon as possible 2020-04-26 14:52:27 +02:00
Martin Diehl f02c77b6d0 more reasonable tolerance
still relatively high because ctf files store position with constant
number of digits and floating dot. Hence, the precision is very low
2020-04-24 20:01:57 +02:00
Martin Diehl 1610d5a5d2 Merge branch 'development' into misc-improvements 2020-04-24 20:01:40 +02:00
Martin Diehl 707324887f inform the user about planned functionality 2020-04-24 06:52:09 +02:00
Martin Diehl 042f64200c Merge branch 'development' into vectorize_rotation 2020-04-24 06:31:14 +02:00
Francisco Jose Gallardo Basile 898cf42aca Merge branch 'fix-grid-convention' into 'development'
Fix grid convention

See merge request damask/DAMASK!160
2020-04-23 19:02:23 +02:00
Martin Diehl cc3fa156cf support change of directory one object has been created 2020-04-23 16:29:20 +02:00
Martin Diehl a0b7c51bec less strict tolerances
grid position reported by EBSD has only a few decimal places, so
rounding errors occur
2020-04-22 23:32:34 +02:00
Martin Diehl 8ba547a1b5 no need for an extra file 2020-04-22 13:23:50 +02:00
Martin Diehl a39e6b7af9 hide internal variables 2020-04-22 13:12:30 +02:00
Martin Diehl 3621dddd66 test deviatoric part for known analytic solution 2020-04-22 09:16:53 +02:00
Martin Diehl 53b8c1c893 simplified 2020-04-22 08:58:43 +02:00
Martin Diehl a8c6fdd9ba for the sake of completeness 2020-04-22 07:40:02 +02:00
Martin Diehl 7efe14be35 Merge branch 'development' into vectorize_rotation 2020-04-21 19:29:30 +02:00
Martin Diehl 97a5880d76 ensure correct shape 2020-04-21 13:22:55 +02:00
Martin Diehl 75d7238376 vectorized as_XXX 2020-04-21 12:27:50 +02:00
Martin Diehl ae3eca5f98 fix for vectorized from_random 2020-04-21 12:08:16 +02:00
Martin Diehl ac75b9e4ca improved reporting + test 2020-04-21 11:17:15 +02:00
Martin Diehl 23fc58699f vectorize Rotation.fromXXX functions 2020-04-21 10:55:45 +02:00
Martin Diehl 4a05cdbbbb copy and paste error 2020-04-21 03:26:26 +02:00
Martin Diehl 528378eba2 polishing/bugfix
* HDF5 data has x fast, therefore reshape needs to be aware of 'F' order
* Datatype for True/False is 'bool' in python, not 'Boolean'
2020-04-20 22:51:51 +02:00
Martin Diehl 00cb17ccfa commenting 2020-04-20 22:47:55 +02:00
Martin Diehl 93db1b37ca some useful information 2020-04-20 22:32:13 +02:00
Martin Diehl 25d29bf438 no need for Fortran order forward/backward 2020-04-20 20:24:55 +02:00
Martin Diehl 1ccda22ae3 nothing to flatten here 2020-04-20 20:16:25 +02:00
Martin Diehl 4db91fff03 simplified 2020-04-20 20:14:27 +02:00
Martin Diehl f519e62cd5 testing data layout checks 2020-04-20 13:56:33 +02:00
Martin Diehl 02dde3c255 test also invalid operations 2020-04-20 13:10:13 +02:00
Martin Diehl 9979eb58f4 consistent layout for grid data
has now always the shape ([x,y,z,...]) with x fastest. For conversion from or
to linear layout ([x*y*z,...]), e.g. storage in ASCII table, reshape needs
to have the 'F' option.
Credits to Vitesh and Fran for pointing this out.
2020-04-20 13:09:59 +02:00
Martin Diehl bce5ed62d5 polishing 2020-04-20 10:13:15 +02:00