legume.HopfieldPol

class legume.HopfieldPol(phc, gmax, truncate_g='abs')

Main simulation class of the generalized Hopfield matrix method.

__init__(phc, gmax, 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.

  • 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, gmax[, truncate_g])

Initialize the Schroedinger equation expansion.

run([gme_options, exc_options, kpoints, verbose])

Compute the eigenmodes of the photonic crystal taking into account light-matter interaction.

Attributes

eigvecs

Eigenvectors of the eigenmodes computed by the by the Hopfield matrix diagonalisation.

eners

Energies of the eigenmodes computed by the Hopfield matrix diagonalisation.

eners_im

Imaginary part of the frequencies of the eigenmodes computed by the Hopfield matrix diagonalisation.

fractions_ex

Excitonic fractions of the polaritonic eigenmodes.

fractions_ph

Photonic fractions of the polaritonic eigenmodes.

gvec

Numpy array of shape (2, Ng) with the [gx, gy] coordinates of the reciprocal lattice vectors over which the simulation is run.

kpoints

Numpy array of shape (2, Nk) with the [kx, ky] coordinates of the k-vectors over which the simulation is run.