Changes for page IDL cheat sheet
Last modified by fwilde on 2025/03/28 19:55
From version 54.1
edited by fwilde
on 2024/06/13 13:58
on 2024/06/13 13:58
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,4 +1,4 @@ 1 -== {{id name="IDLcheatsheet- eCoordinatesystem"/}}eCoordinate system ==1 +== {{id name="IDLcheatsheet-Coordinatesystem"/}}Coordinate system == 2 2 3 3 Right-handed coordinate system with y-direction along the x-ray beam. 4 4 ... ... @@ -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, 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: 6 7.0892%;" %)50 +(% class="relative-table wrapped" style="width: 63.4026%;" %) 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° ( **alias command: s_rot**)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: 5 4.0627%;" %)82 +(% class="relative-table wrapped" style="width: 51.477%;" %) 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 ))) ... ... @@ -110,27 +110,27 @@ 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 -set s_in position to current stage position, or optionally to e.g.0.0 mm130 +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 ))) ... ... @@ -144,16 +144,14 @@ 144 144 description 145 145 ))) 146 146 |((( 147 -##**save_magn_set(, name_add) 148 -**## 147 +save_magn_set, 'dmm_11000ev_cmos_10x' 149 149 )))|((( 150 -save current magnification set , optionally add something to the automatically generated name149 +save current magnification set 151 151 ))) 152 152 |((( 153 -##**restore_magn_set(, name) 154 -**## 152 +restore_magn_set, 'dmm_11000ev_cmos_10x' 155 155 )))|((( 156 -restore lastmagnification set,or optionally load a filewitha specificname154 +restore magnification set with the name 'dmm_11000ev_cmos_10x' 157 157 ))) 158 158 159 159 == {{id name="IDLcheatsheet-Detectorpositioning"/}}Detector positioning == ... ... @@ -167,23 +167,23 @@ 167 167 motion 168 168 ))) 169 169 |((( 170 - ##**o_ccd_dist, 5**##168 +pressure_on 171 171 )))|((( 172 - move detectorinydirection relativeby 5mm170 +enable detector y movement 173 173 )))|((( 174 - relative [ mm ]172 +\\ 175 175 ))) 176 176 |((( 177 - ##**goto_o_ccd_dist,30**##175 +o_ccd_dist, 5 178 178 )))|((( 179 -move detector in y direction absoilute to 30 mm177 +move detector in y direction 180 180 )))|((( 181 - \\179 +relative [ mm ] 182 182 ))) 183 183 |((( 184 - ##**pos_o_ccd_dist()**##182 +pressure_off 185 185 )))|((( 186 - returncurrentof theamerastagedistance184 +disable detector movement 187 187 )))|((( 188 188 \\ 189 189 ))) ... ... @@ -197,34 +197,24 @@ 197 197 description 198 198 ))) 199 199 |((( 200 - ##**slit_oh, rx=1 (rz=1)**##198 +slit_eh2, rx=1 (rz=1) 201 201 )))|((( 202 -moves oh slit aperture horizontally (vertically) by 1mm200 +moves eh2 slit aperture horizontally (vertically) by 1mm , **works analoguous for slit_oh and slit_ps2** 203 203 ))) 204 204 |((( 205 - ##**slit_oh, rdx=1 (rdz=1)**##203 +slit_eh2, rdz=1 (rdz=1) 206 206 )))|((( 207 -opens oh the slit aperture horizontally (vertically) by 1 mm205 +opens eh2 the slit aperture horizontally (vertically) by 1 mm, **works analoguous for slit_oh and slit_ps2** 208 208 ))) 209 209 |((( 210 - ##**slit_eh2, rx=1 (rz=1)**##208 +slit_info 211 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 222 show all slit positions 223 223 ))) 224 224 225 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) 226 226 227 -== {{id name="IDLcheatsheet-Make andsaveimages"/}}Makeand saveimages ==215 +== {{id name="IDLcheatsheet-Makeimages"/}}Make images == 228 228 229 229 (% class="wrapped fixed-table" %) 230 230 |=((( ... ... @@ -233,94 +233,40 @@ 233 233 description 234 234 ))) 235 235 |((( 236 -##**i=quick(100) & display_image, BYSTCL(i, 0, 4096) 237 -**## 224 +i=quick(100) & tv_quick, i & draw_box, [ x1, x2 ,z1 ,z2 ] 238 238 )))|((( 239 -make an image & s caleimage(eg.from 0 to 4096, usuallyfrom 0 to maximum value the camera can do)226 +make an image & show image & draw box 240 240 ))) 241 241 |((( 242 - ##**a=quick_abs(100) &display_image,BYTSCL(a,0, 2)**##229 +a=quick_abs(100) & tv_quick, a & draw_box, [ x1, x2 ,z1 ,z2 ] 243 243 )))|((( 244 -make an absorption image & s caleimage(usuallyfrom0 toto 2)231 +make an absorption image & show image & draw box 245 245 ))) 246 246 |((( 247 - ##**write_tiff, '/gpfs/current/raw/test_projection.tif', i, /SHORT**##234 +write_tiff, '/gpfs/current/raw/test.tif', i, /SHORT 248 248 )))|((( 249 -save i as 16-bit integer tiff in /gpfs/...236 +save i as 16-bit tiff in /gpfs/... 250 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 256 257 -== {{id name="IDLcheatsheet-M acrosmotion+images"/}}Macrosmotion+images==239 +== {{id name="IDLcheatsheet-Monochromatorpositioning"/}}Monochromator positioning == 258 258 259 -These macros make images with predefined and internally saved values (like exposure time or display scale). Some move an axis first and then make an image (again with internally saved options likeexposure time, and image type). Use these macros to quickly align you samples. 260 - 261 -(% class="relative-table" style="width: 109.112%;" %) 241 +(% class="wrapped fixed-table" %) 262 262 |=((( 263 263 IDL command 264 264 )))|=((( 265 265 description 246 +)))|=((( 247 +motion 266 266 ))) 267 267 |((( 268 - **{{codelanguage="none"}}qt (,t=100, scale=[0,4096]){{/code}}**250 +calc_dcm_energy, 10000, /set 269 269 )))|((( 270 -quick transmission image at the current position, optionally set a new exposure time 271 -))) 272 -|((( 273 -**{{code language="none"}}qa (, t=100, scale=[0,2], /ref){{/code}}** 252 +set DCM and undulator to 10 keV 274 274 )))|((( 275 -quick absorption image at the current position, optionally set new exposure time or force to make a new reference image 276 -))) 277 -|((( 278 -**{{code language="none"}}qp (, t=100, scale=[0,2], /ref){{/code}}** 279 -)))|((( 280 -quick phase retreived image at the current position, optionally set new exposure time or for to make a new reference image 281 -))) 282 -|((( 283 -**{{code language="none"}}side, 90 (, t=100, /ref, /rel, imgtype='a') {{/code}}** 284 -)))|((( 285 -move rotation state to absolute angle in degrees (unless /rel is set) and make an imge. Image type can optionally be defined as "a' (absorption), 't' (transmission) or 'p' (phase). Exposure time is also otional 286 -))) 287 -|((( 288 -**{{code language="none"}}sshift, 2 (, t=100, /ref, imgtype='a'){{/code}}** 289 -)))|((( 290 -move sample stage laterally relative to current position and make an image at the new position. Optionally set exposure time, make flat field, or set image type) 291 -))) 292 -|((( 293 -##**sz, 2 (, t=100, /ref, imgtype='a')**## 294 -)))|((( 295 -move rotation stage up or down relative to current position and make an image at the new position. Optionally set exposure time, make reference image or set the image type. 296 -))) 297 -|((( 298 -**{{code language="none"}}zx, 2 (, t=100, /ref, imgtype='a'){{/code}} 299 -** 300 -)))|((( 301 -move rotation stage left or right relative to current position and make an image at the new position. Optionally set exposure time, make reference image or set the image type. 302 -))) 303 - 304 304 \\ 305 - 306 -{{info title="Monochromator positioning"}} 307 -ATTENTION: Setting up a Monochromator as well as positioning front end slits is **only** done by the beamline staff! 308 - 309 -The commands above may be used by users to realign the beam should it beam profile drift with time. 310 -{{/info}} 311 - 312 -== {{id name="IDLcheatsheet-DCMpositioning"/}}DCM positioning == 313 - 314 -(% class="wrapped fixed-table" %) 315 -|=((( 316 -IDL command 317 -)))|=((( 318 -description 319 -)))|=((( 320 -motion 321 321 ))) 322 322 |((( 323 - ##**dcm_pitch, 0.00001**##257 +dcm_pitch, 0.00001 324 324 )))|((( 325 325 move 2nd crystal pitch by 0.00001 deg 326 326 )))|((( ... ... @@ -327,7 +327,7 @@ 327 327 relative [ deg ] 328 328 ))) 329 329 |((( 330 - ##**goto_dcm_pitch, -0.03976**##264 +goto_dcm_pitch, -0.03976 331 331 )))|((( 332 332 move 2nd crystal pitch to -0.03976 deg 333 333 )))|((( ... ... @@ -334,44 +334,23 @@ 334 334 absolute [ deg ] 335 335 ))) 336 336 |((( 337 - ##**reflex_opt_single**##271 +reflex_opt 338 338 )))|((( 339 339 move 2nd crystal pitch to optimal flux position 340 340 )))|((( 341 341 \\ 342 342 ))) 343 - 344 -== {{id name="IDLcheatsheet-DMMpositioning"/}}DMM positioning == 345 - 346 -(% class="fixed-table wrapped" %) 347 -|=((( 348 -IDL command 349 -)))|=((( 350 -description 351 -)))|=((( 352 -motion 353 -))) 354 354 |((( 355 - ##**dmm_x2_rot, 0.001**##278 +gap, 0.01 356 356 )))|((( 357 -move 2ndcrystal pitchby 0.00001deg280 +move undulator gap by 0.01 mm 358 358 )))|((( 359 -relative deg]282 +relative [ mm ] 360 360 ))) 361 -|((( 362 -##**goto_dmm_x2_rot, 0.8923 363 -**## 364 -)))|((( 365 -move 2nd crystal pitch to 0.8923 deg 366 -)))|((( 367 -absolute [ deg ] 368 -))) 369 369 370 -\\ 371 - 372 372 == {{id name="IDLcheatsheet-Generalsyntax"/}}General syntax == 373 373 374 -(% class="wrapped relative-table" style="width: 45.5603%;" %)287 +(% class="wrapped relative-table" style="width: 51.5317%;" %) 375 375 |=((( 376 376 Functionality 377 377 )))|=((( ... ... @@ -378,7 +378,7 @@ 378 378 IDL syntax 379 379 ))) 380 380 |((( 381 - chaining commands294 +Chaining commands 382 382 )))|((( 383 383 command_1 **&** command_2 **&** ... 384 384 ))) ... ... @@ -400,7 +400,7 @@ 400 400 401 401 == {{id name="IDLcheatsheet-BeamshutterandInterlockcontrol"/}}Beamshutter and Interlock control == 402 402 403 -(% class="wrapped relative-table"style="width: 75.0455%;" %)316 +(% class="wrapped" %) 404 404 |=((( 405 405 IDL command 406 406 )))|=((( ... ... @@ -407,93 +407,42 @@ 407 407 description 408 408 ))) 409 409 |((( 410 - ##**bs_info**##323 +bs_info 411 411 )))|((( 412 412 prints an overview of the beamline beamshutter status 413 413 ))) 414 414 |((( 415 - ##**bsoh_open / bsoh_close**##328 +bsoh_open / bsoh_close 416 416 )))|((( 417 417 opens / closes the optics hutch beamshutter. Closing the OH beamshutter will close all following beamshutters (EH1, EH2) 418 418 ))) 419 419 |((( 420 - ##**bseh1_open / bseh1_close**##333 +bseh1_open / bseh1_close 421 421 )))|((( 422 422 opens / closes the EH1 beamshutter. Opening will open the OH beamshutter as well. Closing the OH beamshutter will the EH2 beamshutter as well 423 423 ))) 424 424 |((( 425 - ##**bseh2_open / bseh2_close**##338 +bseh2_open / bseh2_close 426 426 )))|((( 427 427 opens / closes the EH2 beamshutter. Openening will open the OH and EH1 beamshutters as well. 428 428 ))) 429 429 |((( 430 - ##**ics_info**##343 +ics_info 431 431 )))|((( 432 432 prints an overview of the beamline interlock status 433 433 ))) 434 434 |((( 435 - ##**oh_break_ics**##348 +ics_break_oh 436 436 )))|((( 437 437 closes all P05 beamshutters and breaks OH door interlock. P06 beamshutter must be closed for this command to work! 438 438 ))) 439 439 |((( 440 - ##**eh1_break_ics**##353 +ics_break_eh1 441 441 )))|((( 442 442 closes EH1 beamshutter (and EH2 beamshutter if open) and breaks EH1 door interlock 443 443 ))) 444 444 |((( 445 - ##**eh2_break_ics**##358 +ics_break_eh2 446 446 )))|((( 447 447 closes EH2 beshutter and breaks EH2 door interlock 448 448 ))) 449 - 450 -== {{id name="IDLcheatsheet-Helpermacros"/}}Helper macros == 451 - 452 -The helper macros may help to align a sample quickly. Mainly, these are motion commands which subsequently make an image with predefined values. 453 - 454 -(% class="wrapped" %) 455 -|=((( 456 -IDL command 457 -)))|=((( 458 -description 459 -))) 460 -|((( 461 -helper_object, /info 462 -)))|((( 463 -show predefined values 464 -))) 465 -|((( 466 -\\ 467 -)))|((( 468 -\\ 469 -))) 470 -|((( 471 -\\ 472 -)))|((( 473 -\\ 474 -))) 475 -|((( 476 -\\ 477 -)))|((( 478 -\\ 479 -))) 480 -|((( 481 -\\ 482 -)))|((( 483 -\\ 484 -))) 485 -|((( 486 -\\ 487 -)))|((( 488 -\\ 489 -))) 490 -|((( 491 -\\ 492 -)))|((( 493 -\\ 494 -))) 495 -|((( 496 -\\ 497 -)))|((( 498 -\\ 499 -)))
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 - 3658350761 +179783453 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://confluence.desy.de/spaces/P5I/pages/ 365835076/IDL cheat sheet1 +https://confluence.desy.de/spaces/P5I/pages/179783453/IDL cheat sheet