|
FNFT
|
Properties of the discretizations for the Korteweg-de Vries equation. More...


Go to the source code of this file.
Functions | |
| FNFT_UINT | fnft__akns_discretization_degree (fnft__akns_discretization_t discretization) |
| This routine returns the max degree d of the polynomials in a single scattering matrix or zero if the discretization is unknown. More... | |
| FNFT_REAL | fnft__akns_discretization_boundary_coeff (fnft__akns_discretization_t discretization) |
| This routine returns the boundary coefficient based on the discretization. More... | |
| FNFT_INT | fnft__akns_lambda_to_z (const FNFT_UINT n, const FNFT_REAL eps_t, FNFT_COMPLEX *const vals, fnft__akns_discretization_t discretization) |
| This routine maps lambda from continuous-time domain to z in the discrete-time domain based on the discretization. More... | |
| FNFT_INT | fnft__akns_z_to_lambda (const FNFT_UINT n, const FNFT_REAL eps_t, FNFT_COMPLEX *const vals, fnft__akns_discretization_t discretization) |
| This routine maps z from the discrete-time domain to lambda in the continuous-time domain based on the discretization. More... | |
Properties of the discretizations for the Korteweg-de Vries equation.
| FNFT_REAL fnft__akns_discretization_boundary_coeff | ( | fnft__akns_discretization_t | discretization | ) |
This routine returns the boundary coefficient based on the discretization.
The boundary coefficient is the fraction of the step size that a discretized potential extends beyond the last sample. This routine returns this value based on the discretization of type fnft__akns_discretization_t.
| [in] | discretization | The type of discretization to be used. Should be of type fnft__akns_discretization_t. |
| FNFT_UINT fnft__akns_discretization_degree | ( | fnft__akns_discretization_t | discretization | ) |
This routine returns the max degree d of the polynomials in a single scattering matrix or zero if the discretization is unknown.
It defines the step size of the frequency grid \(z = \text{e}^{2*j*\xi*\epsilon_t/d}\) based on the discretization type.
| [in] | discretization | The type of discretization to be used. Should be of type fnft_kdv_discretization_t. |
| FNFT_INT fnft__akns_lambda_to_z | ( | const FNFT_UINT | n, |
| const FNFT_REAL | eps_t, | ||
| FNFT_COMPLEX *const | vals, | ||
| fnft__akns_discretization_t | discretization | ||
| ) |
This routine maps lambda from continuous-time domain to z in the discrete-time domain based on the discretization.
This routine maps continuous-time domain value lambda to discrete-time domain value z = exp(2i*lambda*eps_t/degree1step), where degree1step is based on the discretization of type fnft__akns_discretization_t.
| [in] | n | Number of values to be mapped. |
| [in] | eps_t | Real-valued discretization step-size. |
| [in,out] | vals | Pointer to location of first element of array containing complex-valued continuous-time domain spectral parameter lambda. The values are replaced with discrete-time domain values z. |
| [in] | discretization | Discretization of type fnft__akns_discretization_t. |
| FNFT_INT fnft__akns_z_to_lambda | ( | const FNFT_UINT | n, |
| const FNFT_REAL | eps_t, | ||
| FNFT_COMPLEX *const | vals, | ||
| fnft__akns_discretization_t | discretization | ||
| ) |
This routine maps z from the discrete-time domain to lambda in the continuous-time domain based on the discretization.
This routine maps discrete-time domain value z to continuous-time domain value lambda = degree1step*log(z)/(2i*eps_t), where degree1step is based on the discretization of type fnft__akns_discretization_t.
| [in] | n | Number of values to be mapped. |
| [in] | eps_t | Real-valued discretization step-size. |
| [in,out] | vals | Pointer to location of first element of array containing complex-valued discrete-time domain spectral parameter z. The values are replaced with continuous-time domain values lambda. |
| [in] | discretization | Discretization of type fnft__akns_discretization_t. |
1.8.17