Commit Graph

1188 Commits

Author SHA1 Message Date
Marek Nečada 9b9338be05 Fix critical bug in qpms_vecspharm_fill()
Pointer incrementation in wrong cycle, leading to numerically
completely wrong results in most cases.

At higher level, this seems to have affected only plane wave
decompositions.


Former-commit-id: 7ebdb8b8f3f645d76e924b86379172d2c6fac8dc
2020-04-05 01:43:38 +03:00
Marek Nečada e774b30d0c Some little docstrings.
Former-commit-id: 762774a600ca9a02fecba86e6cb6e6992a1d1b05
2020-04-03 21:55:11 +03:00
Marek Nečada 70d03f75aa Argproc: waves with polarisation; update finiterectlat-scatter.py
Former-commit-id: a24428bd19d90ad6d13ab3cfe4d1c0fc406dc451
2020-04-02 18:27:43 +03:00
Marek Nečada dc503158bf Fix axes in finiterectlat-constant-driving.py plots
Former-commit-id: 03758f3af165209dfc10eff9509ea70eb4699223
2020-03-29 11:35:41 +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 8b7e2c6332 Rectangular lattice SVD cut at gamma point, real frequency
(cherry picked from commit 3fd87de397b5a2228e377e525dabd3e64a641d62 [formerly 57a498625671d8fefccd688fde848ce484f0a6ef])


