pyMMF.IndexProfile.initFromRadialFunction#
- IndexProfile.initFromRadialFunction(nr)[source]#
Initializes the index profile from a radial function. Use this function to define a custom axisymmetric index profile.
- Parameters:
- nrCallable[[float], float]
A callable function that takes a float argument and returns the refractive index.
- Returns:
- None
- Parameters:
nr (Callable[[float], float])
- Return type:
None
Examples
Ring core fiber index profile:
import numpy as np import pyMMF n1 = 1.445 n2 = 1.45 n3 = 1.44 a = 5 b = 10 npoints = 256 areaSize = 25 profile = pyMMF.IndexProfile(npoints=npoints, areaSize=areaSize) def radialFunc(r): if r < a: return n1 elif r < b: return n2 else: return n3 profile.initFromRadialFunction(radialFunc)