diff options
Diffstat (limited to 'transform.py')
-rw-r--r-- | transform.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/transform.py b/transform.py new file mode 100644 index 0000000..4e5eb9c --- /dev/null +++ b/transform.py @@ -0,0 +1,10 @@ +import numpy as np + +def rotate(x, phi, n): + x = np.asarray(x) + n = np.asarray(n) + + r = np.cos(phi)*np.identity(3) + (1-np.cos(phi))*np.outer(n,n) + \ + np.sin(phi)*np.array([[0,n[2],-n[1]],[-n[2],0,n[0]],[n[1],-n[0],0]]) + + return np.inner(x,r) |