Commit e9a729cc authored by Yb Tweezer's avatar Yb Tweezer
Browse files

add AM/FM control back in for green probe beams; reorganize tweezer optim script a bit

parent d66e65d9
......@@ -55,6 +55,8 @@ from .system import (
AD5791_DAC,
MOT3_GREEN_AOM_FM,
MOT3_GREEN_AOM_AM,
PROBE_GREEN_AOM_FM,
PROBE_GREEN_AOM_AM,
)
from .dataio import (
get_timestamp,
......
......@@ -85,8 +85,8 @@ CONNECTIONS = ConnectionLayout(
probe_blue_aom = Digital(0, 5, 0),
probe_blue_sh = Digital(1, 1, 0),
probe_green_aom = Digital(0, 11, 1), # HIGH == off for Time Base RF generator
probe_green_aom_am = Analog(5, 0.53),
probe_green_aom_fm = Analog(6, 0.00),
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_sh = Digital(1, 1, 0),
......@@ -139,7 +139,7 @@ def MOT3_GREEN_AOM_FM_10(f: float) -> float:
def MOT3_GREEN_AOM_FM_11(f: float) -> float:
f0 = 92.0
if f - f0 < -6.1 or f - f0 > 6.5:
raise Exception("MOT3_GREEN_AOM_FM: frequency out of range")
raise Exception(f"MOT3_GREEN_AOM_FM: frequency {f:g} out of range")
a = [
+0.00955450,
+1.30363916,
......@@ -156,10 +156,35 @@ def MOT3_GREEN_AOM_FM(f: float) -> float:
# 29.0 nominal; -60 offset on driver
def MOT3_GREEN_AOM_AM(p: float) -> float:
if p < -25.0 or p > 29.5:
raise Exception("MOT3_GREEN_AOM_AM: power out of range")
raise Exception(f"MOT3_GREEN_AOM_AM: power {p:g} out of range")
A = +421.384083
P0 = +45.7474511
B = -1.10711219
return A / (p - P0)**2 + B
RAMAN_GREEN_AOM_AM = lambda p: (p - 15.0) / 15.01 # 29.0 nominal; -73 offset on controller
# 90.0 nominal; depth = 13.1072 MHz (n = 12)
def PROBE_GREEN_AOM_FM_12(f: float) -> float:
f0 = 90.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 = [
+0.01515528,
+0.65945606,
+0.00000000,
-6.8786e-05,
+0.00000000,
+9.6312e-07,
]
return sum(ak * (f - f0)**k for k, ak in enumerate(a))
def PROBE_GREEN_AOM_FM(f: float) -> float:
return PROBE_GREEN_AOM_FM_12(f) # change this call depending on the FM settings
# 27.0 nominal; -66 offset on driver
def PROBE_GREEN_AOM_AM(p: float) -> float:
if p < -26.0 or p > 27.0:
raise Exception(f"PROBE_GREEN_AOM_AM: power {p:g} out of range")
A = +330.627240
P0 = +39.9950831
B = -1.06714622
return A / (p - P0)**2 + B
This diff is collapsed.
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