Wguide17M     Slab Waveguide/Reflectance Solver

July 06, 2017   


Wguide17M is a Java console application for solving the complex N-layer optical slab-waveguide problem with arbitrary N-layer real facet coatings. This application does not solve for 3D waveguide configurations such as ridge or buried heterostructure waveguides which are typically computed using fully numerical methods. However, Wguide17M does provide a fairly thorough and reliable limiting benchmark capability by which to help validate 3D structure results through the inspection of limiting-behaviour slab waveguide results. Although Wguide17M has units optimized for optical waveguides in the visible and infrared regions of the spectrum, this application can be used for slab waveguide calculation at any frequency/wavelength, provided of course that appropriate waveguide and coating refractive indices are used.

Wguide17M numerically searches for a TE and/or a TM guided waveguide mode over a specified complex mode-index search range and with a specified precision. The mode found may be any of the supported guided modes of the waveguide. Arbitrary complex refractive indices for the layers, substrate and superstrate are supported. Negative imaginary parts of layer indices correspond to loss. All data is read from a command-line specified text input data file and optionally output files can be written which contain the results along with intensity and transverse field profiles. The console output displays all the waveguide, coating and computation-configuration data and the results. Wguide17M provides options that assist with establishing proper mode-index search ranges for multimoded waveguides and for more complex multi-layer waveguide configurations.

Wguide17M also calculates the multilayer waveguide Fourier Transform (FT) and modal reflectance for TE and TM modes for waveguides with multi-layer lossless facet coatings using the Kendall 1993 Free Space Radiation Modes (FSRM) approach and two methods based on Vassallo's fictitious layer equivalent index/Fresnel method. The FSRM method is the most accurate and has been shown to be very accurate for waveguide layer index variation of up to about 10% although results for larger index variation are useful. The facet-coating index step and variation is however arbitrary. The mode-solutions, waveguide fields, FTs, modal reflectances and far-field patterns computed with Wguide17M are all valid for the complex N-layer slab waveguide. The N-layer waveguide mode solver functionality can be used independently of the mode-facet reflection solver. The waveguide mode complex FT can optionally be output to a file for plotting with applications such as Excel.

Models Accuracy and Computation Precision:

The mode-solver calculation solves for the complex waveguide mode index nmode. It is based on numerical iteration using rigorous field matching of exact piecewise Ey and Hy field profiles in the complex waveguide layers, and assuming a mode is found, nmode is accurate to over 10 significant figures. The Fourier transforms for the multilayer TE and TM modes are computed to the same precision as nmode using piecewise analytical integration through the waveguide layers. Similarly, the fictitious-layer equivalent index, neq (Vassallo 1988) is calculated exactly (within the precision of nmode). The computationally intensive mode and total reflectance integrals are computed numerically with adjustable range and increment Fourier S parameters from the input data file. However, the intrinsic accuracy of the FSRM and the Vassallo fictitious layer Fresnel MODELS are both much less. Based on comparison with some of Vassallo's exact integral-equation numerical solutions for some benchmark scenarios, for waveguide-layer index steps < ~ 10%, reflectance results obtained with FSRM are typically within ~ 1% of the true values except for cases with extremely low-reflectance coatings of less than 1e-5 (the default data file demonstrates this). All the approximate reflectance models contain a difference term in the integration numerator which will limit the computation accuracy, particularly for very low reflectance cases. As a rough guide, the digits of precision of the computed modal reflectance value will worst case be the order of the square of the FT parameter increment (deltaS/beta). For example, with the default FT increment value of deltaS/beta = 0.001, the absolute worst case computation precision of Rmode will be in the 1e-6 range (typically the accuracy is one or two figures better or 1e-7 to 1e-8 in this case). In cases of R < 1e-6, the deltaS/beta variable can be reduced to check convergence of R (with consequent slower execution time). One of the command-line invocations conveniently allows quickly changing the FT integration increment without editing the data input file. However, in extremely low R cases, true minimum reflectance values are extremely sensitive to exact waveguide and coating indices and thicknesses which from a practical control perspective may not be realistically achievable (Details). Therefore in these cases, high computational precision is often not required, but rather simply establishing that the R value is lower than a required threshold (e.g. 1e-5 for typical travelling wave laser amplifier waveguides). All the Wguide17M parameter variation calculations use the FSRM method for reflectance calculation. With the default FT range parameters of Wguide17M, the FSRM calculation produces sufficiently converged results for reflectance to well within the intrinsic model-accuracy of the FSRM model. The Vassallo fictitious-layer method using the "optimum" neq value produces results that are usually slightly less accurate than the FSRM results, based on a few sample comparisons. The displayed results for reflectance are shown to many more figures to facilitate possible comparison of more rigorous calculations/benchmarks and to confirm proper convergence as discussed above. To this end, the FT integration range parameters can be changed (data input file or command-line invocation). This also can provide faster computation for compute-intensive parameter variation studies with some loss in accuracy of the results (within limitations of the FSRM model).


