Commit Graph

71 Commits

Author SHA1 Message Date
Martin Diehl 06fc374359 avoid overhead
length of random quaternion is one, no need to go via fromQuaternion but
direct initialization and standardization suffices
2020-01-14 10:22:51 +01:00
Martin Diehl 8e5aa60f34 fixed (and polished) printing 2020-01-14 09:37:59 +01:00
Martin Diehl 26c242b997 not needed anymore
conceptually, having the quaternion class is nice but performance-wise
it is a nightmare and prevents vectorization
2020-01-14 09:03:50 +01:00
Martin Diehl 99684c3e86 Merge branch 'vectorized-orientation-conversion' into no-python-quaternion 2020-01-14 09:02:43 +01:00
Martin Diehl 3fc616bc7d Merge branch 'development' into vectorized-orientation-conversion 2020-01-14 09:00:10 +01:00
Martin Diehl c7e92c672d avoid code duplication 2020-01-14 07:30:17 +01:00
Martin Diehl ecb8510217 leaner (and hopefully faster) code 2020-01-14 05:32:42 +01:00
Philip Eisenlohr 300f1b7015 added options to return "natural" versions of asQ, asRodrig, and asAxisAngle 2020-01-11 11:36:22 -05:00
Martin Diehl 6a8783bab8 these functions are static
class methods change are allowed to change the attributes of the class.
This is not what we do here
2019-12-13 15:46:40 +01:00
Martin Diehl 37e52fd81f polishing 2019-12-11 16:51:13 +01:00
f.basile ca06c1d3a2 Fix bugs in relatedOperations for NW,GT and GTprime. 2019-12-10 13:49:33 +01:00
Martin Diehl 53cb59fc47 use pytest instead of hand-written test class 2019-12-08 21:29:26 +01:00
Martin Diehl 5e7f9a223b should be a passive rotation 2019-10-21 23:17:58 +02:00
Martin Diehl 9489c04ccb less confusing 2019-10-21 23:02:31 +02:00
Martin Diehl ecc51e34d3 rouding should affect color calculation
avoid NaN in math.power(x,0.5). math.power(-0.0,0.5) is ok
2019-10-21 22:44:12 +02:00
Martin Diehl 78a2941436 avoid numerical issues 2019-10-21 16:59:49 +02:00
Martin Diehl ad83c8541d same names as in python 2019-09-20 17:18:09 -07:00
Yang Su 6fdab024b6 ensure that integer inputs to Rotation.fromX() translate into float quantities 2019-09-19 17:03:31 -04:00
Martin Diehl ef285b482f more references + citation style correction 2019-09-04 08:55:05 -07:00
Martin Diehl 3657f81c59 documenting (in accordance with new prospector rules) 2019-09-03 17:18:06 -07:00
Martin Diehl 37de73535d following PEP style guide 2019-05-30 20:08:39 +02:00
Philip Eisenlohr 4c7af713f1 added explicit method Rotation.fromBasis, which can treat real and reciprocal basis sets 2019-05-14 12:59:21 -04:00
Martin Diehl 9b0d3def1d small changes suggested by Franz 2019-05-05 22:38:06 +02:00
Martin Diehl 39cc9e35ae Merge branch 'development' into orientation_with_averaging 2019-05-05 22:12:09 +02:00
Martin Diehl 1330730717 inFZ needs 'proper' Rodriques--Franck vector 2019-04-19 09:04:54 +02:00
Martin Diehl b97f10b6ff forgotten changes in last commit + fromRandom 2019-04-19 08:17:02 +02:00
Martin Diehl feca9fe0a0 Again changes to the return values.
A python function with no return value returns 'None'
2019-04-19 08:04:04 +02:00
Martin Diehl 9a43c2e4c5 fixed return values
- homomorph, standardize, etc. are silent in-place operations (return
None)
- homomorphed, standardized, etc. are out-of place operations that
report
2019-04-19 01:05:48 +02:00
Philip Eisenlohr 4183eeaeca [skip ci] disorientation may return full-fledged orientation obj and aux info, added rotation.standardize(d) 2019-04-18 18:06:00 -04:00
Martin Diehl c4f56703a4 proper definition of homomorph 2019-04-18 17:11:51 +02:00
Martin Diehl 7570b187e7 do explicit homomorphing
only in cases when the underlying math cannot guarantee that the
resulting quaternion follows the convention
2019-04-18 16:26:05 +02:00
Martin Diehl e8464814ae explicit is better than implicit
- if the quaternion does not follow the convention, use
"fromQuaternion(acceptHomomorph=True)"
2019-04-18 14:46:12 +02:00
Martin Diehl 71b0036323 return rotation as misorientation 2019-04-18 14:26:53 +02:00
Martin Diehl 481aac7952 misorientation calculation did not always follow convention
- return homomorphed quaternion to ensure that real component is > 0
(equivalent to have axis angle limited to [0, pi]
2019-04-18 13:46:58 +02:00
Martin Diehl fdd5b93e7c avoid FPE exceptions 2019-04-17 15:19:41 +02:00
Martin Diehl a6e6db0559 more stable/robust conversions 2019-04-17 12:52:48 +02:00
Martin Diehl 079e683dd1 disorientation returns Orientation, not Rotation 2019-04-17 10:48:18 +02:00
Martin Diehl 3f8c16262e fixed import statement
previous form only worked in python/damask folder
2019-04-17 09:45:18 +02:00
Martin Diehl 8609eb6eb7 improved names and layout 2019-04-17 09:34:49 +02:00
Martin Diehl c7c6627dfb don't try to figure out the input 2019-04-17 08:49:26 +02:00
Martin Diehl fa18200447 quaternion is now in separate module
avoid long modules with multiple, only loosely related classes
2019-04-17 08:46:03 +02:00
Martin Diehl d842902a76 consistent ordering
- qu, om, eu, ax, ro, ho, cu
2019-04-16 21:47:29 +02:00
Philip Eisenlohr 3a7408a213 averaging possible for rotations and orientations; Rodrigues 3Dvector output only at top-level; code reordering 2019-04-12 09:03:47 -04:00
Philip Eisenlohr 3d6eb76da3 equivalentOrientations accepts scalar argument to directly return single rotation object (not single element list) 2019-04-11 19:07:41 -04:00
Philip Eisenlohr 2190c3ef46 fixed serious disorientation bug; sorted transformation functions 2019-04-11 18:32:07 -04:00
Philip Eisenlohr b8285d5749 restored orientation averaging capability 2019-04-11 17:23:04 -04:00
Martin Diehl 019d1a9c5c [skip ci] reference was wrong 2019-04-08 22:23:40 +02:00
Martin Diehl dd51945570 checking for input errors 2019-03-28 07:25:20 +01:00
Martin Diehl e88182b007 improved converte, now with test
still needs to figure out how +P is handled
2019-02-24 14:39:34 +01:00
Martin Diehl 73f6cb7020 fixed datatype 2019-02-24 09:12:21 +01:00