Changes for page IDL cheat sheet

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

From version 2.1
edited by fwilde
on 2018/04/09 09:40
Change comment: There is no comment for this version
To version 39.1
edited by fwilde
on 2019/04/01 18:23
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,28 +1,293 @@
1 -This is an overview of the most commonly used commands during a beamtime.
1 +== {{id name="IDLcheatsheet-Coordinatesystem"/}}Coordinate system ==
2 2  
3 -(% class="wrapped" %)
3 +Right-handed coordinate system with y-direction along the x-ray beam.
4 +
5 +[[image:attach:p05_uct.png||width="700"]]
6 +
7 +== {{id name="IDLcheatsheet-Samplepositioning"/}}Sample positioning ==
8 +
9 +=== {{id name="IDLcheatsheet-Relativemovement"/}}Relative movement ===
10 +
11 +(% class="wrapped fixed-table" %)
4 4  |=(((
5 5  IDL command
6 6  )))|=(((
7 7  description
16 +)))|=(((
17 +motion
8 8  )))
9 9  |(((
10 -s_stage_x/y/z
20 +s_stage_x/z, 1
11 11  )))|(((
12 -move rotation stage in x/y/z-direction
22 +move rotation stage in x/z-direction by 1 mm
23 +)))|(((
24 +relative [ mm ]
13 13  )))
14 14  |(((
15 -s_pos_x/y/z
27 +s_pos_x/y/z, 1
16 16  )))|(((
17 -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)
30 +)))|(((
31 +relative [ mm ]
18 18  )))
19 19  |(((
34 +s_pos_lateral, 1
35 +)))|(((
36 +move sample stage in x-direction by 1 mm, regardless of position of rotation axis
37 +)))|(((
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: 63.4026%;" %)
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 +)))|(((
77 +absolute [ deg ]
78 +)))
79 +
80 +=== {{id name="IDLcheatsheet-Getcurrentposition"/}}Get current position ===
81 +
82 +(% class="relative-table wrapped" style="width: 51.477%;" %)
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: 52.0241%;" %)
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-Detectorpositioning"/}}Detector positioning ==
139 +
140 +(% class="wrapped fixed-table" %)
141 +|=(((
142 +IDL command
143 +)))|=(((
144 +description
145 +)))|=(((
146 +motion
147 +)))
148 +|(((
149 +pressure_on
150 +)))|(((
151 +enable detector y movement
152 +)))|(((
20 20  \\
154 +)))
155 +|(((
156 +o_ccd_dist, 5
21 21  )))|(((
158 +move detector in y direction
159 +)))|(((
160 +relative [ mm ]
161 +)))
162 +|(((
163 +pressure_off
164 +)))|(((
165 +disable detector movement
166 +)))|(((
22 22  \\
23 23  )))
169 +
170 +== {{id name="IDLcheatsheet-Slitpositioning"/}}Slit positioning ==
171 +
172 +(% class="wrapped" %)
173 +|=(((
174 +IDL command
175 +)))|=(((
176 +description
177 +)))
24 24  |(((
179 +slit_eh2, rx=1 (rz=1)
180 +)))|(((
181 +moves eh2 slit aperture horizontally (vertically) by 1mm , **works analoguous for slit_oh and slit_ps2**
182 +)))
183 +|(((
184 +slit_eh2, rdz=1 (rdz=1)
185 +)))|(((
186 +opens eh2 the slit aperture horizontally (vertically) by 1 mm, **works analoguous for slit_oh and slit_ps2**
187 +)))
188 +|(((
189 +slit_info
190 +)))|(((
191 +show all slit positions
192 +)))
193 +
194 +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 +
196 +== {{id name="IDLcheatsheet-Makeimages"/}}Make images ==
197 +
198 +(% class="wrapped fixed-table" %)
199 +|=(((
200 +IDL command
201 +)))|=(((
202 +description
203 +)))
204 +|(((
205 +i=quick(100) & tv_quick, i & draw_box, [ x1, x2 ,z1 ,z2 ]
206 +)))|(((
207 +make an image & show image & draw box
208 +)))
209 +|(((
210 +a=quick_abs(100) & tv_quick, a & draw_box, [ x1, x2 ,z1 ,z2 ]
211 +)))|(((
212 +make an absorption image & show image & draw box
213 +)))
214 +|(((
215 +write_tiff, '/gpfs/current/raw/test.tif', i, /SHORT
216 +)))|(((
217 +save i as 16-bit tiff in /gpfs/...
218 +)))
219 +
220 +== {{id name="IDLcheatsheet-Monochromatorpositioning"/}}Monochromator positioning ==
221 +
222 +(% class="wrapped fixed-table" %)
223 +|=(((
224 +IDL command
225 +)))|=(((
226 +description
227 +)))|=(((
228 +motion
229 +)))
230 +|(((
231 +calc_dcm_energy, 10000, /set
232 +)))|(((
233 +set DCM and undulator to 10 keV
234 +)))|(((
25 25  \\
236 +)))
237 +|(((
238 +dcm_pitch, 0.00001
26 26  )))|(((
240 +move 2nd crystal pitch by 0.00001 deg
241 +)))|(((
242 +relative [ deg ]
243 +)))
244 +|(((
245 +goto_dcm_pitch,  -0.03976
246 +)))|(((
247 +move 2nd crystal pitch to -0.03976 deg
248 +)))|(((
249 +absolute [ deg ]
250 +)))
251 +|(((
252 +reflex_opt
253 +)))|(((
254 +move 2nd crystal pitch to optimal flux position
255 +)))|(((
27 27  \\
28 28  )))
258 +|(((
259 +gap, 0.01
260 +)))|(((
261 +move undulator gap by 0.01 mm
262 +)))|(((
263 +relative [ mm ]
264 +)))
265 +
266 +== {{id name="IDLcheatsheet-Generalsyntax"/}}General syntax ==
267 +
268 +(% class="wrapped relative-table" style="width: 51.5317%;" %)
269 +|=(((
270 +Functionality
271 +)))|=(((
272 +IDL syntax
273 +)))
274 +|(((
275 +Chaining commands
276 +)))|(((
277 +command_1 **&** command_2 **&** ...
278 +)))
279 +|(((
280 +absolute movement
281 +)))|(((
282 +**goto_**//motor//, position
283 +)))
284 +|(((
285 +relative movement
286 +)))|(((
287 +//motor//, position
288 +)))
289 +|(((
290 +current motor position
291 +)))|(((
292 +**pos_**//motor//()
293 +)))
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -87353144
1 +131388546
URL
... ... @@ -1,1 +1,1 @@
1 -https://confluence.desy.de/spaces/P5I/pages/87353144/IDL cheat sheet
1 +https://confluence.desy.de/spaces/P5I/pages/131388546/IDL cheat sheet