WIP translation booster
Former-commit-id: 4ed4c1f7c7948013c4b89bf6cb4c665d541ca3d8
This commit is contained in:
parent
af12f2301f
commit
8251eba955
|
@ -27,9 +27,29 @@ static inline uoppid_t pairarr_len(qpms_ss_pi_t pn_total) {
|
|||
|
||||
typedef struct qpms_scatsys_translation_booster {
|
||||
double *r; // Unique distances array, indices are ppid_t
|
||||
ppid_t *r_map; // FIXME
|
||||
size_t r_count; // Number of different interparticle distances (length of r[])
|
||||
size_t *r_map; // maps pairs to the corresponding distances (index of uoppid_t type)
|
||||
} qpms_scatsys_translation_booster_t;
|
||||
|
||||
struct uoppid_r_pair {
|
||||
double r;
|
||||
uoppid_t id;
|
||||
}
|
||||
|
||||
size_t sort_and_eliminate(void *base, size_t nmemb, size_t size,
|
||||
int (*compar)(const void *, const void *)) {
|
||||
qsort(base, nmemb, size, compar);
|
||||
_Bool eliminate;
|
||||
QPMS_CRASHING_CALLOC(eliminate, nmemb, sizeof(_Bool));
|
||||
size_t left = 0;
|
||||
|
||||
TODO zde;
|
||||
|
||||
free(eliminate);
|
||||
return left;
|
||||
}
|
||||
|
||||
|
||||
struct qpms_scatsys_translation_booster *qpms_scatsys_translation_booster_create(
|
||||
const qpms_scatsys_ss *ss) {
|
||||
const qpms_ss_pi_t np = ss->p_count;
|
||||
|
|
|
@ -134,6 +134,9 @@ typedef struct qpms_ss_derived_tmatrix_t {
|
|||
|
||||
struct qpms_trans_calculator;
|
||||
struct qpms_scatsys_translation_booster;
|
||||
void qpms_scatsys_translation_booster_free(struct qpms_scatsys_translation_booster *);
|
||||
struct qpms_scatsys_translation_booster *qpms_scatsys_translation_booster_create(
|
||||
const qpms_scatsys_ss *ss);
|
||||
|
||||
typedef struct qpms_scatsys_t {
|
||||
struct qpms_epsmu_generator_t medium; ///< Optical properties of the background medium.
|
||||
|
|
Loading…
Reference in New Issue