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,7 +1,13 @@ 1 - Thisisanoverview ofthemostcommonlyused commands duringabeamtime.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 9 +=== {{id name="IDLcheatsheet-Relativemovement"/}}Relative movement === 10 + 5 5 (% class="wrapped fixed-table" %) 6 6 |=((( 7 7 IDL command ... ... @@ -11,48 +11,145 @@ 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_ angle,9034 +##**s_pos_lateral, 1**## 29 29 )))|((( 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 +)))|((( 30 30 rotate sample around z axis 31 31 )))|((( 32 32 relative [ deg ] 33 33 ))) 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 +))) 34 34 |((( 35 -s_ in59 +##**goto_s_stage_x/z, 1**## 36 36 )))|((( 37 -move sampleto"in"position61 +move rotation stage in x/z-direction to 1 mm 38 38 )))|((( 39 - predefined63 +absolute [ mm ] 40 40 ))) 41 41 |((( 42 -s_o ut66 +##**goto_s_pos_x/y/z, 1**## 43 43 )))|((( 44 -move sample t o"out"position68 +move sample stage in x/y/z-direction to 1 mm 45 45 )))|((( 46 - predefined70 +absolute [ mm ] 47 47 ))) 48 48 |((( 49 -s_ change73 +##**goto_s_angle, 90**## 50 50 )))|((( 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: 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 +)))|((( 51 51 move sample to "change" position 126 +))) 127 +|((( 128 +##**set_s_in_pos, 0**## 52 52 )))|((( 53 - predefined130 +set s_in position to 0.0 mm 54 54 ))) 132 +|((( 133 +##**set_s_out_dist, 10**## 134 +)))|((( 135 +set s_out distance to 10.0 mm 136 +))) 55 55 138 +=== {{id name="IDLcheatsheet-Magnificationsets"/}}Magnification sets === 139 + 140 +(% class="wrapped" %) 141 +|=((( 142 +IDL command 143 +)))|=((( 144 +description 145 +))) 146 +|((( 147 +##**save_magn_set(, name_add) 148 +**## 149 +)))|((( 150 +save current magnification set, optionally add something to the automatically generated name 151 +))) 152 +|((( 153 +##**restore_magn_set(, name) 154 +**## 155 +)))|((( 156 +restore last magnification set, or optionally load a file with a specific name 157 +))) 158 + 56 56 == {{id name="IDLcheatsheet-Detectorpositioning"/}}Detector positioning == 57 57 58 58 (% class="wrapped fixed-table" %) ... ... @@ -64,30 +64,30 @@ 64 64 motion 65 65 ))) 66 66 |((( 67 - pressure_on170 +##**o_ccd_dist, 5**## 68 68 )))|((( 69 -e nabledetector ymovement172 +move detector in y direction relative by 5 mm 70 70 )))|((( 71 - \\174 +relative [ mm ] 72 72 ))) 73 73 |((( 74 -o_ccd_dist, 5177 +##**goto_o_ccd_dist, 30**## 75 75 )))|((( 76 -move detector in y direction 179 +move detector in y direction absoilute to 30 mm 77 77 )))|((( 78 - relative [ mm ]181 +\\ 79 79 ))) 80 80 |((( 81 -p ressure_off184 +##**pos_o_ccd_dist()**## 82 82 )))|((( 83 - disabledetectormovement186 +return current of the camera stage distance 84 84 )))|((( 85 85 \\ 86 86 ))) 87 87 88 -== {{id name="IDLcheatsheet- Makeimage"/}}Makeimage==191 +== {{id name="IDLcheatsheet-Slitpositioning"/}}Slit positioning == 89 89 90 -(% class="wrapped fixed-table" %)193 +(% class="wrapped" %) 91 91 |=((( 92 92 IDL command 93 93 )))|=((( ... ... @@ -94,35 +94,85 @@ 94 94 description 95 95 ))) 96 96 |((( 97 -i =quick(100) &tv_quick,i & draw_box, [ x1,x2 ,z1,z2 ]200 +##**slit_oh, rx=1 (rz=1)**## 98 98 )))|((( 99 -m akeanimage& showimage& drawbox202 +moves oh slit aperture horizontally (vertically) by 1mm 100 100 ))) 101 101 |((( 102 - a=quick_abs(100) &tv_quick,a & draw_box, [ x1,x2 ,z1,z2 ]205 +##**slit_oh, rdx=1 (rdz=1)**## 103 103 )))|((( 104 - makeanabsorptionimage& showimage& drawbox207 +opens oh the slit aperture horizontally (vertically) by 1 mm 105 105 ))) 209 +|((( 210 +##**slit_eh2, rx=1 (rz=1)**## 211 +)))|((( 212 +moves eh2 slit aperture horizontally (vertically) by 1 mm 213 +))) 214 +|((( 215 +##**slit_eh2, rdx=1 (rdz=1)**## 216 +)))|((( 217 +opens eh2 the slit aperture horizontally (vertically) by 1 mm 218 +))) 219 +|((( 220 +##**slit_info**## 221 +)))|((( 222 +show all slit positions 223 +))) 106 106 107 - =={{id name="IDLcheatsheet-Monochromatorpositioning"/}}Monochromatorpositioning==225 +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) 108 108 227 +== {{id name="IDLcheatsheet-Makeandsaveimages"/}}Make and save images == 228 + 109 109 (% class="wrapped fixed-table" %) 110 110 |=((( 111 111 IDL command 112 112 )))|=((( 113 113 description 114 -)))|=((( 115 -motion 116 116 ))) 117 117 |((( 118 -calc_dcm_energy, 10000, /set 236 +##**i=quick(100) & display_image, BYSTCL(i, 0, 4096) 237 +**## 119 119 )))|((( 120 -set DCM and undulator to 10 keV 239 +make an image & scale image (eg. from 0 to 4096, usually from 0 to maximum value the camera can do) 240 +))) 241 +|((( 242 +##**a=quick_abs(100) & display_image, BYTSCL(a, 0, 2)**## 121 121 )))|((( 244 +make an absorption image & scale image (usually from 0 to to 2) 245 +))) 246 +|((( 247 +##**write_tiff, '/gpfs/current/raw/test_projection.tif', i, /SHORT**## 248 +)))|((( 249 +save i as 16-bit integer tiff in /gpfs/... 250 +))) 251 +|((( 252 +##**write_tiff, '/gpfs/current/raw/test_absorption.tif', a, /FLOAT**## 253 +)))|((( 254 +save a as 32-bit float tiff in /gpfs/... 255 +))) 256 + 122 122 \\ 258 + 259 +\\ 260 + 261 +{{info title="Monochromator positioning"}} 262 +ATTENTION: Setting up a Monochromator as well as positioning front end slits is **only** done by the beamline staff! 263 + 264 +The commands above may be used by users to realign the beam should it beam profile drift with time. 265 +{{/info}} 266 + 267 +== {{id name="IDLcheatsheet-DCMpositioning"/}}DCM positioning == 268 + 269 +(% class="wrapped fixed-table" %) 270 +|=((( 271 +IDL command 272 +)))|=((( 273 +description 274 +)))|=((( 275 +motion 123 123 ))) 124 124 |((( 125 -dcm_pitch, 0.00001 278 +##**dcm_pitch, 0.00001**## 126 126 )))|((( 127 127 move 2nd crystal pitch by 0.00001 deg 128 128 )))|((( ... ... @@ -129,7 +129,7 @@ 129 129 relative [ deg ] 130 130 ))) 131 131 |((( 132 -goto_dcm_pitch, -0.03976 285 +##**goto_dcm_pitch, -0.03976**## 133 133 )))|((( 134 134 move 2nd crystal pitch to -0.03976 deg 135 135 )))|((( ... ... @@ -136,7 +136,7 @@ 136 136 absolute [ deg ] 137 137 ))) 138 138 |((( 139 -reflex_opt 292 +##**reflex_opt_single**## 140 140 )))|((( 141 141 move 2nd crystal pitch to optimal flux position 142 142 )))|((( ... ... @@ -143,17 +143,108 @@ 143 143 \\ 144 144 ))) 145 145 146 -== {{id name="IDLcheatsheet- Saveanimageastiff"/}}Saveanmageas tiff==299 +== {{id name="IDLcheatsheet-DMMpositioning"/}}DMM positioning == 147 147 301 +(% class="fixed-table wrapped" %) 148 148 |=((( 149 149 IDL command 150 150 )))|=((( 151 -desciption 305 +description 306 +)))|=((( 307 +motion 152 152 ))) 153 153 |((( 154 - write_tiff, '/gpfs/current/raw/test.tif',i, /SHORT310 +##**dmm_x2_rot, 0.001**## 155 155 )))|((( 156 -save i as 16-bit tiff in /gofs/... 312 +move 2nd crystal pitch by 0.00001 deg 313 +)))|((( 314 +relative [ deg ] 157 157 ))) 316 +|((( 317 +##**goto_dmm_x2_rot, 0.8923 318 +**## 319 +)))|((( 320 +move 2nd crystal pitch to 0.8923 deg 321 +)))|((( 322 +absolute [ deg ] 323 +))) 158 158 159 159 \\ 326 + 327 +== {{id name="IDLcheatsheet-Generalsyntax"/}}General syntax == 328 + 329 +(% class="wrapped relative-table" style="width: 45.5603%;" %) 330 +|=((( 331 +Functionality 332 +)))|=((( 333 +IDL syntax 334 +))) 335 +|((( 336 +chaining commands 337 +)))|((( 338 +command_1 **&** command_2 **&** ... 339 +))) 340 +|((( 341 +absolute movement 342 +)))|((( 343 +**goto_**//motor//, position 344 +))) 345 +|((( 346 +relative movement 347 +)))|((( 348 +//motor//, position 349 +))) 350 +|((( 351 +current motor position 352 +)))|((( 353 +**pos_**//motor//() 354 +))) 355 + 356 +== {{id name="IDLcheatsheet-BeamshutterandInterlockcontrol"/}}Beamshutter and Interlock control == 357 + 358 +(% class="wrapped relative-table" style="width: 75.0455%;" %) 359 +|=((( 360 +IDL command 361 +)))|=((( 362 +description 363 +))) 364 +|((( 365 +##**bs_info**## 366 +)))|((( 367 +prints an overview of the beamline beamshutter status 368 +))) 369 +|((( 370 +##**bsoh_open / bsoh_close**## 371 +)))|((( 372 +opens / closes the optics hutch beamshutter. Closing the OH beamshutter will close all following beamshutters (EH1, EH2) 373 +))) 374 +|((( 375 +##**bseh1_open / bseh1_close**## 376 +)))|((( 377 +opens / closes the EH1 beamshutter. Opening will open the OH beamshutter as well. Closing the OH beamshutter will the EH2 beamshutter as well 378 +))) 379 +|((( 380 +##**bseh2_open / bseh2_close**## 381 +)))|((( 382 +opens / closes the EH2 beamshutter. Openening will open the OH and EH1 beamshutters as well. 383 +))) 384 +|((( 385 +##**ics_info**## 386 +)))|((( 387 +prints an overview of the beamline interlock status 388 +))) 389 +|((( 390 +##**oh_break_ics**## 391 +)))|((( 392 +closes all P05 beamshutters and breaks OH door interlock. P06 beamshutter must be closed for this command to work! 393 +))) 394 +|((( 395 +##**eh1_break_ics**## 396 +)))|((( 397 +closes EH1 beamshutter (and EH2 beamshutter if open) and breaks EH1 door interlock 398 +))) 399 +|((( 400 +##**eh2_break_ics**## 401 +)))|((( 402 +closes EH2 beshutter and breaks EH2 door interlock 403 +)))
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 - 1091502491 +297508007 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://confluence.desy.de/spaces/P5I/pages/ 109150249/IDL cheat sheet1 +https://confluence.desy.de/spaces/P5I/pages/297508007/IDL cheat sheet