RIFTA is the Robust Iterative Fourier Transform based dwell time Algorithm (RIFTA) for deterministic optics fabrication. RIFTA was proposed and developed at the National Synchrotron Light Source II (NSLS-II), NY, USA, for the Ion Beam Figuring (IBF) of synchrotron X-ray mirrors. It can be generally applied to any Computer Controlled Optical Surfacing (CCOS) processes. Both the MATLAB and Python implementations of the algorithm are open sourced in this repository.
- Surface height-based RIFTA [1]
- Surface slope-based RIFTA
- Thresholded inverse filtering assisted by direct search [1]
- 2D convolution using Fast Fourier Transform (FFT)
- All the units used in the code are metres unless otherwise specified.
- The common arguments that are required for IBFest dwell time calculation include:
- Tool Influence Function (TIF): the TIF can come from either the measurement or model, by choosing
avg
ormodel
, respectively. Ifmodel
is chosen, the parameters for a 2D Gaussian should be set, includeing the Peak Removal Rate (PRR)A
, theSigma
, the diameterd
, and the centersu
. Ifavg
is chosen,Xtif
,Ytif
, andZtif
should be provided. Zd
: the desired height to be removed.ca_range
: the range of the Clear Aperture (CA), which is a struct containsx_s
,y_s
,x_e
, andy_e
, which are the start and end coordinates (units are meters) of the CA.dg_range
: the range of the Dwell Grid (DG), which should be larger thanca_range
at least the radius of the BRF on each side.
- Tool Influence Function (TIF): the TIF can come from either the measurement or model, by choosing