Changes for page IDL cheat sheet
Last modified by fwilde on 2025/03/28 19:55
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,15 +3,13 @@ 1 -This is an overview of the most commonly used commands during a beamtime. 2 - 3 3 == {{id name="IDLcheatsheet-Coordinatesystem"/}}Coordinate system == 4 4 5 5 Right-handed coordinate system with y-direction along the x-ray beam. 6 6 7 -\\ 8 - 9 9 [[image:attach:p05_uct.png||width="700"]] 10 10 11 11 == {{id name="IDLcheatsheet-Samplepositioning"/}}Sample positioning == 12 12 9 +=== {{id name="IDLcheatsheet-Relativemovement"/}}Relative movement === 10 + 13 13 (% class="wrapped fixed-table" %) 14 14 |=((( 15 15 IDL command ... ... @@ -19,7 +19,7 @@ 19 19 motion 20 20 ))) 21 21 |((( 22 -s_stage_x/z, 1 20 +##**s_stage_x/z, 1**## 23 23 )))|((( 24 24 move rotation stage in x/z-direction by 1 mm 25 25 )))|((( ... ... @@ -26,14 +26,14 @@ 26 26 relative [ mm ] 27 27 ))) 28 28 |((( 29 -s_pos_z, 1 27 +##**s_pos_x/y/z, 1**## 30 30 )))|((( 31 -move sample stage in z-direction by 1 mm ,29 +move sample stage in x/y/z-direction by 1 mm (caution with directions: stage mount on rotation axis) 32 32 )))|((( 33 33 relative [ mm ] 34 34 ))) 35 35 |((( 36 -s_pos_lateral, 1 34 +##**s_pos_lateral, 1**## 37 37 )))|((( 38 38 move sample stage in x-direction by 1 mm, regardless of position of rotation axis 39 39 )))|((( ... ... @@ -40,35 +40,16 @@ 40 40 relative [ mm ] 41 41 ))) 42 42 |((( 43 -s_angle, 90 41 +##**s_angle, 90**## 44 44 )))|((( 45 45 rotate sample around z axis 46 46 )))|((( 47 47 relative [ deg ] 48 48 ))) 49 -|((( 50 -s_in 51 -)))|((( 52 -move sample to "in" position 53 -)))|((( 54 -predefined 55 -))) 56 -|((( 57 -s_out 58 -)))|((( 59 -move sample to "out" position 60 -)))|((( 61 -predefined 62 -))) 63 -|((( 64 -s_change 65 -)))|((( 66 -move sample to "change" position 67 -)))|((( 68 -predefined 69 -))) 70 70 71 -(% class="relative-table wrapped" style="width: 72.9307%;" %) 48 +=== {{id name="IDLcheatsheet-Absolutemovement"/}}Absolute movement === 49 + 50 +(% class="relative-table wrapped" style="width: 67.0892%;" %) 72 72 |=((( 73 73 IDL command 74 74 )))|=((( ... ... @@ -77,7 +77,7 @@ 77 77 motion 78 78 ))) 79 79 |((( 80 -goto_s_stage_x/z, 1 59 +##**goto_s_stage_x/z, 1**## 81 81 )))|((( 82 82 move rotation stage in x/z-direction to 1 mm 83 83 )))|((( ... ... @@ -84,7 +84,7 @@ 84 84 absolute [ mm ] 85 85 ))) 86 86 |((( 87 -goto_s_pos_x/y/z, 1 66 +##**goto_s_pos_x/y/z, 1**## 88 88 )))|((( 89 89 move sample stage in x/y/z-direction to 1 mm 90 90 )))|((( ... ... @@ -91,14 +91,16 @@ 91 91 absolute [ mm ] 92 92 ))) 93 93 |((( 94 -goto_s_angle, 90 73 +##**goto_s_angle, 90**## 95 95 )))|((( 96 -rotate sample around z axis to 90° 75 +rotate sample around z axis to 90° (**alias command: s_rot**) 97 97 )))|((( 98 98 absolute [ deg ] 99 99 ))) 100 100 101 -(% class="relative-table wrapped" style="width: 67.1421%;" %) 80 +=== {{id name="IDLcheatsheet-Getcurrentposition"/}}Get current position === 81 + 82 +(% class="relative-table wrapped" style="width: 54.0627%;" %) 102 102 |=((( 103 103 IDL command 104 104 )))|=((( ... ... @@ -105,21 +105,74 @@ 105 105 description 106 106 ))) 107 107 |((( 108 -pos_s_stage_x/z() 89 +##**pos_s_stage_x/z()**## 109 109 )))|((( 110 110 return current rotation stage in x/z position 111 111 ))) 112 112 |((( 113 -pos_s_pos_x/y/z() 94 +##**pos_s_pos_x/y/z()**## 114 114 )))|((( 115 115 return current sample stage in x/y/z position 116 116 ))) 117 117 |((( 118 -pos_s_angle() 99 +##**pos_s_angle()**## 119 119 )))|((( 120 120 return current rotation stage angle 121 121 ))) 122 122 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 + 123 123 == {{id name="IDLcheatsheet-Detectorpositioning"/}}Detector positioning == 124 124 125 125 (% class="wrapped fixed-table" %) ... ... @@ -131,30 +131,30 @@ 131 131 motion 132 132 ))) 133 133 |((( 134 - pressure_on168 +##**o_ccd_dist, 5**## 135 135 )))|((( 136 -e nabledetector ymovement170 +move detector in y direction relative by 5 mm 137 137 )))|((( 138 - \\172 +relative [ mm ] 139 139 ))) 140 140 |((( 141 -o_ccd_dist, 5175 +##**goto_o_ccd_dist, 30**## 142 142 )))|((( 143 -move detector in y direction 177 +move detector in y direction absoilute to 30 mm 144 144 )))|((( 145 - relative [ mm ]179 +\\ 146 146 ))) 147 147 |((( 148 -p ressure_off182 +##**pos_o_ccd_dist()**## 149 149 )))|((( 150 - disabledetectormovement184 +return current of the camera stage distance 151 151 )))|((( 152 152 \\ 153 153 ))) 154 154 155 -== {{id name="IDLcheatsheet- Makeimage"/}}Makeimage==189 +== {{id name="IDLcheatsheet-Slitpositioning"/}}Slit positioning == 156 156 157 -(% class="wrapped fixed-table" %)191 +(% class="wrapped" %) 158 158 |=((( 159 159 IDL command 160 160 )))|=((( ... ... @@ -161,35 +161,85 @@ 161 161 description 162 162 ))) 163 163 |((( 164 -i =quick(100) &tv_quick,i & draw_box, [ x1,x2 ,z1,z2 ]198 +##**slit_oh, rx=1 (rz=1)**## 165 165 )))|((( 166 -m akeanimage& showimage& drawbox200 +moves oh slit aperture horizontally (vertically) by 1mm 167 167 ))) 168 168 |((( 169 - a=quick_abs(100) &tv_quick,a & draw_box, [ x1,x2 ,z1,z2 ]203 +##**slit_oh, rdx=1 (rdz=1)**## 170 170 )))|((( 171 - makeanabsorptionimage& showimage& drawbox205 +opens oh the slit aperture horizontally (vertically) by 1 mm 172 172 ))) 207 +|((( 208 +##**slit_eh2, rx=1 (rz=1)**## 209 +)))|((( 210 +moves eh2 slit aperture horizontally (vertically) by 1 mm 211 +))) 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 +))) 173 173 174 - =={{id name="IDLcheatsheet-Monochromatorpositioning"/}}Monochromatorpositioning==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) 175 175 225 +== {{id name="IDLcheatsheet-Makeandsaveimages"/}}Make and save images == 226 + 176 176 (% class="wrapped fixed-table" %) 177 177 |=((( 178 178 IDL command 179 179 )))|=((( 180 180 description 181 -)))|=((( 182 -motion 183 183 ))) 184 184 |((( 185 -calc_dcm_energy, 10000, /set 234 +##**i=quick(100) & display_image, BYSTCL(i, 0, 4096) 235 +**## 186 186 )))|((( 187 -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)**## 188 188 )))|((( 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 + 189 189 \\ 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 190 190 ))) 191 191 |((( 192 -dcm_pitch, 0.00001 276 +##**dcm_pitch, 0.00001**## 193 193 )))|((( 194 194 move 2nd crystal pitch by 0.00001 deg 195 195 )))|((( ... ... @@ -196,7 +196,7 @@ 196 196 relative [ deg ] 197 197 ))) 198 198 |((( 199 -goto_dcm_pitch, -0.03976 283 +##**goto_dcm_pitch, -0.03976**## 200 200 )))|((( 201 201 move 2nd crystal pitch to -0.03976 deg 202 202 )))|((( ... ... @@ -203,7 +203,7 @@ 203 203 absolute [ deg ] 204 204 ))) 205 205 |((( 206 -reflex_opt 290 +##**reflex_opt**## 207 207 )))|((( 208 208 move 2nd crystal pitch to optimal flux position 209 209 )))|((( ... ... @@ -210,16 +210,108 @@ 210 210 \\ 211 211 ))) 212 212 213 -== {{id name="IDLcheatsheet- Saveanimageastiff"/}}Saveanmageas tiff==297 +== {{id name="IDLcheatsheet-DMMpositioning"/}}DMM positioning == 214 214 215 -(% class="wrapped" %) 299 +(% class="fixed-table wrapped" %) 216 216 |=((( 217 217 IDL command 218 218 )))|=((( 219 -desciption 303 +description 304 +)))|=((( 305 +motion 220 220 ))) 221 221 |((( 222 - write_tiff, '/gpfs/current/raw/test.tif',i, /SHORT308 +##**dmm_x2_rot, 0.001**## 223 223 )))|((( 224 -save i as 16-bit tiff in /gofs/... 310 +move 2nd crystal pitch by 0.00001 deg 311 +)))|((( 312 +relative [ deg ] 225 225 ))) 314 +|((( 315 +##**goto_dmm_x2_rot, 0.8923 316 +**## 317 +)))|((( 318 +move 2nd crystal pitch to 0.8923 deg 319 +)))|((( 320 +absolute [ deg ] 321 +))) 322 + 323 +\\ 324 + 325 +== {{id name="IDLcheatsheet-Generalsyntax"/}}General syntax == 326 + 327 +(% class="wrapped relative-table" style="width: 45.5603%;" %) 328 +|=((( 329 +Functionality 330 +)))|=((( 331 +IDL syntax 332 +))) 333 +|((( 334 +chaining commands 335 +)))|((( 336 +command_1 **&** command_2 **&** ... 337 +))) 338 +|((( 339 +absolute movement 340 +)))|((( 341 +**goto_**//motor//, position 342 +))) 343 +|((( 344 +relative movement 345 +)))|((( 346 +//motor//, position 347 +))) 348 +|((( 349 +current motor position 350 +)))|((( 351 +**pos_**//motor//() 352 +))) 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 - 1166019961 +297508006 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://confluence.desy.de/spaces/P5I/pages/ 116601996/IDL cheat sheet1 +https://confluence.desy.de/spaces/P5I/pages/297508006/IDL cheat sheet