Mode#

class pynlo.medium.Mode(v_grid, beta, alpha=None, g2=None, g2_inv=None, g3=None, rv_grid=None, r3=None, z=0.0)[source]#

Bases: object

An optical mode.

An optical mode is defined in the frequency domain. All properties must be input as effective values, i.e. those found by integrating out the transverse spatial dependence of the medium and mode. If a parameter is z dependent, it can be input as a function who’s first argument is the propagation distance.

Parameters:
v_gridarray_like of float

The frequency grid.

betaarray_like of float or callable

The phase coefficient, the real part of the complex wavenumber.

alphaarray_like of float or callable, optional

The gain coefficient, twice the imaginary part of the complex wavenumber.

g2array_like of complex or callable, optional

The effective 2nd-order nonlinearity.

g2_invarray_like of float, optional

The location of all poled domain inversion boundaries.

g3array_like of complex or callable, optional

The effective 3rd-order nonlinearity.

rv_gridarray_like of float, optional

An origin-contiguous frequency grid associated with the 3rd-order nonlinear response function.

r3array_like of complex or callable, optional

The effective 3rd-order nonlinear response function containing both the Raman and instantaneous nonlinearities.

zfloat, optional

The initial position within the mode. The default is 0.

Notes

Forward traveling waves of a mode are defined using the following conventions:

\[\begin{split}E, H \sim a \, e^{i(\omega t - \kappa z)} + \text{c.c} \\ \kappa = \beta + i \frac{\alpha}{2}, \quad \beta = n \frac{\omega}{c}\end{split}\]

Methods#

d_12([v0])

The group velocity mismatch, with units of s/m.

linear_operator(dz[, v0])

The linear operator which advances a pulse over a distance dz.

copy()

Copy the mode.

Attributes#

z

The position within the mode, with units of m.

v_grid

The frequency grid, with units of Hz.

rv_grid

The origin-contiguous frequency grid associated with the Raman response.

z_mode

The z dependence of the mode.

z_linear

The z dependence of the linear terms.

z_nonlinear

The z dependence of the nonlinear terms.

alpha

The gain coefficient, with units of 1/m.

beta

The phase coefficient, or angular wavenumber, with units of 1/m.

n

The refractive index.

beta1

The group walk-off parameter, with units of s/m.

n_g

The group index.

v_g

The group velocity, with units of m/s.

beta2

The group velocity dispersion (GVD), with units of s**2/m.

D

The dispersion parameter D, with units of s/m**2.

g2

The magnitude of the effective 2nd-order nonlinear parameter, with units of 1/(W**0.5*m*Hz).

g2_inv

The location of all 2nd-order domain inversion boundaries within the mode.

g2_pol

The poling status at the current z position.

g3

The effective 3rd-order nonlinear parameter, with units of 1/(W*m*Hz).

gamma

The nonlinear parameter \(\gamma\), with units of 1/(W*m).

r3

The effective 3rd-order nonlinear response function containing both the Raman and instantaneous nonlinearities.