Test with more particles;

Apparetly, the result are now correct for particles lying strictly on
the z-axis.
particles strictly


Former-commit-id: 56c968d3415a01519437479c6f4524a0cd10dc2f
This commit is contained in:
Marek Nečada 2019-03-12 17:17:49 +02:00
parent 8efd582daf
commit 9a592b4682
1 changed files with 9 additions and 7 deletions

View File

@ -55,17 +55,19 @@ int main()
t2->m[i + i*b2->n] = 1; t2->m[i + i*b2->n] = 1;
#endif #endif
const cart3_t pp1 = {1, 2, 0}; const cart3_t pp1 = {0, 0, 1};
const cart3_t pp2 = {0, 0, 1.4};
const cart3_t pp3 = {0, 0, 0};
qpms_tmatrix_t * tmlist[] = {t1, t2}; qpms_tmatrix_t * tmlist[] = {t1, t2};
qpms_particle_tid_t plist[] = {{pp1, 0}}; qpms_particle_tid_t plist[] = {{pp1, 0}, {pp2, 1}, {pp3, 1}};
qpms_scatsys_t protoss; qpms_scatsys_t protoss;
protoss.tm = tmlist; protoss.tm = tmlist;
protoss.tm_count=2; protoss.tm_count=sizeof(tmlist)/sizeof(qpms_tmatrix_t *);
protoss.p = plist; protoss.p = plist;
protoss.p_count=1; protoss.p_count=sizeof(plist)/sizeof(qpms_particle_tid_t);
qpms_scatsys_t *ss = qpms_scatsys_apply_symmetry(&protoss, D2h); qpms_scatsys_t *ss = qpms_scatsys_apply_symmetry(&protoss, C4v);
printf("p_count: %d, tm_count: %d, nirreps: %d, orbit_type_count: %d\n", printf("p_count: %d, tm_count: %d, nirreps: %d, orbit_type_count: %d\n",
(int)ss->p_count, (int)ss->tm_count, (int)ss->sym->nirreps, (int)ss->p_count, (int)ss->tm_count, (int)ss->sym->nirreps,
@ -92,10 +94,10 @@ int main()
fprintf(stderr, "%+2.3f%+2.3fj ", creal(S_full[full_len * (fullvec_offset_dest+row) + fullvec_offset_src+col]), fprintf(stderr, "%+2.3f%+2.3fj ", creal(S_full[full_len * (fullvec_offset_dest+row) + fullvec_offset_src+col]),
cimag(S_full[full_len * (fullvec_offset_dest+row) + fullvec_offset_src+col])); cimag(S_full[full_len * (fullvec_offset_dest+row) + fullvec_offset_src+col]));
fputc('\n', stderr); fputc('\n', stderr);
fullvec_offset_src += bspecn_src;
} }
fullvec_offset_dest += bspecn_dest; fullvec_offset_src += bspecn_src;
} }
fullvec_offset_dest += bspecn_dest;
} }
} }
{ {