camfr3ΒΆ
camfr3 is CAMFR, the CAvity Modelling FRamework, for Python 3: a fast, full-vectorial Maxwell solver based on eigenmode expansion (EME), with perfectly matched layers (PML) and advanced boundary conditions. It computes
the modes of slab, cylindrical and rectangular waveguides;
the scattering matrices of stacks of waveguides, and the fields for any excitation;
band diagrams of periodic structures;
laser modes (threshold gain and wavelength) of cavities;
the response to current sources, e.g. light emission from LEDs.
It is written in C++ and Fortran, and scripted from Python:
from camfr import *
set_lambda(1.0)
set_N(20)
GaAs, air = Material(3.5), Material(1.0)
slab = Slab(air(2) + GaAs(0.5) + air(2))
slab.calc()
print(slab.mode(0).n_eff()) # (3.3979...+0j)
camfr3 is published as camfr3 and imported as camfr. It is maintained by
Abdelfettah Hadij-ElHouati (@abdelix); CAMFR was
written by Peter Bienstman and colleagues at Ghent University (see
About). Questions and bug reports go to the
issue tracker.
User guide
Reference
Project