transfocate
ophyd Devices for transfocator access in hutch-python
Automated calculation of beryllium lens focusing optics for MFX Transfocator
Automated checkout tools for verifying PLC interlock status
Report generation for the latter
Note about RP
This module is not under Radiation Protection’s defined scope for items which require a permit to complete.
Note about the IOC
ioc-mfx-tfs-lens holds some important state for this ophyd support and calculations to work properly. If you experience zero division exceptions when performing calculations, chances are that the IOC has some invalid values stored.
Automated Checkout tools
These scripts use the IOC-defined bypass tools, meaning that no lenses will be moved and photon energy does _not_ need to change.
** Do not run these scripts without permission from MFX. **
Performing a checkout
First, load an IPython session with this module:
$ source /reg/g/pcds/pyps/conda/pcds_conda
$ ipython -i -m transfocate.automated_checkout
If the above times out, re-run the script. It’s ophyd related and will be resolved eventually. Otherwise, continue on.
Manual mode
To perform a scan for a single XRT lens, use:
>>> sweep_and_plot_xrt(xrt_lens, num_steps=100)
This will choose different combinations of TFS lenses to span the region, and scan energy in 100 discrete steps. To perform a scan for _all_ XRT lenses, use:
>>> sweep_and_plot_xrt_all(num_steps=100)
Per-lens data and plots will be saved to Excel and PNG/PDF files, respectively. This can be combined into a full checkout report with the following:
>>> generate_report()
Automatic mode
Automatic mode will perform sweep_and_plot_xrt_all() and generate_report() for you.
Report generation
Report generation will use the files generated from the scan steps above. It will only use existing files from the current directory. It can be used on its own - after exiting the IPython session and reloading it - without scanning again.
Now, you’ll have the option to perform the steps automatically or manually.
Metadata
Release files for transfocate 0.5.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| transfocate-0.5.9.tar.gz | 186.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| transfocate-0.5.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 367.7 kB
Release files / transfocate-0.5.9.tar.gz
| Download URL | transfocate-0.5.9.tar.gz |
|---|---|
| Size | 186.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1868eea2c1fa74a7dcda5d6c115cb3575c69ad30b181d34fe3201b3b855fb2da
|
|
BLAKE2b-256 checksum How to use checksums |
810613e399d93bdd905d71e7898885e8d2a235b802576bbb8e8a5d95c36842ad
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.19
|
Release files / transfocate-0.5.9-py3-none-any.whl
| Download URL | transfocate-0.5.9-py3-none-any.whl |
|---|---|
| Size | 180.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4c64c0dd70c7f1238f0f7c42f1e8fa5e5135afd0ee355ff5c29aa5fa31c6922e
|
|
BLAKE2b-256 checksum How to use checksums |
745a6974a0af95fdbecb903ad6f04a5b8856f3fce9f6c092fe4023c192762542
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.19
|