Commit 74e23aa6 authored by Yb Tweezer's avatar Yb Tweezer
Browse files

tweak shim coil settings for blue MOT and add mapping functions for various TimeBase connections

parent 347ad650
......@@ -57,6 +57,7 @@ from .system import (
MOT3_GREEN_AOM_AM,
PROBE_GREEN_AOM_FM,
PROBE_GREEN_AOM_AM,
TWEEZER_AOD_AM,
)
from .dataio import (
get_timestamp,
......
......@@ -65,7 +65,7 @@ CONNECTIONS = ConnectionLayout(
mot3_coils_clk = Digital(0, 10, 0),
mot3_coils_sync = Digital(0, 14, 1),
shim_coils_ud = Analog(2, 5.20), #optimal values for blue MOT load to green broadband 4.4, 5.2 5.0
shim_coils_lr = Analog(3, 0.10), # 0.5 for 174 , 0.1 on 20220309 ,1.25
shim_coils_lr = Analog(3, 0.80), # 0.5 for 174 , 0.1 on 20220309 ,1.25
shim_coils_fb = Analog(4, 9.50), # 9.0 for 174, 9.5
shim_coils_p_ud = Digital(0, 12, 0),
shim_coils_p_lr = Digital(0, 16, 0),
......@@ -88,8 +88,10 @@ CONNECTIONS = ConnectionLayout(
probe_green_aom_am = Analog(5, -0.58),
probe_green_aom_fm = Analog(6, 0.02),
probe_green_sh = Digital(1, 9, 0),
tweezer_green_aom = Digital(1, 15, 0),
tweezer_green_aom = Digital(1, 15, 1),
tweezer_green_sh = Digital(1, 1, 0),
tweezer_aod = Digital(0, 20, 0),
tweezer_aod_am = Analog(9, +0.56),
flir_trig = Digital(3, 0, 0),
andor_trig = Digital(3, 4, 0),
andor_sh = Digital(3, 6, 0),
......@@ -162,9 +164,39 @@ def MOT3_GREEN_AOM_AM(p: float) -> float:
B = -1.10711219
return A / (p - P0)**2 + B
# 90.0 nominal; depth = 13.1072 MHz (n = 12)
# 95.0 nominal; depth = 3.2768 MHz (n = 10)
def PROBE_GREEN_AOM_FM_10(f: float) -> float:
f0 = 95.0
if f - f0 < -3.1 or f - f0 > 3.2:
raise Exception(f"PROBE_GREEN_AOM_FM: frequency {f:g} out of range")
a = [
+0.01307480,
+2.64698827,
+0.00000000,
-0.00839069,
+0.00000000,
+0.00130180,
]
return sum(ak * (f - f0)**k for k, ak in enumerate(a))
# 95.0 nominal; depth = 6.5536 MHz (n = 11)
def PROBE_GREEN_AOM_FM_11(f: float) -> float:
f0 = 95.0
if f - f0 < -6.1 or f - f0 > 6.2:
raise Exception(f"PROBE_GREEN_AOM_FM: frequency {f:g} out of range")
a = [
+0.01303745,
+1.32331198,
+0.00000000,
-0.00101642,
+0.00000000,
+3.9938e-05,
]
return sum(ak * (f - f0)**k for k, ak in enumerate(a))
# 95.0 nominal; depth = 13.1072 MHz (n = 12)
def PROBE_GREEN_AOM_FM_12(f: float) -> float:
f0 = 90.0
f0 = 95.0
if f - f0 < -12.1 or f - f0 > 13.0:
raise Exception(f"PROBE_GREEN_AOM_FM: frequency {f:g} out of range")
a = [
......@@ -188,3 +220,17 @@ def PROBE_GREEN_AOM_AM(p: float) -> float:
P0 = +39.9950831
B = -1.06714622
return A / (p - P0)**2 + B
# 30.0 nominal; -53 offset on driver
def TWEEZER_AOD_AM(p: float) -> float:
if p < 0.2 or p > 29.99:
raise Exception(f"TWEEZER_AOD_AM: power {p:g} out of range")
A = +461.046888
P0 = +46.0374182
B = -1.20714764
return A / (p - P0)**2 + B
def TWEEZER_NORM_DEPTH(aod: float) -> float:
A = 0.002849145
r = 0.199137187
return A * np.exp(r * aod)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment