Changes for page IDL cheat sheet

Last modified by fwilde on 2025/03/28 19:55

From version 36.1
edited by fwilde
on 2018/12/18 13:34
Change comment: There is no comment for this version
To version 49.1
edited by fwilde
on 2020/10/10 12:40
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -17,7 +17,7 @@
17 17  motion
18 18  )))
19 19  |(((
20 -s_stage_x/z, 1
20 +##**s_stage_x/z, 1**##
21 21  )))|(((
22 22  move rotation stage in x/z-direction by 1 mm
23 23  )))|(((
... ... @@ -24,7 +24,7 @@
24 24  relative [ mm ]
25 25  )))
26 26  |(((
27 -s_pos_x/y/z, 1
27 +##**s_pos_x/y/z, 1**##
28 28  )))|(((
29 29  move sample stage in x/y/z-direction by 1 mm (caution with directions: stage mount on rotation axis)
30 30  )))|(((
... ... @@ -31,7 +31,7 @@
31 31  relative [ mm ]
32 32  )))
33 33  |(((
34 -s_pos_lateral, 1
34 +##**s_pos_lateral, 1**##
35 35  )))|(((
36 36  move sample stage in x-direction by 1 mm, regardless of position of rotation axis
37 37  )))|(((
... ... @@ -38,7 +38,7 @@
38 38  relative [ mm ]
39 39  )))
40 40  |(((
41 -s_angle, 90
41 +##**s_angle, 90**##
42 42  )))|(((
43 43  rotate sample around z axis
44 44  )))|(((
... ... @@ -47,7 +47,7 @@
47 47  
48 48  === {{id name="IDLcheatsheet-Absolutemovement"/}}Absolute movement ===
49 49  
50 -(% class="relative-table wrapped" style="width: 63.4026%;" %)
50 +(% class="relative-table wrapped" style="width: 67.0892%;" %)
51 51  |=(((
52 52  IDL command
53 53  )))|=(((
... ... @@ -56,7 +56,7 @@
56 56  motion
57 57  )))
58 58  |(((
59 -goto_s_stage_x/z, 1
59 +##**goto_s_stage_x/z, 1**##
60 60  )))|(((
61 61  move rotation stage in x/z-direction to 1 mm
62 62  )))|(((
... ... @@ -63,7 +63,7 @@
63 63  absolute [ mm ]
64 64  )))
65 65  |(((
66 -goto_s_pos_x/y/z, 1
66 +##**goto_s_pos_x/y/z, 1**##
67 67  )))|(((
68 68  move sample stage in x/y/z-direction to 1  mm
69 69  )))|(((
... ... @@ -70,9 +70,9 @@
70 70  absolute [ mm ]
71 71  )))
72 72  |(((
73 -goto_s_angle, 90
73 +##**goto_s_angle, 90**##
74 74  )))|(((
75 -rotate sample around z axis to 90°
75 +rotate sample around z axis to 90° (**alias command: s_rot**)
76 76  )))|(((
77 77  absolute [ deg ]
78 78  )))
... ... @@ -79,7 +79,7 @@
79 79  
80 80  === {{id name="IDLcheatsheet-Getcurrentposition"/}}Get current position ===
81 81  
82 -(% class="relative-table wrapped" style="width: 51.477%;" %)
82 +(% class="relative-table wrapped" style="width: 54.0627%;" %)
83 83  |=(((
84 84  IDL command
85 85  )))|=(((
... ... @@ -86,17 +86,17 @@
86 86  description
87 87  )))
88 88  |(((
89 -pos_s_stage_x/z()
89 +##**pos_s_stage_x/z()**##
90 90  )))|(((
91 91  return current rotation stage in x/z position
92 92  )))
93 93  |(((
94 -pos_s_pos_x/y/z()
94 +##**pos_s_pos_x/y/z()**##
95 95  )))|(((
96 96  return current sample stage in x/y/z position
97 97  )))
98 98  |(((
99 -pos_s_angle()
99 +##**pos_s_angle()**##
100 100  )))|(((
101 101  return current rotation stage angle
102 102  )))
... ... @@ -103,7 +103,7 @@
103 103  
104 104  === {{id name="IDLcheatsheet-Predefinedpositions"/}}Predefined positions ===
105 105  
106 -(% class="relative-table wrapped" style="width: 52.0241%;" %)
106 +(% class="relative-table wrapped" style="width: 55.721%;" %)
107 107  |=(((
108 108  IDL command
109 109  )))|=(((
... ... @@ -110,31 +110,50 @@
110 110  description
111 111  )))
112 112  |(((
113 -s_in
113 +##**s_in**##
114 114  )))|(((
115 115  move sample to "in" position
116 116  )))
117 117  |(((
118 -s_out
118 +##**s_out**##
119 119  )))|(((
120 120  move sample to "out" position
121 121  )))
122 122  |(((
123 -s_change
123 +##**s_change**##
124 124  )))|(((
125 125  move sample to "change" position
126 126  )))
127 127  |(((
128 -set_s_in_pos, 0
128 +##**set_s_in_pos, 0**##
129 129  )))|(((
130 130  set s_in position to 0.0 mm
131 131  )))
132 132  |(((
133 -set_s_out_dist, 10
133 +##**set_s_out_dist, 10**##
134 134  )))|(((
135 135  set s_out distance to 10.0 mm
136 136  )))
137 137  
138 +=== {{id name="IDLcheatsheet-Magnificationsets"/}}Magnification sets ===
139 +
140 +(% class="wrapped" %)
141 +|=(((
142 +IDL command
143 +)))|=(((
144 +description
145 +)))
146 +|(((
147 +##**save_magn_set, 'dmm_11000ev_cmos_10x'**##
148 +)))|(((
149 +save current magnification set
150 +)))
151 +|(((
152 +##**restore_magn_set, 'dmm_11000ev_cmos_10x'**##
153 +)))|(((
154 +restore magnification set with the name 'dmm_11000ev_cmos_10x'
155 +)))
156 +
138 138  == {{id name="IDLcheatsheet-Detectorpositioning"/}}Detector positioning ==
139 139  
140 140  (% class="wrapped fixed-table" %)
... ... @@ -146,7 +146,7 @@
146 146  motion
147 147  )))
148 148  |(((
149 -pressure_on
168 +##**pressure_on**##
150 150  )))|(((
151 151  enable detector y movement
152 152  )))|(((
... ... @@ -153,7 +153,7 @@
153 153  \\
154 154  )))
155 155  |(((
156 -o_ccd_dist, 5
175 +##**o_ccd_dist, 5**##
157 157  )))|(((
158 158  move detector in y direction
159 159  )))|(((
... ... @@ -160,7 +160,7 @@
160 160  relative [ mm ]
161 161  )))
162 162  |(((
163 -pressure_off
182 +##**pressure_off**##
164 164  )))|(((
165 165  disable detector movement
166 166  )))|(((
... ... @@ -167,9 +167,9 @@
167 167  \\
168 168  )))
169 169  
170 -== {{id name="IDLcheatsheet-Makeimages"/}}Make images ==
189 +== {{id name="IDLcheatsheet-Slitpositioning"/}}Slit positioning ==
171 171  
172 -(% class="wrapped fixed-table" %)
191 +(% class="wrapped" %)
173 173  |=(((
174 174  IDL command
175 175  )))|=(((
... ... @@ -176,40 +176,85 @@
176 176  description
177 177  )))
178 178  |(((
179 -i=quick(100) & tv_quick, i & draw_box, [ x1, x2 ,z1 ,z2 ]
198 +##**slit_oh, rx=1 (rz=1)**##
180 180  )))|(((
181 -make an image & show image & draw box
200 +moves oh slit aperture horizontally (vertically) by 1mm
182 182  )))
183 183  |(((
184 -a=quick_abs(100) & tv_quick, a & draw_box, [ x1, x2 ,z1 ,z2 ]
203 +##**slit_oh, rdx=1 (rdz=1)**##
185 185  )))|(((
186 -make an absorption image & show image & draw box
205 +opens oh the slit aperture horizontally (vertically) by 1 mm
187 187  )))
188 188  |(((
189 -write_tiff, '/gpfs/current/raw/test.tif', i, /SHORT
208 +##**slit_eh2, rx=1 (rz=1)**##
190 190  )))|(((
191 -save i as 16-bit tiff in /gpfs/...
210 +moves eh2 slit aperture horizontally (vertically) by 1 mm
192 192  )))
212 +|(((
213 +##**slit_eh2, rdx=1 (rdz=1)**##
214 +)))|(((
215 +opens eh2 the slit aperture horizontally (vertically) by 1 mm
216 +)))
217 +|(((
218 +##**slit_info**##
219 +)))|(((
220 +show all slit positions
221 +)))
193 193  
194 -== {{id name="IDLcheatsheet-Monochromatorpositioning"/}}Monochromator positioning ==
223 +rx, rdx, rz and rdz can be concatenated in one command (e.g. slit_oh, rx=1, rz=-2, rdx=0.5, rdz=0.5)
195 195  
225 +== {{id name="IDLcheatsheet-Makeandsaveimages"/}}Make and save images ==
226 +
196 196  (% class="wrapped fixed-table" %)
197 197  |=(((
198 198  IDL command
199 199  )))|=(((
200 200  description
201 -)))|=(((
202 -motion
203 203  )))
204 204  |(((
205 -calc_dcm_energy, 10000, /set
234 +##**i=quick(100) & display_image, BYSTCL(i, 0, 4096)
235 +**##
206 206  )))|(((
207 -set DCM and undulator to 10 keV
237 +make an image & scale image (eg. from 0 to 4096, usually from 0 to maximum value the camera can do)
238 +)))
239 +|(((
240 +##**a=quick_abs(100) & display_image, BYTSCL(a, 0, 2)**##
208 208  )))|(((
242 +make an absorption image & scale image (usually from 0 to to 2)
243 +)))
244 +|(((
245 +##**write_tiff, '/gpfs/current/raw/test_projection.tif', i, /SHORT**##
246 +)))|(((
247 +save i as 16-bit integer tiff in /gpfs/...
248 +)))
249 +|(((
250 +##**write_tiff, '/gpfs/current/raw/test_absorption.tif', a, /FLOAT**##
251 +)))|(((
252 +save a as 32-bit float tiff in /gpfs/...
253 +)))
254 +
209 209  \\
256 +
257 +\\
258 +
259 +{{info title="Monochromator positioning"}}
260 +ATTENTION: Setting up a Monochromator as well as positioning front end slits is **only** done by the beamline staff!
261 +
262 +The commands above may be used by users to realign the beam should it beam profile drift with time.
263 +{{/info}}
264 +
265 +== {{id name="IDLcheatsheet-DCMpositioning"/}}DCM positioning ==
266 +
267 +(% class="wrapped fixed-table" %)
268 +|=(((
269 +IDL command
270 +)))|=(((
271 +description
272 +)))|=(((
273 +motion
210 210  )))
211 211  |(((
212 -dcm_pitch, 0.00001
276 +##**dcm_pitch, 0.00001**##
213 213  )))|(((
214 214  move 2nd crystal pitch by 0.00001 deg
215 215  )))|(((
... ... @@ -216,7 +216,7 @@
216 216  relative [ deg ]
217 217  )))
218 218  |(((
219 -goto_dcm_pitch,  -0.03976
283 +##**goto_dcm_pitch,  -0.03976**##
220 220  )))|(((
221 221  move 2nd crystal pitch to -0.03976 deg
222 222  )))|(((
... ... @@ -223,23 +223,44 @@
223 223  absolute [ deg ]
224 224  )))
225 225  |(((
226 -reflex_opt
290 +##**reflex_opt**##
227 227  )))|(((
228 228  move 2nd crystal pitch to optimal flux position
229 229  )))|(((
230 230  \\
231 231  )))
296 +
297 +== {{id name="IDLcheatsheet-DMMpositioning"/}}DMM positioning ==
298 +
299 +(% class="fixed-table wrapped" %)
300 +|=(((
301 +IDL command
302 +)))|=(((
303 +description
304 +)))|=(((
305 +motion
306 +)))
232 232  |(((
233 -gap, 0.01
308 +##**dmm_x2_rot, 0.001**##
234 234  )))|(((
235 -move undulator gap by 0.01 mm
310 +move 2nd crystal pitch by 0.00001 deg
236 236  )))|(((
237 -relative [ mm ]
312 +relative [ deg ]
238 238  )))
314 +|(((
315 +##**goto_dmm_x2_rot,  0.8923
316 +**##
317 +)))|(((
318 +move 2nd crystal pitch to 0.8923 deg
319 +)))|(((
320 +absolute [ deg ]
321 +)))
239 239  
323 +\\
324 +
240 240  == {{id name="IDLcheatsheet-Generalsyntax"/}}General syntax ==
241 241  
242 -(% class="wrapped relative-table" style="width: 51.5317%;" %)
327 +(% class="wrapped relative-table" style="width: 45.5603%;" %)
243 243  |=(((
244 244  Functionality
245 245  )))|=(((
... ... @@ -246,7 +246,7 @@
246 246  IDL syntax
247 247  )))
248 248  |(((
249 -Chaining commands
334 +chaining commands
250 250  )))|(((
251 251  command_1 **&** command_2 **&** ...
252 252  )))
... ... @@ -265,3 +265,52 @@
265 265  )))|(((
266 266  **pos_**//motor//()
267 267  )))
353 +
354 +== {{id name="IDLcheatsheet-BeamshutterandInterlockcontrol"/}}Beamshutter and Interlock control ==
355 +
356 +(% class="wrapped relative-table" style="width: 75.0455%;" %)
357 +|=(((
358 +IDL command
359 +)))|=(((
360 +description
361 +)))
362 +|(((
363 +##**bs_info**##
364 +)))|(((
365 +prints an overview of the beamline beamshutter status
366 +)))
367 +|(((
368 +##**bsoh_open / bsoh_close**##
369 +)))|(((
370 +opens / closes the optics hutch beamshutter. Closing the OH beamshutter will close all following beamshutters (EH1, EH2)
371 +)))
372 +|(((
373 +##**bseh1_open / bseh1_close**##
374 +)))|(((
375 +opens / closes the EH1 beamshutter. Opening will open the OH beamshutter as well. Closing the OH beamshutter will the EH2 beamshutter as well
376 +)))
377 +|(((
378 +##**bseh2_open / bseh2_close**##
379 +)))|(((
380 +opens / closes the EH2 beamshutter. Openening will open the OH and EH1 beamshutters as well.
381 +)))
382 +|(((
383 +##**ics_info**##
384 +)))|(((
385 +prints an overview of the beamline interlock status
386 +)))
387 +|(((
388 +##**ics_break_oh**##
389 +)))|(((
390 +closes all P05 beamshutters and breaks OH door interlock. P06 beamshutter must be closed for this command to work!
391 +)))
392 +|(((
393 +##**ics_break_eh1**##
394 +)))|(((
395 +closes EH1 beamshutter (and EH2 beamshutter  if open) and breaks EH1 door interlock
396 +)))
397 +|(((
398 +##**ics_break_eh2**##
399 +)))|(((
400 +closes EH2 beshutter and breaks EH2 door interlock
401 +)))
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -116602253
1 +179783466
URL
... ... @@ -1,1 +1,1 @@
1 -https://confluence.desy.de/spaces/P5I/pages/116602253/IDL cheat sheet
1 +https://confluence.desy.de/spaces/P5I/pages/179783466/IDL cheat sheet