Double-clad fiber

class DoubleCladFiber(length=0, core_radius=0, background_loss=0, core_na=0, spectroscopy=None, ion_number_density=0, ratio_of_core_and_cladding_diameters=0)

DoubleCladFiber extends ActiveFiber and describes a double-clad active fiber with single-mode step-index core. Flat-top pump distribution in the pump cladding is assumed as well as constant overlap between the pump modes and the core. All pump beams propagate in the pump cladding.

classmethod from_cross_section_files(length=0, absorption_cs_file=None, emission_cs_file=None, core_radius=0, upper_state_lifetime=0, ion_number_density=0, background_loss=0, core_na=0, ratio_of_core_and_cladding_diameters=0)
Parameters:
  • length (float) – Fiber length
  • absorption_cs_file (str) – Name of the file containing absorption cross-section data
  • emission_cs_file (str) – Name of the file containing emission cross-section data
  • core_radius (float) – Core radius
  • upper_state_lifetime (float) – Lifetime of the excited state
  • ion_number_density (float) – Number density of the dopant ions (1/m^3)
  • background_loss (float) – Linear loss of the core (1/m, NOT in dB/m)
  • core_na (float) – Numerical aperture of the core
  • ratio_of_core_and_cladding_diameters (float) – Core diameter divided by cladding diameter
__init__(length=0, core_radius=0, background_loss=0, core_na=0, spectroscopy=None, ion_number_density=0, ratio_of_core_and_cladding_diameters=0)
Parameters:
  • length (float) – Fiber length
  • core_radius (float) – Core radius
  • background_loss (float) – Linear loss of the core (1/m, NOT in dB/m)
  • core_na (float) – Numerical aperture of the core
  • spectroscopy (Spectroscopy) – The spectroscopic properties of the fiber.
  • ion_number_density (float) – Number density of the dopant ions (1/m^3)
  • ratio_of_core_and_cladding_diameters (float) – Core diameter divided by cladding diameter
pump_to_core_overlap()

Returns the overlap between the core and the pump beams, which equals to the ratio of core and cladding area.

pump_cladding_radius()

Returns the radius of the fiber’s pump cladding.

core_area()

Returns the core area of the fiber defined as pi*r**2, where r is the core radius.

Returns:Core area
Return type:float
nonlinear_effective_area(freq)

Returns the nonlinear effective area of the fundamental fiber mode with the given frequency. The method used is determined by the attribute self.effective_area_type.

Parameters:freq (float or numpy float array) – The frequency of the optical signal (Hz).
Returns:The nonlinear effective area
Return type:Same as argument type.
saturation_parameter()

Returns the constant saturation parameter zeta defined in the Giles model.