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
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