# Codes

## Computation of a Gaussian beam wihtout approximation

We use the angular spectrum representation to compute exactly the
Gaussian beam close to the waist (w_{0}) in the case of highly
nonparaxial field (w_{0}<λ). The computation is done in the
vectorial case for a polarized Gaussian beam. In the area of the
waist, the contribution of the propagating and evanescent waves is
discussed. Moreover, the Gaussian wave is developed in terms of
series, which permits to get analytical expressions for both
propagating and evanescent waves when the observation is close to the
waist.

The code can be found here plus
dependencies. If you use this routine
in your research, please reference, as appropriate: P. C. Chaumet,
Fully vectorial highly non paraxial beam close to the
waist. J. Opt. Soc. Am. A 23, 3197 (2006) and P. C. Chaumet, B. Pouligny, R. Dimova and
N. Sojic, Optical tweezers in interaction with an apertureless probe
J. Appl. Phys. 102,
024915 (2007).

## Iterative solvers

You will find here several iterative solvers for the linear problem
Ax=b. There is no condition on the matrix. Notice that the products Ax
is provided by the user. All the codes are written in fortran (double
precision). If you use these routines in your research, please
reference, as indicated in the routine.

QMR

GPBICG

TFQMR

CG