virtual-casing 0.2.1__tar.gz → 0.2.2__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 (404) hide show
  1. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/.github/workflows/test.yml +37 -0
  2. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/CMakeLists.txt +3 -1
  3. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/MANIFEST.in +1 -0
  4. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/PKG-INFO +4 -3
  5. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/pyproject.toml +12 -2
  6. virtual_casing-0.2.2/src/__init__.pyi +23 -0
  7. virtual_casing-0.2.2/src/_vc_baseline.pyi +365 -0
  8. virtual_casing-0.2.2/src/py.typed +0 -0
  9. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/.github/workflows/wheel.yml +0 -0
  10. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/.gitignore +0 -0
  11. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/.gitmodules +0 -0
  12. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/LICENSE +0 -0
  13. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/Makefile +0 -0
  14. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/README.md +0 -0
  15. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/cmake/FindFFTW.cmake +0 -0
  16. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/.clang-format +0 -0
  17. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/.gitignore +0 -0
  18. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/.gitmodules +0 -0
  19. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/LICENSE +0 -0
  20. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/Makefile +0 -0
  21. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/README.md +0 -0
  22. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/applications/virtual-casing/BetaScan_run_20.Bxyz.txt +0 -0
  23. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/applications/virtual-casing/Makefile +0 -0
  24. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/applications/virtual-casing/ellipse.coils +0 -0
  25. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/applications/virtual-casing/virtual-casing.cpp +0 -0
  26. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/.clang-format +0 -0
  27. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/.gitattributes +0 -0
  28. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/.github/workflows/build-test.yml +0 -0
  29. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/.github/workflows/codecov.yml +0 -0
  30. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/.gitignore +0 -0
  31. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/.readthedocs.yaml +0 -0
  32. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/LICENSE +0 -0
  33. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/Makefile +0 -0
  34. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/README.md +0 -0
  35. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/Doxyfile +0 -0
  36. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/Makefile +0 -0
  37. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/ackn.rst +0 -0
  38. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/conf.py +0 -0
  39. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/boundary_integral.rst +0 -0
  40. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/boundary_quadrature.rst +0 -0
  41. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/cheb_utils.rst +0 -0
  42. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/comm.rst +0 -0
  43. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/common.rst +0 -0
  44. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/fft_wrapper.rst +0 -0
  45. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/fmm-wrapper.rst +0 -0
  46. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/generic-kernel.rst +0 -0
  47. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/index.rst +0 -0
  48. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/iterator.rst +0 -0
  49. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/kernel_functions.rst +0 -0
  50. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/lagrange-interp.rst +0 -0
  51. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/lin-solve.rst +0 -0
  52. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/mat_utils.rst +0 -0
  53. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/math_utils.rst +0 -0
  54. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/matrix.rst +0 -0
  55. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/mem_mgr.rst +0 -0
  56. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/morton.rst +0 -0
  57. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/ode-solver.rst +0 -0
  58. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/ompUtils.rst +0 -0
  59. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/permutation.rst +0 -0
  60. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/profile.rst +0 -0
  61. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/quadrule.rst +0 -0
  62. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/scratch_pool.rst +0 -0
  63. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/sph_harm.rst +0 -0
  64. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/stacktrace.rst +0 -0
  65. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/static-array.rst +0 -0
  66. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/tensor.rst +0 -0
  67. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/tree.rst +0 -0
  68. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/vec.rst +0 -0
  69. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/vector.rst +0 -0
  70. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/doxygen/vtudata.rst +0 -0
  71. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/index.rst +0 -0
  72. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/requirements.txt +0 -0
  73. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/boundaryintegralop.rst +0 -0
  74. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/comm.rst +0 -0
  75. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/fft.rst +0 -0
  76. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/fmm.rst +0 -0
  77. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/gmres-rsult.txt +0 -0
  78. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/gmres.rst +0 -0
  79. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/index.rst +0 -0
  80. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/interp-quadrule.rst +0 -0
  81. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/kernels.rst +0 -0
  82. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/lagrange-interp.rst +0 -0
  83. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/matrix.rst +0 -0
  84. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/permutation.rst +0 -0
  85. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/profile.rst +0 -0
  86. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/sdc.rst +0 -0
  87. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/tensor.rst +0 -0
  88. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/tree.rst +0 -0
  89. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/vec.rst +0 -0
  90. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/vector.rst +0 -0
  91. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/doc/tutorial/vtudata.rst +0 -0
  92. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/blas.h +0 -0
  93. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/boundary_integral.hpp +0 -0
  94. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/boundary_integral.txx +0 -0
  95. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/boundary_quadrature.hpp +0 -0
  96. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/cheb_utils.hpp +0 -0
  97. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/comm.hpp +0 -0
  98. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/comm.txx +0 -0
  99. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/common.hpp +0 -0
  100. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/experimental/quad_element.cpp +0 -0
  101. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/experimental/quad_element.hpp +0 -0
  102. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/fft_wrapper.hpp +0 -0
  103. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/fft_wrapper.txx +0 -0
  104. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/fmm-wrapper.hpp +0 -0
  105. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/fmm-wrapper.txx +0 -0
  106. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/generic-kernel.hpp +0 -0
  107. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/generic-kernel.txx +0 -0
  108. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/intrin-wrapper.hpp +0 -0
  109. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/iterator.hpp +0 -0
  110. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/iterator.txx +0 -0
  111. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/kernel_functions.hpp +0 -0
  112. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/lagrange-interp.hpp +0 -0
  113. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/lagrange-interp.txx +0 -0
  114. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/lapack.h +0 -0
  115. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/lin-solve.hpp +0 -0
  116. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/lin-solve.txx +0 -0
  117. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/mat_utils.hpp +0 -0
  118. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/mat_utils.txx +0 -0
  119. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/math_utils.hpp +0 -0
  120. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/math_utils.txx +0 -0
  121. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/matrix.hpp +0 -0
  122. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/matrix.txx +0 -0
  123. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/mem_mgr.hpp +0 -0
  124. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/mem_mgr.txx +0 -0
  125. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/morton.hpp +0 -0
  126. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/morton.txx +0 -0
  127. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/ode-solver.hpp +0 -0
  128. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/ode-solver.txx +0 -0
  129. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/ompUtils.hpp +0 -0
  130. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/ompUtils.txx +0 -0
  131. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/permutation.hpp +0 -0
  132. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/permutation.txx +0 -0
  133. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/profile.hpp +0 -0
  134. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/profile.txx +0 -0
  135. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/quadrule.hpp +0 -0
  136. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/quadrule.txx +0 -0
  137. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/scratch_pool.hpp +0 -0
  138. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/scratch_pool.txx +0 -0
  139. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/sph_harm.hpp +0 -0
  140. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/sph_harm.txx +0 -0
  141. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/sse2neon.h +0 -0
  142. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/stacktrace.h +0 -0
  143. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/static-array.hpp +0 -0
  144. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/static-array.txx +0 -0
  145. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/tensor.hpp +0 -0
  146. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/tensor.txx +0 -0
  147. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/tree.hpp +0 -0
  148. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/tree.txx +0 -0
  149. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/vec-test.hpp +0 -0
  150. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/vec.hpp +0 -0
  151. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/vec.txx +0 -0
  152. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/vector.hpp +0 -0
  153. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/vector.txx +0 -0
  154. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/vtudata.hpp +0 -0
  155. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl/vtudata.txx +0 -0
  156. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/include/sctl.hpp +0 -0
  157. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-boundary_integral.cpp +0 -0
  158. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-cheb_utils.cpp +0 -0
  159. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-comm.cpp +0 -0
  160. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-fft-fallback.cpp +0 -0
  161. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-fft.cpp +0 -0
  162. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-fmm.cpp +0 -0
  163. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-generic-kernel.cpp +0 -0
  164. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-gmres.cpp +0 -0
  165. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-intrin-wrapper.cpp +0 -0
  166. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-iterator.cpp +0 -0
  167. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-kernel_functions.cpp +0 -0
  168. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-lagrange-interp.cpp +0 -0
  169. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-linear-solver.cpp +0 -0
  170. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-mat_utils.cpp +0 -0
  171. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-math_utils.cpp +0 -0
  172. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-matrix.cpp +0 -0
  173. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-mem_mgr.cpp +0 -0
  174. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-morton.cpp +0 -0
  175. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-ode-solver.cpp +0 -0
  176. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-ompUtils.cpp +0 -0
  177. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-permutation.cpp +0 -0
  178. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-profile.cpp +0 -0
  179. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-pt-tree.cpp +0 -0
  180. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-quad-elem.cpp +0 -0
  181. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-quadrule.cpp +0 -0
  182. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-scratch-pool-perf.cpp +0 -0
  183. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-scratch-pool.cpp +0 -0
  184. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-sph-harm.cpp +0 -0
  185. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-static-array.cpp +0 -0
  186. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-tensor.cpp +0 -0
  187. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-utils.hpp +0 -0
  188. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-vec.cpp +0 -0
  189. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-vector.cpp +0 -0
  190. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test-vtudata.cpp +0 -0
  191. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/extern/SCTL/src/test.cpp +0 -0
  192. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/geom/LHD-X.mat +0 -0
  193. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/geom/LHD-Y.mat +0 -0
  194. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/geom/LHD-Z.mat +0 -0
  195. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/geom/NCSX +0 -0
  196. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/geom/Quas3-X.mat +0 -0
  197. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/geom/Quas3-Y.mat +0 -0
  198. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/geom/Quas3-Z.mat +0 -0
  199. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/geom/W7X-X.mat +0 -0
  200. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/geom/W7X-Y.mat +0 -0
  201. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/geom/W7X-Z.mat +0 -0
  202. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/bie_solvers.hpp +0 -0
  203. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/bie_solvers.txx +0 -0
  204. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/boundary_integ_op.hpp +0 -0
  205. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/boundary_integ_op.txx +0 -0
  206. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/kernel.hpp +0 -0
  207. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/mat.hpp +0 -0
  208. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/singular_correction.hpp +0 -0
  209. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/surface.hpp +0 -0
  210. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/surface.txx +0 -0
  211. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/surface_op.hpp +0 -0
  212. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/surface_op.txx +0 -0
  213. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/vacuum-field.hpp +0 -0
  214. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest/vacuum-field.txx +0 -0
  215. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/include/biest.hpp +0 -0
  216. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/double-layer-convergence.cpp +0 -0
  217. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/example1.cpp +0 -0
  218. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/force-free-fields-example.cpp +0 -0
  219. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/quadrature-example.cpp +0 -0
  220. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/table1.cpp +0 -0
  221. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/table3.cpp +0 -0
  222. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/table4.cpp +0 -0
  223. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/table5.cpp +0 -0
  224. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/table6.cpp +0 -0
  225. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/table7.cpp +0 -0
  226. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/BIEST/src/virtual-casing-principle.cpp +0 -0
  227. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/.clang-format +0 -0
  228. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/.gitattributes +0 -0
  229. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/.github/workflows/build-test.yml +0 -0
  230. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/.github/workflows/codecov.yml +0 -0
  231. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/.gitignore +0 -0
  232. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/.readthedocs.yaml +0 -0
  233. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/LICENSE +0 -0
  234. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/Makefile +0 -0
  235. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/README.md +0 -0
  236. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/Doxyfile +0 -0
  237. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/Makefile +0 -0
  238. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/ackn.rst +0 -0
  239. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/conf.py +0 -0
  240. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/boundary_integral.rst +0 -0
  241. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/boundary_quadrature.rst +0 -0
  242. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/cheb_utils.rst +0 -0
  243. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/comm.rst +0 -0
  244. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/common.rst +0 -0
  245. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/fft_wrapper.rst +0 -0
  246. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/fmm-wrapper.rst +0 -0
  247. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/generic-kernel.rst +0 -0
  248. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/index.rst +0 -0
  249. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/iterator.rst +0 -0
  250. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/kernel_functions.rst +0 -0
  251. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/lagrange-interp.rst +0 -0
  252. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/lin-solve.rst +0 -0
  253. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/mat_utils.rst +0 -0
  254. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/math_utils.rst +0 -0
  255. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/matrix.rst +0 -0
  256. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/mem_mgr.rst +0 -0
  257. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/morton.rst +0 -0
  258. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/ode-solver.rst +0 -0
  259. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/ompUtils.rst +0 -0
  260. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/permutation.rst +0 -0
  261. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/profile.rst +0 -0
  262. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/quadrule.rst +0 -0
  263. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/scratch_pool.rst +0 -0
  264. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/sph_harm.rst +0 -0
  265. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/stacktrace.rst +0 -0
  266. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/static-array.rst +0 -0
  267. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/tensor.rst +0 -0
  268. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/tree.rst +0 -0
  269. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/vec.rst +0 -0
  270. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/vector.rst +0 -0
  271. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/doxygen/vtudata.rst +0 -0
  272. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/index.rst +0 -0
  273. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/requirements.txt +0 -0
  274. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/boundaryintegralop.rst +0 -0
  275. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/comm.rst +0 -0
  276. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/fft.rst +0 -0
  277. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/fmm.rst +0 -0
  278. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/gmres-rsult.txt +0 -0
  279. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/gmres.rst +0 -0
  280. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/index.rst +0 -0
  281. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/interp-quadrule.rst +0 -0
  282. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/kernels.rst +0 -0
  283. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/lagrange-interp.rst +0 -0
  284. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/matrix.rst +0 -0
  285. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/permutation.rst +0 -0
  286. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/profile.rst +0 -0
  287. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/sdc.rst +0 -0
  288. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/tensor.rst +0 -0
  289. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/tree.rst +0 -0
  290. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/vec.rst +0 -0
  291. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/vector.rst +0 -0
  292. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/doc/tutorial/vtudata.rst +0 -0
  293. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/blas.h +0 -0
  294. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/boundary_integral.hpp +0 -0
  295. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/boundary_integral.txx +0 -0
  296. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/boundary_quadrature.hpp +0 -0
  297. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/cheb_utils.hpp +0 -0
  298. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/comm.hpp +0 -0
  299. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/comm.txx +0 -0
  300. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/common.hpp +0 -0
  301. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/experimental/quad_element.cpp +0 -0
  302. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/experimental/quad_element.hpp +0 -0
  303. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/fft_wrapper.hpp +0 -0
  304. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/fft_wrapper.txx +0 -0
  305. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/fmm-wrapper.hpp +0 -0
  306. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/fmm-wrapper.txx +0 -0
  307. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/generic-kernel.hpp +0 -0
  308. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/generic-kernel.txx +0 -0
  309. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/intrin-wrapper.hpp +0 -0
  310. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/iterator.hpp +0 -0
  311. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/iterator.txx +0 -0
  312. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/kernel_functions.hpp +0 -0
  313. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/lagrange-interp.hpp +0 -0
  314. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/lagrange-interp.txx +0 -0
  315. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/lapack.h +0 -0
  316. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/lin-solve.hpp +0 -0
  317. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/lin-solve.txx +0 -0
  318. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/mat_utils.hpp +0 -0
  319. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/mat_utils.txx +0 -0
  320. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/math_utils.hpp +0 -0
  321. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/math_utils.txx +0 -0
  322. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/matrix.hpp +0 -0
  323. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/matrix.txx +0 -0
  324. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/mem_mgr.hpp +0 -0
  325. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/mem_mgr.txx +0 -0
  326. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/morton.hpp +0 -0
  327. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/morton.txx +0 -0
  328. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/ode-solver.hpp +0 -0
  329. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/ode-solver.txx +0 -0
  330. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/ompUtils.hpp +0 -0
  331. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/ompUtils.txx +0 -0
  332. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/permutation.hpp +0 -0
  333. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/permutation.txx +0 -0
  334. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/profile.hpp +0 -0
  335. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/profile.txx +0 -0
  336. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/quadrule.hpp +0 -0
  337. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/quadrule.txx +0 -0
  338. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/scratch_pool.hpp +0 -0
  339. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/scratch_pool.txx +0 -0
  340. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/sph_harm.hpp +0 -0
  341. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/sph_harm.txx +0 -0
  342. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/sse2neon.h +0 -0
  343. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/stacktrace.h +0 -0
  344. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/static-array.hpp +0 -0
  345. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/static-array.txx +0 -0
  346. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/tensor.hpp +0 -0
  347. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/tensor.txx +0 -0
  348. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/tree.hpp +0 -0
  349. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/tree.txx +0 -0
  350. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/vec-test.hpp +0 -0
  351. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/vec.hpp +0 -0
  352. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/vec.txx +0 -0
  353. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/vector.hpp +0 -0
  354. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/vector.txx +0 -0
  355. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/vtudata.hpp +0 -0
  356. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl/vtudata.txx +0 -0
  357. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/include/sctl.hpp +0 -0
  358. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-boundary_integral.cpp +0 -0
  359. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-cheb_utils.cpp +0 -0
  360. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-comm.cpp +0 -0
  361. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-fft-fallback.cpp +0 -0
  362. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-fft.cpp +0 -0
  363. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-fmm.cpp +0 -0
  364. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-generic-kernel.cpp +0 -0
  365. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-gmres.cpp +0 -0
  366. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-intrin-wrapper.cpp +0 -0
  367. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-iterator.cpp +0 -0
  368. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-kernel_functions.cpp +0 -0
  369. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-lagrange-interp.cpp +0 -0
  370. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-linear-solver.cpp +0 -0
  371. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-mat_utils.cpp +0 -0
  372. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-math_utils.cpp +0 -0
  373. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-matrix.cpp +0 -0
  374. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-mem_mgr.cpp +0 -0
  375. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-morton.cpp +0 -0
  376. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-ode-solver.cpp +0 -0
  377. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-ompUtils.cpp +0 -0
  378. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-permutation.cpp +0 -0
  379. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-profile.cpp +0 -0
  380. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-pt-tree.cpp +0 -0
  381. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-quad-elem.cpp +0 -0
  382. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-quadrule.cpp +0 -0
  383. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-scratch-pool-perf.cpp +0 -0
  384. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-scratch-pool.cpp +0 -0
  385. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-sph-harm.cpp +0 -0
  386. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-static-array.cpp +0 -0
  387. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-tensor.cpp +0 -0
  388. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-utils.hpp +0 -0
  389. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-vec.cpp +0 -0
  390. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-vector.cpp +0 -0
  391. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test-vtudata.cpp +0 -0
  392. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/extern/SCTL/src/test.cpp +0 -0
  393. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/include/virtual-casing.h +0 -0
  394. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/include/virtual-casing.hpp +0 -0
  395. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/include/virtual-casing.txx +0 -0
  396. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/src/__init__.py +0 -0
  397. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/src/cpu_features.cpp +0 -0
  398. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/src/python.cpp +0 -0
  399. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/src/virtual-casing.cpp +0 -0
  400. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/test/axisymm.cpp +0 -0
  401. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/test/check_isa.py +0 -0
  402. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/test/test.py +0 -0
  403. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/test/virtual-casing-c.c +0 -0
  404. {virtual_casing-0.2.1 → virtual_casing-0.2.2}/test/virtual-casing.cpp +0 -0
