treams._core.PlaneWaveBasisByComp#
- class treams._core.PlaneWaveBasisByComp(modes, alignment='xy')[source]#
Partial plane wave basis.
A partial plane wave basis is defined by two wave vector components out of all three Cartesian wave vector components
kx,ky, andkzand the polarizationspol. Which two components are given is specified in thealignment. This basis is mostly used for stratified media that are periodic or uniform in the two alignment directions, such that the given wave vector components correspond to the diffraction orders.For plane waves there exist multiple Polarizations, such that these modes can refer to either
treams.special.vpw_A()ortreams.special.vpw_M()andtreams.special.vpw_N().- Parameters:
modes (array-like) – A tuple containing a list for each of
k1,k2, andpol.alignment (str, optional) – Definition which wave vector components are given. Defaults to “xy”, other possible values are “yz” and “zx”.
- alignment#
Alignment of the partial basis.
- Type:
str
- pol#
Polarization, see also Polarizations.
- Type:
array-like
Methods
__init__(modes[, alignment])Initialization.
byunitvector(k0[, material, modetype])Create a complete basis
PlaneWaveBasis.count(value)default(kpars[, alignment])Default basis from the given wave vectors.
diffr_orders(kpar, lattice, bmax)Create a basis set for a two-dimensional periodic system.
index(value, [start, [stop]])Raises ValueError if the value is not present.
isdisjoint(other)Return True if two sets have a null intersection.
kvecs(k0[, material, modetype])Wave vectors.
permute([n])Attributes
isglobalkxX-components of the wave vector.
kyY-components of the wave vector.
kzZ-components of the wave vector.