Commit Graph

93 Commits

Author SHA1 Message Date
Marek Nečada bfa99b2663 argproc.py: enable manual specification of BaseSpec 2022-06-01 16:09:16 +03:00
Marek Nečada 16a0a7dc0a Dummy (zero) T-matrix generator 2022-04-04 09:43:02 +03:00
Marek Nečada 0315481977 Expose more testing functions via cython api. 2021-12-21 12:42:23 +02:00
Marek Nečada 0078f4db56 Cython evaluation of "normal" and Ewald-summed SSWF 2021-12-08 14:09:15 +02:00
Marek Nečada fa6d93d3e8 Enable separation of long- and short-range of Ewald sum in python 2021-12-08 14:09:15 +02:00
Marek Nečada 1158e116d2 "Basis fields" for finite systems.
There seem to be race conditions in the prange'd cython parts.
2021-12-08 14:09:15 +02:00
Marek Nečada 414bee6c9f "Basis fields" for finite systems 2021-12-08 14:09:15 +02:00
Marek Nečada 9d556e7b23 Remove all gsl_matrix_... related code in Beyn.
Now that pure BLAS implementation is working, this in no longer needed.

Getting rid of gsl_matrix and gsl_cblas eliminates header clashes between
GSL and other CBLAS implementations.
2021-06-11 11:11:17 +03:00
Marek Nečada 868e603f1c Infinite periodic system scattered field "bases" 2020-07-23 07:23:47 +03:00
Marek Nečada 840744ec97 Provide access to more information in ScatteringSystem 2020-07-03 19:11:06 +03:00
Marek Nečada 17824b062e Attempt to parallelize scattered_E cython methods. 2020-07-03 14:20:07 +03:00
Marek Nečada 6009de6fa2 Evaluate scattered electric fields in 2d-periodic system.
Former-commit-id: 36386215f9d330a3047cb9a294ccc1de55f2121f
2020-05-31 16:34:09 +03:00
Marek Nečada 14a5c32202 Adjust eta for each (omega, k) pair to prevent hi-freq breakdown.
This effectively reverts 0b9129, because it does not make to define
Ewald parameter for just each frequency after all...


Former-commit-id: 6a3df5ecc1eecd6c120a74c70df5b747d593aae3
2020-04-26 17:10:47 +03:00
Marek Nečada 8ed4bdb683 Separate Ewald parameter for different frequencies
Former-commit-id: 0b9129fda0224411c2a1d8372fe715db4e071ecd
2020-04-22 16:18:16 +03:00
Marek Nečada 83e76b1f95 Expose Ewald parameter to Python
Former-commit-id: dc3e794f0cb146da3ab8d8dd5e46c81997e8bc51
2020-04-21 23:34:49 +03:00
Marek Nečada ba06abe13f BaseSpec __eq__() and __hash__()
Former-commit-id: da4245315207dc75a70ca6a036fb8be17e243bf9
2020-04-07 19:32:58 +03:00
Marek Nečada 3f266f5501 More cdefs from vectors.h
Former-commit-id: f1aa88cd3e4dbe2bccc1b7c3648cd9afe08da0c1
2020-04-05 02:19:48 +03:00
Marek Nečada a88694e7ef Make infinite rect lat. / real freq. SVD work with ScatteringSystem.
Former-commit-id: 56beaeca0b44ca9087208c5e27c007d492572302
2020-03-27 14:48:15 +02:00
Marek Nečada c031d65905 Allow different Bessel kind in scattered_E
Former-commit-id: afbc59cf542daec6e89d4a48f01acfb7e515819c
2020-03-23 12:01:04 +02:00
Marek Nečada b3d15a1bb7 Alternative implementation of qpms_scatsys_scattered_E()
For testing purposes. Seems to work OK.


