From d17a5e5eea4cb7e91856185a31449008533ce1e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ne=C4=8Dada?= Date: Sat, 21 Dec 2019 11:36:01 +0200 Subject: [PATCH] WIP data structure redefinitions. Former-commit-id: 5e2baffb4a47657233e792407630507ba611b129 --- qpms/scatsystem.h | 15 +++++++++++++++ qpms/tmatrices.h | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/qpms/scatsystem.h b/qpms/scatsystem.h index 4b0fb9f..602ac4a 100644 --- a/qpms/scatsystem.h +++ b/qpms/scatsystem.h @@ -167,7 +167,22 @@ typedef struct qpms_scatsys_t { struct qpms_trans_calculator *c; } qpms_scatsys_t; + typedef struct qpms_scatsys_at_omega_t { + const qpms_scatsys_t *ss; ///< Parent scattering system. + /// T-matrices from \a ss, evaluated at \a omega. + /** The T-matrices are in the same order as in \a ss, + * i.e in the order corresponding to TODO WHAT E7ACTLY?? + */ + qpms_tmatrix_t **tm; + complex double omega; ///< Angular frequency + complex double eps; ///< Background medium relative electric permittivity + complex double mu; ///< Background medium relative magnetic permeability + complex double wavenumber; ///< Background medium wavenumber + complex double refractive_index; ///< Background medium refractive index +} qpms_scatsys_at_omega_t; + +void qpms_scatsys_at_omega_free(qpms_scatsys_at_omega_t *); /// Convenience function to access pi'th particle's bspec. static inline const qpms_vswf_set_spec_t *qpms_ss_bspec_pi(const qpms_scatsys_t *ss, qpms_ss_pi_t pi) { diff --git a/qpms/tmatrices.h b/qpms/tmatrices.h index ba29e48..f583aa5 100644 --- a/qpms/tmatrices.h +++ b/qpms/tmatrices.h @@ -505,7 +505,7 @@ qpms_errno_t qpms_tmatrix_axialsym_RQ_transposed_fill(complex double *target, ); -/// An "abstract" t-matrix, contains a T-matrix generator instead of actual data. +/// An "abstract" T-matrix, contains a T-matrix generator instead of actual data. typedef struct qpms_tmatrix_function_t { /** \brief VSWF basis specification, NOT owned by qpms_tmatrix_t by default. *