Nonlinear coefficient scaling along frequency

The nonlinear coefficient can be expressed at the reference frequency and will be scaled in frequency using the scaling rule of the effective area

Change-Id: Id103b227472702776bda17ab0a2a120ecfbf7473
This commit is contained in:
AndreaDAmico
2023-10-06 04:17:17 +02:00
committed by EstherLerouzic
parent 88ac41f721
commit edf1eec072
20 changed files with 391 additions and 372 deletions

View File

@@ -554,6 +554,16 @@ class Fiber(_Node):
"""
return self.loss_coef_func(frequency) / (10 * log10(exp(1)))
def gamma(self, frequency=None):
"""Returns the nonlinear interference coefficient such that
:math: `gamma(f) = 2 pi f n_2 c^{-1} A_{eff}^{-1}`
:param frequency: the frequency at which gamma is computed [Hz]
:return: gamma: nonlinear interference coefficient for f in frequency [1/(W m)]
"""
frequency = self.params.ref_frequency if frequency is None else frequency
return self.params.gamma_scaling(frequency)
def cr(self, frequency):
"""Returns the raman gain coefficient matrix including the vibrational loss