Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] abbt_v1_0.gz(14 Kbytes)
Manuscript Title: SLAM: vectorized calculation of refraction and reflection for a Gaussian beam at a nonlinear interface in the presence of a diffusive Kerr-like nonlinearity.
Authors: D.R. Andersen, R. Cuykendall, J.J. Regan
Program title: SLAM
Catalogue identifier: ABBT_v1_0
Distribution format: gz
Journal reference: Comput. Phys. Commun. 48(1988)255
Programming language: Fortran.
Computer: CRAY X-MP/48.
Operating system: CTSS.
RAM: 572K words
Word size: 64
Keywords: Nonlinear interface, Kerr nonlinearity, Diffusion, Optics.
Classification: 18.

Nature of problem:
This program calculates a numerical solution for the two dimensional scalar, nonlinear wave equation with initial and boundary conditions that model the activity of an incident Gaussian beam at an interface between two media. One or both of the media may exhibit positive or negative Kerr-like optical nonlinearity. Further, diffusion of the nonlinear mechanism in either medium as well as across the interface can be modeled. The nonlinearity of the two media and the diffusion coefficient can be varied, along with other parameters, allowing the observation of a wide range of phenomena. These include total internal reflection (TIR) of the incident beam, excitation of a surface wave at the interface, self-focused channels that pass through the interface, beams that focus themselves along curved paths (the so-called self- parallax effect), and transmitted beams which re-form into quasi- Gaussian shapes.

Solution method:
The coordinate system adopted separates the two media into regions of positive and negative x, the interface being the x=O plane. An incident Gaussian beam, distributed in the x-z plane, is focused to what would be a peak intensity of one at the origin in the absence of the interface. The field amplitude is assumed to extend to infinity in the positive and negative y directions. The program treats the x-z plane as a grid with rows (of constant x) and columns (of constant z) whose widths (hx and hz) can be changed to specify an arbitrarily fine mesh. Computation begins at the negative z end of the problem space and progesses in steps of width hz across the plane. For each column of constant z the following is performed:
1) The diffusion equation is solved over the column using the field distribution from the previous column.
2) This solution is used to calculate the index of refraction.
3) The Adams-Moulton predictor/corrector method is applied to calculate the field intensity distribution over the column.
The columns in the problem are processed in a way which maximizes the amount of vectorizable code.

Restrictions:
The input field distribution is two dimensional. The paraxial approximation is made, thus small glancing angles (<=10 degrees) are required for the beam. The problem space is broken up into a finite number of discrete mesh points. Reducing the granularity of the mesh improves accuracy of the solution at the expense of cpu time. A mesh granularity was determined by experiment, the reduction of which did not change the solution substantially. When intensity peaks self-focus to extremely intense, narrow filaments approaching the size of a grid square, inaccuracies are introduced.

Running time:
Although there are 12 input parameters, the run time depends primarily upon only two of them, yielding four distinct average run times. These parameters are the diffusion coefficient and the Kerr constant of the media. When both are zero we attain the fastest time, while both non- zero correspond to the slowest running times (the Kerr constant of one of the two media is always non-zero). The calculation takes longer if diffusion is permitted across the interface. With both parameters zero the CRAY X-MP/48 takes 260 seconds to complete a standard run. With both non-zero it takes 360 seconds. An IBM 4381 takes on the order of a day.