legume.ExcitonSchroedEq
- class legume.ExcitonSchroedEq(phc, z, V_shapes, a, M, E0, loss, osc_str=None, gmax=3.0, truncate_g='abs')
Main simulation class of the excitonic Schroedinger equation.
- __init__(phc, z, V_shapes, a, M, E0, loss, osc_str=None, gmax=3.0, truncate_g='abs')
Initialize the Schroedinger equation expansion.
- Parameters:
phc (PhotCryst) – Photonic crystal object to be simulated.
gmax (float, optional) – Maximum reciprocal lattice wave-vector length in units of 2pi/a.
a (float) – lattice constant [m]
M (float) – exciton mass [kg]
V_shapes (float) – potential of the shapes in the layer [eV]
E0 (float) – free exciton energy [eV]
z (float) – position of the excitonic layer in z direction. This cannot be in the claddings
loss (float) – losses assumed to be contant [eV]
osc_str (list or numpy array,optional) – oscillator strength in units [m^-2], it must have 3 components (x,y,z)
truncate_g ({'tbt', 'abs'}) – Truncation of the reciprocal lattice vectors,
'tbt'takes a parallelogram in reciprocal space, while'abs'takes a circle.
Methods
__init__(phc, z, V_shapes, a, M, E0, loss[, ...])Initialize the Schroedinger equation expansion.
ft_wavef_xy(kind, mind)Compute the wavefunction Fourier components in the xy-plane
get_pot_xy([Nx, Ny])Get the xy-plane potential of the layer as computed from an inverse Fourier transform with the Schr Eq.
get_wavef_xy(kind, mind[, Nx, Ny])Compute the wavefunction in the xy-plane.
run([kpoints])Run the simulation.
set_run_options([numeig_ex, verbose_ex])Set multiple options for the guided-mode expansion.
Attributes
Eigenvectors of the eigenmodes computed by the by the Schroedinger equation.
Energies of the eigenmodes computed by the Schroedinger equation.
Numpy array of shape (2, Ng) with the [gx, gy] coordinates of the reciprocal lattice vectors over which the simulation is run.
Numpy array of shape (2, Nk) with the [kx, ky] coordinates of the k-vectors over which the simulation is run.