Changes for page IDL cheat sheet

Last modified by fwilde on 2025/07/15 17:44

From version 6.1
edited by moosmanj
on 2018/05/28 16:16
Change comment: There is no comment for this version
To version 46.1
edited by fwilde
on 2020/10/10 12:21
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.moosmanj
1 +XWiki.fwilde
Content
... ... @@ -1,8 +1,14 @@
1 -This is an overview of the most commonly used commands during a beamtime.
1 +== {{id name="IDLcheatsheet-Coordinatesystem"/}}Coordinate system ==
2 2  
3 +Right-handed coordinate system with y-direction along the x-ray beam.
4 +
5 +[[image:attach:p05_uct.png||width="700"]]
6 +
3 3  == {{id name="IDLcheatsheet-Samplepositioning"/}}Sample positioning ==
4 4  
5 -(% class="wrapped" %)
9 +=== {{id name="IDLcheatsheet-Relativemovement"/}}Relative movement ===
10 +
11 +(% class="wrapped fixed-table" %)
6 6  |=(((
7 7  IDL command
8 8  )))|=(((
... ... @@ -11,31 +11,148 @@
11 11  motion
12 12  )))
13 13  |(((
14 -s_stage_x/z
20 +##**s_stage_x/z, 1**##
15 15  )))|(((
16 -move rotation stage in x/z-direction
22 +move rotation stage in x/z-direction by 1 mm
17 17  )))|(((
18 18  relative [ mm ]
19 19  )))
20 20  |(((
21 -s_pos_x/y/z
27 +##**s_pos_x/y/z, 1**##
22 22  )))|(((
23 -move sample stage in x/y/z-direction
29 +move sample stage in x/y/z-direction by 1 mm (caution with directions: stage mount on rotation axis)
24 24  )))|(((
25 25  relative [ mm ]
26 26  )))
27 27  |(((
28 -s_rot, 90
34 +##**s_pos_lateral, 1**##
29 29  )))|(((
30 -rotate rotation stage to 90 degrees
36 +move sample stage in x-direction by 1 mm, regardless of position of rotation axis
31 31  )))|(((
38 +relative [ mm ]
39 +)))
40 +|(((
41 +##**s_angle, 90**##
42 +)))|(((
43 +rotate sample around z axis
44 +)))|(((
45 +relative [ deg ]
46 +)))
47 +
48 +=== {{id name="IDLcheatsheet-Absolutemovement"/}}Absolute movement ===
49 +
50 +(% class="relative-table wrapped" style="width: 67.0892%;" %)
51 +|=(((
52 +IDL command
53 +)))|=(((
54 +description
55 +)))|=(((
56 +motion
57 +)))
58 +|(((
59 +##**goto_s_stage_x/z, 1**##
60 +)))|(((
61 +move rotation stage in x/z-direction to 1 mm
62 +)))|(((
63 +absolute [ mm ]
64 +)))
65 +|(((
66 +##**goto_s_pos_x/y/z, 1**##
67 +)))|(((
68 +move sample stage in x/y/z-direction to 1  mm
69 +)))|(((
70 +absolute [ mm ]
71 +)))
72 +|(((
73 +##**goto_s_angle, 90**##
74 +)))|(((
75 +rotate sample around z axis to 90° (**alias command: s_rot**)
76 +)))|(((
32 32  absolute [ deg ]
33 33  )))
34 34  
80 +=== {{id name="IDLcheatsheet-Getcurrentposition"/}}Get current position ===
81 +
82 +(% class="relative-table wrapped" style="width: 54.0627%;" %)
83 +|=(((
84 +IDL command
85 +)))|=(((
86 +description
87 +)))
88 +|(((
89 +##**pos_s_stage_x/z()**##
90 +)))|(((
91 +return current rotation stage in x/z position
92 +)))
93 +|(((
94 +##**pos_s_pos_x/y/z()**##
95 +)))|(((
96 +return current sample stage in x/y/z position
97 +)))
98 +|(((
99 +##**pos_s_angle()**##
100 +)))|(((
101 +return current rotation stage angle
102 +)))
103 +
104 +=== {{id name="IDLcheatsheet-Predefinedpositions"/}}Predefined positions ===
105 +
106 +(% class="relative-table wrapped" style="width: 55.721%;" %)
107 +|=(((
108 +IDL command
109 +)))|=(((
110 +description
111 +)))
112 +|(((
113 +##**s_in**##
114 +)))|(((
115 +move sample to "in" position
116 +)))
117 +|(((
118 +##**s_out**##
119 +)))|(((
120 +move sample to "out" position
121 +)))
122 +|(((
123 +##**s_change**##
124 +)))|(((
125 +move sample to "change" position
126 +)))
127 +|(((
128 +##**set_s_in_pos, 0**##
129 +)))|(((
130 +set s_in position to 0.0 mm
131 +)))
132 +|(((
133 +##**set_s_out_dist, 10**##
134 +)))|(((
135 +set s_out distance to 10.0 mm
136 +)))
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 +
35 35  == {{id name="IDLcheatsheet-Detectorpositioning"/}}Detector positioning ==
36 36  
159 +(% class="wrapped fixed-table" %)
37 37  |=(((
38 -IDL comman
161 +IDL command
39 39  )))|=(((
40 40  description
41 41  )))|=(((
... ... @@ -42,7 +42,7 @@
42 42  motion
43 43  )))
44 44  |(((
45 -pressure_on
168 +##**pressure_on**##
46 46  )))|(((
47 47  enable detector y movement
48 48  )))|(((
... ... @@ -49,7 +49,7 @@
49 49  \\
50 50  )))
51 51  |(((
52 -o_ccd_dist, 5
175 +##**o_ccd_dist, 5**##
53 53  )))|(((
54 54  move detector in y direction
55 55  )))|(((
... ... @@ -56,7 +56,7 @@
56 56  relative [ mm ]
57 57  )))
58 58  |(((
59 -pressure_off
182 +##**pressure_off**##
60 60  )))|(((
61 61  disable detector movement
62 62  )))|(((
... ... @@ -63,9 +63,59 @@
63 63  \\
64 64  )))
65 65  
189 +== {{id name="IDLcheatsheet-Slitpositioning"/}}Slit positioning ==
190 +
191 +(% class="wrapped" %)
192 +|=(((
193 +IDL command
194 +)))|=(((
195 +description
196 +)))
197 +|(((
198 +##**slit_eh2, rx=1 (rz=1)**##
199 +)))|(((
200 +moves eh2 slit aperture horizontally (vertically) by 1mm , **works analoguous for slit_oh and slit_ps2**
201 +)))
202 +|(((
203 +##**slit_eh2, rdz=1 (rdz=1)**##
204 +)))|(((
205 +opens eh2 the slit aperture horizontally (vertically) by 1 mm, **works analoguous for slit_oh and slit_ps2**
206 +)))
207 +|(((
208 +##**slit_info**##
209 +)))|(((
210 +show all slit positions
211 +)))
212 +
213 +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)
214 +
215 +== {{id name="IDLcheatsheet-Makeimages"/}}Make images ==
216 +
217 +(% class="wrapped fixed-table" %)
218 +|=(((
219 +IDL command
220 +)))|=(((
221 +description
222 +)))
223 +|(((
224 +##**i=quick(100) & tv_quick, i & draw_box, [ x1, x2 ,z1 ,z2 ]**##
225 +)))|(((
226 +make an image & show image & draw box
227 +)))
228 +|(((
229 +##**a=quick_abs(100) & tv_quick, a & draw_box, [ x1, x2 ,z1 ,z2 ]**##
230 +)))|(((
231 +make an absorption image & show image & draw box
232 +)))
233 +|(((
234 +##**write_tiff, '/gpfs/current/raw/test.tif', i, /SHORT**##
235 +)))|(((
236 +save i as 16-bit tiff in /gpfs/...
237 +)))
238 +
66 66  == {{id name="IDLcheatsheet-Monochromatorpositioning"/}}Monochromator positioning ==
67 67  
68 -(% class="relative-table wrapped" style="width: 52.0982%;" %)
241 +(% class="wrapped fixed-table" %)
69 69  |=(((
70 70  IDL command
71 71  )))|=(((
... ... @@ -74,7 +74,7 @@
74 74  motion
75 75  )))
76 76  |(((
77 -calc_dcm_energy, 10000, /set
250 +##**calc_dcm_energy, 10000, /set**##
78 78  )))|(((
79 79  set DCM and undulator to 10 keV
80 80  )))|(((
... ... @@ -81,7 +81,7 @@
81 81  \\
82 82  )))
83 83  |(((
84 -dcm_pitch, 0.00001
257 +##**dcm_pitch, 0.00001**##
85 85  )))|(((
86 86  move 2nd crystal pitch by 0.00001 deg
87 87  )))|(((
... ... @@ -88,7 +88,7 @@
88 88  relative [ deg ]
89 89  )))
90 90  |(((
91 -goto_dcm_pitch,  -0.03976
264 +##**goto_dcm_pitch,  -0.03976**##
92 92  )))|(((
93 93  move 2nd crystal pitch to -0.03976 deg
94 94  )))|(((
... ... @@ -95,9 +95,101 @@
95 95  absolute [ deg ]
96 96  )))
97 97  |(((
98 -reflex_opt
271 +##**reflex_opt**##
99 99  )))|(((
100 100  move 2nd crystal pitch to optimal flux position
101 101  )))|(((
102 102  \\
103 103  )))
277 +|(((
278 +##**gap, 0.01**##
279 +)))|(((
280 +move undulator gap relative by 0.01 mm
281 +)))|(((
282 +relative [ mm ]
283 +)))
284 +|(((
285 +##**goto_gap, 10.0**##
286 +)))|(((
287 +move undulator gap absolute to 10.0 mm
288 +)))|(((
289 +absolute [ mm ]
290 +)))
291 +
292 +== {{id name="IDLcheatsheet-Generalsyntax"/}}General syntax ==
293 +
294 +(% class="wrapped relative-table" style="width: 45.5603%;" %)
295 +|=(((
296 +Functionality
297 +)))|=(((
298 +IDL syntax
299 +)))
300 +|(((
301 +chaining commands
302 +)))|(((
303 +command_1 **&** command_2 **&** ...
304 +)))
305 +|(((
306 +absolute movement
307 +)))|(((
308 +**goto_**//motor//, position
309 +)))
310 +|(((
311 +relative movement
312 +)))|(((
313 +//motor//, position
314 +)))
315 +|(((
316 +current motor position
317 +)))|(((
318 +**pos_**//motor//()
319 +)))
320 +
321 +== {{id name="IDLcheatsheet-BeamshutterandInterlockcontrol"/}}Beamshutter and Interlock control ==
322 +
323 +(% class="wrapped relative-table" style="width: 75.0455%;" %)
324 +|=(((
325 +IDL command
326 +)))|=(((
327 +description
328 +)))
329 +|(((
330 +##**bs_info**##
331 +)))|(((
332 +prints an overview of the beamline beamshutter status
333 +)))
334 +|(((
335 +##**bsoh_open / bsoh_close**##
336 +)))|(((
337 +opens / closes the optics hutch beamshutter. Closing the OH beamshutter will close all following beamshutters (EH1, EH2)
338 +)))
339 +|(((
340 +##**bseh1_open / bseh1_close**##
341 +)))|(((
342 +opens / closes the EH1 beamshutter. Opening will open the OH beamshutter as well. Closing the OH beamshutter will the EH2 beamshutter as well
343 +)))
344 +|(((
345 +##**bseh2_open / bseh2_close**##
346 +)))|(((
347 +opens / closes the EH2 beamshutter. Openening will open the OH and EH1 beamshutters as well.
348 +)))
349 +|(((
350 +##**ics_info**##
351 +)))|(((
352 +prints an overview of the beamline interlock status
353 +)))
354 +|(((
355 +##**ics_break_oh**##
356 +)))|(((
357 +closes all P05 beamshutters and breaks OH door interlock. P06 beamshutter must be closed for this command to work!
358 +)))
359 +|(((
360 +##**ics_break_eh1**##
361 +)))|(((
362 +closes EH1 beamshutter (and EH2 beamshutter  if open) and breaks EH1 door interlock
363 +)))
364 +|(((
365 +##**ics_break_eh2**##
366 +)))|(((
367 +closes EH2 beshutter and breaks EH2 door interlock
368 +)))
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -94155732
1 +179783458
URL
... ... @@ -1,1 +1,1 @@
1 -https://confluence.desy.de/spaces/P5I/pages/94155732/IDL cheat sheet
1 +https://confluence.desy.de/spaces/P5I/pages/179783458/IDL cheat sheet