Commit Graph

41 Commits

Author SHA1 Message Date
Marek Nečada bf297c11c3 Alternative approach in recursive "Delta" to avoid overflows. 2020-07-21 05:07:23 +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 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 63aa338891 Fix syntax error which gcc tolerated
Former-commit-id: 696ccbfad8997a9c8935def2ce4406a21a51dcf8
2020-04-11 10:05:28 +03: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 4dd3234b0a Remove the branch cut at negative real axis in Ewald sum.
Move the cut to the negative imaginary axis instead.

Also update comments.


Former-commit-id: a70e6a4db0ac33836d672d9ee2356ea19a899a30
2019-10-09 13:20:20 +03: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 2d891be12f ewald.h cleanup
Former-commit-id: c02360cfa9df1dac06897883115cafc98a912107
2019-10-02 20:11:25 +03:00
Marek Nečada c7f2e32ee4 Free unfinished PGens from Ewald sums.
Also replace some bare `if (xxx) abort();` with
`QPMS_ENSURE_SUCCESS(xxx)`.


Former-commit-id: d4712292fe0f9fb397cf3a490131bcb37d542fa6
2019-10-01 11:29:15 +03:00
Marek Nečada ce905eb0a4 Expose my incomplete gamma function in Python.
More sophisticated GSL error handling


Former-commit-id: 4233d01d8aff64b00502c55cb50b54faa5c25ceb
2019-08-20 12:46:28 +03:00
Marek Nečada 02e4e9c308 Some doxygen to ewald.h
Former-commit-id: aa68c91e6e6546b36a73c1c315e074f74905657e
2019-08-19 12:02:22 +03:00
Marek Nečada a20a5ac067 ewald translations legacy code removal
Former-commit-id: da74041f5105d6b3a3f9fe3ddaa7306e973bd440
2019-08-19 10:55:45 +03:00
Marek Nečada 5820de30ef Ewald.h doxygen
Former-commit-id: b89871b97680d5262637e7c1af2186c1d1307a84
2019-08-17 13:31:38 +03:00
Marek Nečada 9bfba7077b Doxygen, TODO list.
Former-commit-id: 72381c6157319efecf6c62f98851df6194e2a972
2019-06-27 16:42:35 +03:00
Marek Nečada 328d22de89 Rename ewald3_constants, move legacy code
Former-commit-id: e83dcfa532f7b8d7345103752aca924a56ad7138
2018-12-21 19:31:45 +00:00
Marek Nečada fd1aed02ca Complex k support for new ewald sums.
Basic tests give good results (only up to rounding error differences
compared to the previous versions), the time increase is almost negligible.


Former-commit-id: 0907517ca94f130a0d8b140ba7b525653e24090f
2018-12-21 19:05:52 +00:00
Marek Nečada d2b34f9407 Some preparation for complex k
Former-commit-id: 62f3bc88de27f43ba82199a2fe221ba60b199e0d
2018-12-21 16:50:53 +02:00
Marek Nečada 8ce2956911 Dudom; towards general 2D ewald sums
Former-commit-id: 3e626dd16692d93f4c958ac129b4d9ec91adc07d
2018-12-10 18:47:27 +02:00
Marek Nečada 0c55595d08 Implement LR part of 1D in 3D Ewald sum along z-axis; compiles, untested
Former-commit-id: 2a9b972dc012401c08758ee768667dfd3a3882c4
2018-11-24 12:51:57 +00:00
Marek Nečada de316bdfb1 Forgotten header file commit.
Former-commit-id: 68c61076080110267e3ee7cd5cfaab68313ccf3f
2018-11-21 19:42:17 +00:00
Marek Nečada 11f380170a Half-implemented the general short-range part of ewald sum in 3D,
unchecked, untested, dudom.


Former-commit-id: b3551114b8c7136e378feb6dc78cb575a5bfc162
2018-11-21 19:49:07 +02:00
Marek Nečada c00855a1e6 dudom
Former-commit-id: 9584e40968c45c3acc25e90b51d28a1bb28b8f0c
2018-11-14 18:36:15 +02:00
Marek Nečada cffe339c5d Working on 1D ewald sums
Former-commit-id: 957a1638d81f80032ee86bfd374004743f230767
2018-11-14 06:37:59 +00:00
Marek Nečada f660107925 Ewald summation – stupid implementation of alternative lattice sums
Former-commit-id: de2830e9e5b65fd679fcf5fd1e8ec3e13dba116a
2018-09-18 10:37:07 +00:00
Marek Nečada 169c091806 Shifted lattices now consistent, TODO check overall shift sign and fix LR declarations
Former-commit-id: ff8a3a0b93447566a605bc7fe6ddbfe34dec3cd2
2018-09-14 21:10:10 +00:00
Marek Nečada 70f1a0a67a Hypergeometric 2F2 for calculating lattice sum errors
Former-commit-id: eac72db084c3b3bd387115255590df4269aca76f
2018-09-11 10:07:37 +03:00
Marek Nečada 1fca413cab Catch underflows; fix some off-by-one errors. Some test values pass now.
Former-commit-id: 3add9f21ad6fee5d443fafc3a6b2c02f2f8b6524
2018-09-07 17:46:07 +00:00
Marek Nečada b707f65d83 Ewald sum first test compiles
Former-commit-id: bb63ffdade407900478c26f2e10bc0ee8efb5154
2018-09-05 18:50:02 +00:00
Marek Nečada e11f995b52 Scalar m,n indexing to allow n = 0.
Former-commit-id: 4b6f2f3611a00e2019b54bfe73c407baafdd8355
2018-09-05 12:39:02 +00:00
Marek Nečada 16ce3a6ba8 Sigma0 ready, it's time for writing some tests.
Former-commit-id: 956254dcd4c337374d945465ff228fc40595fc3e
2018-09-05 11:09:22 +00:00
Marek Nečada 858e997981 Ewald short-range part etc.
Former-commit-id: 181d2da97f80dfcbe942d27819d831895a2df263
2018-09-05 09:07:03 +03:00
Marek Nečada 6c09121a5d SR ewald sum in progress
Former-commit-id: 927486c4e73f5d60dd1f3c94ff5b4878506a5e17
2018-08-27 11:39:29 +00:00
Marek Nečada 7c0f285c23 Jdunakonferenci
Former-commit-id: e734bb63665d03b986a98e45f937979eacab58c4
2018-08-27 10:28:34 +03:00
Marek Nečada 758c37b2b2 Ewald summation LR part, stupid.
Former-commit-id: 9795ad00b41e83c30feb027853a13959d8b506ea
2018-08-27 09:45:11 +03:00
Marek Nečada ee0086ccf5 Ewald sum prototypes
Former-commit-id: 967f344c65508e86373034e2a09932b5e1218d51
2018-08-27 07:50:00 +03:00
Marek Nečada 4e7bc364ac Lattice sum constants fators
Former-commit-id: 0337b5e459ad57ca81c4c903f1bc4446ec7e5566
2018-08-21 15:13:42 +00:00
Marek Nečada f273a46a9a Incomplete gamma functions for complex second arguments (needed in
Ewald summation)


Former-commit-id: 409630d01d58f8f4e69dceb3cd59af22576acc41
2018-08-20 15:25:08 +03:00