FNFT
Public Attributes | List of all members
fnft_nsep_opts_t Struct Reference

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

#include <fnft_nsep.h>

Public Attributes

fnft_nsep_loc_t localization
 
fnft_nsep_filt_t filtering
 
FNFT_REAL bounding_box [4]
 
FNFT_UINT max_evals
 
fnft_nse_discretization_t discretization
 
FNFT_INT normalization_flag
 
FNFT_REAL floquet_range [2]
 
FNFT_UINT points_per_spine
 
FNFT_UINT Dsub
 
FNFT_REAL tol
 

Detailed Description

Stores additional options for the routine fnft_nsep.

Use the fnft_nsep_default_opts routine in order to generate a new variable of this type with default options and modify as needed.

Member Data Documentation

◆ bounding_box

fnft_nsep_opts_t::bounding_box

Array of four reals. Defines a box in the complex plane that is used for filtering:
bounding_box[0] <= real(lambda) <= bounding_box[1]
bounding_box[2] <= imag(lambda) <= bounding_box[3]

◆ discretization

fnft_nsep_opts_t::discretization

◆ Dsub

fnft_nsep_opts_t::Dsub

Approximate number of samples after subsampling when SUBSAMPLE_AND_REFINE is used during localization. See fnft_nsep_loc_t. When set to zero (default), the algorithm will choose Dsub automatically such that the complexity of finding initial guesses is O(D log^2 D).

◆ filtering

fnft_nsep_opts_t::filtering

Controls how both the main spectrum and the auxiliary spectrum are filtered. It is recommended to use MANUAL filtering as accurate filtering reduces the runtime of the routine.
Should be of type fnft_nsep_filt_t.

◆ floquet_range

fnft_nsep_opts_t::floquet_range

Array of two reals. The mainspec variable will contain the z that solve Delta(z)=rhs, where Delta(z)=0.5 trace{monodromy matrix(z)} and rhs is varied over a equidistant grid of fnft_nsep_opts_t::points_per_spine values with the first grid point being floquet_range[0] and last grid point being floquet_range[1]. By default, floquet_range={-1,1} and points_per_spine=2, which corresponds to the conventional main spectrum (=endpoints of spines). By choosing more points_per_spine, one can determine the spines (or bands) connecting the points in the main spectrum.

◆ localization

fnft_nsep_opts_t::localization

Controls how both the main spectrum and the auxiliary main spectrum points are localized.
Should be of type fnft_nsep_loc_t.

◆ max_evals

fnft_nsep_opts_t::max_evals

Maximum number of function evaluations per root allowed for the refinement step during localization. Note that this is not necessarily the number of Newton iterations as Newton's method for higher order roots is used for some parts of the spectra.

◆ normalization_flag

fnft_nsep_opts_t::normalization_flag

◆ points_per_spine

fnft_nsep_opts_t::points_per_spine

◆ tol

fnft_nsep_opts_t::tol

Tolerance used to stop the refinement of main and auxiliary spectrum. Should be positive or -1. In latter case, the algorithm chooses the tolerance.


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