@@ -104,3 +104,40 @@ jobs:
104
104
  - name: Run the C API test
105
105
  run: ./bin/virtual-casing-c
106
106
 
107
+
108
+ # A stale .pyi is worse than none: type checkers report errors that are not
109
+ # real. Regenerate and fail if it differs from what is committed.
110
+ stubs:
111
+ runs-on: ubuntu-latest
112
+
113
+ steps:
114
+ - uses: actions/checkout@v7
115
+ with:
116
+ submodules: recursive
117
+ fetch-depth: 0 # setuptools_scm needs the tags
118
+
119
+ - name: apt-get stuff needed for compiling
120
+ run: |
121
+ sudo apt-get update
122
+ sudo apt-get install -y build-essential libfftw3-dev liblapack-dev libopenblas-dev
123
+
124
+ - uses: actions/setup-python@v7
125
+ with:
126
+ python-version: '3.11'
127
+
128
+ - name: Install package and stubgen
129
+ run: python -m pip install . "pybind11-stubgen>=2.5" mypy
130
+
131
+ - name: Regenerate stubs and compare
132
+ run: |
133
+ # force the variant being introspected: importing two of them into one
134
+ # process fails, since they register the same pybind11 types
135
+ VIRTUAL_CASING_ISA=baseline pybind11-stubgen virtual_casing._vc_baseline -o regenerated
136
+ # stubgen leaves trailing whitespace in docstrings; the committed copy has
137
+ # it stripped, so normalise before comparing
138
+ sed -i 's/[[:space:]]*$//' regenerated/virtual_casing/_vc_baseline.pyi
139
+ diff -u src/_vc_baseline.pyi regenerated/virtual_casing/_vc_baseline.pyi \
140
+ || { echo "::error::src/_vc_baseline.pyi is stale; regenerate it, strip trailing whitespace, and commit"; exit 1; }
141
+
142
+ - name: Type-check the stubs themselves
143
+ run: python -m mypy --strict src/__init__.pyi src/_vc_baseline.pyi
@@ -120,7 +120,9 @@ if (SKBUILD)
120
120
 
121
121
  pybind11_add_module(_cpu src/cpu_features.cpp) # baseline: must run anywhere
122
122
  install(TARGETS _cpu LIBRARY DESTINATION ${PROJECT_NAME})
123
- install(FILES src/__init__.py DESTINATION ${PROJECT_NAME})
123
+ # py.typed opts the package in to PEP 561; without it the stubs are ignored
124
+ install(FILES src/__init__.py src/__init__.pyi src/_vc_baseline.pyi src/py.typed
125
+ DESTINATION ${PROJECT_NAME})
124
126
  endif()
125
127
 
126
128
  add_executable(vc_testing EXCLUDE_FROM_ALL test/virtual-casing.cpp)
@@ -1,4 +1,5 @@
1
1
  include src/python.cpp src/cpu_features.cpp src/__init__.py
2
+ include src/__init__.pyi src/_vc_baseline.pyi src/py.typed
2
3
  include test/virtual-casing.cpp
3
4
  include LICENSE README.md
4
5
  graft include
@@ -1,10 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: virtual_casing
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: Python Wrapper for Virtual Casing
5
- Author: Dhairya Malhotra, Manas Rachh
5
+ Author: Dhairya Malhotra, Matt Landreman, Chris Smiet, Manas Rachh, Antoine Cerfon, Misha Padidar
6
6
  Author-Email: Bharat Medasani <mbkumar@gmail.com>
7
- License-Expression: MIT
7
+ Maintainer: Dhairya Malhotra, Bharat Medasani, Matt Landreman, Chris Smiet
8
+ License-Expression: Apache-2.0
8
9
  License-File: LICENSE
9
10
  Classifier: Programming Language :: Python :: 3
10
11
  Classifier: Programming Language :: Python :: 3.10
@@ -7,13 +7,23 @@ name = "virtual_casing"
7
7
  # version = "0.1.3"
8
8
  description = "Python Wrapper for Virtual Casing"
9
9
  readme = "README.md"
10
- license = "MIT"
10
+ license = "Apache-2.0"
11
11
  license-files = ["LICENSE"]
12
12
  dynamic = ["version"]
13
13
  authors = [
14
14
  {name = "Dhairya Malhotra"},
15
+ {name = "Bharat Medasani", email = "mbkumar@gmail.com"},
16
+ {name = "Matt Landreman"},
17
+ {name = "Chris Smiet"},
15
18
  {name = "Manas Rachh"},
16
- {name = "Bharat Medasani", email = "mbkumar@gmail.com"}
19
+ {name = "Antoine Cerfon"},
20
+ {name = "Misha Padidar"},
21
+ ]
22
+ maintainers = [
23
+ {name = "Dhairya Malhotra"},
24
+ {name = "Bharat Medasani"},
25
+ {name = "Matt Landreman"},
26
+ {name = "Chris Smiet"},
17
27
  ]
