damaris-script-library/Scripts/Miscellaneous/gs_exp.py
2018-09-14 17:43:02 +02:00

39 lines
1.0 KiB
Python

# -*- coding: iso-8859-1 -*-
def experiment(): # 'go setup' routine
pars = {}
pars['P90'] = 2.5e-6 # 90-degree pulse length (s)
pars['RD'] = 1 # delay between scans (s)
pars['SW'] = 100e3 # spectrum window (Hz)
pars['SI'] = 1*1024 # number of acquisition points
pars['DEAD1'] = 10e-6 # receiver dead time (s)
while True:
yield gs_experiment(pars)
def gs_experiment(pars):
e=Experiment()
# read in variables:
P90 = pars['P90']
RD = pars['RD']
SI = pars['SI']
SW = pars['SW']
DEAD1 = pars['DEAD1']
if P90 > 20e-6:
raise Exception("Pulse too long!!!")
e.ttl_pulse(2e-6, value=1) # unblank RF amplifier
e.ttl_pulse(P90, value=3) # apply 90-degree pulse
e.wait(DEAD1) # wait for receiver dead time
e.record(SI, SW, sensitivity=2) # acquire signal
e.wait(RD) # wait for next scan
# write experiment parameters:
for key in pars.keys():
e.set_description(key, pars[key])
return e