dtmm.tmm3d

4x4 and 2x2 transfer matrix method functions for 3d calculation.

Module Contents

dtmm.tmm3d.layer_mat3d(k0, d, epsv, epsa, mask=None, method='4x4')

Computes characteristic matrix of a single layer M=F.P.Fi,

Numpy broadcasting rules apply

Parameters
  • k0 (float or sequence of floats) – A scalar or a vector of wavenumbers

  • d (array_like) – Layer thickness

  • epsv (array_like) – Epsilon eigenvalues.

  • epsa (array_like) – Optical axes orientation angles (psi, theta, phi).

  • method (str, optional) – Either a 4x4 or 4x4_1

Returns

cmat – Characteristic matrix of the layer.

Return type

ndarray

dtmm.tmm3d.fmat3d(fmat)

Converts a sequence of 4x4 matrices to a single large matrix

dtmm.tmm3d.system_mat3d(fmatin, cmat, fmatout)

Computes a system matrix from a characteristic matrix Fin-1.C.Fout

dtmm.tmm3d.reflect3d(fvecin, fmatin, rmat, fmatout, fvecout=None)

Transmits/reflects field vector using 4x4 method.

This functions takes a field vector that describes the input field and computes the output transmited field vector and also updates the input field with the reflected waves.