Marek Nečada
1821a0d8f5
Try to recover from failed quadrature.
...
Former-commit-id: 746709b224d825baf4a41ddfcd040a0c80fc45c8
2019-11-12 07:18:20 +02:00
Marek Nečada
e4f368f47a
Multi-threaded integration in axial symmetric T-matrix.
...
Former-commit-id: 71dc4ae5978f0dc10d82f4d8450fb2117ba64ce8
2019-11-08 17:43:07 +02:00
Marek Nečada
cfda120a20
Fix sign in Drude-Lorentz model.
...
In our convention, where outgoing wave correspond to
Hankel functions of FIRST kind, the time-harmonic waves carry
(contrary to the more usual electrotechnical convention)
the factor exp(-iωt) and lossy materials are represented
by Im ε > 0, i.e. Im n > 0.
Former-commit-id: 19108c43a31899c2f9196c1a0fc44c5ecae69b5a
2019-11-08 09:36:12 +02:00
Marek Nečada
28f4e7f3d2
Complexify wavenumber in (finite) translation operators.
...
Former-commit-id: f84e1588cdda916d8feda6d807c12bca69512e5f
2019-11-06 18:13:50 +02:00
Marek Nečada
cc9dbb6cc5
Make the additional Drude-Lorentz parameters available from Python
...
Former-commit-id: f08c96459c7cfd07b2adbf4670de59b1ce0b6ea1
2019-11-06 12:04:52 +02:00
Marek Nečada
493ba079e2
Some more Drude-Lorentz data from drudelorentz.com
...
Former-commit-id: 62f7f550e4e72d176690ac2b3532cec9bedb889f
2019-11-04 21:42:19 +02:00
Marek Nečada
d79a35110c
Merge branch 'beyn_rework'
...
Former-commit-id: 3366b1421056a2ac097b79f62bfbccd82d87de1b
2019-11-04 09:43:44 +02:00
Marek Nečada
84acb1ada2
Allow to select only either of long/short range Ewald sum parts
...
(cherry picked from commit 97b7782291380193835c23a4f0ea04ff5f44273e [formerly 41b1a76d5ed571b507abc0515b3cba60e8c0ccca])
Former-commit-id: 4d51186e653babfdc84fc45a4ab70a3ffdc02eee
2019-11-04 09:38:23 +02:00
Marek Nečada
4dd3234b0a
Remove the branch cut at negative real axis in Ewald sum.
...
Move the cut to the negative imaginary axis instead.
Also update comments.
Former-commit-id: a70e6a4db0ac33836d672d9ee2356ea19a899a30
2019-10-09 13:20:20 +03:00
Marek Nečada
acff55f396
Extend hardcoded T-matrix similarity tolerance.
...
Also some cython functions->properties.
Former-commit-id: 4a0605b1cf8b857c681f194a475ff3f10e7dfe71
2019-10-07 15:15:34 +03:00
Marek Nečada
e7f0e0131f
Basic branch selection functionality for incomplete Γ.
...
No modifications with effects on Ewald sums done yet.
Former-commit-id: e362341713ce306482386b9e6f2a48c336fad7a1
2019-10-06 01:30:29 +03:00
Marek Nečada
2dd9fe2f34
Minor stuff.
...
Former-commit-id: c0de35f6a52ce4cc4f34cf4b417364d92e8dac4d
2019-10-05 20:38:04 +03:00
Marek Nečada
aa86fcfb08
Expose low-level scalar Ewald sums via cython.
...
Former-commit-id: 9910decff1e8e91c802f0f8d10573ec430dda468
2019-10-03 00:52:14 +03:00
Marek Nečada
2d891be12f
ewald.h cleanup
...
Former-commit-id: c02360cfa9df1dac06897883115cafc98a912107
2019-10-02 20:11:25 +03:00
Marek Nečada
0239a3c9a1
Fix memset size in Mie T-matrix generator.
...
Former-commit-id: 244dad82dec42fdc1e08cc12205e373711465622
2019-10-02 17:53:01 +03:00
Marek Nečada
79e6c47f94
Beyn integration contours to pxd
...
Former-commit-id: d33de9a694ea7d5600a627062c7119e8483d753e
2019-10-01 11:52:29 +03:00
Marek Nečada
c7f2e32ee4
Free unfinished PGens from Ewald sums.
...
Also replace some bare `if (xxx) abort();` with
`QPMS_ENSURE_SUCCESS(xxx)`.
Former-commit-id: d4712292fe0f9fb397cf3a490131bcb37d542fa6
2019-10-01 11:29:15 +03:00
Marek Nečada
7e74cb100c
Experimental speedup by earlier cutoff for Ewald summation.
...
TODO check whether PGen is properly destroyed
Former-commit-id: db2c64292b9c1bd80e97255bf71e570385b409a4
2019-09-30 17:57:06 +03:00
Marek Nečada
dad170b8fe
Kidney contour basic test
...
Former-commit-id: 861cf5f9a8409db360e48db74274f20069b94391
2019-09-30 10:54:10 +03:00
Marek Nečada
f940e62e52
Test and fix the rounded half-ellipse contour..
...
Former-commit-id: 448c30d375b3f9d0abab9442ae00bfcd123e5cb9
2019-09-30 08:53:57 +03:00
Marek Nečada
d6084f3264
WIP Alternative integration contour (untested)
...
Former-commit-id: c82da58ac33364797d7175a69feed475184937d9
2019-09-29 22:32:53 +03:00
Marek Nečada
2e7b925be2
WIP trying to fix the half-ellipse contour.
...
Former-commit-id: cbba6fffacbb38322a590478899f38c7d7dafe8e
2019-09-26 11:36:41 +03:00
Marek Nečada
b3c3eeb2a2
Fix derivatives in integration contours.
...
Former-commit-id: 7575a69a82eb19126aaac9aede9f170815b6015a
2019-09-26 10:09:35 +03:00
Marek Nečada
2fcc6282fa
"Half-ellipse" integration contour.
...
Former-commit-id: 800079fba837d65f84af62d5adfad177a6aa3cdf
2019-09-26 10:09:35 +03:00
Marek Nečada
67f93e461c
Ewald translation calculator function using base specs.
...
Former-commit-id: d49880caa280cc089fa688d0cdeccb95db7cb64b
2019-09-23 08:59:18 +03:00
Marek Nečada
6445c3523e
Experiments with Beyn's algorithm and singularities.
...
It seems that everything is fine in the end except
essential singularities inside the contour.
Former-commit-id: 9fe7135cb30d1fff1dc3ff9bf8a9152c6b0ef9b4
2019-09-17 15:14:09 +03:00
Marek Nečada
42931eb0a0
Additional test to Beyn solver (Example 4.9).
...
Former-commit-id: 63a78fa09fd3875e5d10b6b4fb6eea72010cfcee
2019-09-17 14:11:23 +03:00
Marek Nečada
bd0b8a83e9
Beyn: functionality for testing if points are inside contour.
...
Former-commit-id: 5c88b6e9aa4308201871a9b19c8d20c04b93a718
2019-09-17 07:58:59 +03:00
Marek Nečada
9d0f910bba
Some comments to beyn.c
...
Former-commit-id: cc756b3343a9290f3b3b8c79cec75559b11a952f
2019-09-17 07:17:04 +03:00
Marek Nečada
e8a2426b55
Handle k->0 in Ewald sum.
...
Former-commit-id: fb61b297ead4828541b763b2ecdb0c81de1d35f1
2019-09-16 12:37:32 +03:00
Marek Nečada
2762ada49c
Beyn: keep singular values from rank test
...
Former-commit-id: eb82025e460575335f9d6e3d9acb3cfdfe8867f0
2019-09-16 08:02:31 +03:00
Marek Nečada
ecbf5b10d4
Fix infinite loop in empty lattice modes generation
...
Former-commit-id: 1349035090712935a0d77d64c175e4358fb4d487
2019-09-13 16:20:39 +03:00
Marek Nečada
b45bdcd49a
Bug fixes mostly in lattice generators.
...
Former-commit-id: 1fbed5865f20b7191b31fe24d263bd16baca7fa7
2019-09-13 15:51:19 +03:00
Marek Nečada
e910de936e
2d empty lattice modes pxd; fix a corner case.
...
Former-commit-id: aa33c85a6a0d2107caef752900690f471cc6350f
2019-09-13 13:18:23 +03:00
Marek Nečada
0f03509dde
Mode frequency calculations for empty lattices.
...
Former-commit-id: ca14f8d765399c5bf92bb64cc7f1dc6722d53ebb
2019-09-13 11:52:56 +03:00
Marek Nečada
11aa48d2da
Beyn minor fixes, cleaner API.
...
Former-commit-id: 44d7147a14194a7b8e5a66552dd3855029b9e370
2019-09-10 14:54:08 +03:00
Marek Nečada
3bc59096bc
Public beyn_result_gsl_t -> beyn_result_gsl_t convertor.
...
Former-commit-id: 56fb70384c20b93dbc8b119c6b5b4128ce4fcaf9
2019-09-10 14:04:56 +03:00
Marek Nečada
cbf039710f
cdefs for beyn.h
...
Former-commit-id: 846f26b8a6e1a2829c379b1bcc9edae1a0965b26
2019-09-09 20:50:31 +03:00
Marek Nečada
658c564a0c
Some 3D lattice functionality, little refactoring.
...
Former-commit-id: 8e6572c7352e3b9a75bc13585d688f1c72d378e1
2019-09-07 11:23:16 +03:00
Marek Nečada
1585c48071
Incremental cleanup.
...
Former-commit-id: d4d8d41a2edac7cf8ac341cce46e3c976ef68c5e
2019-09-02 13:43:46 +03:00
Marek Nečada
5dc2a44cdd
Incremental cleanup and style assimilation
...
Former-commit-id: eb31cf03313edbad256331592afa4c6d212feab8
2019-09-02 12:31:37 +03:00
Marek Nečada
c632ee36c5
QPMS_UNLIKELY macros to qpms_error.h
...
Former-commit-id: d879a2105fd35a7d17f090842b03286fd310fbc1
2019-09-02 12:03:27 +03:00
Marek Nečada
cabe764640
Implement an API for Beyn's algorithm with standard C arrays.
...
Former-commit-id: 645490de63f802c8a41f3bad1845cd29e0c3d823
2019-09-02 11:57:56 +03:00
Marek Nečada
bc703cbcca
Beyn pure C api headers
...
Former-commit-id: 0e1da18ccf552d496eed4a073611c57d5e9619ba
2019-09-02 10:33:07 +03:00
Marek Nečada
537c4b2d37
Beyn solver new API
...
Former-commit-id: cb242415d66acebd42aa6c12ef74696f5dea85de
2019-08-31 14:35:56 +03:00
Marek Nečada
4c21fde628
WIP rewriting Beyn API
...
Former-commit-id: 0579928c1aac32ec82db0364080d46fcce7721a6
2019-08-28 15:12:42 +03:00
Marek Nečada
1aa9890155
Reindend, add also the 'coarse values' calculation
...
Former-commit-id: 2dc73a2875823cae187585787bd4d344dea232f9
2019-08-27 20:41:30 +03:00
Marek Nečada
5471367aad
Finally reproduce Reid's implementation.
...
Former-commit-id: 215088edddd93c79b4a4ad3ee9836595bcc69167
2019-08-27 20:10:28 +03:00
Marek Nečada
00e3a9ce09
Fix test matrix definition
...
Former-commit-id: f5874c5cf632b9fe5c561154370a3460fc1c7b46
2019-08-27 19:06:37 +03:00
Marek Nečada
4d4ab9936b
Variable Lovász condition parameter
...
Former-commit-id: 726d5c1b1dc03a5b11f8d7b32e6bf589efec369d
2019-08-25 21:17:23 +03:00