finesse.gaussian.BeamParam
¶
Overview
- class finesse.gaussian.BeamParam(wavelength=None, nr=1, *args, **kwargs)[source]¶
Bases:
object
Gaussian beam complex parameter.
This can be a symbolic beam parameter or numeric. For example, if
transform_beam_param()
is called using a symbolic ABCD matrix then a symbolic BeamParam instance will be created automatically.The wavelength of the laser beam defaults to the current value for
lambda0
in the config file being used, if it is not given as an argument during construction of a BeamParam.The index of refraction of the associated medium defaults to unity, if it is not given as an argument during construction of a BeamParam.
The following are legal initialisations of a BeamParam object:
q = BeamParam(w0=w0, z=z) q = BeamParam(z=z, zr=zr) q = BeamParam(w=w, rc=rc) q = BeamParam(w=w, S=S) q = BeamParam(q=c) # where c is a complex number or symbol
Descriptions of these variables are as follows:
\(z\) — distance to the waist position (in metres). Negative values indicate a beam converging to the waist, positive is a beam diverging from the waist.
\(w_0\) — radius of the beam at the waist (in metres).
\(zr\) — Rayleigh range of the beam (in metres).
\(w\) — radius of the beam at the current position (in metres).
\(rc\) — radius of curvature of the wavefront (in metres).
\(S\) — curvature (or defocus) of the wavefront (in metres).
\(q\) — the complex beam parameter itself.
The default wavelength and refractive index values can also be changed with (for example):
q = BeamParam(wavelength, nr, w0=w0, zr=zr)
Note that BeamParam objects can also be symbolic by passing any value in *args or **kwargs as a symbolic expression.
- Parameters:
- wavelengthfloat, optional
Wavelength of the beam light, defaults to the value given for
lambda0
in the config file being used.- nrfloat, optional
Refractive index, defaults to unity.
Properties
Radius of curvature, \(R_c\), of the beam, in metres. |
|
Defocus (wavefront curvature), \(S\), of the Gaussian beam, equivalent to the reciprocal of |
|
Divergence of the beam. |
|
The imaginary part of the complex beam parameter, equal to the Rayleigh range \(z_R\) of the beam (in metres). |
|
The refractive index associated with the BeamParam. |
|
Gouy phase, \(\psi\), of the Gaussian beam. |
|
The complex beam parameter value (\(q\)). |
|
The real part of the complex beam parameter, equal to the relative distance to the beam waist (in metres). |
|
Flag indicating whether the beam parameter is a symbolic object. |
|
The radius of the beam, \(w\), in metres. |
|
The radius of the waist, \(w_0\), of the beam, in metres. |
|
The wavelength of the beam (in metres). |
|
The relative distance to the waist of the beam (in metres). |
|
The Rayleigh range (\(z_R\)) of the beam (in metres). |
Methods
|
|
|
Computes the radius of the beam as a function of any of the dependent arguments. |
Computes and returns the complex conjugate of the beam parameter. |
|
|
Curvature of the beam wavefront as a function of any of the dependent arguments. |
A list of the model parameters that the symbolic beam parameter depends upon. |
|
|
Evaluate the symbolic beam parameter. |
|
Computes the Gouy-phase as a function of any of the dependent arguments. |
|
Computes the mode mismatch via an alternate form of \(1 - \mathcal{O}\), where \(\mathcal{O}\) is the overlap (see |
|
Computes the projection from one beam parameter to another to give a measure of the overlap between the two beam parameters. |
|
This function returns a set of beam parameters that are mismatched to q1 by an overlap M. |
Returns the reversed beam parameter. |
|
|
Radius of curvature of the beam as a function of any of the dependent arguments. |
|
Applies a Gaussian beam propagator ABCD matrix to this beam parameter and returns the transformed result. |