Former-commit-id: e1b8cab071a5ba2b4f0328aba6930981ba1b3293
2020-03-27 12:36:34 +02:00
Marek Nečada 858e7d0697 finiterectlat-constant-driving: display real x, y dipoles
Former-commit-id: 19bca93c6868a824a3cabb2fcba821a6d6846b1b
2020-03-27 01:18:53 +02:00
Marek Nečada a14d0e5bc4 Various fixes to finiterectlat-constant-driving.py
Former-commit-id: d4ef9a96dfea55ee0c906646d3260ac9ea518dae
2020-03-27 00:10:21 +02:00
Marek Nečada ac6e94065a Finite rect lat constant driving far field "ccd"
Former-commit-id: 69fc0ebe1eba8701743d6883f877e5df70f4477d
2020-03-26 21:38:58 +02:00
Marek Nečada 5f729d28a7 Avoid using Stead method from GSL above certain threshold.
Former-commit-id: aa8012deef69ecce95f203b1b5746cfaa0980806
2020-03-26 19:21:47 +02:00
Marek Nečada 1b4b397093 Cleanup: eliminate bare abort()s
Former-commit-id: bb1e4ada19e6bcbf87d6ea1fce0897c4478fb045
2020-03-26 19:19:40 +02:00
Marek Nečada 20a13cdb2c Doxygenise qpms_error.h
Former-commit-id: 9ed5d7c4352fb6e0d9ef3922fd491010e1f8c16e
2020-03-23 21:59:29 +02:00
Marek Nečada 3ebc1af946 Finer error handling.
Former-commit-id: f30b79d2cc321fc06030374176f5013ff179ffc8
2020-03-23 12:07:43 +02:00
Marek Nečada 2798fcce49 Replace abort() calls with custom macros in vswf.c
Former-commit-id: 43f374a0973d6f0f1d4f7edaba6fcf229223a9cc
2020-03-23 12:04:32 +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 3c7377e5fe Update test programs to current API.
Former-commit-id: 199c0a0010eea1becce6297186ea06e93c2de6cd
2020-03-21 21:16:24 +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 aa82b3a01a Fix allocated array sizes.
Former-commit-id: 7183f7f104df3af58d994d5e485b59cebb4365b3
2020-03-21 16:31:41 +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 b00a6db4cf Fourier plots to finiterectlat-constant-driving.py
Former-commit-id: acc04df5ed36e038a56a3da1cf5503eddf612313
2020-03-18 11:20:44 +02:00
Marek Nečada 301a0e0633 Better plots for finiterectlat-constant-driving.py
Former-commit-id: 136b3f8d8b6b18d49f4f99704d1bc3d231dc8808
2020-03-18 10:18:13 +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 4b2e48f459 Reduce tolerances as a workaround for inprecise integration.
Former-commit-id: bff40ebc4b77a7621b609669ac690475ae0c6fd4
2020-03-18 09:34:05 +02:00
Marek Nečada 9bf2f6a57a "Constant per-particle driving" simulation script
Former-commit-id: 904f576dd76962581d64813eb1a7682b2f4bacc6
2020-03-18 09:32:45 +02:00
Marek Nečada 15328a3dc9 Minor additions to docs.
Former-commit-id: f913e5f00c630c15a2ab7a92aba26ba27232eb36
2020-03-13 09:30:38 +02:00
Marek Nečada 79b805a6aa Remove pre-Ewald lattice sum related "split-Bessel" functions
Former-commit-id: 18d1c77460bf1563cab50b3c55d481f8dc696364
2020-03-11 15:02:04 +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 dd391747bf Scrap the ss->per flexible array thing to avoid excessive mess.
Former-commit-id: b430865714557c21764515dd3243ce42be0f800a
2020-02-28 23:46:55 +02:00
Marek Nečada 78c793fb68 Beyn wrappers for periodic system.
Former-commit-id: c4c21de7d02af36d35133ff9ef0c426742eab6ff
2020-02-28 21:22:36 +02:00
Marek Nečada 1fb4e5760a scatsystem: mode problem matrix for xy-plane periodic systems
Former-commit-id: 755bb86f966b031861a2338eb97e68111694b1d8
2020-02-28 13:53:53 +02:00
Marek Nečada 2b628736f0 WIP 2D in 3D -periodic scatsystem
Former-commit-id: e53b6b1f8361efc6c66260e776688b4e941660ad
2020-02-27 17:03:09 +02:00
Marek Nečada f994514aeb General heap-based lattice point generator compiles, untested.
Former-commit-id: 8106cf72ad1d96426c2273493499db48d232f642
2020-02-25 17:59:33 +02:00
Marek Nečada 1e765e3cf6 WIP Binary-heap based arbitrary-dimensional lattice point generator.
Former-commit-id: 9d58da7295f5918c7758c168a2352cc686efac98
2020-02-25 09:13:47 +02:00
Marek Nečada bf49531666 Experimental support for periodic lattices in scatsys "constructor".
Former-commit-id: 69727f4d415866b948af83c55ed8adb46b651f16
2020-02-14 16:35:55 +02:00
Marek Nečada 379dc3117e Move periodic lattice-related stuff into a separate structure
Former-commit-id: f2f49245a808a592d8f7c6bc7d795ae293d5ae62
2020-02-14 08:25:34 +02:00
Marek Nečada 2499c739c8 New members to qpms_scatsys_t for periodic lattices.
Former-commit-id: 94011c64fb1928b20419e628de045dbc762167eb
2020-02-13 23:02:46 +02:00
Marek Nečada 3fed9396a1 support for TMatrixInterpolator in TMatrixGenerator
Former-commit-id: ae3849483ca5d45d39ab51f9340d0c3c7a347865
2020-02-13 19:05:11 +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 b4bd1eedac Beyn wrappers for finite system, doxygen
Former-commit-id: 236e802bc92c5fb0984f83b00c77555d5c29430d
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 d557a99a49 Fix finiterectlat-modes.py obvious errors.
Former-commit-id: c66c03a09c7264823a420d1f41e076a8064f041b
2020-02-04 16:55:18 +02:00
Marek Nečada 5176bd5451 Simple finite řectangular lattice mode search script
Former-commit-id: 39b34d0494ab1888b690345c469221ee8ae88bbd
2020-02-04 16:55:18 +02:00
Marek Nečada daf95e799a Avoid tmgen multiplicities (->slowdown) in ScatteringSystem constructor
Former-commit-id: 438ba0667e36a7c51b2ac5fe58cf62fea17eb132
2020-02-04 16:55:18 +02:00
Marek Nečada c11fe19af3 Remove build type hardcode spec.
Also add QPMS_NORETURN attribute/macro.


Former-commit-id: 0a3fa2ecb35e8ffcee698c98553577ab2bb513b0
2020-02-04 16:55:13 +02:00
Marek Nečada c7c27c4731 Fix memory leaks; use error macros
Former-commit-id: eee02afb23fe4c2be815c64be3a8bb589506a6e7
2020-02-04 16:55:07 +02:00
Marek Nečada 609b6e6265 Extract and inline translation matrix reordering procedure.
Former-commit-id: 327e1ccf9efc26647896db5bbe1a1a4e4d034d3c
2020-01-23 16:16:41 +02:00