| ... | ... | @@ -70,29 +70,30 @@ There are seven motors in Kappa: |
|
|
|
---
|
|
|
|
|
|
|
|
## Diffraction
|
|
|
|
|
|
|
|
wh() #print current position
|
|
|
|
pa() #print current sample orientation
|
|
|
|
wm() #print motor positions and constraints
|
|
|
|
-------------------------------------------------------------
|
|
|
|
sample_new('name', a, b, c, alpha, beta, gamma) #enter sample lattice
|
|
|
|
sample_update(a, b, c, alpha, beta, gamma) #update sample lattice
|
|
|
|
sample_list() #list all registered samples
|
|
|
|
sample_change(name=name) #change to another sample from the list
|
|
|
|
setor0(H, K, L, tth, th, chi, phi) #enter first reflection
|
|
|
|
setor1(H, K, L, tth, th, chi, phi) #enter second reflection
|
|
|
|
or_swap() #swap two reflections and recompute UB
|
|
|
|
show_ors() #print current reflections
|
|
|
|
clear_ors() #clear all reflections
|
|
|
|
-------------------------------------------------------------
|
|
|
|
cahkl(H, K, L, freeze=deg, hv=eV) #calculate motor position for HKL
|
|
|
|
cahkl_path(hkl_start, hkl_stop, npts) #calculate motor positions for a HKL trajectory
|
|
|
|
cahkl_table(reflectiosn) #calculate motor positions for a given trajectory table
|
|
|
|
mvhkl(H, K, L, freeze=deg, hv=eV) #move to HKL
|
|
|
|
-------------------------------------------------------------
|
|
|
|
scanhkl(hkl1, hkl2, npts) #scan a trajectory in r-space
|
|
|
|
scanhkl_lst(hkl_lst) #scan a given trajectory in r-space
|
|
|
|
scanE_fixQ(hv_list, ID_tracking=False) #scan X-ray energy at a fixed Q
|
|
|
|
```python
|
|
|
|
wh() #print current position
|
|
|
|
pa() #print current sample orientation
|
|
|
|
wm() #print motor positions and constraints
|
|
|
|
-------------------------------------------------------------
|
|
|
|
sample_new('name', a, b, c, alpha, beta, gamma) #enter sample lattice
|
|
|
|
sample_update(a, b, c, alpha, beta, gamma) #update sample lattice
|
|
|
|
sample_list() #list all registered samples
|
|
|
|
sample_change(name=name) #change to another sample from the list
|
|
|
|
setor0(H, K, L, tth, th, chi, phi) #enter first reflection
|
|
|
|
setor1(H, K, L, tth, th, chi, phi) #enter second reflection
|
|
|
|
or_swap() #swap two reflections and recompute UB
|
|
|
|
show_ors() #print current reflections
|
|
|
|
clear_ors() #clear all reflections
|
|
|
|
-------------------------------------------------------------
|
|
|
|
cahkl(H, K, L, freeze=deg, hv=eV) #calculate motor position for HKL
|
|
|
|
cahkl_path(hkl_start, hkl_stop, npts) #calculate motor positions for a HKL trajectory
|
|
|
|
cahkl_table(reflectiosn) #calculate motor positions for a given trajectory table
|
|
|
|
mvhkl(H, K, L, freeze=deg, hv=eV) #move to HKL
|
|
|
|
-------------------------------------------------------------
|
|
|
|
scanhkl(hkl1, hkl2, npts) #scan a trajectory in r-space
|
|
|
|
scanhkl_lst(hkl_lst) #scan a given trajectory in r-space
|
|
|
|
scanE_fixQ(hv_list, ID_tracking=False) #scan X-ray energy at a fixed Q
|
|
|
|
```
|
|
|
|
|
|
|
|
## Kappa Detectors
|
|
|
|
|
| ... | ... | @@ -117,81 +118,91 @@ tthdet.get() # returns the name of the current detector |
|
|
|
|
|
|
|
### Keithley Current Amplifiers
|
|
|
|
#### Attributes:
|
|
|
|
[det].state
|
|
|
|
[det].current
|
|
|
|
[det].rate
|
|
|
|
[det].range
|
|
|
|
[det].autorange
|
|
|
|
[det].auto_ulimit
|
|
|
|
[det].auto_llimit
|
|
|
|
[det].zero_check
|
|
|
|
[det].zero_correct
|
|
|
|
[det].median_filter
|
|
|
|
[det].median_filter_rank
|
|
|
|
[det].digital_filter
|
|
|
|
[det].digital_filter_count
|
|
|
|
[det].digital_filter_control
|
|
|
|
[det].set_avg_pts
|
|
|
|
[det].set_avg_time
|
|
|
|
```python
|
|
|
|
[det].state
|
|
|
|
[det].current
|
|
|
|
[det].rate
|
|
|
|
[det].range
|
|
|
|
[det].autorange
|
|
|
|
[det].auto_ulimit
|
|
|
|
[det].auto_llimit
|
|
|
|
[det].zero_check
|
|
|
|
[det].zero_correct
|
|
|
|
[det].median_filter
|
|
|
|
[det].median_filter_rank
|
|
|
|
[det].digital_filter
|
|
|
|
[det].digital_filter_count
|
|
|
|
[det].digital_filter_control
|
|
|
|
[det].set_avg_pts
|
|
|
|
[det].set_avg_time
|
|
|
|
```
|
|
|
|
|
|
|
|
#### Methods:
|
|
|
|
[det].acquire()
|
|
|
|
[det].refresh()
|
|
|
|
[det].refresh_all()
|
|
|
|
[det].get_all()
|
|
|
|
[det].set(attr, val)
|
|
|
|
[det].reset()
|
|
|
|
[det].count_time()
|
|
|
|
[det].set_avg_time(dwell_time_second)
|
|
|
|
[det].set_avg_pts(n_pts)
|
|
|
|
[det].set_default()
|
|
|
|
```python
|
|
|
|
[det].acquire()
|
|
|
|
[det].refresh()
|
|
|
|
[det].refresh_all()
|
|
|
|
[det].get_all()
|
|
|
|
[det].set(attr, val)
|
|
|
|
[det].reset()
|
|
|
|
[det].count_time()
|
|
|
|
[det].set_avg_time(dwell_time_second)
|
|
|
|
[det].set_avg_pts(n_pts)
|
|
|
|
[det].set_default()
|
|
|
|
```
|
|
|
|
|
|
|
|
#### Functions:
|
|
|
|
ca_reset_all() #resets all the connected current amplifiers
|
|
|
|
ca_average(avg_pts) #set up average reading using number of points
|
|
|
|
ca_average_time(dwell_time) #set up average reading using dwell_time
|
|
|
|
ca_average_off() #turn off average reading
|
|
|
|
ca_rate(rate) #set rate for all ca's in the endstation
|
|
|
|
ca_live() #puts all the Keithley in live mode
|
|
|
|
ca_passive() #puts all the Keithley in passive mode
|
|
|
|
|
|
|
|
```python
|
|
|
|
ca_reset_all() #resets all the connected current amplifiers
|
|
|
|
ca_average(avg_pts) #set up average reading using number of points
|
|
|
|
ca_average_time(dwell_time) #set up average reading using dwell_time
|
|
|
|
ca_average_off() #turn off average reading
|
|
|
|
ca_rate(rate) #set rate for all ca's in the endstation
|
|
|
|
ca_live() #puts all the Keithley in live mode
|
|
|
|
ca_passive() #puts all the Keithley in passive mode
|
|
|
|
```
|
|
|
|
|
|
|
|
### SRS Current Amplifiers
|
|
|
|
#### Attributes:
|
|
|
|
[det].scaler
|
|
|
|
[det].sens_num
|
|
|
|
[det].sens_unit
|
|
|
|
[det].offset_num
|
|
|
|
[det].offset_unit
|
|
|
|
[det].offset_on
|
|
|
|
[det].offset_cal
|
|
|
|
[det].offset_val
|
|
|
|
[det].bias_val
|
|
|
|
[det].bias_on
|
|
|
|
[det].filter_type
|
|
|
|
[det].low_freq
|
|
|
|
[det].high_freq
|
|
|
|
[det].gain_mode
|
|
|
|
[det].invert_on
|
|
|
|
[det].blank_on
|
|
|
|
```python
|
|
|
|
[det].scaler
|
|
|
|
[det].sens_num
|
|
|
|
[det].sens_unit
|
|
|
|
[det].offset_num
|
|
|
|
[det].offset_unit
|
|
|
|
[det].offset_on
|
|
|
|
[det].offset_cal
|
|
|
|
[det].offset_val
|
|
|
|
[det].bias_val
|
|
|
|
[det].bias_on
|
|
|
|
[det].filter_type
|
|
|
|
[det].low_freq
|
|
|
|
[det].high_freq
|
|
|
|
[det].gain_mode
|
|
|
|
[det].invert_on
|
|
|
|
[det].blank_on
|
|
|
|
```
|
|
|
|
|
|
|
|
#### Methods:
|
|
|
|
[det].reset_filter()
|
|
|
|
[det].set_all()
|
|
|
|
[det].reset_default()
|
|
|
|
[det].update_attrs()
|
|
|
|
[det].get_all()
|
|
|
|
[det].get(attr)
|
|
|
|
[det].set(attr, val)
|
|
|
|
[det].gain_str(channel='offset')
|
|
|
|
[det].get_gains()
|
|
|
|
[det].set_gain(gain, unit)
|
|
|
|
[det].set_offset(value, gain, unit)
|
|
|
|
[det].auto_dark_counts(target=1000)
|
|
|
|
```python
|
|
|
|
[det].reset_filter()
|
|
|
|
[det].set_all()
|
|
|
|
[det].reset_default()
|
|
|
|
[det].update_attrs()
|
|
|
|
[det].get_all()
|
|
|
|
[det].get(attr)
|
|
|
|
[det].set(attr, val)
|
|
|
|
[det].gain_str(channel='offset')
|
|
|
|
[det].get_gains()
|
|
|
|
[det].set_gain(gain, unit)
|
|
|
|
[det].set_offset(value, gain, unit)
|
|
|
|
[det].auto_dark_counts(target=1000)
|
|
|
|
```
|
|
|
|
|
|
|
|
#### Functions:
|
|
|
|
scaler_cts(time_seconds=0.1) #sets the scalers counting
|
|
|
|
|
|
|
|
```python
|
|
|
|
scaler_cts(time_seconds=0.1) #sets the scalers counting
|
|
|
|
```
|
|
|
|
-----------------------------------------------------------
|
|
|
|
|
|
|
|
With shutter close or slit at 0 (faster), 'INPUT OFFSET' set 'ON' and 'UNCAL'
|
| ... | ... | @@ -234,9 +245,10 @@ data = IEX_nData(scan_num_start, scan_num_stop/inf, path=path, prefix=prefix) |
|
|
|
```
|
|
|
|
|
|
|
|
### raw data
|
|
|
|
For a direct access to the raw data:
|
|
|
|
```python
|
|
|
|
x = data.mda[scan_num].posx[0].data
|
|
|
|
y = data.mda[scan_num].det[det_num].data
|
|
|
|
x = data.mda[scan_num].posx[0].data
|
|
|
|
y = data.mda[scan_num].det[det_num].data
|
|
|
|
```
|
|
|
|
|
|
|
|
### basic mda plots:
|
| ... | ... | |