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
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
Martin Diehl
78192ef3fd
clearer naming + better comments, thanks to @p.eisenlohr
2020-12-07 17:49:37 +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
a87596cefc
return rotation type (ensures proper rotation)
2020-11-19 22:36:19 +01:00
Martin Diehl
894a8de9f9
avoid name clash: as_Rodrigues_vector(vector = ...)
2020-11-19 14:31:14 +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
Martin Diehl
6bedd84759
self-explanatory names
2020-11-18 08:15:04 +01:00
Martin Diehl
5ebde607a2
einsum simplifications
2020-11-16 07:43:20 +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
15af12bbb4
__ne__ is automatically set to !__eq__, __neq__ has no special meaning
2020-11-15 11:38:26 +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
5926f84851
WIP: refactoring Orientation=Symmetry+Rotation, Lattice=subclass of Sym, and Crystal=Lattice+Rotation
2020-11-09 21:20:56 +01: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
Franz Roters
3612b17295
corrected Sphinx warnings
2020-09-23 16:21:20 +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
9fb3fef4b0
changed British "normalise" to US "normalize" as we (should) follow US English everywhere else.
2020-09-08 10:39:31 -04:00
Martin Diehl
ff7eed4477
(unified) type hints
2020-08-08 20:56:17 +02:00
Martin Diehl
b0e06f180a
reading numpy manual ...
...
https://numpy.org/doc/stable/reference/generated/numpy.isclose.html
rtol=1.e-8, b=1 gives atol+btol=1.e-8+1e-9, simplified to 1e-8
2020-07-13 22:48:29 +02:00
Francisco Jose Gallardo Basile
e1bbaac0d7
Merge branch 'Vectorize-Orientation' into 'development'
...
Vectorize orientation
See merge request damask/DAMASK!186
2020-07-03 12:22:04 +02:00
Martin Diehl
208d5109d4
still needed ...
2020-07-02 08:14:13 +02:00
Martin Diehl
86dc7054a4
still needed
2020-07-01 22:11:16 +02:00
Martin Diehl
4abd77fccf
more test coverage
2020-07-01 17:31:16 +02:00
Martin Diehl
be1eb996e0
more tests and cleaning
2020-07-01 15:12:34 +02:00
Martin Diehl
a7e3dd5a56
Merge branch 'development' into Vectorize-Orientation
2020-07-01 13:30:39 +02:00
Martin Diehl
23365660d8
polishing
2020-06-30 23:18:32 +02:00
Martin Diehl
49d448dced
vectorized and cleaned
2020-06-30 21:43:57 +02:00
Martin Diehl
9d94b521ad
polishing
2020-06-30 13:31:58 +02:00
Martin Diehl
b8b34080fe
enable array like slicing/iteration
2020-06-30 12:16:47 +02:00
Martin Diehl
bfae88a364
numpy compatible
2020-06-26 11:45:30 +02:00
Philip Eisenlohr
f8f433e826
introduced f-strings
2020-06-24 14:13:56 -04:00
Martin Diehl
c6a5bb8a3b
is 2020
2020-06-21 10:04:45 +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
ebdb65d31f
standard broadcast_to behavior
2020-06-20 16:35:22 +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
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
908788271a
Merge branch 'misc-improvements' into less-shell-scripts
2020-05-26 07:24:03 +02:00
Martin Diehl
f07eaf19d0
fixed broadcasting + corresponding test
2020-05-25 16:37:08 +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
b33de48528
testing broadcasting
2020-05-22 15:12:37 +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
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
a90865c877
non-vectorized versions not needed anymore
...
using them only for testing purposes
2020-05-17 00:10:18 +02:00
Martin Diehl
19638168e6
more sensible type checking and errors
2020-05-16 13:23:32 +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
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
6f3b526811
Merge branch 'development' into docstring-sphinx-adjustments
2020-05-13 10:38:45 +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
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
ce9bdc50a4
common variable names
2020-04-29 14:46:58 +02:00
Martin Diehl
707324887f
inform the user about planned functionality
2020-04-24 06:52:09 +02:00
Martin Diehl
8ba547a1b5
no need for an extra file
2020-04-22 13:23:50 +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
23fc58699f
vectorize Rotation.fromXXX functions
2020-04-21 10:55:45 +02:00
Martin Diehl
93c75cada3
numpydoc style
2020-04-12 15:38:38 +02:00
Martin Diehl
3d10266fbc
similar style as for other conversions
2020-04-12 01:29:11 +02:00
Martin Diehl
04fbc38a4b
keep namespace clean and avoid overwriting in fromXXX functions
2020-04-12 01:19:11 +02:00
Martin Diehl
f41a47ce8b
polishing and slightly stricter tolerances
2020-04-11 23:27:25 +02:00
Martin Diehl
c0c37fe6a5
polishing
2020-04-11 20:42:46 +02:00
Martin Diehl
c57f96cd6e
also missing
2020-04-11 18:32:06 +02:00
Martin Diehl
8c61f67e34
cleaning
2020-04-11 18:24:54 +02:00
Martin Diehl
296a75d452
where not needed
2020-04-11 18:00:59 +02:00
Martin Diehl
fac33ec408
polishing
2020-04-11 17:23:54 +02:00
Martin Diehl
51104bfc13
do not transpose for the standard case
2020-04-11 17:19:12 +02:00
Martin Diehl
cb9daccdd7
homochoric representation vectorized
2020-04-11 16:14:40 +02:00
Martin Diehl
99655c9f61
more vectorized functions
2020-04-11 13:59:16 +02:00
Martin Diehl
3bfa2d679c
simpler/correct logic for eu2om
2020-04-11 11:36:37 +02:00
Martin Diehl
bab3581b11
need to transpose eigenvectors to find the correct one
2020-04-09 15:01:01 +02:00
Martin Diehl
e502573e05
polishing
2020-04-09 14:20:43 +02:00
Martin Diehl
b025c1838e
simplified
2020-04-09 12:52:12 +02:00
Martin Diehl
cbfde73a29
more testing and related fixes
2020-04-09 07:40:20 +02:00
Martin Diehl
43e7639f77
WIP: implementing orientation matrix conversions
2020-04-09 00:47:43 +02:00
Martin Diehl
da30fb8396
qu(aternion) and eu(ler) vectorized and tested
2020-04-09 00:35:40 +02:00
Martin Diehl
464620b796
vectorized conversion from ax(is angle)
2020-04-08 21:24:59 +02:00
Martin Diehl
1ba01ba0db
adjusting tolerances
2020-04-08 18:15:50 +02:00
Martin Diehl
8f88480790
better readable error messages
2020-04-08 12:59:34 +02:00
Martin Diehl
bbce3456e8
advise from pylint
2020-03-22 22:30:38 +01:00
Martin Diehl
1dfdd264b7
small flaws detected by pylint
2020-03-22 16:31:14 +01:00
Martin Diehl
e390982be7
clean first level structure
2020-03-19 15:19:11 +01:00