IntroductionWave propagation techniques are essential components of waveguide and waveguidebased photonic device design. While modesolving methods are based on the assumption that the guiding structures are uniform in the propagation direction, many practical waveguide configurations, such as tapers, bends and junctions, are actually nonuniform in the longitudinal direction. The analysis of these types of waveguides relies on propagationtype techniques. Even in uniform structures, propagation methods provide important information about beating between modes in multimode structures, mode filtering upon propagation, and mode coupling effects. In addition, propagation methods facilitate numerical studies, accurately reflecting wave guiding properties of realistic devices and providing insight into the fields evolution inside the structure. In these simulations arbitrary launch conditions are usually allowed and the evolution of such an arbitrary beam/pulse can be monitored at any point inside the structure. This section includes both timedomain methods, including the FiniteDifference TimeDomain Method (FDTD), the SplitStep Method (SSM), and the Finite Element Method (FEM), and frequencydomain methods, such as the Beam Propagation Method (BPM), the Transfer Matrix Method (TMM), and the EigenMode Expansion Method (EME). Of these techniques, the FDTD (implemented in a large number of free and commercially available packages not listed here) is the most general and rigorous timedomain method. It is particularly useful for a large number of optical guiding structures, such as photonic crystal waveguides, surface plasmon waveguides, highindex contrast waveguide devices, ring and disk resonators, negative index material structures, dispersive, and nonlinear materials. Modal properties can be extracted after a single propagation. However, the FDTD may become prohibitively computationally intensive and therefore impractical for long waveguides and devices. The SSM (Nonlinear Schrödinger Equation Solver provided by Professor Agrawal's group at the Institute of Optics , University of Rochester , OptSim by RSoft, SSPROP provided by Professor Murphy, University of Maryland , College Park ) is a simple and straightforward technique for the modeling of linear and nonlinear pulse propagation of optical fibers. It allows the inclusion of all major effects taking place in realistic optical fibers, including groupvelocity dispersion and higherorder dispersion, selfphase modulation, crossphase modulation, fourwave mixing effects, Raman amplification and many other linear and nonlinear phenomena. The FEM methods have been implemented in both time and frequency domains, and can be used as wave propagators and mode solvers simultaneously. However, some of the FEM software packages work only as mode solvers and should not be confused with those allowing propagation effects studies (FEMSim by RSoft, FIMMWAVEFEMSolver by Photon Design, pdnMesh free software). The BPM (implemented in BeamPROP by RSoft, OlympIOs by C2V, OptiBPM by Optiwave, OptoDesigner by PhoeniX) is a widely used and welldeveloped method that solves wave propagation problems for a given frequency. Several advanced techniques, including semivectorial and vectorial implementations, wideangle and bidirectional BPM, have been developed, making the BPM a versatile technique for a wide class of optical waveguides with arbitrary crosssections and complex refractive index profiles. Finally, the TMM (GratingMOD by RSoft, OptiGrating by Optiwave, TMM Mode Solver and Anisotropic TMM Mode Solver developed by Henri Uranus at the University of Twente, WAVEGUIDE provided by the Southern Methodist University group) and the EME (CAMFR developed by Ghent University group, FIMMPROP by Photon Design, OlympIOs Bidirectional Eigenmode Propagation Module) methods are relatively simple methods that are inherently bidirectional. They are especially useful for the modeling of waveguides comprising grating structures, waveguide tapers and couplers. Beam Propagation MethodThe beam propagation method was developed for the analysis of light propagation in slowly varying nonuniform guiding structures, such as tapers, bends, and couplers. Various implementations of BPM differ by the method used for calculations of the derivatives with respect to the coordinates in the propagation directions and include the finitedifference FDBPM, fast Fourier transform FFTBPM, and the finiteelement FEBPM. Historically, the FFTBPM was widely used until the FDBPM was developed. The standard form of implementation of the FDBPM is the CrankNicholson method. The standard BPM solves the Helmholtz equation in paraxial approximation. The paraxial approximation enables BPM to analyze much longer structures (on the millimeter and centimeter scale) than would be realistic for analysis with FDTD. While the BPM is usually used for the modeling of lowindexcontrast waveguides, some relatively highindex contrast structures can be studied as well. Scalar, semivectorial, and vectorial formulations have been developed, and several advanced features have been proposed and implemented in BPMbased software packages, including wideangle formulation and bidirectional propagation. The BPM versions that incorporate nonlinearities, anisotropy, gain and loss have been described and implemented. In addition, two BPMbased mode solvers (based on imaginarydistance BPM and correlation technique) have been proposed. Typical BPM applications include standard, specialty, and photonic crystal fibers, WDM devices, switches, modulators, multimode interference devices, and passive splitters. For more detail see:
Software implementing Beam Propagation Method is described here ... Finite Difference Time Domain MethodThe FDTD technique is based on a discrete representation of timedependent Maxwells equations on a grid that is exact in the limit that the grid spacing goes to zero. Since the FDTD is a timedomain technique, the response of the system over a wide range of frequencies can be obtained with a single simulation. Various optical materials can be used with FDTD algorithms. Modal properties can be extracted in a single simulation by Fouriertransformation of the timevarying response of the system to some input. Then, the peaks in the resulting spectrum correspond to the eigenfrequencies. The primary limitation of FDTD is that it is computationally intensive, especially in the threedimensional case, but the method is readily applicable to the twodimensional structures. In practice, FDTD needs to have at least 10 to 20 cells per minimum wavelength in every direction, depending on the application and accuracy required. Also, even higher sampling rates may be required to reduce the cumulative numerical dispersion error, which is proportional to the length of wave propagation. This renders FDTD impractical for large devices. Various techniques have been proposed to make the FTDT method more efficient, including pseudospectral timedomain techniques, nonuniform and adaptive mesh refinement, hybrid FDTDFinite Element techniques, and hardware acceleration concepts. Different software providers take various approaches to optimize the performance of their software in solving problems that require clustering. The approaches include parallel processing features in the software and, most recently, dedicated hardware to increase single system processing speeds. Typical applications for optical software based on an FDTD algorithm include the modeling of highindexcontrast waveguides, photonicbandgap structures for photonic crystals, ring resonators, nanoplasmonic devices, gratings and other diffractive structures, dispersive, nonlinear and gain materials, and biophotonics. For more detail see:
Software implementing Finite Difference Time Domain Method is described here ... Finite Element MethodFinite Element Method is described on the Mode Solvers page of this site. Software implementing Finite Element Method is described here ... SplitStep MethodThe splitstep Method (SSM) method is a numerical technique used to solve nonlinear partial differential equations like the nonlinear Schrödinger equation. The method relies on computing the solution in small steps and on taking into account the linear and nonlinear steps separately. The linear step (dispersion) can be made in either frequency or time domain, while the nonlinear step is made in the time domain. The method is widely used for studying nonlinear pulse propagation in optical fibers. For more detail see:
Software implementing SplitStep Method is described here ... TransferMatrix MethodTransferMatrix Method is described on the Mode Solvers page of this site. Software implementing TransferMatrix Method is described here ... Eigenmode Expansion MethodEigenmode Expansion Method is described on the Mode Solvers page of this site. Software implementing Eigenmode Expansion Method is described here ... 


