Commit Graph

783 Commits

Author SHA1 Message Date
Marek Nečada 53764f3dd1 Fix qpms_vswf_set_reindex().
continuous-integration/drone/push Build is passing Details
Stupid typo with possibly serious consequences...
2022-06-23 11:34:15 +03:00
Marek Nečada 2a85b16347 sympy fix deprecated cyclic printing init
continuous-integration/drone/push Build is passing Details
2022-06-21 09:35:36 +03:00
Marek Nečada 260b053102 Fix __version__, pdf annotate function 2022-06-21 08:49:23 +03:00
Marek Nečada 78992188fd Initial version info in the C library
continuous-integration/drone/push Build is failing Details
Cmake modules taken from https://github.com/rpavlik/cmake-modules
see also https://stackoverflow.com/q/1435953
2022-06-21 06:25:22 +03:00
Marek Nečada 3a34effe34 Don't import qpms_p in __init__, remove scipy from install dependencies 2022-06-07 06:10:24 +03:00
Marek Nečada 1aac5de903 Replace scipy.constants with own constants module. 2022-06-07 05:55:36 +03:00
Marek Nečada 87c2fd24fe Use detected libraries in CMakeLists.txt instead of hardcoded ones.
Should fix some issues while building/linking libqpms.so;
still needs to be somehow done in the Python part as well.
2022-06-06 12:07:25 +03:00
Marek Nečada aea0afee15 Fix unitialised diagonal blocks in full modeproblem matrix.
The bug in qpms_scatsysw_build_modeproblem_matrix_full()
via qpms_scatsysw_scatsyswk_build_modeproblem_matrix_full()
affected finite-size arrays: instead of filling the diagonal
interaction blocks with zeros, they were filled with undefined
values from a superfluous zgemm() call.
2021-12-21 11:36:58 +02:00
Kristian Arjas 77a3566aba Fix MaterialInterpolator memory issue 2021-10-27 23:51:54 +03:00
Kristian Arjas 24a6ea01d7 Include vlen in the solver (yet another regression from 087cd1c) 2021-09-21 09:59:26 +03:00
Kristian Arjas 50a5aa11a6 Add residual to solver (fix regression from 087cd1c) 2021-09-15 16:46:13 +03:00
Marek Nečada a5b137847a Custom python T-matrix generators 2021-08-22 09:01:16 +03:00
Marek Nečada 314cde1b99 BaseSpec "constructor" from C pointer. 2021-08-21 19:05:49 +03: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 f19c590d6e Pure BLAS Beyn: cleanup commented out GSL code 2021-06-11 11:11:17 +03:00
Marek Nečada 2be3521333 beyn pure BLAS: fix indices and strides
Also fix amos reference in CMakeLists
2021-06-11 11:11:17 +03:00
Marek Nečada 64f77557a7 [WIP;BROKEN] Getting rid of gsl linear algebra in Beyn.
Segfaults in LAPACKE_zgesdd.


Former-commit-id: 39ce2f70e214bfe2fba6f1ec2960139194dbc761
2021-06-11 11:11:17 +03:00
Marek Nečada 36c5d5236a Fix CQuat.from_rotvector() 2021-02-08 08:47:40 +02:00
Marek Nečada cf2aca7f03 Silent NAN (with warning) instead of crash for singular Bessel at zero 2020-11-17 10:57:16 +02:00
Marek Nečada 3479721455 Workaround for crashing spherical Bessel funcs at large distance.
This leads to loss of precision nevertheless, but it should
not be critical, especially if the main use is in far field patterns.
2020-09-02 12:15:26 +03:00
Marek Nečada ae62cf903d C99 standard compliance for static const initialisers. 2020-07-23 14:18:07 +03:00
Marek Nečada 5246229b2d Code reuse 2020-07-23 10:00:39 +03:00
Marek Nečada 868e603f1c Infinite periodic system scattered field "bases" 2020-07-23 07:23:47 +03:00
Marek Nečada bf297c11c3 Alternative approach in recursive "Delta" to avoid overflows. 2020-07-21 05:07:23 +03:00
Marek Nečada 9e42520371 Docstrings, array dtypes, fix _sswk "constructor" 2020-07-20 12:29:37 +03:00
Marek Nečada a68e1d8f8c Fix Ag Drude-Lorentz parameters also in the Python version. 2020-07-08 19:37:13 +03:00
Kristian Arjas a669e661e3 Fix Drude Parameters 2020-07-08 16:00:33 +03:00
Marek Nečada 38fca209ef Some features to enable ScatteringSystem reconstruction 2020-07-03 23:04:53 +03:00
Marek Nečada 24b5371e18 Remove erroneus "assert" 2020-07-03 20:08:49 +03:00
Marek Nečada 840744ec97 Provide access to more information in ScatteringSystem 2020-07-03 19:11:06 +03:00
Marek Nečada 38a4dbfcd7 Set compiler/linker options to make cython parallelisation actually work. 2020-07-03 15:10:15 +03:00
Marek Nečada 17824b062e Attempt to parallelize scattered_E cython methods. 2020-07-03 14:20:07 +03:00
Marek Nečada 1328077490 Ewald sum optimisation
Avoiding repeated cpow() calls yields more than 5x speedup
in the off-plane case.
2020-07-03 11:46:34 +03:00
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