Wguide17M first reads the data input file specified on the command line.
Two examples are: Multi-layer Coated Data File,   Uncoated Lossy Waveguide Data File.
Wguide17M parses the input file and based on parameters read from the file:

(1) Performs a 2 dimensional (real and imaginary parts of mode index) meshed iterative search for a single TE and/or TM slab mode. If more than one mode exists in the specified search range, any one of these supported modes might be found. Wguide17M uses the classic Rouard iterative approach for the optical "reflectivity" of a 3 region (single layer) sequence, working from the lowest waveguide layer (substrate) up to the topmost interface. The "topmost" region is the first region specified in the data input file. The application searches for an absolute minimum of rinverse=1/"reflectance", over the specified search range. Maximum values of "reflectance" correspond to the guided wave condition (finite "outbound" wave for zero "inbound" wave). For waveguides that support multiple guided waves, the mode found will depend on the search range parameters. Wguide17M has an invocation which displays rinverse for a range of variation of n.re. This can be used to quickly inspect the search range for the number of guided modes, and hence to narrow the mode-search range parameters for a specific mode in cases of multiple supported modes.

(2) The data input file specifies if TE, TM or both mode polarizations are searched for. If the command line specifies output files, they are created (overwriting existing files with duplicate names) depending on the mode selection setting in the data file. If no apparent mode is found (based on convergence to a very low rinverse value), no output file is created and a complex nmode value of (0,0) is shown. In this case, the mode-search range and resolution and the convergence parameter can be changed (in the data input file).

(3) Status of the mode(s) found for the selected search range is displayed and optionally written to output data file(s). The Poynting vector profile Sz(x) and Ey(x) for TE and Hy(x) for TM modes are written out next as tab delimited data. This data can be read directly as plotable data files by programs like Excel. If the multiplot parameter value is greater than 1, multiple E(y) or H(y) profiles are output to the file, each plot being an equal time increment over a full optical cycle and each time value represented by a single column of data. The first column of data is the x coordinate value in microns. The second column of data is the Sz(x) profile. Remaining columns are the field profiles. Visual inspection of simple plots from this data will reveal the mode order, for multimoded guides.

(4) If the leakymode switch is enabled in the data input file, leaky modes are sought with INBOUND evanescent decay from the two outer layers. For most "normal" waveguide guided mode situations, the leakymode switch should be set to 0.

(5) The data input file must specify ALL parameters described in the sample input data file. The data must include numeric values for:
	Regions (N  min=3)
	Mode type   (0, 1 or 2)
	Wavelength (in um)
	Complex refractive index data  for N regions: (real and imag parts;  neg imag parts for lossy media)
	Layer thicknesses (N-2 values in um)
	Mode index search range for  real part (realmin  realmax)
	Mode index search range for imag part (imagmin  imagmax)
	Mode search iterations
	Mesh points in search (Npointsreal    Npointsimag)
	Display range for fields  (xmin   xmax   dx)  in um
	Leaky mode parameter ( 0 or 1)
	Multiplot number  (1 or greater)
	Calculate Rmode parameter (0 (none), 1 (TE),  2(TM),  3 (both))
	Facet coating regions (M=1 or greater; 1 means no coating)
	Facet region refractive indices (M values)
	Facet region thickesses (M values in um)
	Save FT file parameter (0 or 1)
	Range and increment of FT variable S (um-1)
	Mode-solver convergence parameter
