1 YAO_DMTYPE={
"pzt":
"\"stackarray\"",
5 """ Initialise dm entry in yao parameter file
8 file_name : (str) : yao parameter file name
10 f = open(file_name,
"a+")
11 f.write(
"\n\n//------------------------------")
12 f.write(
"\n//DM parameters")
13 f.write(
"\n//------------------------------")
17 def write_dm(file_name, dm, index, *, sub_system=1):
18 """Write (append) dm parameter to file for YAO use for a single dm
21 file_name : (str) : name of the file to append the parameter to
23 dm : (Param_dm) : compass dm parameters
25 index : (int) : YAO index for dm
27 sub_system : (int) : (optional), default 1 index of yao sub-system
29 obj =
"dm(" + str(index) +
")"
30 f = open(file_name,
"a+")
31 f.write(
"\ngrow,dm,dms;")
32 f.write(
"\n" + obj +
".type = " + YAO_DMTYPE[dm.type] +
";")
33 f.write(
"\n" + obj +
".subsystem = " + str(sub_system) +
";")
34 f.write(
"\n" + obj +
".iffile = \"\"; // not set by compass")
35 f.write(
"\n" + obj +
".alt = " + str(dm.alt) +
";")
36 f.write(
"\n" + obj +
".unitpervolt = " + str(dm.unitpervolt) +
";")
37 f.write(
"\n" + obj +
".push4imat = " + str(dm.push4imat) +
";")
40 f.write(
"\n" + obj +
".nxact = " + str(dm.nact) +
";")
41 f.write(
"\n" + obj +
".pitch = " + str(dm._pitch) +
";")
42 f.write(
"\n" + obj +
".thresholdresp = " + str(dm.thresh) +
";")
43 f.write(
"\n" + obj +
".pitchMargin = " + str(2.2) +
"; // not set by compass")
44 f.write(
"\n" + obj +
".elt = " + str(1) +
"; // not set by compass")
45 f.write(
"\n" + obj +
".coupling = " + str(dm.coupling) +
";")
48 def write_dms(file_name, dms, *, sub_system=1, offset=0):
49 """Write (append) dm parameter to file for YAO
52 file_name : str : name of the file to append the parameter to
54 dms : list[Param_dm] : compass dm parameters list
57 sub_system : (int) : (optional), default 1 index of yao sub-system
59 offset : (int) : (optional), default 0 yao dm index offset
62 n_dm : (int) : number of dm passed to yao
64 f = open(file_name,
"a+")
68 f.write(
"\n\n//DM " + str(i + offset))
70 write_dm(file_name, d, i + offset, sub_system=sub_system)
77 """ Finalize wfs section in yao parameter file
80 file_name : (str) : yao parameter file name
82 n_dm : (int) : number of ngs written to yao parameter file
84 f=open(file_name,
"a+")
85 f.write(
"\n\nndm = " + str(n_dm) +
";")
def init_dm(file_name)
Initialise dm entry in yao parameter file.
def finish_dm(file_name, n_dm)
Finalize wfs section in yao parameter file.
def write_dms(file_name, dms, *sub_system=1, offset=0)
Write (append) dm parameter to file for YAO.
def write_dm(file_name, dm, index, *sub_system=1)
Write (append) dm parameter to file for YAO use for a single dm.