UPE.nonlinear_operator_separable#

UPE.nonlinear_operator_separable(a_v)[source]#

The action of the nonlinear operator on the given pulse spectrum. This operator is active when the nonlinear parameters have been input in separable form.

This model implements the Kerr and Raman effects, as well as 2nd- and 3rd-order sum- and difference-frequency generation.

Parameters:
a_varray_like of complex

The root-power spectrum of the pulse.

Returns:
ndarray of complex

Notes

Chromatic variations of the nonlinearity, present in the full 2nd- and 3rd-rank form of the nonlinear parameters, can be incorporated into the propagation model by decomposing the tensors into separable form:

\[\begin{split}g^{(2)}[\nu_1, \nu_2] &= h^{(2)}\!\left[\nu\right] \sum_n \eta_n^{(2)}[\nu_1] \, \eta_n^{(2)}[\nu_2] \\ g^{(3)}[\nu_1, \nu_2, \nu_3] &= h^{(3)}[\nu] \sum_n \eta_n^{(3)}[\nu_1] \, \eta_n^{(3)}[\nu_2] \, \eta_n^{(3)}[\nu_3]\end{split}\]

where the outer and inner terms (\(h\) and \(\eta\)) depend on the output and input frequencies respectively.

To use this operator the nonlinear parameters must be input as (m, n) arrays, where m is the number of inner and outer terms and n is the number of points. The first index is interpreted as the outer term while all others are interpreted as inner terms. A simplified decomposition may be generated using the g2_split() and g3_split() functions.