From 6555009a944505a0a1e2df95b1cb20b11f71a829 Mon Sep 17 00:00:00 2001 From: dario Date: Sat, 30 Dec 2023 12:57:41 +0100 Subject: [PATCH] Added cosine matrices to astos directory --- spatz/simulations/astos/transforms.py | 36 +++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 spatz/simulations/astos/transforms.py diff --git a/spatz/simulations/astos/transforms.py b/spatz/simulations/astos/transforms.py new file mode 100644 index 0000000..0a765a1 --- /dev/null +++ b/spatz/simulations/astos/transforms.py @@ -0,0 +1,36 @@ +import math + +import numpy as np + + +DEG_TO_RADS = math.pi / 180 + + +def T1(angle, degrees=False): + angle = angle * DEG_TO_RADS if degrees else angle + + return np.array([ + [1, 0, 0], + [0, math.cos(angle), math.sin(angle)], + [0, -math.sin(angle), math.cos(angle)], + ]) + + +def T2(angle, degrees=False): + angle = angle * DEG_TO_RADS if degrees else angle + + return np.array([ + [math.cos(angle), 0, -math.sin(angle)], + [0, 1, 0], + [math.sin(angle), 0, math.cos(angle)] + ]) + + +def T3(angle, degrees=False): + angle = angle * DEG_TO_RADS if degrees else angle + + return np.array([ + [math.cos(angle), math.sin(angle), 0], + [-math.sin(angle), math.cos(angle), 0], + [0, 0, 1] + ]) \ No newline at end of file