FNFT
Loading...
Searching...
No Matches
Public Attributes | List of all members
fnft_manakovv_opts_t Struct Reference

Stores additional options for the routine fnft_manakovv. More...

#include <fnft_manakovv.h>

Public Attributes

fnft_manakovv_bsfilt_t bound_state_filtering
 
fnft_manakovv_bsloc_t bound_state_localization
 
FNFT_UINT niter
 
FNFT_UINT Dsub
 
fnft_manakovv_dstype_t discspec_type
 
fnft_manakovv_cstype_t contspec_type
 
FNFT_INT normalization_flag
 
fnft_manakov_discretization_t discretization
 
FNFT_UINT richardson_extrapolation_flag
 

Detailed Description

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.

Member Data Documentation

◆ bound_state_filtering

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.

◆ bound_state_localization

fnft_manakovv_opts_t::bound_state_localization

Controls how fnft_manakovv localizes bound states.
Should be of type fnft_manakovv_bsloc_t.

◆ contspec_type

fnft_manakovv_opts_t::contspec_type

Controls how fnft_manakovv fills the array contspec.
Should be of type fnft_manakovv_cstype_t.

◆ discretization

fnft_manakovv_opts_t::discretization

Controls which discretization is applied to the continuous-time Zakharov- Shabat scattering problem. See fnft_manakov_discretization_t.

◆ discspec_type

fnft_manakovv_opts_t::discspec_type

Controls how fnft_manakovv fills the array normconsts_or_residues.
Should be of type fnft_manakovv_dstype_t.

◆ Dsub

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.

◆ niter

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.

◆ normalization_flag

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.

◆ richardson_extrapolation_flag

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.


The documentation for this struct was generated from the following file: