qupled 1.1.0__tar.gz → 1.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. qupled-1.1.0/.github/workflows/build-and-test-base.yml → qupled-1.3.0/.github/workflows/build-and-test.yml +7 -22
  2. {qupled-1.1.0 → qupled-1.3.0}/.github/workflows/formatting.yml +4 -0
  3. qupled-1.3.0/.github/workflows/release.yml +117 -0
  4. {qupled-1.1.0 → qupled-1.3.0}/.gitignore +2 -1
  5. {qupled-1.1.0 → qupled-1.3.0}/PKG-INFO +4 -1
  6. {qupled-1.1.0 → qupled-1.3.0}/README.md +3 -0
  7. {qupled-1.1.0 → qupled-1.3.0}/dev/requirements-apt.txt +0 -2
  8. {qupled-1.1.0 → qupled-1.3.0}/dev/requirements-brew.txt +0 -2
  9. {qupled-1.1.0 → qupled-1.3.0}/dev/requirements-pip.txt +1 -0
  10. {qupled-1.1.0 → qupled-1.3.0}/docs/introduction.rst +4 -4
  11. {qupled-1.1.0 → qupled-1.3.0}/docs/qupled.rst +12 -24
  12. {qupled-1.1.0 → qupled-1.3.0}/examples/docs/solve_quantum_schemes.py +1 -0
  13. {qupled-1.1.0 → qupled-1.3.0}/examples/readme/create_cover.py +6 -8
  14. {qupled-1.1.0 → qupled-1.3.0}/examples/readme/qupled_animation_dark.svg +932 -915
  15. {qupled-1.1.0 → qupled-1.3.0}/examples/readme/qupled_animation_light.svg +1085 -1063
  16. qupled-1.3.0/examples/tests/test_examples.py +122 -0
  17. qupled-1.3.0/manylinux/Dockerfile.manylinux_2_28 +24 -0
  18. qupled-1.3.0/manylinux/build_manylinux_2_28 +21 -0
  19. {qupled-1.1.0 → qupled-1.3.0}/pyproject.toml +18 -1
  20. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/hf.py +2 -2
  21. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/mpi.py +7 -10
  22. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/esa.hpp +6 -8
  23. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/hf.hpp +18 -13
  24. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/iet.hpp +19 -13
  25. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/input.hpp +18 -53
  26. qupled-1.3.0/src/qupled/native/include/python_interface/inputs.hpp +12 -0
  27. qupled-1.3.0/src/qupled/native/include/python_interface/schemes.hpp +13 -0
  28. qupled-1.3.0/src/qupled/native/include/python_interface/util.hpp +37 -0
  29. qupled-1.3.0/src/qupled/native/include/python_interface/utilities.hpp +13 -0
  30. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/qstls.hpp +12 -51
  31. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/qstlsiet.hpp +21 -53
  32. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/qvsstls.hpp +36 -38
  33. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/rpa.hpp +26 -34
  34. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/stls.hpp +35 -11
  35. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/stlsiet.hpp +21 -18
  36. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/vector2D.hpp +6 -2
  37. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/vector3D.hpp +2 -3
  38. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/vsbase.hpp +37 -26
  39. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/vsstls.hpp +34 -33
  40. qupled-1.3.0/src/qupled/native/src/CMakeLists.txt +91 -0
  41. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/esa.cpp +3 -21
  42. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/hf.cpp +33 -29
  43. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/iet.cpp +46 -15
  44. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/input.cpp +3 -23
  45. qupled-1.3.0/src/qupled/native/src/python_interface/inputs.cpp +240 -0
  46. qupled-1.3.0/src/qupled/native/src/python_interface/native.cpp +43 -0
  47. qupled-1.3.0/src/qupled/native/src/python_interface/schemes.cpp +161 -0
  48. qupled-1.3.0/src/qupled/native/src/python_interface/util.cpp +119 -0
  49. qupled-1.3.0/src/qupled/native/src/python_interface/utilities.cpp +81 -0
  50. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/qstls.cpp +47 -172
  51. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/qstlsiet.cpp +59 -167
  52. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/qvsstls.cpp +45 -113
  53. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/rpa.cpp +22 -55
  54. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/stls.cpp +41 -49
  55. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/stlsiet.cpp +27 -56
  56. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/vector2D.cpp +6 -2
  57. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/vector3D.cpp +0 -8
  58. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/vsbase.cpp +68 -27
  59. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/vsstls.cpp +24 -71
  60. qupled-1.3.0/src/qupled/qstls.py +68 -0
  61. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/qstlsiet.py +8 -13
  62. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/qvsstls.py +1 -15
  63. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/stls.py +9 -9
  64. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/stlsiet.py +39 -0
  65. {qupled-1.1.0 → qupled-1.3.0}/src/qupled.egg-info/PKG-INFO +4 -1
  66. {qupled-1.1.0 → qupled-1.3.0}/src/qupled.egg-info/SOURCES.txt +11 -6
  67. {qupled-1.1.0 → qupled-1.3.0}/tests/native/test_esa_native.py +2 -3
  68. {qupled-1.1.0 → qupled-1.3.0}/tests/native/test_hf_native.py +2 -2
  69. {qupled-1.1.0 → qupled-1.3.0}/tests/native/test_qstls_iet_native.py +11 -2
  70. {qupled-1.1.0 → qupled-1.3.0}/tests/native/test_qstls_native.py +11 -5
  71. {qupled-1.1.0 → qupled-1.3.0}/tests/native/test_qvsstls_native.py +11 -5
  72. {qupled-1.1.0 → qupled-1.3.0}/tests/native/test_rpa_native.py +3 -3
  73. {qupled-1.1.0 → qupled-1.3.0}/tests/native/test_stls_iet_native.py +11 -2
  74. {qupled-1.1.0 → qupled-1.3.0}/tests/native/test_stls_native.py +3 -3
  75. {qupled-1.1.0 → qupled-1.3.0}/tests/native/test_vsstls_native.py +11 -2
  76. {qupled-1.1.0 → qupled-1.3.0}/tests/test_hf.py +1 -1
  77. {qupled-1.1.0 → qupled-1.3.0}/tests/test_mpi.py +7 -7
  78. {qupled-1.1.0 → qupled-1.3.0}/tests/test_qstls.py +1 -54
  79. {qupled-1.1.0 → qupled-1.3.0}/tests/test_qstlsiet.py +4 -13
  80. {qupled-1.1.0 → qupled-1.3.0}/tests/test_qvsstls.py +0 -9
  81. {qupled-1.1.0 → qupled-1.3.0}/tests/test_stls.py +16 -16
  82. qupled-1.3.0/tests/test_stlsiet.py +78 -0
  83. qupled-1.1.0/.github/workflows/build-and-test.yml +0 -13
  84. qupled-1.1.0/.github/workflows/release.yml +0 -45
  85. qupled-1.1.0/examples/tests/test_examples.py +0 -73
  86. qupled-1.1.0/src/qupled/native/include/python_util.hpp +0 -52
  87. qupled-1.1.0/src/qupled/native/include/python_wrappers.hpp +0 -230
  88. qupled-1.1.0/src/qupled/native/src/CMakeLists.txt +0 -88
  89. qupled-1.1.0/src/qupled/native/src/python_modules.cpp +0 -222
  90. qupled-1.1.0/src/qupled/native/src/python_util.cpp +0 -105
  91. qupled-1.1.0/src/qupled/native/src/python_wrappers.cpp +0 -299
  92. qupled-1.1.0/src/qupled/qstls.py +0 -151
  93. qupled-1.1.0/tests/test_stlsiet.py +0 -45
  94. {qupled-1.1.0 → qupled-1.3.0}/.clang-format +0 -0
  95. {qupled-1.1.0 → qupled-1.3.0}/.devcontainer/Dockerfile +0 -0
  96. {qupled-1.1.0 → qupled-1.3.0}/.devcontainer/devcontainer.json +0 -0
  97. {qupled-1.1.0 → qupled-1.3.0}/.readthedocs.yaml +0 -0
  98. {qupled-1.1.0 → qupled-1.3.0}/LICENSE +0 -0
  99. {qupled-1.1.0 → qupled-1.3.0}/MANIFEST.in +0 -0
  100. {qupled-1.1.0 → qupled-1.3.0}/dev/devtool.py +0 -0
  101. {qupled-1.1.0 → qupled-1.3.0}/devtool +0 -0
  102. {qupled-1.1.0 → qupled-1.3.0}/docs/_static/css/rdt_theme_python_properties.css +0 -0
  103. {qupled-1.1.0 → qupled-1.3.0}/docs/conf.py +0 -0
  104. {qupled-1.1.0 → qupled-1.3.0}/docs/contribute.rst +0 -0
  105. {qupled-1.1.0 → qupled-1.3.0}/docs/examples.rst +0 -0
  106. {qupled-1.1.0 → qupled-1.3.0}/docs/index.rst +0 -0
  107. {qupled-1.1.0 → qupled-1.3.0}/docs/make.bat +0 -0
  108. {qupled-1.1.0 → qupled-1.3.0}/docs/requirements.txt +0 -0
  109. {qupled-1.1.0 → qupled-1.3.0}/examples/docs/fixed_adr.py +0 -0
  110. {qupled-1.1.0 → qupled-1.3.0}/examples/docs/initial_guess_stls.py +0 -0
  111. {qupled-1.1.0 → qupled-1.3.0}/examples/docs/solve_qvsstls.py +0 -0
  112. {qupled-1.1.0 → qupled-1.3.0}/examples/docs/solve_rpa_and_esa.py +0 -0
  113. {qupled-1.1.0 → qupled-1.3.0}/examples/docs/solve_stls.py +0 -0
  114. {qupled-1.1.0 → qupled-1.3.0}/examples/docs/solve_stls_iet.py +0 -0
  115. {qupled-1.1.0 → qupled-1.3.0}/examples/docs/solve_vsstls.py +0 -0
  116. {qupled-1.1.0 → qupled-1.3.0}/setup.cfg +0 -0
  117. {qupled-1.1.0 → qupled-1.3.0}/setup.py +0 -0
  118. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/__init__.py +0 -0
  119. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/database.py +0 -0
  120. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/esa.py +0 -0
  121. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/chemical_potential.hpp +0 -0
  122. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/database.hpp +0 -0
  123. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/dual.hpp +0 -0
  124. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/free_energy.hpp +0 -0
  125. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/internal_energy.hpp +0 -0
  126. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/logger.hpp +0 -0
  127. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/mpi_util.hpp +0 -0
  128. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/num_util.hpp +0 -0
  129. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/numerics.hpp +0 -0
  130. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/rdf.hpp +0 -0
  131. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/thermo_util.hpp +0 -0
  132. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/include/vector_util.hpp +0 -0
  133. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/chemical_potential.cpp +0 -0
  134. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/free_energy.cpp +0 -0
  135. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/internal_energy.cpp +0 -0
  136. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/logger.cpp +0 -0
  137. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/mpi_util.cpp +0 -0
  138. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/num_util.cpp +0 -0
  139. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/numerics.cpp +0 -0
  140. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/rdf.cpp +0 -0
  141. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/thermo_util.cpp +0 -0
  142. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/native/src/vector_util.cpp +0 -0
  143. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/output.py +0 -0
  144. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/rpa.py +0 -0
  145. {qupled-1.1.0 → qupled-1.3.0}/src/qupled/vsstls.py +0 -0
  146. {qupled-1.1.0 → qupled-1.3.0}/src/qupled.egg-info/dependency_links.txt +0 -0
  147. {qupled-1.1.0 → qupled-1.3.0}/src/qupled.egg-info/not-zip-safe +0 -0
  148. {qupled-1.1.0 → qupled-1.3.0}/src/qupled.egg-info/requires.txt +0 -0
  149. {qupled-1.1.0 → qupled-1.3.0}/src/qupled.egg-info/top_level.txt +0 -0
  150. {qupled-1.1.0 → qupled-1.3.0}/tests/native/conftest.py +0 -0
  151. {qupled-1.1.0 → qupled-1.3.0}/tests/test_database.py +0 -0
  152. {qupled-1.1.0 → qupled-1.3.0}/tests/test_esa.py +0 -0
  153. {qupled-1.1.0 → qupled-1.3.0}/tests/test_output.py +0 -0
  154. {qupled-1.1.0 → qupled-1.3.0}/tests/test_rpa.py +0 -0
  155. {qupled-1.1.0 → qupled-1.3.0}/tests/test_vsstls.py +0 -0
  156. {qupled-1.1.0 → qupled-1.3.0}/tox.ini +0 -0
