FNFT
|
Stores additional options for the routine fnft_manakovv. More...
#include <fnft_manakovv.h>
Stores additional options for the routine fnft_manakovv.
Use the fnft_manakovv_default_opts routine in order to generate a new variable of this type with default options and modify as needed.
fnft_manakovv_opts_t::bound_state_filtering |
Controls how fnft_manakovv decide whether a numerically found root of \( a(\lambda) \) is an actual bound state or not.
Should be of type fnft_manakovv_bsfilt_t.
fnft_manakovv_opts_t::bound_state_localization |
Controls how fnft_manakovv localizes bound states.
Should be of type fnft_manakovv_bsloc_t.
fnft_manakovv_opts_t::contspec_type |
Controls how fnft_manakovv fills the array contspec.
Should be of type fnft_manakovv_cstype_t.
fnft_manakovv_opts_t::discretization |
Controls which discretization is applied to the continuous-time Zakharov- Shabat scattering problem. See fnft_manakov_discretization_t.
fnft_manakovv_opts_t::discspec_type |
Controls how fnft_manakovv fills the array normconsts_or_residues.
Should be of type fnft_manakovv_dstype_t.
fnft_manakovv_opts_t::Dsub |
Controls how many samples are used after subsampling when bound states are localized using the fnft_manakovv_bsloc_SUBSAMPLE_AND_REFINE method. See fnft_manakovv_bsloc_t for details.
fnft_manakovv_opts_t::niter |
Number of Newton iterations to be carried out when either the fnft_manakovv_bsloc_NEWTON or the fnft_manakovv_bsloc_SUBSAMPLE_AND_REFINE method is used.
fnft_manakovv_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_manakovv_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.