FNFT is a software library for the numerical computation of (inverse) nonlinear Fourier transforms, which are also known as (inverse) scattering transforms. The focus of the library is on fast algorithms, but it also contains non-fast methods. FNFT is written in C and comes with a MATLAB interface. A Python interface is available separately.
-
Nonlinear Schroedinger equation
-
Vanishing boundary conditions
- Reflection coefficient and/or scattering coefficients (a and b)
- Bound states (eigenvalues)
- Norming constants and/or residues
-
(Quasi-)Periodic boundary conditions
- Main spectrum
- Auxiliary spectrum
-
-
Korteweg-de Vries equation
- Vanishing boundary conditions
- Reflection coefficient and/or scattering coefficients (a and b)
- Bound states (eigenvalues)
- Norming constants and/or residues
- Vanishing boundary conditions
-
Manakov equation
- Vanishing boundary conditions
- Reflection coefficient and/or scattering coefficients (a, b1 and b2)
- Bound states (eigenvalues)
- Vanishing boundary conditions
-
Nonlinear Schroedinger equation
- Vanishing boundary conditions
- Inversion of reflection coefficients, b-scattering coefficients or the inverse Fourier transform of the b-coefficient
- Bound states (eigenvalues) can be added with arbitrary norming constants/residuals
- Vanishing boundary conditions
Please join the FNFT mailing list if you want to be notified about new releases of FNFT. You can subscribe either using the web interface, or by sending an email with the subject "subscribe" to [email protected].
If you use FNFT for your academic work, please cite the accompanying software paper. Latex users can use the following BibTex entry.
@article{FNFT2018,
author = {S. Wahls and S. Chimmalgi and P.J. Prins},
title = {{FNFT: A Software Library for Computing Nonlinear Fourier Transforms}},
journal = {{The Journal of Open Source Software}},
year = {2018},
volume = {3},
issue = {23},
pages = {597},
doi = {10.21105/joss.00597},
url = {https://doi.org/10.21105/joss.00597},
issn = {2475-9066}
}
Please follow the instructions in the file INSTALL.md.
Please read the file Getting-Started.md.
Please use the issue tracker to report any problems with the software. If you want to contribute to the development of FNFT, please email Sander Wahls.
- Sander Wahls, KIT (since July 2023) and TU Delft (before)
- Shrinivas Chimmalgi, TU Delft
- Peter J. Prins, TU Delft
- Marius Brehler, TU Dortmund
- Lianne de Vries, student TU Delft
FNFT is provided under the terms of the GNU General Public License, version 2.
-
This project has received funding from the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme (grant agreement No 716669).
-
FNFT incorporates code from the Fortran library eiscor.
-
FNFT incorporates code from the C library Kiss FFT.
The algorithms in FNFT utilize ideas from the following references. More information can be found in the documentation of the individual routines.
- S. Wahls and H. V. Poor, "Introducing the fast nonlinear Fourier transform", Proc. IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), Vancouver, Canada, May 2013.
- S. Wahls and H. V. Poor, "Fast Numerical Nonlinear Fourier Transforms", IEEE Transactions on Information Theory, vol. 61, no. 12, pp. 6957-6974, Dec. 2015.
- P. J. Prins and S. Wahls, "Higher order exponential splittings for the fast non-linear Fourier transform of the Korteweg-de Vries equation", Proc. 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). Piscataway, NJ, USA: IEEE. 2018. pp. 4524-4528.
- G. Boffetta and A. R. Osborne, "Computation of the direct scattering transform for the nonlinear Schroedinger equation", Journal of Computational Physics, vol. 102, no. 2, pp. 252-264, Oct. 1992.
- V. Aref, "Control and Detection of Discrete Spectral Amplitudes in Nonlinear Fourier Spectrum", Preprint, arXiv:1605.06328v1, May 2016.
- S. Hari and F. R. Kschischang, "Bi-Directional Algorithm for Computing Discrete Spectral Amplitudes in the NFT", Journal of Lightwave Technology, vol. 34, no. 15, pp. 3529-3537, Aug. 2016.
- J. L. Aurentz, T. Mach, L. Robol, R. Vandebril and D. S. Watkins, "Fast and backward stable computation of roots of polynomials, Part IIa: general backward error analysis", Technical Report no. TW 683, KU Leuven, Oct. 2017.
- V. Aref, S. T. Le and H. Buelow, "Modulation over Nonlinear Fourier Spectrum: Continuous and Discrete Spectrum", Journal of Lightwave Technology, vol. 36, no. 6, pp. 1289--1295, Mar. 2018.
- W. K. McClary, "Fast seismic inversion", Geophysics, vol. 48, no. 10, pp. 1371--1372, Oct. 1983.
- S. Wahls and H. V. Poor, "Fast Inverse Nonlinear Fourier Transform For Generating Multi-Solitons In Optical Fiber", Proc. IEEE International Symposium on Information Theory (ISIT’15), pp. 1676–1680, Hong Kong, China, Jun. 2015.
- S. Wahls and V. Vaibhav, "Fast Inverse Nonlinear Fourier Transforms for Continuous Spectra of Zakharov-Shabat Type", Withdrawn Preprint, Dec. 2016. arXiv:1607.01305v2 [cs.IT]
- S. Wahls, "Generation of Time-Limited Signals in the Nonlinear Fourier Domain via b-Modulation", Proc. European Conference on Optical Communcation (ECOC), Gothenburg, Sweden, Sep. 2017.
- J. Skaar, L. Wang and T. Erdogan, "On the synthesis of fiber Bragg gratings by layer peeling", IEEE Journal of Quantum Electronics, vol. 37, no. 2, pp. 165--173, Feb. 2001.
- S. Chimmalgi, P. J. Prins and S. Wahls, "Fast Nonlinear Fourier Transform Algorithms Using Higher Order Exponential Integrators", IEEE Access, vol. 7, pp. 145161--145176, Oct. 2019.
- P. J. Prins and S. Wahls, "Soliton Phase Shift Calculation for the Korteweg–De Vries Equation", IEEE Access, vol. 7, pp. 122914--122930, July 2019.
- S. Medvedev, I. Vaseva, I. Chekhovskoy and M. Fedoruk, "Exponential fourth order schemes for direct Zakharov-Shabat problem", Optics Express, vol. 28, pp. 20--39, 2020.
- J. Mertsching, "Quasiperiodie Solutions of the Nonlinear Schroedinger Equation", Fortschritte der Physik, vol. 35, pp. 519--536, 1987.
- L. de Vries, "Fast Numerical Nonlinear Fourier Transform Algorithms for the Manakov Equation", Master thesis, TU Delft, 2021.