4. FibreΒΆ

Note

It is assumed that pyofss has been imported using

>>> from pyofss import *

The fibre module may be regarded as the core of pyofss.

A default fibre may be generated using

>>> fibre = Fibre()

For a more interesting fibre, modify the nonlinear parameter

>>> fibre = Fibre( gamma = 1.0 )

With an input pulse with sufficient power, there should be spectral broadening

from pyofss import *
sys = System()
sys.add( Gaussian(peak_power = 10.0, width = 1.0) )
sys.add( Fibre(gamma = 1.0) )
sys.run()
single_plot( sys.domain.nu, spectral_power(sys.field, True),
             labels['nu'], labels['P_nu'] )

(Source code, png, hires.png, pdf)

_images/fibre-1.png

General dispersion may be included using the beta parameter. For third-order dispersion pass an array with third element (including a zeroth element) non-zero

>>> fibre = Fibre( beta = [0.0, 0.0, 0.0, 1.0] )

With an appropriate length of fibre the dispersion effects may be seen

from pyofss import *
sys = System()
sys.add( Gaussian(peak_power = 1.0, width = 1.0) )
sys.add( Fibre(beta = [0.0, 0.0, 0.0, 1.0], length = 10.0) )
sys.run()
single_plot( sys.domain.t, temporal_power(sys.field),
             labels['t'], labels['P_t'] )

(Source code, png, hires.png, pdf)

_images/fibre-2.png

Previous topic

3. Gaussian

Next topic

Overview

This Page