Reference

TREAMS: T-Matrix scattering code for nanophotonic computations.

Classes

The top-level classes and functions allow a high-level access to the functionality.

Basis sets

CylindricalWaveBasis(modes[, positions])

Basis of cylindrical waves.

PlaneWaveBasisByUnitVector(modes)

Plane wave basis.

PlaneWaveBasisByComp(modes[, alignment])

Partial plane wave basis.

SphericalWaveBasis(modes[, positions])

Basis of spherical waves.

Matrices and Arrays

PhysicsArray(arr[, ann])

Physics-aware array.

SMatrix(arr[, ann])

S-matrix for a plane wave.

SMatrices(smats, **kwargs)

Collection of four S-matrices with a plane wave basis.

TMatrix(arr[, ann])

T-matrix with a spherical basis.

TMatrixC(arr[, ann])

T-matrix with a cylindrical basis.

Other

Lattice(arr[, alignment])

Lattice definition.

Material([epsilon, mu, kappa])

Material definition.

Functions

bfield(r, *, basis[, k0, material, ...])

Magnetic flux density.

changepoltype([poltype, where])

Matrix to change polarization types.

chirality_density(basis, k0[, material, ...])

dfield(r, *, basis, k0[, material, ...])

Displacement field.

efield(r, *, basis, k0[, material, ...])

Electric field.

expand(basis[, modetype, k0, material, ...])

Expansion matrix.

expandlattice([lattice, kpar, basis, ...])

Expansion matrix in lattices.

hfield(r, *, basis, k0[, material, ...])

Magnetic field.

permute([n, k0, material, modetype, poltype])

Permutation matrix.

plane_wave(kvec, pol, *[, k0, basis, ...])

Array describing a plane wave.

rotate(phi[, theta, psi, where])

Rotation matrix.

translate(r, *, basis[, k0, material, ...])

Translation matrix.

Modules

These modules provide basic functionality for transformations within one basis set, i.e. one module, like translations and rotations as well as transformations among them. The functions in there provide an intermediate stage between the purely mathematical functions found in the two subpackages lattice and special and the higher-level classes and functions.

sw

Spherical wave module.

cw

Cylindrical wave module.

pw

Plane wave module.

This module is for loading and storing data in HDF5 files and also for creating meshes of sphere ensembles.

io

Loading and storing data.

Finally, two modules for calculating scattering coefficients and doing miscellaneous tasks.

coeffs

Scattering coefficients for high-symmetry cases.

misc

Miscellaneous functions.

Global configuration variables are stored in

config

Configuration.

Some convenience classes for the implementation are defined in

util

Utilities.

Subpackages

These subpackages allow a low-level access to the implementation of the lattice sums and mathematical functions

lattice

Lattice sums.

special

Special (mathematical) functions.