IDL cheat sheet
Coordinate system
Right-handed coordinate system with y-direction along the x-ray beam.
Sample positioning
Relative movement
IDL command | description | motion |
---|---|---|
s_stage_x/z, 1 | move rotation stage in x/z-direction by 1 mm | relative [ mm ] |
s_pos_z, 1 | move sample stage in z-direction by 1 mm, | relative [ mm ] |
s_pos_lateral, 1 | move sample stage in x-direction by 1 mm, regardless of position of rotation axis | relative [ mm ] |
s_angle, 90 | rotate sample around z axis | relative [ deg ] |
Absolute movement
IDL command | description | motion |
---|---|---|
goto_s_stage_x/z, 1 | move rotation stage in x/z-direction to 1 mm | absolute [ mm ] |
goto_s_pos_x/y/z, 1 | move sample stage in x/y/z-direction to 1 mm | absolute [ mm ] |
goto_s_angle, 90 | rotate sample around z axis to 90° | absolute [ deg ] |
Get current position
IDL command | description |
---|---|
pos_s_stage_x/z() | return current rotation stage in x/z position |
pos_s_pos_x/y/z() | return current sample stage in x/y/z position |
pos_s_angle() | return current rotation stage angle |
Predefined positions
IDL command | description |
---|---|
s_in | move sample to "in" position |
s_out | move sample to "out" position |
s_change | move sample to "change" position |
set_s_in_pos, 0 | set s_in position to 0.0 mm |
set_s_out_dist, 10 | set s_out distance to 10.0 mm |
Detector positioning
IDL command | description | motion |
---|---|---|
pressure_on | enable detector y movement | |
o_ccd_dist, 5 | move detector in y direction | relative [ mm ] |
pressure_off | disable detector movement |
Make images
IDL command | description |
---|---|
i=quick(100) & tv_quick, i & draw_box, [ x1, x2 ,z1 ,z2 ] | make an image & show image & draw box |
a=quick_abs(100) & tv_quick, a & draw_box, [ x1, x2 ,z1 ,z2 ] | make an absorption image & show image & draw box |
write_tiff, '/gpfs/current/raw/test.tif', i, /SHORT | save i as 16-bit tiff in /gpfs/... |
Monochromator positioning
IDL command | description | motion |
---|---|---|
calc_dcm_energy, 10000, /set | set DCM and undulator to 10 keV | |
dcm_pitch, 0.00001 | move 2nd crystal pitch by 0.00001 deg | relative [ deg ] |
goto_dcm_pitch, -0.03976 | move 2nd crystal pitch to -0.03976 deg | absolute [ deg ] |
reflex_opt | move 2nd crystal pitch to optimal flux position | |
gap, 0.01 | move undulator gap by 0.01 mm | relative [ mm ] |
General syntax remarks
Functionality | IDL syntax |
---|---|
Chaining commands | command_1 & command_2 & ... |
absolute movement | goto_motor, position |
relative movement | motor, position |
current motor position | pos_motor() |