Commit Graph

750 Commits

Author SHA1 Message Date
Marek Nečada f7883a713b Docs: Add overview of CLI utilities; optimisation TODO 2020-07-02 22:49:12 +03:00
Marek Nečada 93118cfc07 [cleanup] Great purge of obsolete scripts
Some of the purged scripts might be desirable
to reimplement using the new API, especially
those related to hexagonal lattices.
2020-07-02 22:29:39 +03:00
Marek Nečada 7d92f4990b Cleanup of legacy files. 2020-06-29 09:29:40 +03:00
Marek Nečada e0861a7d40 Doxygen annotations of header files.
Also more politically corrent file name.
2020-06-29 09:14:19 +03:00
Marek Nečada 90458af3be Don't pass XYONLY flag when it's not XYONLY
(Caused assertion failed.)


Former-commit-id: 9765414f6c91b114cd84562d5587e586e1e244b3
2020-06-01 16:37:12 +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 3046f03734 PGen_shifted shifted point metagenerator
Former-commit-id: 031bc6609e5cb316fd036c5e82c89e9c4fe6bf20
2020-05-31 13:30:34 +03:00
Marek Nečada 61a2baecb0 Constant factors in general (off-plane) Ewald 2D-in-3D sum
Former-commit-id: a8224c69682b765a36988ee62e399d97cd979f2c
2020-05-30 22:39:20 +03:00
Marek Nečada 97977dbb46 WIP Ewald 2D in 3D general z != 0 constant factors.
Former-commit-id: 787689f357bd8670948ba8ce7d8dc1205ca77d0f
2020-05-29 15:55:52 +03:00
Marek Nečada 975d23b557 Branch selection for Δ_n in Ewald sum
Former-commit-id: 6c3d6e6aa9010bb66975f65397b8a061fac1b5ef
2020-05-28 13:13:08 +03:00
Marek Nečada c50f40a747 Implementation of the Δ_n factor as a series; error estimates.
The error estimate for the recurrence approach is buggy.


Former-commit-id: f5183eaacf6a592461f07f72e04d346a42f9fca6
2020-05-27 15:52:13 +03:00
Marek Nečada c056099d5a Fix signs in the lattice sum Delta (recurrent formula)
Former-commit-id: 9cb3df31e5a8b6395252454a0b85f6ce3459a781
2020-05-26 20:25:04 +03:00
Marek Nečada 626ffd77cd Wrappers for testing z != 0 lattice sum related special functions.
Former-commit-id: a6be46f81850b1c01c72ea96c141c92a98f6ace8
2020-05-22 15:44:20 +03:00
Marek Nečada 85dbf79caa WIP 2D-in-3D Ewald sum for z != 0
Not tested; error estimates not yet implemented.


Former-commit-id: d6886f64eb8b7e137abf6f187f8cd75f21a5f591
2020-05-19 17:10:00 +03:00
Marek Nečada 932f30e9f9 long double literals instead of doubles
Former-commit-id: 27eb992cbe68aef637a7f71bf2dd0f3431fb1439
2020-05-19 15:52:47 +03:00
Marek Nečada 43c2de4f35 CMakeLists for Faddeeva
Former-commit-id: 26b0e909cc50ca962b83d411f67a98f2a21cf259
2020-05-19 15:52:08 +03:00
Marek Nečada 4bf3bb1bb1 "slice" argument type in argproc.py
Former-commit-id: 35117c0a6c09063c41350bb6bc2e07ef2adf97c0
2020-05-03 21:29:10 +03:00
Marek Nečada 1221012c7b Fix reciprocal basis (transposition) in argproc.py
Former-commit-id: 67df0d195ad0b70b508d1019a7d64c2f37689aeb
2020-04-28 12:58:06 +03:00
Marek Nečada 2f14de7dde Hex example fix K point position; add real freq SVD
Former-commit-id: 5c7c1e2099a649e778beebf9382cd527108db5f4
2020-04-27 16:56:31 +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 999dc7f72e Move MIN,MAX,SQ macros to a common header
Former-commit-id: 5f2598476b090ca3f9254325c1f69315182c8c30
2020-04-26 17:07:59 +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 2460f3b644 ScatteringSystem: docstrings, avoid crash on underflow
Former-commit-id: adb2c2b9ec142b881ac722a4fe8188256e8ce589
2020-04-20 17:31:34 +03:00
Marek Nečada fe55f4b391 More general script for 2D lattice modes.
Former-commit-id: 9b734deabc1b010276fe75e59def698c7eb94b65
2020-04-13 08:25:46 +03:00
Marek Nečada 74f6c489ba Fix invalid pointer in pairwise translation matrix.
This caused errors for multi-particle periodic systems.


Former-commit-id: 82e6630e196a1d2d05218519ac296ff1879fc0df
2020-04-12 19:03:37 +03:00
Marek Nečada 3da6e5cfb2 WIP argproc multiparticle; update misc scripts
Former-commit-id: 50986e9e57873f8aca1ec7a8aafaa659434a839f
2020-04-12 10:56:07 +03:00
Marek Nečada c5c148ca40 Fix eigenvalue matrix dimensions in Beyn.
Former-commit-id: 4d3b5269df29897ac09632bc0278a99dce2507d8
2020-04-12 00:48:13 +03:00
Marek Nečada 63aa338891 Fix syntax error which gcc tolerated
Former-commit-id: 696ccbfad8997a9c8935def2ce4406a21a51dcf8
2020-04-11 10:05:28 +03:00
Marek Nečada 2ccf9e2c5d Dummy CPU number hack for systems without the sysconf option.
Former-commit-id: 5a6b14d97f5a1edfdf1e0e5d058d4f8de794d5fc
2020-04-11 10:01:12 +03:00
Marek Nečada 231a76529d Quit Fortran dependencies, using own f2c'd version of amos.
TODO doc; submodule init needed


Former-commit-id: 761fc06adffebb05d28a389243771f0bdde70cc0
2020-04-10 23:19:18 +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 3458acca16 Infinite rect lattices script multiple freqs etc.
Former-commit-id: 8db37dfaf051abf1d6a542eb6ca9b40317848469
2020-04-05 21:41:15 +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 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 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 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 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 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