Numeric data items must be separated by white space (spaces or tabs). Data input files with insufficient or over specified data terminate the program before execution of the search. No extra data is permitted, but extra textual information may be added if commented out with C-style comment lines. The format required for the data input parameters is described in the "defaultdata.txt" file. If no data file is specified in the command line, a default structure with 3 lossless waveguide layers and 3 coating layers is loaded internally and executed demonstrating the mode index and modal reflectance computation for both TE and TM modes. This default structure is identical to that contained in the distribution file "defaultdata.txt".

(6) The iterative search for a probable mode continues for the number of iterations specified. The result is then determined to be a probable mode IF rinverse at the absolute minimum is sufficiently small < 1e-20 by default. If a probable mode isn't found in the searched range, the mode index value shown is set to (0,0). Changing the mode index search range (both real and imag parts) and search mesh size usually is recommended in this case. In addition, the mode-solver convergence parameter can be increased after inspecting the rinverse value reported in a failed mode search. In some unusual cases, an apparent mode solution with very low rinverse value may NOT be a true mode solution. This can usually be determined by examining the field profiles. In all cases with lossless or lossy waveguide layers, with the field sign-convention used here, the complex part of the guided mode index, n_mode_im must be negative. In rare cases, n_mode_im may be > 0 which may indicate an incorrect solution and is flagged in the output following the mode iteration.

(7) For lossless waveguide configurations, set imagmin=imagmax=0 and meshpointsim = 1 for faster searching This results in a mode search using only the real part of the mode index. In many cases with waveguide layer loss, the imaginary part of the layer refractive index is quite low and the mode reflection value with lossy layers will be similar to that calculated assuming lossless layers. This can be useful for narrowing search range parameters in cases where a mode search for a lossy waveguide fails, but the corresponding lossless case is successful.

(8) Wguide17M has many command options to calculate mode index alone or including facet modal reflectance for a specified range of a varied parameter for any of (1) wavelength, (2) refractive index of any waveguide layer or coating layer, (3) thickness of any waveguide layer or coating layer. Some of the variations require recalculation of the mode indices for each value of the varied parameter and naturally are slower. These variation calculations all use the Kendall FSRM method for mode reflectance computation. Results are displayed for both TE and TM and the minimum reflectance values in the displayed range are shown. The command-line output is displayed as a formatted list of reflectance for both TE and TM versus the varied parameter and can easily be exported for plotting with external applications. Parameter variations do not provide field/power or Fourier transform file-output capability (only available for the single configuration invocations). Another command provides for automatic calculation of a "perfect" single-layer antireflection coating for both TE and TM modes using a search range within +/- 10% of the index/thickness values for the corresponding simple plane wave values using the Vassallo neq equivalent index for the plane wave incident medium. A more advanced 2D search option provides for complete control of all parameters in cases where the simple single-layer AR coating search fails to find a suitably low (<1e-10) mode reflectance value.

(9) The simplest use of Wguide17M specifies a single argument: a data input file and specifies mode and optionally reflectance calculation for one fixed configuration (no parameter varied). In this case, the detailed console output (sample below) is presented. The first section displays all the waveguide and coating parameters and computation parameters as read from the data input file. Next, the TE and TM complex mode indices nmode, the convergence parameter rinverse achieved and, if the waveguide has any loss, the modal power attenuation rate alpha is shown in units of cm-1. If the "Calculate Rmode" parameter is set in the data input file, modal reflectance is calculated and the following results are additionally shown:
First, the Vassallo "optimum" complex equivalent index neq for both polarizations is listed. Next, the modal reflectance results are shown as calculated 3 different ways using:
     - Kendall FSRM method (1993 (9))
     - Fresnel method with the Vassallo "fictitious layer" optimum index neq (Kendall 1993 (11))
     - Vassallo's first approximation (1988 (19c) (32c)) to the exact integral-equation solution using the same optimum neq
