FNFT
|
Stores additional options for the routine fnft_kdvv. More...
#include <fnft_kdvv.h>
Stores additional options for the routine fnft_kdvv.
Use the fnft_kdvv_default_opts routine in order to generate a new variable of this type with default options and modify as needed.
fnft_kdvv_opts_t::bound_state_localization |
Controls how fnft_kdvv localizes bound states.
Should be of type fnft_kdvv_bsloc_t.
fnft_kdvv_opts_t::contspec_type |
Controls how fnft_kdvv fills the array contspec.
Should be of type fnft_kdvv_cstype_t.
fnft_kdvv_opts_t::discretization |
Controls which discretization is applied to the continuous-time Zakharov- Shabat scattering problem. See fnft_kdv_discretization_t.
fnft_kdvv_opts_t::discspec_type |
Controls how fnft_kdvv fills the array normconsts_or_residues.
Should be of type fnft_kdvv_dstype_t.
fnft_kdvv_opts_t::grid_spacing |
Grid spacing parameter for the fnft_kdvv_bsloc_GRIDSEARCH_AND_REFINE method, where the number of grid points is chosen such that the distance between two consequtive grid points is not larger than grid_spacing, which has to be positive. This option has to be set if GRIDSEARCH_AND_REFINE is used.
fnft_kdvv_opts_t::niter |
Number of Newton iterations to be carried out when either the fnft_kdvv_bsloc_NEWTON, or the fnft_kdvv_bsloc_GRIDSEARCH_AND_REFINE method is used. Can be zero or positive.
fnft_kdvv_opts_t::normalization_flag |
Controls whether intermediate results during the fast forward scattering step are normalized. This takes a bit longer but sometimes increases the accuracy of the results. By default, normalization is enabled (i.e., the flag is one). To disable, set the flag to zero.
fnft_kdvv_opts_t::richardson_extrapolation_flag |
Controls whether Richardson extrapolation is applied to try and improve the accuracy of the computed spectrum. First approximation is computed as usual using all the supplied samples. A second approximation is computed using only half the samples and it is combined with the first approximation which should ideally result in a better approximation. See Chimmalgi, Prins and Wahls, " Fast Nonlinear Fourier Transform Algorithms Using Higher Order Exponential Integrators," IEEE Access 7, 2019. Note that in certain situations such as discontinuous signals, applying Richardson extrapolation may result in worse accuracy compared to the first approximation. By default, Richardson extrapolation is disabled (i.e., the flag is zero). To enable, set the flag to one.