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,39 +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 - \\48 +=== {{id name="IDLcheatsheet-Absolutemovement"/}}Absolute movement === 72 72 73 -\\ 74 - 75 -(% class="relative-table wrapped" style="width: 72.9307%;" %) 50 +(% class="relative-table wrapped" style="width: 67.0892%;" %) 76 76 |=((( 77 77 IDL command 78 78 )))|=((( ... ... @@ -81,7 +81,7 @@ 81 81 motion 82 82 ))) 83 83 |((( 84 -goto_s_stage_x/z, 1 59 +##**goto_s_stage_x/z, 1**## 85 85 )))|((( 86 86 move rotation stage in x/z-direction to 1 mm 87 87 )))|((( ... ... @@ -88,7 +88,7 @@ 88 88 absolute [ mm ] 89 89 ))) 90 90 |((( 91 -goto_s_pos_x/y/z, 1 66 +##**goto_s_pos_x/y/z, 1**## 92 92 )))|((( 93 93 move sample stage in x/y/z-direction to 1 mm 94 94 )))|((( ... ... @@ -95,14 +95,16 @@ 95 95 absolute [ mm ] 96 96 ))) 97 97 |((( 98 -goto_s_angle, 90 73 +##**goto_s_angle, 90**## 99 99 )))|((( 100 -rotate sample around z axis to 90° 75 +rotate sample around z axis to 90° (**alias command: s_rot**) 101 101 )))|((( 102 102 absolute [ deg ] 103 103 ))) 104 104 105 -(% 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%;" %) 106 106 |=((( 107 107 IDL command 108 108 )))|=((( ... ... @@ -109,21 +109,74 @@ 109 109 description 110 110 ))) 111 111 |((( 112 -pos_s_stage_x/z() 89 +##**pos_s_stage_x/z()**## 113 113 )))|((( 114 114 return current rotation stage in x/z position 115 115 ))) 116 116 |((( 117 -pos_s_pos_x/y/z() 94 +##**pos_s_pos_x/y/z()**## 118 118 )))|((( 119 119 return current sample stage in x/y/z position 120 120 ))) 121 121 |((( 122 -pos_s_angle() 99 +##**pos_s_angle()**## 123 123 )))|((( 124 124 return current rotation stage angle 125 125 ))) 126 126 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 + 127 127 == {{id name="IDLcheatsheet-Detectorpositioning"/}}Detector positioning == 128 128 129 129 (% class="wrapped fixed-table" %) ... ... @@ -135,7 +135,7 @@ 135 135 motion 136 136 ))) 137 137 |((( 138 -pressure_on 168 +##**pressure_on**## 139 139 )))|((( 140 140 enable detector y movement 141 141 )))|((( ... ... @@ -142,7 +142,7 @@ 142 142 \\ 143 143 ))) 144 144 |((( 145 -o_ccd_dist, 5 175 +##**o_ccd_dist, 5**## 146 146 )))|((( 147 147 move detector in y direction 148 148 )))|((( ... ... @@ -149,7 +149,7 @@ 149 149 relative [ mm ] 150 150 ))) 151 151 |((( 152 -pressure_off 182 +##**pressure_off**## 153 153 )))|((( 154 154 disable detector movement 155 155 )))|((( ... ... @@ -156,8 +156,44 @@ 156 156 \\ 157 157 ))) 158 158 159 -== {{id name="IDLcheatsheet- Makeimage"/}}Makeimage==189 +== {{id name="IDLcheatsheet-Slitpositioning"/}}Slit positioning == 160 160 191 +(% class="wrapped" %) 192 +|=((( 193 +IDL command 194 +)))|=((( 195 +description 196 +))) 197 +|((( 198 +##**slit_oh, rx=1 (rz=1)**## 199 +)))|((( 200 +moves oh slit aperture horizontally (vertically) by 1mm 201 +))) 202 +|((( 203 +##**slit_oh, rdx=1 (rdz=1)**## 204 +)))|((( 205 +opens oh the slit aperture horizontally (vertically) by 1 mm 206 +))) 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 +))) 222 + 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) 224 + 225 +== {{id name="IDLcheatsheet-Makeandsaveimages"/}}Make and save images == 226 + 161 161 (% class="wrapped fixed-table" %) 162 162 |=((( 163 163 IDL command ... ... @@ -165,17 +165,28 @@ 165 165 description 166 166 ))) 167 167 |((( 168 -i=quick(100) & tv_quick, i & draw_box, [ x1, x2 ,z1 ,z2 ] 234 +##**i=quick(100) & display_image, BYSTCL(i, 0, 4096) 235 +**## 169 169 )))|((( 170 -make an image & s howimage&drawbox237 +make an image & scale image (eg. from 0 to 4096, usually from 0 to maximum value the camera can do) 171 171 ))) 172 172 |((( 173 -a=quick_abs(100) & tv_quick, a& draw_box,[ x1,x2,z1 ,z2 ]240 +##**a=quick_abs(100) & display_image, BYTSCL(a, 0, 2)**## 174 174 )))|((( 175 -make an absorption image & s howimage&drawbox242 +make an absorption image & scale image (usually from 0 to to 2) 176 176 ))) 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 +))) 177 177 178 -== {{id name="IDLcheatsheet-M onochromatorpositioning"/}}Monochromatorpositioning ==255 +== {{id name="IDLcheatsheet-DCMpositioning"/}}DCM positioning == 179 179 180 180 (% class="wrapped fixed-table" %) 181 181 |=((( ... ... @@ -186,14 +186,39 @@ 186 186 motion 187 187 ))) 188 188 |((( 189 - calc_dcm_energy,10000, /set266 +##**dcm_pitch, 0.00001**## 190 190 )))|((( 191 - setDCM andundulator to10keV268 +move 2nd crystal pitch by 0.00001 deg 192 192 )))|((( 270 +relative [ deg ] 271 +))) 272 +|((( 273 +##**goto_dcm_pitch, -0.03976**## 274 +)))|((( 275 +move 2nd crystal pitch to -0.03976 deg 276 +)))|((( 277 +absolute [ deg ] 278 +))) 279 +|((( 280 +##**reflex_opt**## 281 +)))|((( 282 +move 2nd crystal pitch to optimal flux position 283 +)))|((( 193 193 \\ 194 194 ))) 286 + 287 +== {{id name="IDLcheatsheet-DMMpositioning"/}}DMM positioning == 288 + 289 +(% class="fixed-table" %) 290 +|=((( 291 +IDL command 292 +)))|=((( 293 +description 294 +)))|=((( 295 +motion 296 +))) 195 195 |((( 196 -d cm_pitch, 0.00001298 +##**dmm_x2_rot, 0.001**## 197 197 )))|((( 198 198 move 2nd crystal pitch by 0.00001 deg 199 199 )))|((( ... ... @@ -200,37 +200,133 @@ 200 200 relative [ deg ] 201 201 ))) 202 202 |((( 203 -goto_dcm_pitch, -0.03976 305 +##**goto_dmm_x2_rot, 0.8923 306 +**## 204 204 )))|((( 205 -move 2nd crystal pitch to -0.03976deg308 +move 2nd crystal pitch to 0.8923 deg 206 206 )))|((( 207 207 absolute [ deg ] 208 208 ))) 209 209 |((( 210 - reflex_opt313 +##**gap, 0.01**## 211 211 )))|((( 212 -move 2ndcrystalpitch tooptimalflux position315 +move undulator gap relative by 0.01 mm 213 213 )))|((( 214 - \\317 +relative [ mm ] 215 215 ))) 216 216 |((( 217 -gap, 0.0 1320 +##**goto_gap, 10.0**## 218 218 )))|((( 219 -move undulator gap b y0.01mm322 +move undulator gap absolute to 10.0 mm 220 220 )))|((( 324 +absolute [ mm ] 325 +))) 326 + 327 +== {{id name="IDLcheatsheet-Undulatorpositioning"/}}Undulator positioning == 328 + 329 +(% class="fixed-table" %) 330 +|=((( 331 +IDL command 332 +)))|=((( 333 +description 334 +)))|=((( 335 +motion 336 +))) 337 +|((( 338 +##**gap, 0.01**## 339 +)))|((( 340 +move undulator gap relative by 0.01 mm 341 +)))|((( 221 221 relative [ mm ] 222 222 ))) 344 +|((( 345 +##**goto_gap, 10.0**## 346 +)))|((( 347 +move undulator gap absolute to 10.0 mm 348 +)))|((( 349 +absolute [ mm ] 350 +))) 223 223 224 -== {{id name="IDLcheatsheet-Saveanimageastiff"/}}Save an image as tiff == 352 +{{info title="Monochromator positioning"}} 353 +ATTENTION: Setting up a Monochromator as well as positioning front end slits is **only** done by the beamline staff! 354 +{{/info}} 225 225 226 -(% class="wrapped" %) 356 +\\ 357 + 358 +== {{id name="IDLcheatsheet-Generalsyntax"/}}General syntax == 359 + 360 +(% class="wrapped relative-table" style="width: 45.5603%;" %) 227 227 |=((( 362 +Functionality 363 +)))|=((( 364 +IDL syntax 365 +))) 366 +|((( 367 +chaining commands 368 +)))|((( 369 +command_1 **&** command_2 **&** ... 370 +))) 371 +|((( 372 +absolute movement 373 +)))|((( 374 +**goto_**//motor//, position 375 +))) 376 +|((( 377 +relative movement 378 +)))|((( 379 +//motor//, position 380 +))) 381 +|((( 382 +current motor position 383 +)))|((( 384 +**pos_**//motor//() 385 +))) 386 + 387 +== {{id name="IDLcheatsheet-BeamshutterandInterlockcontrol"/}}Beamshutter and Interlock control == 388 + 389 +(% class="wrapped relative-table" style="width: 75.0455%;" %) 390 +|=((( 228 228 IDL command 229 229 )))|=((( 230 -desciption 393 +description 231 231 ))) 232 232 |((( 233 - write_tiff, '/gpfs/current/raw/test.tif', i, /SHORT396 +##**bs_info**## 234 234 )))|((( 235 -save as16-bittiff in/gofs/...398 +prints an overview of the beamline beamshutter status 236 236 ))) 400 +|((( 401 +##**bsoh_open / bsoh_close**## 402 +)))|((( 403 +opens / closes the optics hutch beamshutter. Closing the OH beamshutter will close all following beamshutters (EH1, EH2) 404 +))) 405 +|((( 406 +##**bseh1_open / bseh1_close**## 407 +)))|((( 408 +opens / closes the EH1 beamshutter. Opening will open the OH beamshutter as well. Closing the OH beamshutter will the EH2 beamshutter as well 409 +))) 410 +|((( 411 +##**bseh2_open / bseh2_close**## 412 +)))|((( 413 +opens / closes the EH2 beamshutter. Openening will open the OH and EH1 beamshutters as well. 414 +))) 415 +|((( 416 +##**ics_info**## 417 +)))|((( 418 +prints an overview of the beamline interlock status 419 +))) 420 +|((( 421 +##**ics_break_oh**## 422 +)))|((( 423 +closes all P05 beamshutters and breaks OH door interlock. P06 beamshutter must be closed for this command to work! 424 +))) 425 +|((( 426 +##**ics_break_eh1**## 427 +)))|((( 428 +closes EH1 beamshutter (and EH2 beamshutter if open) and breaks EH1 door interlock 429 +))) 430 +|((( 431 +##**ics_break_eh2**## 432 +)))|((( 433 +closes EH2 beshutter and breaks EH2 door interlock 434 +)))
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -1 166020711 +179783463 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://confluence.desy.de/spaces/P5I/pages/1 16602071/IDL cheat sheet1 +https://confluence.desy.de/spaces/P5I/pages/179783463/IDL cheat sheet