Package: disptrans
Dispersion-Compensated AlgorithmDispersion-Compensated Algorithm for the Analysis for Electromagnetic WaveguidesThis package allows you to map dispersive waveguide data from the frequency-domain to distance-domain, and vice versa. The benefit of this approach, compared to a standard Fourier transform, is that this algorithm compensates for dispersion. Normally, dispersion causes signals in the time-domain to broaden as the propagate, making it difficult to isolate or supress adjacent signals. In the distance-domain, the signals remain sharp, even over long distances, allowing you to easily identify, isolate or suppress specific signals.For more information, see:J. D. Garrett and C. E. Tong,"A Dispersion-Compensated Algorithm for the Analysis of Electromagnetic Waveguides",IEEE Signal Processing Letters, vol. 28, pp. 1175-1179, Jun. 2021, doi:10.1109/LSP.2021.3086695.Getting StartedYou can install the CZT package usingpip:# to install the latest release (from PyPI)pipinstallczt# to install the latest commit (from GitHub)gitclonehttps://github.com/garrettj403/CZT.gitcdCZT
pipinstall-e.# to install dependencies for examplespipinstall-e.[examples]Example: Simple Waveguide SectionTransmission through a 10" long gold-plated WR-2.8 waveguide:Below, the time-domain response (calculated by an IFFT) is compared to the distance-domain response. Notice how much sharper the distance-domain response is.Example: Waveguide Cavity ResonatorThis is a quick example showing the power of the dispersion-compensated algorithm. Seethe included notebookfor more information.For this example, we will start with the frequency-domain response of a simple waveguide cavity resonator, as shown below. This is a 1 inch long WR-2.8 cavity. Whenever the length of the cavity is an integer number of the guided wavelength divided by two, there is a peak in transmission.In the distance-domain, we can see a series of reflections corresponding to different signal paths within the resonator. The first peak is the signal passing straight through the resonator (distance = 1 inch), the second peak is the signal that undergoes ones internal back-and-forth reflection (distance = 3 inch), etc.In the distance-domain, we can easily isolate the first peak and then return to the frequency-domain. The isolated reflection provides a very close match to theory.Likewise, we can easily isolate the 6th peak and return to the frequency-domain. This is impossible in the time-domain because there is too much broadening and overlap between adjacent reflections.Note: This example is similar to the example presented byGarrett & Tong 2021, but it is slightly different (e.g., different dimensions, different iris parameters, etc.). Please see this paper for more information.Citing This RepoIf you use this code, please cite the following paper:@article{Garrett2021,
  author       = {John D. Garrett and
                  Edward Tong},
  title        = {{A Dispersion-Compensated Algorithm for the Analysis of Electromagnetic Waveguides}},
  volume       = {28},
  pages        = {1175--1179},
  month        = jun,
  year         = {2021},
  journal      = {IEEE Signal Processing Letters},
  doi          = {10.1109/LSP.2021.3086695},
  url          = {https://ieeexplore.ieee.org/document/9447194}
}