fibermodes.fiber.fiber

A Fiber represents a physical fiber (material and geometry).

Using a Fiber object, and passing Wavelength. as argument, you can compute different modal properties. To generate a Fiber object, you should use a FiberFactory. To sweep different fiber parameters and/or wavelengths, you should use a Simulator.

Class members

fixedMatFiber(wl)
name(layer)
innerRadius(layer)
outerRadius(layer)
thickness(layer)
index(r, wl)
minIndex(layer, wl)
maxIndex(layer, wl)
setSolvers([Cutoff, Neff])
set_ne_cache(wl, mode, neff)
NA(wl)
V0(wl)
toWl(V0[, maxiter, tol]) Convert V0 number to wavelength.
cutoff(mode)
cutoffWl(mode)
neff(mode, wl[, delta, lowbound])
beta(omega, mode[, p, delta, lowbound])
b(mode, wl[, delta, lowbound]) Normalized propagation constant
vp(mode, wl[, delta, lowbound])
ng(mode, wl[, delta, lowbound])
vg(mode, wl[, delta, lowbound])
D(mode, wl[, delta, lowbound])
S(mode, wl[, delta, lowbound])
findVmodes(wl[, numax, mmax, delta])
findLPmodes(wl[, ellmax, mmax, delta])
findModes(families, wl[, numax, mmax, delta]) Find all modes of given families, within given constraints
class fibermodes.fiber.fiber.Fiber(r, f, fp, m, mp, names, Cutoff=None, Neff=None)[source]

The Fiber object usually is build using FiberFactory.

D(mode, wl, delta=1e-06, lowbound=None)[source]
NA(wl)[source]
S(mode, wl, delta=1e-06, lowbound=None)[source]
V0(wl)[source]
b(mode, wl, delta=1e-06, lowbound=None)[source]

Normalized propagation constant

beta(omega, mode, p=0, delta=1e-06, lowbound=None)[source]
cutoff(mode)[source]
cutoffWl(mode)[source]
field(mode, wl, r, np=101)[source]

Return electro-magnetic field.

findLPmodes(wl, ellmax=None, mmax=None, delta=1e-06)[source]
findModes(families, wl, numax=None, mmax=None, delta=1e-06)[source]

Find all modes of given families, within given constraints

findVmodes(wl, numax=None, mmax=None, delta=1e-06)[source]
fixedMatFiber(wl)[source]
index(r, wl)[source]
innerRadius(layer)[source]
logger = <logging.Logger object>
maxIndex(layer, wl)[source]
minIndex(layer, wl)[source]
name(layer)[source]
neff(mode, wl, delta=1e-06, lowbound=None)[source]
ng(mode, wl, delta=1e-06, lowbound=None)[source]
outerRadius(layer)[source]
setSolvers(Cutoff=None, Neff=None)[source]
set_ne_cache(wl, mode, neff)[source]
thickness(layer)[source]
toWl(V0, maxiter=500, tol=1e-15)[source]

Convert V0 number to wavelength.

An iterative method is used, since the index can be wavelength dependant.

vg(mode, wl, delta=1e-06, lowbound=None)[source]
vp(mode, wl, delta=1e-06, lowbound=None)[source]