Former-commit-id: 897e687d27dbd81b2aaac17fb8f19bc4257dc887
2020-03-21 18:49:28 +02:00
Marek Nečada 35ffc61faf Scatsystem scattered E field methods
Former-commit-id: 6521916a81a7c8022bfaefb7102ae657eef99516
2020-03-21 08:11:16 +02:00
Marek Nečada 433be52bbc Fix ScatteringSystem.fullvec_poffsets
Former-commit-id: 5a186bb4c22474124ab34d3fd6d5920587b0514d
2020-03-18 09:34:51 +02:00
Marek Nečada 57483ac9c8 Fix cython declarations.
Former-commit-id: f6300c94d19349dabc6e9fc034c405c7179223fe
2020-03-10 16:24:50 +02:00
Marek Nečada 5270430bfd xy-periodic lattice Beyn algorithm support in ScatteringSystem
Gives same results as newbeyn_unitcell 26d6e969, making it obsolete.


Former-commit-id: b1b1b1e2c11f60948efda237388bfdf9b6d689f5
2020-03-09 10:14:40 +02:00
Marek Nečada 3791db2060 xy-periodic lattice scattering support in ScatteringSystem
Gives same results as newbeyn_unitcell 26d6e969


Former-commit-id: 112ab071f41ee556716da67219d859c1dc50ac1d
2020-03-06 14:46:00 +02:00
Marek Nečada 213853e407 WIP cython support for periodic lattices
Former-commit-id: f679f63941ec8dd597a5ccd140682de889e21807
2020-02-29 01:35:12 +02:00
Marek Nečada 54315c61c8 Irrep-decomposed scatsys beyn; fix missing FinitePointGroup reference
Former-commit-id: fa1032eb8fcb8ce1018b69fff5af6375b34115be
2020-02-04 20:19:42 +02:00
Marek Nečada cea33ae97c Beyn algorithm cython wrapper (finite systems)
Former-commit-id: 7f17e9673b9389fbf444d871e92f9b12e10d875d
2020-02-04 20:19:42 +02:00
Marek Nečada 68812c9555 Beyn algorithm "cherry-pick" from 'newbeyn_unitcell'
- Add rank_min_sel argument to beyn_solve() and beyn_solve_gsl()
- Fix order of K and K_coarse evaluation (K_coarse should probably
  be removed).


Former-commit-id: 8d2be922f8aa62754d10928f53fa6ab68f00dc8e
2020-02-04 20:19:42 +02:00
Marek Nečada 355bc52325 Rewrite ScatteringSystem. Compiles, not tested.
Former-commit-id: 513741a41cd9b65348a8e91c367cd105592a0d68
2020-01-15 03:51:35 +02:00
Marek Nečada b578f305ac Support for constant T-matrix generator in cython.
Former-commit-id: 184f88b0acf453d09e67f03cf41db06b4b4015bb
2020-01-14 19:19:08 +02:00
Marek Nečada be8f55eb1f Update qpms_cdefs.pyx
Former-commit-id: 7e1126b1bb594ffb1a8e5e9ed7a91839c0833b8f
2020-01-10 15:45:42 +02:00
Marek Nečada 1dcebe4fee Add nogil
Former-commit-id: 8ef30e7002dace1691ce32815dc24975b5d7131e
2019-11-17 10:05:29 +02:00
Marek Nečada a712789386 modeproblem matrix parallel implementation to become default
Former-commit-id: ddf4ab3b83490de67034107b96272d725dde6a89
2019-11-17 09:59:06 +02:00
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 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 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 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 aa86fcfb08 Expose low-level scalar Ewald sums via cython.
Former-commit-id: 9910decff1e8e91c802f0f8d10573ec430dda468
2019-10-03 00:52:14 +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 2fcc6282fa "Half-ellipse" integration contour.
Former-commit-id: 800079fba837d65f84af62d5adfad177a6aa3cdf
2019-09-26 10:09:35 +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 2762ada49c Beyn: keep singular values from rank test
Former-commit-id: eb82025e460575335f9d6e3d9acb3cfdfe8867f0
2019-09-16 08:02:31 +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 11aa48d2da Beyn minor fixes, cleaner API.
Former-commit-id: 44d7147a14194a7b8e5a66552dd3855029b9e370
2019-09-10 14:54:08 +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 4d4ab9936b Variable Lovász condition parameter
Former-commit-id: 726d5c1b1dc03a5b11f8d7b32e6bf589efec369d
2019-08-25 21:17:23 +03:00