tidy3d.KerrNonlinearity#
- class KerrNonlinearity[source]#
Bases:
NonlinearModel
Model for Kerr nonlinearity which gives an intensity-dependent refractive index of the form
. The expression for the nonlinear polarization is given below.- Parameters:
n2 (Union[tidycomplex, ComplexNumber] = 0) – [units = um^2 / W]. Nonlinear refractive index in the Kerr nonlinearity.
n0 (Union[tidycomplex, ComplexNumber, NoneType] = None) – Complex linear refractive index of the medium, computed for instance using ‘medium.nk_model’. If not provided, it is calculated automatically using the central frequencies of the simulation sources (as long as these are all equal).
Note
Note
The fields in this equation are complex-valued, allowing a direct implementation of the Kerr nonlinearity. In contrast, the model
NonlinearSusceptibility
implements a chi3 nonlinear susceptibility using real-valued fields, giving rise to Kerr nonlinearity as well as third-harmonic generation. The relationship between the parameters is given by . The additional factor of comes from the usage of complex-valued fields for the Kerr nonlinearity and real-valued fields for the nonlinear susceptibility.Note
Different field components do not interact nonlinearly. For example, when calculating
, we approximate . This approximation is valid when the E field is predominantly polarized along one of the x, y, or z axes.Example
>>> kerr_model = KerrNonlinearity(n2=1)
Attributes
Whether the model uses complex fields.
Methods
- n2#
- n0#
- property complex_fields#
Whether the model uses complex fields.
- __hash__()#
Hash method.