@@ -1,15 +1,12 @@
1
1
  name: Build & Test
2
2
 
3
3
  on:
4
- workflow_call:
5
- inputs:
6
- upload-artifact:
7
- required: true
8
- type: string
9
- build-version:
10
- required: false
11
- type: string
12
- default: ""
4
+ push:
5
+ branches:
6
+ - master
7
+ pull_request:
8
+ branches:
9
+ - master
13
10
 
14
11
  env:
15
12
  PYTHON_VENV_ROOT: ${{ github.workspace }}/python-venv
@@ -30,11 +27,6 @@ jobs:
30
27
  ./devtool install-deps
31
28
  python3 -m venv ${PYTHON_VENV_ROOT}
32
29
 
33
- - name: Set build version
34
- if: ${{ inputs.build-version != '' }}
35
- run: |
36
- ./devtool update-version ${{ inputs.build-version }}
37
-
38
30
  - name: Build
39
31
  run: |
40
32
  source ${PYTHON_VENV_ROOT}/bin/activate
@@ -46,11 +38,4 @@ jobs:
46
38
  run: |
47
39
  source ${PYTHON_VENV_ROOT}/bin/activate
48
40
  pip3 install tox
49
- ./devtool test
50
-
51
- - name: Upload artifact
52
- if: ${{ success() && inputs.upload-artifact == 'true' }}
53
- uses: actions/upload-artifact@v4
54
- with:
55
- name: qupled-${{ matrix.os }}
56
- path: dist
41
+ ./devtool test
@@ -2,6 +2,10 @@ name: Code Formatting
2
2
 
3
3
  on:
4
4
  push:
5
+ branches:
6
+ - '**'
7
+ tags-ignore:
8
+ - 'v*'
5
9
  pull_request:
6
10
 
7
11
  jobs:
@@ -0,0 +1,117 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*'
7
+
8
+ jobs:
9
+ build-sdist:
10
+ name: Build source distribution
11
+ runs-on: ubuntu-latest
12
+
13
+ steps:
14
+ - name: Checkout source code
15
+ uses: actions/checkout@v4
16
+
17
+ - name: Set build version
18
+ run: ./devtool update-version ${{ github.ref_name }}
19
+
20
+ - name: Build sdist
21
+ run: |
22
+ python3 -m venv .venv
23
+ source .venv/bin/activate
24
+ pip install build
25
+ python -m build --sdist --outdir dist
26
+
27
+ - name: Upload sdist
28
+ uses: actions/upload-artifact@v4
29
+ with:
30
+ name: sdist
31
+ path: dist/*.tar.gz
32
+
33
+ build-wheels:
34
+ name: Build ${{ matrix.arch }} wheels
35
+ runs-on: ubuntu-latest
36
+ needs: build-sdist
37
+
38
+ strategy:
39
+ matrix:
40
+ arch: [x86_64] # add also aarch64
41
+
42
+ steps:
43
+ - name: Checkout source code
44
+ uses: actions/checkout@v4
45
+
46
+ - name: Set build version
47
+ run: ./devtool update-version ${{ github.ref_name }}
48
+
49
+ - name: Set up QEMU (for aarch64 emulation)
50
+ if: matrix.arch == 'aarch64'
51
+ uses: docker/setup-qemu-action@v3
52
+
53
+ - name: Authenticate with GHCR
54
+ run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
55
+
56
+ - name: Pull correct manylinux image
57
+ run: |
58
+ docker pull --platform linux/${{ matrix.arch }} ghcr.io/fedluc/qupled/qupled_manylinux_${{ matrix.arch }}
59
+
60
+ - name: Build wheels using cibuildwheel
61
+ uses: pypa/cibuildwheel@v2.16.5
62
+ with:
63
+ output-dir: wheelhouse
64
+ env:
65
+ CIBW_PLATFORM: linux
66
+ CIBW_ARCHS: ${{ matrix.arch }}
67
+ CIBW_CONTAINER_PLATFORM: linux/${{ matrix.arch }}
68
+
69
+ - name: Upload built wheels
70
+ uses: actions/upload-artifact@v4
71
+ with:
72
+ name: wheels-${{ matrix.arch }}
73
+ path: wheelhouse/*.whl
74
+
75
+ publish:
76
+ name: Publish to PyPI
77
+ runs-on: ubuntu-latest
78
+ needs: [build-sdist, build-wheels]
79
+
80
+ steps:
81
+ - name: Prepare dist folder
82
+ run: mkdir -p dist
83
+
84
+ - name: Download sdist
85
+ uses: actions/download-artifact@v4
86
+ with:
87
+ name: sdist
88
+ path: temp-sdist
89
+
90
+ - name: Download wheels (x86_64)
91
+ uses: actions/download-artifact@v4
92
+ with:
93
+ name: wheels-x86_64
94
+ path: temp-wheels-x86_64
95
+
96
+ # - name: Download wheels (aarch64)
97
+ # uses: actions/download-artifact@v4
98
+ # with:
99
+ # name: wheels-aarch64
100
+ # path: temp-wheels-aarch64
101
+
102
+ - name: Move all files to dist/
103
+ run: |
104
+ mv temp-sdist/* dist/ || true
105
+ mv temp-wheels-*/* dist/ || true
106
+
107
+ - name: Publish to PyPI
108
+ env:
109
+ TWINE_USERNAME: __token__
110
+ TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
111
+ run: |
112
+ python3 -m venv .venv
113
+ source .venv/bin/activate
114
+ pip3 install --upgrade pip
115
+ pip3 install twine
116
+ twine check dist/*
117
+ twine upload dist/* --non-interactive
@@ -10,4 +10,5 @@ Makefile
10
10
  dist
11
11
  dist-native-only
12
12
  docs/_build
13
- qupled.egg-info
13
+ qupled.egg-info
14
+ wheelhouse
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: qupled
3
- Version: 1.1.0
3
+ Version: 1.3.0
4
4
  Summary: qupled: a package to investigate quantum plasmas via the dielectric formalism
5
5
  Author-email: Federico Lucco Castello <federico.luccocastello@gmail.com>
6
6
  License-Expression: GPL-3.0-or-later
@@ -60,6 +60,9 @@ More detailed information on the package together with a list of examples is ava
60
60
  Qupled has been used in the following publications:
61
61
 
62
62
  <ol>
63
+ <li>
64
+ <a href="https://onlinelibrary.wiley.com/doi/10.1002/ctpp.70014">Tolias, P., Kalkavouras, F., Dornheim, T. &#38; Lucco Castello, F. (2025). Dynamic Properties of the Warm Dense Uniform Electron Gas With the qSTLS Dielectric Scheme. <i>Contributions to Plasma Physics</i>, 0:e70014</a>
65
+ </li>
63
66
  <li>
64
67
  <a href="https://journals.aps.org/prb/abstract/10.1103/PhysRevB.109.125134">Tolias, P., Lucco Castello, F., Kalkavouras, F., &#38; Dornheim, T. (2024). Revisiting the Vashishta-Singwi dielectric scheme for the warm dense uniform electron fluid. <i>Physical Review B</i>, <i>109</i>(12)</a>
65
68
  </li>
@@ -30,6 +30,9 @@ More detailed information on the package together with a list of examples is ava
30
30
  Qupled has been used in the following publications:
31
31
 
32
32
  <ol>
33
+ <li>
34
+ <a href="https://onlinelibrary.wiley.com/doi/10.1002/ctpp.70014">Tolias, P., Kalkavouras, F., Dornheim, T. &#38; Lucco Castello, F. (2025). Dynamic Properties of the Warm Dense Uniform Electron Gas With the qSTLS Dielectric Scheme. <i>Contributions to Plasma Physics</i>, 0:e70014</a>
35
+ </li>
33
36
  <li>
34
37
  <a href="https://journals.aps.org/prb/abstract/10.1103/PhysRevB.109.125134">Tolias, P., Lucco Castello, F., Kalkavouras, F., &#38; Dornheim, T. (2024). Revisiting the Vashishta-Singwi dielectric scheme for the warm dense uniform electron fluid. <i>Physical Review B</i>, <i>109</i>(12)</a>
35
38
  </li>
@@ -1,10 +1,8 @@
1
1
  clang-format
2
2
  cmake
3
- libboost-all-dev
4
3
  libopenmpi-dev
5
4
  libgsl-dev
6
5
  libomp-dev
7
- libfmt-dev
8
6
  python3-dev
9
7
  libsqlite3-dev
10
8
  libsqlitecpp-dev
@@ -3,7 +3,5 @@ brew "cmake"
3
3
  brew "gsl"
4
4
  brew "libomp"
5
5
  brew "open-mpi"
6
- brew "fmt"
7
- brew "boost-python3"
8
6
  brew "sqlite"
9
7
  brew "sqlitecpp"
@@ -1,5 +1,6 @@
1
1
  black
2
2
  build
3
+ cibuildwheel
3
4
  pytest
4
5
  pytest-mock
5
6
  setuptools
@@ -56,13 +56,13 @@ For linux distributions all these dependencies can be installed with
56
56
 
57
57
  .. code-block:: console
58
58
 
59
- sudo apt-get install -y cmake libboost-all-dev libopenmpi-dev libgsl-dev libomp-dev libfmt-dev python3-dev libsqlite3-dev libsqlitecpp-dev
59
+ sudo apt-get install -y cmake libopenmpi-dev libgsl-dev libomp-dev python3-dev libsqlite3-dev libsqlitecpp-dev
60
60
 
61
61
  For macOS they can be installed directly from homebrew
62
62
 
63
63
  .. code-block:: console
64
64
 
65
- brew install cmake gsl libomp openmpi fmt boost-python3 sqlite sqlitecpp
65
+ brew install cmake gsl libomp openmpi sqlite sqlitecpp
66
66
 
67
67
  Install with pip
68
68
  ~~~~~~~~~~~~~~~~
@@ -78,13 +78,13 @@ This will also install all the python packages that are necessary for running th
78
78
  Install from source
79
79
  ~~~~~~~~~~~~~~~~~~~
80
80
 
81
- Qupled and all its python dependencies can also be installed from source by running
81
+ Qupled and all its dependencies can also be installed from source by running
82
82
 
83
83
  .. code-block:: console
84
84
 
85
85
  git clone https://github.com/fedluc/qupled.git
86
86
  cd qupled
87
- pip install -r dev/requirements.txt
87
+ ./devtool install-deps
88
88
  ./devtool build
89
89
  ./devtool test
90
90
  ./devtool install
@@ -56,7 +56,7 @@ After the solution is completed the results are stored in an object :obj:`qupled
56
56
  and written to the output database.
57
57
 
58
58
  .. autoclass:: qupled.rpa.Rpa
59
- :inherited-members:
59
+ :show-inheritance:
60
60
  :members:
61
61
 
62
62
  .. autoclass:: qupled.rpa.Input
@@ -73,7 +73,7 @@ After the solution is completed the results are stored in an object :obj:`qupled
73
73
  and written to the output database.
74
74
 
75
75
  .. autoclass:: qupled.stls.Stls
76
- :inherited-members:
76
+ :show-inheritance:
77
77
  :members:
78
78
 
79
79
  .. autoclass:: qupled.stls.Input
@@ -98,7 +98,7 @@ After the solution is completed the results are stored in an object :obj:`qupled
98
98
  and written to the output database.
99
99
 
100
100
  .. autoclass:: qupled.stlsiet.StlsIet
101
- :inherited-members:
101
+ :show-inheritance:
102
102
  :members:
103
103
 
104
104
  .. autoclass:: qupled.stlsiet.Input
@@ -109,6 +109,10 @@ and written to the output database.
109
109
  :show-inheritance:
110
110
  :members:
111
111
 
112
+ .. autoclass:: qupled.stlsiet.Guess
113
+ :members:
114
+ :exclude-members: to_native
115
+
112
116
  VSStls scheme
113
117
  ~~~~~~~~~~~~~
114
118
 
@@ -119,7 +123,7 @@ After the solution is completed the results are stored in an object :obj:`qupled
119
123
  and written to the output database.
120
124
 
121
125
  .. autoclass:: qupled.vsstls.VSStls
122
- :inherited-members:
126
+ :show-inheritance:
123
127
  :members:
124
128
  :exclude-members: get_free_energy_integrand
125
129
 
@@ -148,7 +152,7 @@ After the solution is completed the results are stored in an object :obj:`qupled
148
152
  and written to the output database.
149
153
 
150
154
  .. autoclass:: qupled.esa.ESA
151
- :inherited-members:
155
+ :show-inheritance:
152
156
  :members:
153
157
 
154
158
  .. autoclass:: qupled.esa.Input
@@ -168,21 +172,13 @@ After the solution is completed the results are stored in an object :obj:`qupled
168
172
  and written to the output database.
169
173
 
170
174
  .. autoclass:: qupled.qstls.Qstls
171
- :inherited-members:
175
+ :show-inheritance:
172
176
  :members:
173
177
  :exclude-members: find_fixed_adr_in_database
174
178
 
175
179
  .. autoclass:: qupled.qstls.Input
176
180
  :show-inheritance:
177
181
  :members:
178
-
179
- .. autoclass:: qupled.qstls.Result
180
- :show-inheritance:
181
- :members:
182
-
183
- .. autoclass:: qupled.qstls.Guess
184
- :members:
185
- :exclude-members: to_native
186
182
 
187
183
  Qstls-IET scheme
188
184
  ~~~~~~~~~~~~~~~~
@@ -195,17 +191,13 @@ After the solution is completed the results are stored in an object :obj:`qupled
195
191
  and written to the output database.
196
192
 
197
193
  .. autoclass:: qupled.qstlsiet.QstlsIet
198
- :inherited-members:
194
+ :show-inheritance:
199
195
  :members:
200
196
  :exclude-members: find_fixed_adr_in_database
201
197
 
202
198
  .. autoclass:: qupled.qstlsiet.Input
203
199
  :show-inheritance:
204
200
  :members:
205
-
206
- .. autoclass:: qupled.qstlsiet.Result
207
- :show-inheritance:
208
- :members:
209
201
 
210
202
  QVSStls scheme
211
203
  ~~~~~~~~~~~~~~~~
@@ -216,17 +208,13 @@ called :obj:`qupled.qvsstls.Input`. After the solution is completed the results
216
208
  object :obj:`qupled.qvsstls.Result` and written to the output database.
217
209
 
218
210
  .. autoclass:: qupled.qvsstls.QVSStls
219
- :inherited-members:
211
+ :show-inheritance:
220
212
  :members:
221
213
  :exclude-members: get_free_energy_integrand
222
214
 
223
215
  .. autoclass:: qupled.qvsstls.Input
224
216
  :show-inheritance:
225
217
  :members:
226
-
227
- .. autoclass:: qupled.qvsstls.Result
228
- :show-inheritance:
229
- :members:
230
218
 
231
219
  Output database
232
220
  ---------------
@@ -12,6 +12,7 @@ inputs.threads = 16
12
12
 
13
13
  # Solve the QSTLS scheme
14
14
  scheme.compute(inputs)
15
+ print(scheme.results.uint)
15
16
 
16
17
  # Define a QstlsIet object to solve the QSTLS-IET scheme
17
18
  scheme = qstlsiet.QstlsIet()
@@ -81,30 +81,28 @@ def create_one_svg_file(darkmode: bool, scheme: qstls.Qstls, error: np.array):
81
81
 
82
82
  def solve_qstls(guess_run_id: int):
83
83
  scheme = qstls.Qstls()
84
- rs = 15.0
85
- theta = 1.0
86
- inputs = qstls.Input(rs, theta)
84
+ inputs = qstls.Input(coupling=15.0, degeneracy=1.0)
87
85
  inputs.mixing = 0.3
88
86
  inputs.resolution = 0.1
89
87
  inputs.cutoff = 10
90
88
  inputs.matsubara = 16
91
89
  inputs.threads = 16
92
90
  inputs.iterations = 0
93
- adr_file = f"adr_fixed_theta{theta:.3f}_matsubara{inputs.matsubara}_QSTLS.bin"
94
91
  inputs.guess = (
95
92
  scheme.get_initial_guess(guess_run_id)
96
93
  if guess_run_id is not None
97
94
  else inputs.guess
98
95
  )
99
- inputs.fixed = adr_file if os.path.exists(adr_file) else inputs.fixed
100
96
  scheme.compute(inputs)
101
97
  return scheme
102
98
 
103
99
 
104
100
  def plot_density_response(plt: plt, scheme: qstls.Qstls, settings: PlotSettings):
105
101
  results = scheme.results
106
- results.idr[results.idr == 0.0] = 1.0
107
- dr = np.divide(results.adr, results.idr)
102
+ inputs = scheme.inputs
103
+ wvg_squared = results.wvg[:, np.newaxis] ** 2
104
+ denominator = wvg_squared + inputs.coupling * (results.idr - results.adr)
105
+ dr = results.idr * wvg_squared / denominator
108
106
  plt.subplot(2, 2, 3)
109
107
  parameters = np.array([0, 1, 2, 3, 4])
110
108
  numParameters = parameters.size
@@ -124,7 +122,7 @@ def plot_density_response(plt: plt, scheme: qstls.Qstls, settings: PlotSettings)
124
122
  plt.xlim(0, settings.xlim)
125
123
  plt.xlabel("Wave-vector", fontsize=settings.labelsz)
126
124
  plt.title("Density response", fontsize=settings.labelsz, fontweight="bold")
127
- plt.legend(fontsize=settings.ticksz, loc="lower right")
125
+ plt.legend(fontsize=settings.ticksz, loc="upper right")
128
126
  plt.xticks(fontsize=settings.ticksz)
129
127
  plt.yticks(fontsize=settings.ticksz)
130
128