Each result shows the modal power reflectance and complex field amplitude reflection coefficient. As mentioned above the Kendall/FSRM result in most cases tested is closest to the exact (Vassallo) benchmark published data. Differences in the modal reflectance values for the three model results are more noticeable for very low reflectance coating configurations as demonstrated below. Next, the TOTAL facet reflectance (modal plus reflected waveguide radiation modes) using the Fresnel method (Schimpe 1992) and the same Vassallo "fictitious layer" neq index is listed. Next, the full width at half maximum power (FWHM) of the radiated far field pattern, including the obliquity factor, is shown for several different approximate models. All FWHM values are for uncoated facets (but with the specified final exit medium index) except for the "VassCoat" TE result. The FWHM value with a multilayer coating changes slightly from the uncoated FWHM value. For higher order modes which have a peak FF intensity at nonzero angle, the FWHM value corresponds to the half-intensity value at angles larger than the peak intensity angle found. Finally, the mode power confinement factors (fractional power carried in each waveguide region) in layer order is displayed.



-----------------      REQUIREMENTS  --------------------
(1) Requires an installed JRT (Java Runtime Environment).
     Tested against Java version 1.8.0_131

(2) This application is computation intensive. Recommended configuration:
	+ 1 GHz cpu   with  2 Gb  RAM and  50 Gb  HD

------------------      Using Wguide17M         -----------------------
(1) Create the data input file describing the slab waveguide problem to be solved, and place
    it in the same directory as the distribution class files or the JAR file described next.

(2) Shell to a command prompt in the directory containing the compiled Java application class files or JAR file.
    The following 3 compiled class files, and a data input file should be in the invocation directory:
         wguide17M.class   Num.class   cMath.class  
     Alternately, if the archive wguide17M.jar is provided, only the JAR file is required.

(3) Wguide17M has several command-line sets of parameters. A summary of all functionality is
    displayed using:
	java wguide17M  H
   or	java  -jar  Wguide17M.jar  H

    All command arguments are optional. Any output files by default are created in 
    the same directory as the data input file. A typical simple command is:

	java wguide17M  [name of data-input file]   [output TE file]   [ output TM file]
   or	java -jar  wguide17M.jar  [name of data-input file]   [output TE file]   [ output TM file]

Download Evaluation Wguide17M.jar 
(This fully-functional Java console application is provided as is with no support. Any feedback regarding functionality, errors or clarifications are always welcomed and appreciated. )

References: ------------- "Semiconductor laser facet reflectivities using free-space radiation modes" P.C. Kendall, D.A. Roberts, P.N. Robson, M.J. Adams and M.J. Robertson IEE Proceedings-J, Vol. 140, #1, Feb. 1993 p. 49 "Reflectivity of multidielectric coatings deposited on the end facet of a weakly guiding dielectric slab waveguide" C. Vassallo J. Opt. Soc. Am. A/Vol. 5, #11, Nov. 1988 p. 1918 "Theory and practical calculation of antireflection coatings on semiconductor laser diode optical amplifiers" C. Vassallo IEE Proc. Vol. 137, Pt. J. #4, Aug. 1990 p. 193 "Antireflection-coated angled facet design" M. Reed, T.M. Benson, P.C. Kendall and P. Sewell IEE Proc.-Optoelectron. Vol 143, #4 Aug. 1996 p. 214 "Approximate methods for modal reflectivity at optical waveguide facets" J. Xu, D. Yevick and M. Gallant J. Opt. Soc. Am. A/Vol. 12, #4, Apr. 1995 p. 725 "Theory of Reflection at the Facet of a Semiconductor Laser" R. Schimpe AEU, Vol. 46, #2, 1992 p. 80 "Radiation Fields of GaAs-(AlGa)As Injection Lasers" J. Butler and J. Zoroofchi, IEEE J. Quantum Electronics, V10, Oct 1974 p. 809 "Optical Properties of Thin Solid Films", O. S. Heavens, Dover 1965 p. 63. "An Introduction to Optical Waveguides", M. J. Adams, Wiley 1981 p. 67. "Physics of Semiconductor Laser Devices", G. H. B. Thompson, 1985 p. 324. "Principles of Optics", M. Born and E. Wolf, Pergamon 5th Edn. 1975 p. 611.