The transition matrix method, or T-Matrix method, is one of the most powerful and widely used tools for rigorously computing electromagnetic scattering by single and compounded particles. As a package focusing on this method, TransitionMatrices.jl
provides the following features:
- Calculate the T-Matrix of various types of scatterers
- Homogeneous spheres (via
bhmie
) - Coated spheres (via
bhcoat
) - Homogeneous axisymmetric shapes (via EBCM and IITM)
- Spheroids
- Cylinders
- Chebyshev particles
- Arbitrary shapes (via IITM)
- Prisms
- Homogeneous spheres (via
- Calculate far-field scattering properties using the T-Matrix
- Cross sections and single scattering albedo (SSA)
- Amplitude scattering matrix
- Phase matrix
- Scattering matrix
Compared to existing packages, TransitionMatrices.jl
is special in that it is generic and supports various floating-point types, e.g.:
Float64
andBigFloat
fromBase
Double64
fromDoubleFloats.jl
Float128
fromQuadmath.jl
Arb
fromArblib.jl
ArbFloat
fromArbNumerics.jl
By using higher-precision floating-point types, the maximum size parameter that can be handled is greatly improved.