18
28
  requires-python = ">=3.10"
19
29
  classifiers = [
@@ -0,0 +1,23 @@
1
+ """Public API of the package.
2
+
3
+ __init__.py re-exports one instruction-set variant chosen at import time, which
4
+ static analysis cannot follow, so the surface is declared here instead. The
5
+ variants are identical apart from the instructions they are compiled to, and
6
+ _vc_baseline is built on every platform, so it stands in for all of them.
7
+ """
8
+
9
+ from virtual_casing._vc_baseline import SCTLDoubleVector as SCTLDoubleVector
10
+ from virtual_casing._vc_baseline import SCTLIntVector as SCTLIntVector
11
+ from virtual_casing._vc_baseline import SurfType as SurfType
12
+ from virtual_casing._vc_baseline import VirtualCasing as VirtualCasing
13
+ from virtual_casing._vc_baseline import VirtualCasingTestData as VirtualCasingTestData
14
+
15
+ __isa__: str
16
+
17
+ __all__: list[str] = [
18
+ "SCTLDoubleVector",
19
+ "SCTLIntVector",
20
+ "SurfType",
21
+ "VirtualCasing",
22
+ "VirtualCasingTestData",
23
+ ]
@@ -0,0 +1,365 @@
1
+ """
2
+ Virtual casing principle for magnetic field computation.
3
+ """
4
+ from __future__ import annotations
5
+ import collections.abc
6
+ import typing
7
+ __all__: list[str] = ['SCTLDoubleVector', 'SCTLIntVector', 'SurfType', 'VirtualCasing', 'VirtualCasingTestData']
8
+ class SCTLDoubleVector:
9
+ @typing.overload
10
+ def __init__(self) -> None:
11
+ ...
12
+ @typing.overload
13
+ def __init__(self, data: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex]) -> None:
14
+ ...
15
+ class SCTLIntVector:
16
+ @typing.overload
17
+ def __init__(self) -> None:
18
+ ...
19
+ @typing.overload
20
+ def __init__(self, data: collections.abc.Sequence[typing.SupportsInt | typing.SupportsIndex]) -> None:
21
+ ...
22
+ class SurfType:
23
+ """
24
+ Prebuilt surface geometry types for testing.
25
+
26
+ Members:
27
+
28
+ AxisymCircleWide
29
+
30
+ AxisymCircleNarrow
31
+
32
+ AxisymWide
33
+
34
+ AxisymNarrow
35
+
36
+ RotatingEllipseWide
37
+
38
+ RotatingEllipseNarrow
39
+
40
+ Quas3
41
+
42
+ LHD
43
+
44
+ W7X
45
+
46
+ Stell
47
+
48
+ W7X_
49
+ """
50
+ AxisymCircleNarrow: typing.ClassVar[SurfType] # value = <SurfType.AxisymCircleNarrow: 1>
51
+ AxisymCircleWide: typing.ClassVar[SurfType] # value = <SurfType.AxisymCircleWide: 0>
52
+ AxisymNarrow: typing.ClassVar[SurfType] # value = <SurfType.AxisymNarrow: 3>
53
+ AxisymWide: typing.ClassVar[SurfType] # value = <SurfType.AxisymWide: 2>
54
+ LHD: typing.ClassVar[SurfType] # value = <SurfType.LHD: 7>
55
+ Quas3: typing.ClassVar[SurfType] # value = <SurfType.Quas3: 6>
56
+ RotatingEllipseNarrow: typing.ClassVar[SurfType] # value = <SurfType.RotatingEllipseNarrow: 5>
57
+ RotatingEllipseWide: typing.ClassVar[SurfType] # value = <SurfType.RotatingEllipseWide: 4>
58
+ Stell: typing.ClassVar[SurfType] # value = <SurfType.Stell: 9>
59
+ W7X: typing.ClassVar[SurfType] # value = <SurfType.W7X: 8>
60
+ W7X_: typing.ClassVar[SurfType] # value = <SurfType.W7X_: 10>
61
+ __members__: typing.ClassVar[dict[str, SurfType]] # value = {'AxisymCircleWide': <SurfType.AxisymCircleWide: 0>, 'AxisymCircleNarrow': <SurfType.AxisymCircleNarrow: 1>, 'AxisymWide': <SurfType.AxisymWide: 2>, 'AxisymNarrow': <SurfType.AxisymNarrow: 3>, 'RotatingEllipseWide': <SurfType.RotatingEllipseWide: 4>, 'RotatingEllipseNarrow': <SurfType.RotatingEllipseNarrow: 5>, 'Quas3': <SurfType.Quas3: 6>, 'LHD': <SurfType.LHD: 7>, 'W7X': <SurfType.W7X: 8>, 'Stell': <SurfType.Stell: 9>, 'W7X_': <SurfType.W7X_: 10>}
62
+ @typing.overload
63
+ def __eq__(self, other: SurfType) -> bool:
64
+ ...
65
+ @typing.overload
66
+ def __eq__(self, other: typing.Any) -> bool:
67
+ ...
68
+ def __getstate__(self) -> int:
69
+ ...
70
+ def __hash__(self) -> int:
71
+ ...
72
+ def __index__(self) -> int:
73
+ ...
74
+ def __init__(self, value: typing.SupportsInt | typing.SupportsIndex) -> None:
75
+ ...
76
+ def __int__(self) -> int:
77
+ ...
78
+ @typing.overload
79
+ def __ne__(self, other: SurfType) -> bool:
80
+ ...
81
+ @typing.overload
82
+ def __ne__(self, other: typing.Any) -> bool:
83
+ ...
84
+ def __repr__(self) -> str:
85
+ ...
86
+ def __setstate__(self, state: typing.SupportsInt | typing.SupportsIndex) -> None:
87
+ ...
88
+ def __str__(self) -> str:
89
+ ...
90
+ @property
91
+ def name(self) -> str:
92
+ ...
93
+ @property
94
+ def value(self) -> int:
95
+ ...
96
+ class VirtualCasing:
97
+ """
98
+ Compute the external or internal magnetic field using the virtual casing principle.
99
+ """
100
+ def __init__(self) -> None:
101
+ ...
102
+ def compute_external_B(self, B_total: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex]) -> list[float]:
103
+ """
104
+ Compute the magnetic field due to currents external to the surface.
105
+
106
+ Recover the Bext component from the total field B = Bext + Bint:
107
+ Bext = B/2 + gradG[B . n] + BiotSavart[n x B]
108
+
109
+ Here, Bext is the magnetic field due to currents in the exterior of the
110
+ surface, and Bint is the magnetic field due to currents in the interior.
111
+
112
+ Parameters
113
+ ----------
114
+ B : list of float
115
+ The total magnetic field on the surface due to all currents.
116
+ B = {Bx11, Bx12, ..., Bx1Np, Bx21, Bx22, ..., BxNtNp, By11, ..., Bz11, ...},
117
+ where Nt and Np are the number of discretizations in toroidal and
118
+ poloidal directions.
119
+
120
+ Returns
121
+ -------
122
+ list of float
123
+ The component of magnetic field on the surface due to currents in
124
+ the exterior of the surface.
125
+ """
126
+ def compute_external_B_offsurf(self, B_total: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex], Xt: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex], max_Nt: typing.SupportsInt | typing.SupportsIndex = -1, max_Np: typing.SupportsInt | typing.SupportsIndex = -1) -> list[float]:
127
+ """
128
+ Compute the magnetic field due to currents external to the surface at off-surface points.
129
+
130
+ Recover the Bext component from the total field B = Bext + Bint:
131
+ Bext = gradG[B . n] + BiotSavart[n x B]
132
+
133
+ Parameters
134
+ ----------
135
+ B : list of float
136
+ The total magnetic field on the surface due to all currents.
137
+ B = {Bx11, Bx12, ..., Bx1Np, Bx21, Bx22, ..., BxNtNp, By11, ..., Bz11, ...}.
138
+ Xt : list of float
139
+ The coordinates for off-surface evaluation points in the order
140
+ {x1, x2, ..., xn, y1, ..., z1, ..., zn}.
141
+ max_Nt : int, optional
142
+ Restrict upsampling to max_Nt modes (in a field-period) in toroidal
143
+ direction. Default is -1 (no restriction).
144
+ max_Np : int, optional
145
+ Restrict upsampling to max_Np modes in poloidal direction.
146
+ Default is -1 (no restriction).
147
+
148
+ Returns
149
+ -------
150
+ list of float
151
+ The component of magnetic field at the evaluation points due to
152
+ currents in the exterior of the surface.
153
+ """
154
+ def compute_external_gradB(self, B_total: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex]) -> list[float]:
155
+ """
156
+ Compute the gradient of the magnetic field due to currents external to the surface.
157
+
158
+ Recover GradBext from the total field B = Bext + Bint using the
159
+ virtual casing principle.
160
+
161
+ Parameters
162
+ ----------
163
+ B : list of float
164
+ The total magnetic field on the surface due to all currents.
165
+ B = {Bx11, Bx12, ..., Bx1Np, Bx21, Bx22, ..., BxNtNp, By11, ..., Bz11, ...}.
166
+
167
+ Returns
168
+ -------
169
+ list of float
170
+ The gradient of the magnetic field component on the surface due to
171
+ currents in the exterior of the surface.
172
+ """
173
+ def compute_internal_B(self, B_total: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex]) -> list[float]:
174
+ """
175
+ Compute the magnetic field due to currents internal to the surface.
176
+
177
+ Recover the Bint component from the total field B = Bext + Bint:
178
+ Bint = B/2 - gradG[B . n] - BiotSavart[n x B]
179
+
180
+ Here, Bext is the magnetic field due to currents in the exterior of the
181
+ surface, and Bint is the magnetic field due to currents in the interior.
182
+
183
+ Parameters
184
+ ----------
185
+ B : list of float
186
+ The total magnetic field on the surface due to all currents.
187
+ B = {Bx11, Bx12, ..., Bx1Np, Bx21, Bx22, ..., BxNtNp, By11, ..., Bz11, ...}.
188
+
189
+ Returns
190
+ -------
191
+ list of float
192
+ The component of magnetic field on the surface due to currents in
193
+ the interior of the surface.
194
+ """
195
+ def compute_internal_B_offsurf(self, B_total: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex], Xt: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex], max_Nt: typing.SupportsInt | typing.SupportsIndex = -1, max_Np: typing.SupportsInt | typing.SupportsIndex = -1) -> list[float]:
196
+ """
197
+ Compute the magnetic field due to currents internal to the surface at off-surface points.
198
+
199
+ Recover the Bint component from the total field B = Bext + Bint.
200
+
201
+ Parameters
202
+ ----------
203
+ B : list of float
204
+ The total magnetic field on the surface due to all currents.
205
+ B = {Bx11, Bx12, ..., Bx1Np, Bx21, Bx22, ..., BxNtNp, By11, ..., Bz11, ...}.
206
+ Xt : list of float
207
+ The coordinates for off-surface evaluation points in the order
208
+ {x1, x2, ..., xn, y1, ..., z1, ..., zn}.
209
+ max_Nt : int, optional
210
+ Restrict upsampling to max_Nt modes (in a field-period) in toroidal
211
+ direction. Default is -1 (no restriction).
212
+ max_Np : int, optional
213
+ Restrict upsampling to max_Np modes in poloidal direction.
214
+ Default is -1 (no restriction).
215
+
216
+ Returns
217
+ -------
218
+ list of float
219
+ The component of magnetic field at the evaluation points due to
220
+ currents in the interior of the surface.
221
+ """
222
+ def setup(self, digits: typing.SupportsInt | typing.SupportsIndex, NFP: typing.SupportsInt | typing.SupportsIndex, half_period: bool, Nt: typing.SupportsInt | typing.SupportsIndex, Np: typing.SupportsInt | typing.SupportsIndex, X: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex], src_Nt: typing.SupportsInt | typing.SupportsIndex, src_Np: typing.SupportsInt | typing.SupportsIndex, trg_Nt: typing.SupportsInt | typing.SupportsIndex = -1, trg_Np: typing.SupportsInt | typing.SupportsIndex = -1) -> None:
223
+ """
224
+ Setup the VirtualCasing object.
225
+
226
+ Parameters
227
+ ----------
228
+ digits : int
229
+ Number of decimal digits of accuracy.
230
+ NFP : int
231
+ Number of toroidal field periods. The surface as well as the
232
+ magnetic field must have this toroidal periodic symmetry.
233
+ half_period : bool
234
+ Whether the surface and data are defined on half field period.
235
+ Nt : int
236
+ Surface discretization order in toroidal direction (in one field period).
237
+ Np : int
238
+ Surface discretization order in poloidal direction.
239
+ X : list of float
240
+ The surface coordinates in the order {x11, x12, ..., x1Np,
241
+ x21, x22, ..., xNtNp, y11, ..., z11, ...}.
242
+ src_Nt : int
243
+ Input B-field discretization order in toroidal direction (in one field period).
244
+ src_Np : int
245
+ Input B-field discretization order in poloidal direction.
246
+ trg_Nt : int, optional
247
+ Output Bext-field discretization order in toroidal direction
248
+ (in one field period). Default is -1 (same as src_Nt).
249
+ trg_Np : int, optional
250
+ Output Bext-field discretization order in poloidal direction.
251
+ Default is -1 (same as src_Np).
252
+
253
+ Notes
254
+ -----
255
+ The grids for input and output data differ depending on whether
256
+ stellarator symmetry is exploited (half_period). For this discussion,
257
+ consider the toroidal angle phi and poloidal angle theta to have
258
+ period 1 (not 2*pi).
259
+
260
+ If half_period is False, the grids in toroidal angles begin at phi=0.
261
+ The grid spacing is 1/(NFP*Nt), with no point at phi = 1/NFP.
262
+
263
+ If half_period is True, the toroidal grids are shifted by half a grid
264
+ point, so there is no grid point at phi=0. The phi grid for the surface
265
+ has points at 0.5/(NFP*Nt), 1.5/(NFP*Nt), ..., (Nt-0.5)/(NFP*Nt).
266
+
267
+ The poloidal grid always ranges uniformly over [0, 1), with the first
268
+ grid point at theta=0 and no grid point at theta=1.
269
+
270
+ The resolution parameters for the surface shape (Nt, Np), input magnetic
271
+ field (src_Nt, src_Np), and output external field (trg_Nt, trg_Np) do
272
+ not need to be related to each other in any particular way.
273
+ """
274
+ class VirtualCasingTestData:
275
+ """
276
+ Generate test data for class VirtualCasing.
277
+ """
278
+ @staticmethod
279
+ def magnetic_field_data(NFP: typing.SupportsInt | typing.SupportsIndex, half_period: bool, Nt: typing.SupportsInt | typing.SupportsIndex, Np: typing.SupportsInt | typing.SupportsIndex, X: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex], trg_Nt: typing.SupportsInt | typing.SupportsIndex, trg_Np: typing.SupportsInt | typing.SupportsIndex) -> tuple[list[float], list[float]]:
280
+ """
281
+ Generate B field data for testing with class VirtualCasing.
282
+
283
+ Parameters
284
+ ----------
285
+ NFP : int
286
+ Number of toroidal field periods.
287
+ half_period : bool
288
+ Whether the result should be on half field period.
289
+ Nt : int
290
+ Surface discretization order in toroidal direction (in one field period).
291
+ Np : int
292
+ Surface discretization order in poloidal direction.
293
+ X : list of float
294
+ The surface coordinates in the order {x11, x12, ..., x1Np,
295
+ x21, x22, ..., xNtNp, y11, ..., z11, ...}.
296
+ trg_Nt : int
297
+ Output B-field discretization order in toroidal direction (in one field period).
298
+ trg_Np : int
299
+ Output B-field discretization order in poloidal direction.
300
+
301
+ Returns
302
+ -------
303
+ tuple of (list of float, list of float)
304
+ Bext and Bint, magnetic fields generated by an internal current loop
305
+ and an external current loop respectively.
306
+ """
307
+ @staticmethod
308
+ def magnetic_field_grad_data(NFP: typing.SupportsInt | typing.SupportsIndex, half_period: bool, Nt: typing.SupportsInt | typing.SupportsIndex, Np: typing.SupportsInt | typing.SupportsIndex, X: collections.abc.Sequence[typing.SupportsFloat | typing.SupportsIndex], trg_Nt: typing.SupportsInt | typing.SupportsIndex, trg_Np: typing.SupportsInt | typing.SupportsIndex) -> tuple[list[float], list[float]]:
309
+ """
310
+ Generate gradient of B field data for testing with class VirtualCasing.
311
+
312
+ Parameters
313
+ ----------
314
+ NFP : int
315
+ Number of toroidal field periods.
316
+ half_period : bool
317
+ Whether the result should be on half field period.
318
+ Nt : int
319
+ Surface discretization order in toroidal direction (in one field period).
320
+ Np : int
321
+ Surface discretization order in poloidal direction.
322
+ X : list of float
323
+ The surface coordinates in the order {x11, x12, ..., x1Np,
324
+ x21, x22, ..., xNtNp, y11, ..., z11, ...}.
325
+ trg_Nt : int
326
+ Output B-field discretization order in toroidal direction (in one field period).
327
+ trg_Np : int
328
+ Output B-field discretization order in poloidal direction.
329
+
330
+ Returns
331
+ -------
332
+ tuple of (list of float, list of float)
333
+ GradBext and GradBint, gradients of magnetic fields generated by an
334
+ internal current loop and an external current loop respectively.
335
+ """
336
+ @staticmethod
337
+ def surface_coordinates(NFP: typing.SupportsInt | typing.SupportsIndex, half_period: bool, Nt: typing.SupportsInt | typing.SupportsIndex, Np: typing.SupportsInt | typing.SupportsIndex, surf_type: SurfType = ...) -> list[float]:
338
+ """
339
+ Generate nodal coordinates for toroidal surfaces.
340
+
341
+ Parameters
342
+ ----------
343
+ NFP : int
344
+ Number of toroidal field periods.
345
+ half_period : bool
346
+ Whether the returned surface coordinates should be on half field period.
347
+ Nt : int
348
+ Surface discretization order in toroidal direction (in one field period).
349
+ Np : int
350
+ Surface discretization order in poloidal direction.
351
+ surf_type : SurfType, optional
352
+ Prebuilt surface geometry type. Default is SurfType.AxisymNarrow.
353
+ Possible values: AxisymCircleWide, AxisymCircleNarrow, AxisymWide,
354
+ AxisymNarrow, RotatingEllipseWide, RotatingEllipseNarrow, Quas3,
355
+ LHD, W7X, Stell.
356
+
357
+ Returns
358
+ -------
359
+ list of float
360
+ The surface coordinates in the order {x11, x12, ..., x1Np,
361
+ x21, x22, ..., xNtNp, y11, ..., z11, ...}. The coordinates
362
+ correspond to the surface in the toroidal angle interval [0, 2*pi/NFP).
363
+ """
364
+ def __init__(self) -> None:
365
+ ...
File without changes
File without changes
File without changes
File without changes