QPMS
Electromagnetic multiple scattering library and toolkit.

A Tmatrix. More...
#include <qpms_types.h>
Data Fields  
const qpms_vswf_set_spec_t *  spec 
VSWF basis specification, NOT owned by qpms_tmatrix_t by default. More...  
complex double *  m 
Matrix elements in rowmajor order.  
bool  owns_m 
Information wheter m shall be deallocated with qpms_tmatrix_free()  
A Tmatrix.
In the future, I might rather use a more abstract approach in which Tmatrix is a mapping (function) of the field expansion coefficients. So the interface might change. For now, let me stick to the square dense matrix representation.
const qpms_vswf_set_spec_t* qpms_tmatrix_t::spec 
VSWF basis specification, NOT owned by qpms_tmatrix_t by default.
Usually not checked for meaningfulness by the functions (methods), so the caller should take care that spec>ilist does not contain any duplicities and that for each wave with order m there is also one with order −m.