treams is an open-source software package for calculations of electromagnetic scattering based on the T-matrix method. It can be used for finite and periodic arrangements of scatterers of different schapes.
Capabilities
treams computes T-matrices analyticalaly for spheres and for infinitely long cylinders, including multilayered spheres and cylinders. It can also import external T-matrices, e.g. from T-matrix database. If the T-matrices of single scatterers are known, T-matrices of corresponding clusters and periodic arrays of these scatterers can be also calculated. Then the quantities such as fields outside the structures, scattering, extinction and absorption cross-sections, multipolar decompositions may be extracted.
Periodic systems can be considered in different dimensions. Particle arrays can be placed near multilayered substrates, for which transmission and reflection can be calculated. Fore some geometries, the package can be also used to compute band structures.
Isotropic chiral media are implemented directly, and scatterers from anisotropic material can be introduced through externally calculated T-matrices.
Method
In the T-matrix method, incident and scattered fields are expanded into a set of basis functions. Fields expanded into vector spherical harmonics can be represented in helicity or parity (TE/TM) bases, also cylindrical harmonics basis and plane wave basis are available. The T-matrix of a nanostructure connects the coefficients of the incident field with those of the scattered field. For clusters and arrays, the fields scattered by one particle act as incident fields for the others, and the basis change is performed using translation addition theorems
For periodic systems, the same interaction has to be summed over the repeated lattice. treams evaluates these sums using the Ewald method. V. E. Babicheva, A. B. Evlyukhin, Mie-resonant metaphotonics, Advances in Optics and Photonics 16, 539–658 (2024), https://doi.org/10.1364/AOP.510826.
Applications treams has been used for dispersion and band-structure calculations in periodic plasmonic lattices,N. de Gaay Fortman, D. Pal, P. Schall, A. F. Koenderink, ACS Photonics 12, 1163–1173 (2025), . for the electromagnetic response of metasurfaces coupled to quantum-emitter arrays,F. Lindel, C. J. Sánchez Martínez, J. Feist, F. J. García-Vidal, Phys. Rev. Lett. 137, 103802 (2026), . and for reflectance calculations of transition-metal dichalcogenide nanosphere arrays.I. J. Bundgaard, C. G. Ferreira, Y. Lebsir, C. Tserkezis, ACS Appl. Nano Mater. 9, 16632–16642 (2026), . It has also been discussed in comparison with other multiple-scattering codes such as Multem 3A. Shalev, K. Ladutenko, I. Lobanov, V. Yannopapas, A. Moroz, Comput. Phys. Commun. 301, 109218 (2024), . and described as a T-matrix toolkit for periodic structures in a paper on TorchGDM, which also uses an interface to treams for T-matrix- and Mie-based effective-model construction.S. Ponomareva, A. Patoux, C. Majorel, A. Azéma, A. Cuche, C. Girard, A. Arbouet, P. R. Wiecha, SciPost Phys. Codebases 60 (2025), https://scipost.org/SciPostPhysCodeb.60. An acoustic implementation, acoustotreams, was introduced in 2026.N. Ustimenko, C. Rockstuhl, acoustotreams – A Python package for acoustic-wave scattering based on the T-matrix method, arXiv:2606.22573 (2026).
See also T-matrix method Mie scattering Computational electromagnetics Multiple scattering Ewald summation
References