Commit Graph

87 Commits

Author SHA1 Message Date
Marek Nečada 6820eb3366 extern "C" in headers 2022-03-30 09:47:06 +03:00
Marek Nečada b04a4deebe Replace "complex" with "_Complex" in headers
Needed for compatibility with C++ (in which "complex" is
a template).
2022-03-30 09:06:47 +03:00
Marek Nečada f9081c5922 Remove duplicit function declaration.
qpms_scatsysw_scattered_field_basis()
2022-03-25 16:10:24 +02:00
Marek Nečada fa6d93d3e8 Enable separation of long- and short-range of Ewald sum in python 2021-12-08 14:09:15 +02:00
Marek Nečada 1158e116d2 "Basis fields" for finite systems.
There seem to be race conditions in the prange'd cython parts.
2021-12-08 14:09:15 +02:00
Marek Nečada 414bee6c9f "Basis fields" for finite systems 2021-12-08 14:09:15 +02:00
Marek Nečada 868e603f1c Infinite periodic system scattered field "bases" 2020-07-23 07:23:47 +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 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 8ed4bdb683 Separate Ewald parameter for different frequencies
Former-commit-id: 0b9129fda0224411c2a1d8372fe715db4e071ecd
2020-04-22 16:18:16 +03: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 35ffc61faf Scatsystem scattered E field methods
Former-commit-id: 6521916a81a7c8022bfaefb7102ae657eef99516
2020-03-21 08:11:16 +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 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 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 71852aa017 Fix function name in header.
Former-commit-id: d9171a27990855ba0bdce741929b445b9688b444
2020-01-20 16:29:10 +02:00
Marek Nečada a16cea4dca Set medium generators
Former-commit-id: 4eceb154349587fdb363a3e46073f065aa70fe61
2020-01-16 08:51:05 +02:00
Marek Nečada 355bc52325 Rewrite ScatteringSystem. Compiles, not tested.
Former-commit-id: 513741a41cd9b65348a8e91c367cd105592a0d68
2020-01-15 03:51:35 +02:00
Marek Nečada 8f90842b24 Minor docs update in scatsystem.h
Former-commit-id: 78caf1608c4ade295d47c17c20fb5743396cc8e8
2020-01-14 09:17:13 +02:00
Marek Nečada c86b881088 Forgotten function renames
Former-commit-id: 89fa50cd8cfbdcf055e57f54093464f1e028c5bc
2020-01-10 15:20:10 +02:00
Marek Nečada 5a98b91b3d Rewriting scatsystem: compiles without errors now.
Former-commit-id: cd68b0feaef7181874d94dc535fd2cc9bc89e518
2020-01-10 11:44:15 +02:00
Marek Nečada 541af5a984 WIP Rewriting scatsystem.
Former-commit-id: 17f0f48ab54b84c4701b17846f941dd0142eb668
2020-01-09 16:57:30 +02:00
Marek Nečada 7e57c3cc81 WIP new scatsystem
(keskeytetty n. scatsystem.c:214)


Former-commit-id: 5d205f46f38f7b9e988bd03b8a9bff70b3986808
2020-01-08 16:00:09 +02:00
Marek Nečada d31d8737b8 WIP scatsystem update for "abstract" T-matrices.
Former-commit-id: 7f723a0f459f263e12282edfb1e8deb440650880
2020-01-07 16:57:59 +02:00
Marek Nečada c2b4787cd5 Implementation of qpms_tmatrix_apply_operation().
Former-commit-id: 6773f0e1d02d5f929c2039f99338f08c25d0ccab
2020-01-07 08:14:06 +02:00
Marek Nečada d17a5e5eea WIP data structure redefinitions.
Former-commit-id: 5e2baffb4a47657233e792407630507ba611b129
2019-12-21 11:36:01 +02:00
Marek Nečada d53f2964f0 WIP abstract t-matrices
Former-commit-id: 8c573ac3a62bf92195246d6eb95f95df240c48a1
2019-12-19 13:50:12 +02:00
Marek Nečada a712789386 modeproblem matrix parallel implementation to become default
Former-commit-id: ddf4ab3b83490de67034107b96272d725dde6a89
2019-11-17 09:59:06 +02:00
Marek Nečada c9a5661519 Fix invalid pointer in qpms_apply_tmatrix.
Former-commit-id: ba9400c3e1a39d472cfdebf7e61ab175c5c8fb6e
2019-11-14 13:36:45 +02:00
Marek Nečada 28f4e7f3d2 Complexify wavenumber in (finite) translation operators.
Former-commit-id: f84e1588cdda916d8feda6d807c12bca69512e5f
2019-11-06 18:13:50 +02:00
Marek Nečada 0ffee1a073 Solve scattering problem using LU decomposition.
Former-commit-id: 32388ecc2da5d60a3b3616a765c0ecaed87fb4fd
2019-07-23 15:50:31 +03:00
Marek Nečada 5758c5d587 Reverse modeproblem matrix sign so it applies directly to scattering
Former-commit-id: d05f8207bd86263ecdc93d3838e948c4fe90359a
2019-07-23 08:43:25 +03:00
Marek Nečada e05a79483d Apply T-matrices on incident fields vector.
Former-commit-id: c1cfd5a2c24651f55325d73430387a4e87276d48
2019-07-22 16:56:03 +03:00
Marek Nečada 29a521db81 ss irrep acked translation matrix attempt
Former-commit-id: 2d90bc2a40a7714eb3fa795b9fa9770387373513
2019-07-22 01:08:41 +03:00
Marek Nečada 52039f5cbb ss build translation matrix: enable other Bessel funcs.
Former-commit-id: 66d4993430322b7de00a408406b89972b7dd7c48
2019-07-21 21:14:11 +03:00
Marek Nečada ebefc07e9d Implement plane wave expansion on scatsys; untested.
Former-commit-id: d54d13d1e1994a0b9cba0860e7095063b23ff276
2019-07-15 14:39:08 +03:00
Marek Nečada 7d3c3769ee Prototypes of incident fields to scatsys
Former-commit-id: 067b40fcba12340580acf52c0af7845c462b5a58
2019-07-14 23:00:43 +03:00
Marek Nečada a3f5f98736 Scatsystem E-field evaluation WIP
Former-commit-id: c4a3dd633f316cd3e480112d03e9f5c3de0dc64b
2019-06-24 15:12:06 +03:00
Marek Nečada f9d3d3baa0 Scatsystem field evaluation prototypes
Former-commit-id: 987bc900c8383bcaae4b096ec9164351da54dded
2019-06-24 14:03:45 +03:00
Marek Nečada c29a284bc6 scatsystem field evaluation (WIP)
Former-commit-id: ee0ad31050cf194a0a6e0fcd5a176b568e1d2064
2019-06-23 23:33:08 +03:00
Marek Nečada 77e6e7ce4e scatsystem scattered field evaluation declarations
Former-commit-id: 0e88a9adbde0bcf875a4a7b144d2c85102014957
2019-06-20 07:39:43 +03:00