BSLAMS |
BSLAMS_Parameters |
---|
double btol int iter |
BSLAMS_Parameters() |
|
BSlabWaveguide bend, |
Polarization pol, | |
BSLAMS_Parameters par, | |
BSlabModeArray& mode) |
|
BSlabWaveguide bend, |
Polarization pol, | |
double nmin, | |
double nmax, | |
BSLAMS_Parameters par, | |
BSlabModeArray& mode) |
|
BSlabWaveguide bend, |
Polarization pol, | |
double b0, double b1, int Nb, | |
double a0, double a1, int Na, | |
BSLAMS_Parameters par, | |
BSlabModeArray& marr) |
|
|
|
char *input_gamma, |
char *output_file, | |
char F, | |
int Nl, | |
int storage_flag) |
|
char *input_Sr, |
char *output_file, | |
char F, | |
int Nl, | |
int storage_flag) |
|
char *input_beta, |
char *output_file, | |
char F, | |
int Nl, | |
int storage_flag) |
double btol
Tolerance for the computation of bent mode propagation constants
int iter
Maximum no. of iterations for numerical solutions of dispersion equation
BSLAMS_Parameters()
Default constructor
|
int BSLAMS_findfundmode( | BSlabWaveguide bend, |
Polarization pol, | ||
BSLAMS_Parameters par, | ||
BSlabModeArray& mode) | ||
Find the "pol" polarized fundamental mode of the bend waveguide "bend". For root finding, use parameters given by "par". Store the results in mode array "mode". |
|
int BSLAMS_modeanalysis( | BSlabWaveguide bend, |
Polarization pol, | ||
double nmin, | ||
double nmax, | ||
BSLAMS_Parameters par, | ||
BSlabModeArray& mode) | ||
Complete mode analysis, returns number of found modes. This routine finds the "pol" polarized modes of the bend waveguide "bend". Modes with effective mode indices in the interval "[nmin, nmax]" are searched. For root finding, use parameters given by "par". Store the results in mode array "mode". |
int bend_mode_analysis( | BSlabWaveguide bend, | |
Polarization pol, | ||
double b0, double b1, int Nb, | ||
double a0, double a1, int Na, | ||
BSLAMS_Parameters par, | ||
BSlabModeArray& marr) | ||
For a bend waveguide "bend", find all "pol" polarized bent modes with (complex valued)
propagation constants laying in a
domain in the complex plane defined by lower left point "(b0, a0)" and upper
right point "(b1, a1)". |
Dvector Qfit(Dvector x, Dvector y) | ||
Given values function y=f(x) at three points, this function
gives coefficients [a, b, c] for quadratic interpolation polynomial a*x^2 + b*x + c. |
Dvector Lfit(Dvector x, Dvector y) | ||
Given values function y=f(x) at two points, this function
gives coefficients [a, b] for linear interpolation polynomial a*x + b. |
Dmatrix interpolated_gamma( | char *input_gamma, | |
char *output_file, | ||
char F, | ||
int Nl, | ||
int storage_flag) | ||
Gives interpolated bent mode propagation constants. |
Dmatrix interpolated_reduced_S( | char *input_Sr, | |
char *output_file, | ||
char F, | ||
int Nl, | ||
int storage_flag) | ||
Gives interpolated reduced scattering matrix Sr (See ???). |
Dmatrix interpolated_beta( | char *input_beta, | |
char *output_file, | ||
char F, | ||
int Nl, | ||
int storage_flag) | ||
Gives interpolated straight waveguide mode propagation constants. |