gtrace.optics.gaussian

gaussian - Gaussian Optics Module

This module contains several utility functions for gaussian optics.

Module Contents

Functions

modeSpacing(g1, g2)

q2zr(q)

Convert a q-parameter to Rayleigh range.

q2w(q, wl=1064 * nm)

Convert a q-parameter to the beam size

q2R(q)

Convert a q-parameter to the ROC

Rw2q(ROC=1.0, w=1.0, wl=1.064e-06)

Get the q-parameter from the ROC and w.

InvROCandW2q(invROC=0.0, w=1.0, wl=1.064e-06)

Get the q-parameter from the inverse ROC and w.

zr2w0(zr, wl=1064 * nm)

Convert Rayleigh range to the waist size

w02zr(w0, wl=1064 * nm)

Convert waist size to Rayleigh range

modeMatching(q1, q2x, q2y=False)

Mode matching between two beams with different q-parameters.

modeMatchingElliptic(q1x, q1y, q2x, q2y)

Mode matching between two elliptic beams.

optimalMatching(q1, q2)

Returns a mode (q-parameter) which best matches the given

qToRadius(q, wl=1.064e-06)

Convert a q-parameter to the beam size

qToROC(q)

Convert a q-parameter to radius of curvature.

ROCandWtoQ(ROC=1.0, w=1.0, wl=1.064e-06)

Convert radius of curvature and beam width to q-parameter

beamClip(a=1.0, w=3.0)

Beam clip

appertureCut(r=1.0, w=3.0)

Apperture cut.

Attributes

pi

sqrt

gtrace.optics.gaussian.pi
gtrace.optics.gaussian.sqrt
gtrace.optics.gaussian.modeSpacing(g1, g2)
gtrace.optics.gaussian.q2zr(q)

Convert a q-parameter to Rayleigh range.

Parameters

q (complex) – Beam parameter.

Returns

zr – Rayleigh range.

Return type

float

gtrace.optics.gaussian.q2w(q, wl=1064 * nm)

Convert a q-parameter to the beam size

Parameters
  • q (complex) – Beam parameter.

  • wl (float, optional) – Wavelength. Defaults 1064*nm.

Returns

w – Beam size.

Return type

float

gtrace.optics.gaussian.q2R(q)

Convert a q-parameter to the ROC

Parameters

q (complex) – Beam parameter.

Returns

Radius of curvature.

Return type

float

gtrace.optics.gaussian.Rw2q(ROC=1.0, w=1.0, wl=1.064e-06)

Get the q-parameter from the ROC and w.

ROCfloat, optional

Radius of curvature.

wfloat, optional

Beam size. Defaults 1.0.

wlfloat, optional

Wavelength. Defaults 1064*nm.

Returns

Beam parameter.

Return type

complex

gtrace.optics.gaussian.InvROCandW2q(invROC=0.0, w=1.0, wl=1.064e-06)

Get the q-parameter from the inverse ROC and w.

Parameters
  • invROC (float, optional) – Inverse of the ROC. Defaults 0.0.

  • w (float, optional) – Beam size. Defaults 1.0.

  • wl (float, optional) – Wavelength. Defaults 1064*nm.

Returns

Beam parameter.

Return type

complex

gtrace.optics.gaussian.zr2w0(zr, wl=1064 * nm)

Convert Rayleigh range to the waist size

Parameters
  • zr (float) – Rayleigh range.

  • wl (float, optional) – Wavelength. Defaults 1064*nm.

Returns

Waist size.

Return type

float

gtrace.optics.gaussian.w02zr(w0, wl=1064 * nm)

Convert waist size to Rayleigh range

Parameters
  • w0 (float) – Waist size.

  • wl (float, optional) – Wavelength. Defaults 1064*nm.

gtrace.optics.gaussian.modeMatching(q1, q2x, q2y=False)

Mode matching between two beams with different q-parameters. The axes of the two beams are assumed to be matched.

Parameters
  • q1 (complex) – q-parameter of the first beam. This beam is assumed to be circular.

  • q2x (complex) – q-parameter of the second beam in x-direction. If the second beam is also circular, omit the next argument.

  • q2y (complex, optional) – q-parameter of the second beam in y-direction. Specify this parameter if the second beam is eliptic. Defaults False.

gtrace.optics.gaussian.modeMatchingElliptic(q1x, q1y, q2x, q2y)

Mode matching between two elliptic beams.

Parameters
  • q1x (complex) – q-parameter of the first beam in x-direction.

  • q1y (complex) – q-parameter of the first beam in y-direction.

  • q2x (complex) – q-parameter of the second beam in x-direction.

  • q2y (complex) – q-parameter of the second beam in y-direction.

Returns

Return type

float

gtrace.optics.gaussian.optimalMatching(q1, q2)

Returns a mode (q-parameter) which best matches the given two q-parameters, q1 and q2.

Parameters
  • q1 (complex) – q-parameter of the first beam. This beam is assumed to be circular.

  • q2 (complex) – q-parameter of the second beam. This beam is assumed to be circular.

Returns

(q, match)

q: The best matching q-parameter

match: Mode matching rate

Return type

(complex, match?)

gtrace.optics.gaussian.qToRadius(q, wl=1.064e-06)

Convert a q-parameter to the beam size

Parameters
  • q (complex) – Beam parameter.

  • wl (float, optional) – Wavelength. Defaults 1064e-9.

Returns

Radius.

Return type

float

gtrace.optics.gaussian.qToROC(q)

Convert a q-parameter to radius of curvature.

Parameters

q (complex) – Beam parameter.

Returns

Radius of curvature.

Return type

float

gtrace.optics.gaussian.ROCandWtoQ(ROC=1.0, w=1.0, wl=1.064e-06)

Convert radius of curvature and beam width to q-parameter

Parameters
  • ROC (float, optional) – Radius of curvature. Defaults to 1.0.

  • w (float, optional) – Beam width. Defaults to 1.0.

  • wl (float, optional) – Wavelength. Defaults to 1064e-9

Returns

q-parameter

Return type

complex

gtrace.optics.gaussian.beamClip(a=1.0, w=3.0)

Beam clip

Parameters
  • a (float) –

  • w (float) –

Returns

Return type

float

gtrace.optics.gaussian.appertureCut(r=1.0, w=3.0)

Apperture cut.

Parameters
  • r (float) –

  • w (float) –

Returns

Return type

float