virtual-casing 0.2.2__tar.gz → 0.3.1__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.
- virtual_casing-0.3.1/.github/workflows/test.yml +152 -0
- virtual_casing-0.3.1/.github/workflows/wheel.yml +138 -0
- virtual_casing-0.3.1/CITATION.cff +119 -0
- virtual_casing-0.3.1/CMakeLists.txt +169 -0
- virtual_casing-0.3.1/MANIFEST.in +9 -0
- virtual_casing-0.3.1/Makefile +110 -0
- virtual_casing-0.3.1/NOTICE +38 -0
- virtual_casing-0.3.1/PKG-INFO +144 -0
- virtual_casing-0.3.1/README.md +116 -0
- virtual_casing-0.3.1/extern/BIEST/CITATION.cff +87 -0
- virtual_casing-0.3.1/extern/BIEST/Makefile +100 -0
- virtual_casing-0.3.1/extern/BIEST/NOTICE +27 -0
- virtual_casing-0.3.1/extern/BIEST/README.md +11 -0
- virtual_casing-0.3.1/extern/BIEST/applications/virtual-casing/virtual-casing.cpp +454 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/.github/run-tests.sh +17 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/.github/workflows/build-test.yml +190 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/.github/workflows/codecov.yml +41 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/CITATION.cff +85 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/Makefile +194 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/NOTICE +44 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/README.md +126 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/ackn.rst +13 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/convergence.svg +621 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/cubed-sphere.svg +728 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/near-1-foot.svg +77 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/near-2-split.svg +65 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/near-3-bisect.svg +146 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/near-4-order.svg +191 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/near-5-pipeline.svg +545 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/scaling.svg +300 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/self-1-split.svg +188 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/self-2-collapse.svg +251 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/self-3-rules.svg +299 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/self-4-pipeline.svg +533 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/Makefile +16 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/convergence.tex +29 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/cubed-sphere.tex +228 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/data/convergence-genoa.dat +5 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/data/genoa-96.txt +140 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/data/icelake-64.txt +134 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/data/rome-128.txt +140 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/data/scaling-genoa-laplace.dat +9 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/data/scaling-genoa-stokes.dat +9 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/data/scaling-mpi-tol1e-3-genoa-96-7204544.txt +338 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/near-1-foot.tex +24 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/near-2-split.tex +28 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/near-3-bisect.tex +32 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/near-4-order.tex +26 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/near-5-pipeline.tex +32 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/results.py +188 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/scaling.tex +24 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/self-1-split.tex +38 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/self-2-collapse.tex +39 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/self-3-rules.tex +29 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element/src/self-4-pipeline.tex +30 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/algorithms/quad-element.rst +404 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/conf.py +215 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/boundary_integral.rst +88 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/cheb_utils.rst +13 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/comm.rst +110 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/common.rst +91 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/fft_wrapper.rst +46 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/fmm-wrapper.rst +51 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/generic-kernel.rst +45 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/index.rst +59 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/iterator.rst +105 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/kernel_functions.rst +41 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/lagrange-interp.rst +37 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/lin-solve.rst +76 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/mat_utils.rst +13 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/math_utils.rst +92 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/matrix.rst +86 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/mem_mgr.rst +42 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/morton.rst +50 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/ode-solver.rst +49 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/ompUtils.rst +49 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/permutation.rst +70 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/profile.rst +62 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/quadrule.rst +63 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/scratch_pool.rst +86 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/sph_harm.rst +13 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/stacktrace.rst +21 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/static-array.rst +59 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/tensor.rst +76 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/tree.rst +95 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/vec.rst +76 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/vector.rst +100 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/doxygen/vtudata.rst +47 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/index.rst +187 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/robots.txt +196 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/boundaryintegralop.rst +129 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/comm.rst +125 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/fft.rst +124 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/fmm.rst +113 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/gmres.rst +152 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/index.rst +95 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/interp-quadrule.rst +71 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/kernels.rst +91 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/lagrange-interp.rst +122 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/matrix.rst +57 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/permutation.rst +44 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/profile.rst +90 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/sdc.rst +76 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/tensor.rst +80 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/tree.rst +176 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/vec.rst +125 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/vector.rst +77 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/doc/tutorial/vtudata.rst +91 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/blas.h +74 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/boundary_integral.hpp +522 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/boundary_integral.txx +1436 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/cheb_utils.hpp +1388 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/comm.hpp +849 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/comm.txx +2928 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/common.hpp +127 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/alpert_quadr.cpp +173 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/alpert_quadr.hpp +63 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/device_scratch.hpp +245 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/device_scratch.txx +480 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/gpu-tree.hpp +437 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/gpu-tree.txx +2646 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/gpu-vector.hpp +90 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/quad_element.cpp +2368 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/quad_element.hpp +264 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/sort-scatter.hpp +149 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/experimental/sort-scatter.txx +387 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/fft_wrapper.hpp +138 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/fft_wrapper.txx +1245 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/fmm-wrapper.hpp +270 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/fmm-wrapper.txx +1135 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/function-table.hpp +68 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/function-table.txx +388 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/generic-kernel.hpp +168 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/generic-kernel.txx +348 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/intrin-wrapper.hpp +967 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/intrin-wrapper.txx +8338 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/iterator.hpp +307 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/iterator.txx +189 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/kernel_functions.hpp +704 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/lagrange-interp.hpp +64 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/lagrange-interp.txx +180 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/lapack.h +78 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/lin-solve.hpp +165 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/lin-solve.txx +536 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/mat_utils.hpp +26 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/mat_utils.txx +550 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/math_utils.hpp +566 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/math_utils.txx +795 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/matrix.hpp +475 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/matrix.txx +624 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/mem_mgr.hpp +134 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/mem_mgr.txx +541 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/morton.hpp +392 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/morton.txx +603 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/ode-solver.hpp +138 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/ode-solver.txx +323 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/ompUtils.hpp +289 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/ompUtils.txx +613 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/permutation.hpp +166 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/permutation.txx +151 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/profile.hpp +237 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/profile.txx +650 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/quadrule.hpp +205 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/quadrule.txx +596 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/scratch_pool.hpp +221 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/scratch_pool.txx +315 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/small_gemm.hpp +90 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/small_gemm.txx +518 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/sort-scatter.hpp +161 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/sort-scatter.txx +416 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/sph_harm.hpp +334 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/sph_harm.txx +3826 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/sse2neon.h +9305 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/stacktrace.h +215 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/static-array.hpp +234 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/static-array.txx +112 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/tensor.hpp +315 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/tensor.txx +348 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/tree.hpp +351 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/tree.txx +1969 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/vec-test.hpp +1533 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/vec.hpp +909 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/vec.txx +908 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/vector.hpp +441 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/vector.txx +453 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/vtudata.hpp +58 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl/vtudata.txx +209 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/include/sctl.hpp +121 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/bench-cubed-sphere.cpp +477 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/example-gpu-tree.cu +27 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-boundary_integral.cpp +99 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-cheb_utils.cpp +133 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-comm.cpp +468 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-device-scratch.cu +129 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-fft-fallback.cpp +460 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-fft.cpp +15 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-fmm.cpp +59 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-function-table.cpp +92 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-generic-kernel.cpp +110 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-gmres.cpp +14 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-gpu-sort-scatter.cu +36 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-gpu-tree.cu +779 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-intrin-wrapper.cpp +169 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-iterator.cpp +190 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-kernel_functions.cpp +533 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-lagrange-interp.cpp +127 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-linear-solver.cpp +66 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-mat_utils.cpp +216 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-math_utils.cpp +288 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-matrix.cpp +325 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-mem_mgr.cpp +143 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-morton.cpp +257 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-ode-solver.cpp +38 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-ompUtils.cpp +325 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-permutation.cpp +160 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-profile.cpp +159 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-pt-tree.cpp +162 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-quad-elem.cpp +1610 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-quadrule.cpp +18 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-scratch-pool-perf.cpp +295 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-scratch-pool.cpp +211 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-small-gemm.cpp +271 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-sort-scatter.cpp +12 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-sph-harm.cpp +11 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-static-array.cpp +128 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-tensor.cpp +15 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-utils.hpp +103 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-vec.cpp +10 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-vector.cpp +313 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test-vtudata.cpp +98 -0
- virtual_casing-0.3.1/extern/BIEST/extern/SCTL/src/test.cpp +90 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/bie_solvers.hpp +219 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/bie_solvers.txx +1514 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/boundary_integ_op.hpp +263 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/boundary_integ_op.txx +541 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/kernel.hpp +450 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/mat.hpp +182 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/offsurface_op.hpp +158 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/offsurface_op.txx +621 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/singular_correction.hpp +456 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/surface.hpp +98 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/surface.txx +726 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/surface_op.hpp +362 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/surface_op.txx +1001 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/vacuum-field.hpp +286 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest/vacuum-field.txx +534 -0
- virtual_casing-0.3.1/extern/BIEST/include/biest.hpp +15 -0
- virtual_casing-0.3.1/extern/BIEST/src/double-layer-convergence.cpp +115 -0
- virtual_casing-0.3.1/extern/BIEST/src/example1.cpp +201 -0
- virtual_casing-0.3.1/extern/BIEST/src/force-free-fields-example.cpp +63 -0
- virtual_casing-0.3.1/extern/BIEST/src/quadrature-example.cpp +52 -0
- virtual_casing-0.3.1/extern/BIEST/src/table1.cpp +139 -0
- virtual_casing-0.3.1/extern/BIEST/src/table3.cpp +92 -0
- virtual_casing-0.3.1/extern/BIEST/src/table4.cpp +80 -0
- virtual_casing-0.3.1/extern/BIEST/src/table5.cpp +96 -0
- virtual_casing-0.3.1/extern/BIEST/src/table6.cpp +52 -0
- virtual_casing-0.3.1/extern/BIEST/src/table7.cpp +193 -0
- virtual_casing-0.3.1/extern/BIEST/src/virtual-casing-principle.cpp +774 -0
- virtual_casing-0.3.1/extern/SCTL/.github/run-tests.sh +17 -0
- virtual_casing-0.3.1/extern/SCTL/.github/workflows/build-test.yml +190 -0
- virtual_casing-0.3.1/extern/SCTL/.github/workflows/codecov.yml +41 -0
- virtual_casing-0.3.1/extern/SCTL/CITATION.cff +85 -0
- virtual_casing-0.3.1/extern/SCTL/Makefile +194 -0
- virtual_casing-0.3.1/extern/SCTL/NOTICE +44 -0
- virtual_casing-0.3.1/extern/SCTL/README.md +126 -0
- virtual_casing-0.3.1/extern/SCTL/doc/ackn.rst +13 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/convergence.svg +621 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/cubed-sphere.svg +728 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/near-1-foot.svg +77 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/near-2-split.svg +65 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/near-3-bisect.svg +146 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/near-4-order.svg +191 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/near-5-pipeline.svg +545 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/scaling.svg +300 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/self-1-split.svg +188 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/self-2-collapse.svg +251 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/self-3-rules.svg +299 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/self-4-pipeline.svg +533 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/Makefile +16 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/convergence.tex +29 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/cubed-sphere.tex +228 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/data/convergence-genoa.dat +5 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/data/genoa-96.txt +140 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/data/icelake-64.txt +134 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/data/rome-128.txt +140 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/data/scaling-genoa-laplace.dat +9 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/data/scaling-genoa-stokes.dat +9 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/data/scaling-mpi-tol1e-3-genoa-96-7204544.txt +338 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/near-1-foot.tex +24 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/near-2-split.tex +28 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/near-3-bisect.tex +32 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/near-4-order.tex +26 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/near-5-pipeline.tex +32 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/results.py +188 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/scaling.tex +24 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/self-1-split.tex +38 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/self-2-collapse.tex +39 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/self-3-rules.tex +29 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element/src/self-4-pipeline.tex +30 -0
- virtual_casing-0.3.1/extern/SCTL/doc/algorithms/quad-element.rst +404 -0
- virtual_casing-0.3.1/extern/SCTL/doc/conf.py +215 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/boundary_integral.rst +88 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/cheb_utils.rst +13 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/comm.rst +110 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/common.rst +91 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/fft_wrapper.rst +46 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/fmm-wrapper.rst +51 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/generic-kernel.rst +45 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/index.rst +59 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/iterator.rst +105 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/kernel_functions.rst +41 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/lagrange-interp.rst +37 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/lin-solve.rst +76 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/mat_utils.rst +13 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/math_utils.rst +92 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/matrix.rst +86 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/mem_mgr.rst +42 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/morton.rst +50 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/ode-solver.rst +49 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/ompUtils.rst +49 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/permutation.rst +70 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/profile.rst +62 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/quadrule.rst +63 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/scratch_pool.rst +86 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/sph_harm.rst +13 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/stacktrace.rst +21 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/static-array.rst +59 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/tensor.rst +76 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/tree.rst +95 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/vec.rst +76 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/vector.rst +100 -0
- virtual_casing-0.3.1/extern/SCTL/doc/doxygen/vtudata.rst +47 -0
- virtual_casing-0.3.1/extern/SCTL/doc/index.rst +187 -0
- virtual_casing-0.3.1/extern/SCTL/doc/robots.txt +196 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/boundaryintegralop.rst +129 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/comm.rst +125 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/fft.rst +124 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/fmm.rst +113 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/gmres.rst +152 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/index.rst +95 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/interp-quadrule.rst +71 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/kernels.rst +91 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/lagrange-interp.rst +122 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/matrix.rst +57 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/permutation.rst +44 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/profile.rst +90 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/sdc.rst +76 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/tensor.rst +80 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/tree.rst +176 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/vec.rst +125 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/vector.rst +77 -0
- virtual_casing-0.3.1/extern/SCTL/doc/tutorial/vtudata.rst +91 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/blas.h +74 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/boundary_integral.hpp +522 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/boundary_integral.txx +1436 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/cheb_utils.hpp +1388 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/comm.hpp +849 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/comm.txx +2928 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/common.hpp +127 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/alpert_quadr.cpp +173 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/alpert_quadr.hpp +63 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/device_scratch.hpp +245 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/device_scratch.txx +480 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/gpu-tree.hpp +437 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/gpu-tree.txx +2646 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/gpu-vector.hpp +90 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/quad_element.cpp +2368 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/quad_element.hpp +264 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/sort-scatter.hpp +149 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/experimental/sort-scatter.txx +387 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/fft_wrapper.hpp +138 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/fft_wrapper.txx +1245 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/fmm-wrapper.hpp +270 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/fmm-wrapper.txx +1135 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/function-table.hpp +68 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/function-table.txx +388 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/generic-kernel.hpp +168 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/generic-kernel.txx +348 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/intrin-wrapper.hpp +967 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/intrin-wrapper.txx +8338 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/iterator.hpp +307 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/iterator.txx +189 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/kernel_functions.hpp +704 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/lagrange-interp.hpp +64 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/lagrange-interp.txx +180 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/lapack.h +78 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/lin-solve.hpp +165 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/lin-solve.txx +536 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/mat_utils.hpp +26 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/mat_utils.txx +550 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/math_utils.hpp +566 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/math_utils.txx +795 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/matrix.hpp +475 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/matrix.txx +624 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/mem_mgr.hpp +134 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/mem_mgr.txx +541 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/morton.hpp +392 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/morton.txx +603 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/ode-solver.hpp +138 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/ode-solver.txx +323 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/ompUtils.hpp +289 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/ompUtils.txx +613 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/permutation.hpp +166 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/permutation.txx +151 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/profile.hpp +237 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/profile.txx +650 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/quadrule.hpp +205 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/quadrule.txx +596 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/scratch_pool.hpp +221 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/scratch_pool.txx +315 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/small_gemm.hpp +90 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/small_gemm.txx +518 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/sort-scatter.hpp +161 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/sort-scatter.txx +416 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/sph_harm.hpp +334 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/sph_harm.txx +3826 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/sse2neon.h +9305 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/stacktrace.h +215 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/static-array.hpp +234 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/static-array.txx +112 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/tensor.hpp +315 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/tensor.txx +348 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/tree.hpp +351 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/tree.txx +1969 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/vec-test.hpp +1533 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/vec.hpp +909 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/vec.txx +908 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/vector.hpp +441 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/vector.txx +453 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/vtudata.hpp +58 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl/vtudata.txx +209 -0
- virtual_casing-0.3.1/extern/SCTL/include/sctl.hpp +121 -0
- virtual_casing-0.3.1/extern/SCTL/src/bench-cubed-sphere.cpp +477 -0
- virtual_casing-0.3.1/extern/SCTL/src/example-gpu-tree.cu +27 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-boundary_integral.cpp +99 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-cheb_utils.cpp +133 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-comm.cpp +468 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-device-scratch.cu +129 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-fft-fallback.cpp +460 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-fft.cpp +15 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-fmm.cpp +59 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-function-table.cpp +92 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-generic-kernel.cpp +110 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-gmres.cpp +14 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-gpu-sort-scatter.cu +36 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-gpu-tree.cu +779 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-intrin-wrapper.cpp +169 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-iterator.cpp +190 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-kernel_functions.cpp +533 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-lagrange-interp.cpp +127 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-linear-solver.cpp +66 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-mat_utils.cpp +216 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-math_utils.cpp +288 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-matrix.cpp +325 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-mem_mgr.cpp +143 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-morton.cpp +257 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-ode-solver.cpp +38 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-ompUtils.cpp +325 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-permutation.cpp +160 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-profile.cpp +159 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-pt-tree.cpp +162 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-quad-elem.cpp +1610 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-quadrule.cpp +18 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-scratch-pool-perf.cpp +295 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-scratch-pool.cpp +211 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-small-gemm.cpp +271 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-sort-scatter.cpp +12 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-sph-harm.cpp +11 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-static-array.cpp +128 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-tensor.cpp +15 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-utils.hpp +103 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-vec.cpp +10 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-vector.cpp +313 -0
- virtual_casing-0.3.1/extern/SCTL/src/test-vtudata.cpp +98 -0
- virtual_casing-0.3.1/extern/SCTL/src/test.cpp +90 -0
- virtual_casing-0.3.1/include/virtual-casing.h +165 -0
- virtual_casing-0.3.1/include/virtual-casing.hpp +334 -0
- virtual_casing-0.3.1/include/virtual-casing.txx +730 -0
- virtual_casing-0.3.1/pyproject.toml +53 -0
- virtual_casing-0.3.1/src/__init__.py +56 -0
- virtual_casing-0.3.1/src/__init__.pyi +27 -0
- virtual_casing-0.3.1/src/_vc_baseline.pyi +353 -0
- virtual_casing-0.3.1/src/cpu_features.cpp +40 -0
- virtual_casing-0.3.1/src/python.cpp +310 -0
- virtual_casing-0.3.1/src/virtual-casing.cpp +79 -0
- virtual_casing-0.3.1/test/axisymm.cpp +90 -0
- virtual_casing-0.3.1/test/check_isa.py +47 -0
- virtual_casing-0.3.1/test/test.py +306 -0
- virtual_casing-0.3.1/test/virtual-casing-c.c +75 -0
- virtual_casing-0.3.1/test/virtual-casing.cpp +150 -0
- virtual_casing-0.2.2/.github/workflows/test.yml +0 -143
- virtual_casing-0.2.2/.github/workflows/wheel.yml +0 -129
- virtual_casing-0.2.2/CMakeLists.txt +0 -135
- virtual_casing-0.2.2/MANIFEST.in +0 -9
- virtual_casing-0.2.2/Makefile +0 -105
- virtual_casing-0.2.2/PKG-INFO +0 -70
- virtual_casing-0.2.2/README.md +0 -44
- virtual_casing-0.2.2/extern/BIEST/Makefile +0 -97
- virtual_casing-0.2.2/extern/BIEST/README.md +0 -6
- virtual_casing-0.2.2/extern/BIEST/applications/virtual-casing/virtual-casing.cpp +0 -450
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/.github/workflows/build-test.yml +0 -82
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/.github/workflows/codecov.yml +0 -36
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/Makefile +0 -156
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/README.md +0 -112
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/ackn.rst +0 -8
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/conf.py +0 -209
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/boundary_integral.rst +0 -83
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/boundary_quadrature.rst +0 -8
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/cheb_utils.rst +0 -8
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/comm.rst +0 -105
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/common.rst +0 -86
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/fft_wrapper.rst +0 -41
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/fmm-wrapper.rst +0 -46
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/generic-kernel.rst +0 -40
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/index.rst +0 -55
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/iterator.rst +0 -100
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/kernel_functions.rst +0 -36
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/lagrange-interp.rst +0 -32
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/lin-solve.rst +0 -71
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/mat_utils.rst +0 -8
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/math_utils.rst +0 -87
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/matrix.rst +0 -81
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/mem_mgr.rst +0 -37
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/morton.rst +0 -45
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/ode-solver.rst +0 -44
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/ompUtils.rst +0 -44
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/permutation.rst +0 -65
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/profile.rst +0 -57
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/quadrule.rst +0 -58
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/scratch_pool.rst +0 -81
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/sph_harm.rst +0 -8
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/stacktrace.rst +0 -16
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/static-array.rst +0 -54
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/tensor.rst +0 -71
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/tree.rst +0 -90
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/vec.rst +0 -71
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/vector.rst +0 -95
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/doxygen/vtudata.rst +0 -42
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/index.rst +0 -168
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/boundaryintegralop.rst +0 -124
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/comm.rst +0 -120
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/fft.rst +0 -119
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/fmm.rst +0 -108
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/gmres.rst +0 -147
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/index.rst +0 -91
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/interp-quadrule.rst +0 -66
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/kernels.rst +0 -86
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/lagrange-interp.rst +0 -117
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/matrix.rst +0 -52
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/permutation.rst +0 -39
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/profile.rst +0 -85
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/sdc.rst +0 -71
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/tensor.rst +0 -75
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/tree.rst +0 -171
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/vec.rst +0 -120
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/vector.rst +0 -72
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/doc/tutorial/vtudata.rst +0 -86
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/blas.h +0 -21
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/boundary_integral.hpp +0 -517
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/boundary_integral.txx +0 -1381
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/boundary_quadrature.hpp +0 -1907
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/cheb_utils.hpp +0 -1384
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/comm.hpp +0 -649
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/comm.txx +0 -2303
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/common.hpp +0 -121
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/experimental/quad_element.cpp +0 -498
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/experimental/quad_element.hpp +0 -190
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/fft_wrapper.hpp +0 -134
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/fft_wrapper.txx +0 -1241
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/fmm-wrapper.hpp +0 -239
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/fmm-wrapper.txx +0 -1038
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/generic-kernel.hpp +0 -144
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/generic-kernel.txx +0 -337
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/intrin-wrapper.hpp +0 -3083
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/iterator.hpp +0 -418
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/iterator.txx +0 -268
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/kernel_functions.hpp +0 -688
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/lagrange-interp.hpp +0 -60
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/lagrange-interp.txx +0 -176
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/lapack.h +0 -23
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/lin-solve.hpp +0 -161
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/lin-solve.txx +0 -532
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/mat_utils.hpp +0 -22
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/mat_utils.txx +0 -518
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/math_utils.hpp +0 -545
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/math_utils.txx +0 -503
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/matrix.hpp +0 -463
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/matrix.txx +0 -601
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/mem_mgr.hpp +0 -130
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/mem_mgr.txx +0 -538
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/morton.hpp +0 -321
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/morton.txx +0 -545
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/ode-solver.hpp +0 -134
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/ode-solver.txx +0 -319
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/ompUtils.hpp +0 -196
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/ompUtils.txx +0 -384
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/permutation.hpp +0 -162
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/permutation.txx +0 -147
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/profile.hpp +0 -206
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/profile.txx +0 -558
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/quadrule.hpp +0 -201
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/quadrule.txx +0 -592
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/scratch_pool.hpp +0 -143
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/scratch_pool.txx +0 -249
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/sph_harm.hpp +0 -330
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/sph_harm.txx +0 -3836
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/sse2neon.h +0 -9289
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/stacktrace.h +0 -211
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/static-array.hpp +0 -230
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/static-array.txx +0 -108
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/tensor.hpp +0 -297
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/tensor.txx +0 -337
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/tree.hpp +0 -298
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/tree.txx +0 -1871
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/vec-test.hpp +0 -457
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/vec.hpp +0 -397
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/vec.txx +0 -420
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/vector.hpp +0 -436
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/vector.txx +0 -437
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/vtudata.hpp +0 -54
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl/vtudata.txx +0 -205
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/include/sctl.hpp +0 -109
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-boundary_integral.cpp +0 -96
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-cheb_utils.cpp +0 -129
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-comm.cpp +0 -359
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-fft-fallback.cpp +0 -461
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-fft.cpp +0 -11
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-fmm.cpp +0 -12
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-generic-kernel.cpp +0 -106
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-gmres.cpp +0 -10
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-intrin-wrapper.cpp +0 -128
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-iterator.cpp +0 -186
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-kernel_functions.cpp +0 -529
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-lagrange-interp.cpp +0 -123
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-linear-solver.cpp +0 -62
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-mat_utils.cpp +0 -115
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-math_utils.cpp +0 -216
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-matrix.cpp +0 -267
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-mem_mgr.cpp +0 -139
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-morton.cpp +0 -248
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-ode-solver.cpp +0 -34
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-ompUtils.cpp +0 -177
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-permutation.cpp +0 -156
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-profile.cpp +0 -114
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-pt-tree.cpp +0 -10
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-quad-elem.cpp +0 -95
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-quadrule.cpp +0 -14
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-scratch-pool-perf.cpp +0 -291
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-scratch-pool.cpp +0 -133
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-sph-harm.cpp +0 -7
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-static-array.cpp +0 -124
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-tensor.cpp +0 -11
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-utils.hpp +0 -45
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-vec.cpp +0 -6
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-vector.cpp +0 -268
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test-vtudata.cpp +0 -95
- virtual_casing-0.2.2/extern/BIEST/extern/SCTL/src/test.cpp +0 -86
- virtual_casing-0.2.2/extern/BIEST/include/biest/bie_solvers.hpp +0 -209
- virtual_casing-0.2.2/extern/BIEST/include/biest/bie_solvers.txx +0 -1645
- virtual_casing-0.2.2/extern/BIEST/include/biest/boundary_integ_op.hpp +0 -254
- virtual_casing-0.2.2/extern/BIEST/include/biest/boundary_integ_op.txx +0 -534
- virtual_casing-0.2.2/extern/BIEST/include/biest/kernel.hpp +0 -420
- virtual_casing-0.2.2/extern/BIEST/include/biest/mat.hpp +0 -178
- virtual_casing-0.2.2/extern/BIEST/include/biest/singular_correction.hpp +0 -452
- virtual_casing-0.2.2/extern/BIEST/include/biest/surface.hpp +0 -94
- virtual_casing-0.2.2/extern/BIEST/include/biest/surface.txx +0 -722
- virtual_casing-0.2.2/extern/BIEST/include/biest/surface_op.hpp +0 -358
- virtual_casing-0.2.2/extern/BIEST/include/biest/surface_op.txx +0 -985
- virtual_casing-0.2.2/extern/BIEST/include/biest/vacuum-field.hpp +0 -282
- virtual_casing-0.2.2/extern/BIEST/include/biest/vacuum-field.txx +0 -563
- virtual_casing-0.2.2/extern/BIEST/include/biest.hpp +0 -10
- virtual_casing-0.2.2/extern/BIEST/src/double-layer-convergence.cpp +0 -111
- virtual_casing-0.2.2/extern/BIEST/src/example1.cpp +0 -197
- virtual_casing-0.2.2/extern/BIEST/src/force-free-fields-example.cpp +0 -59
- virtual_casing-0.2.2/extern/BIEST/src/quadrature-example.cpp +0 -48
- virtual_casing-0.2.2/extern/BIEST/src/table1.cpp +0 -135
- virtual_casing-0.2.2/extern/BIEST/src/table3.cpp +0 -88
- virtual_casing-0.2.2/extern/BIEST/src/table4.cpp +0 -76
- virtual_casing-0.2.2/extern/BIEST/src/table5.cpp +0 -92
- virtual_casing-0.2.2/extern/BIEST/src/table6.cpp +0 -48
- virtual_casing-0.2.2/extern/BIEST/src/table7.cpp +0 -189
- virtual_casing-0.2.2/extern/BIEST/src/virtual-casing-principle.cpp +0 -770
- virtual_casing-0.2.2/extern/SCTL/.github/workflows/build-test.yml +0 -82
- virtual_casing-0.2.2/extern/SCTL/.github/workflows/codecov.yml +0 -36
- virtual_casing-0.2.2/extern/SCTL/Makefile +0 -156
- virtual_casing-0.2.2/extern/SCTL/README.md +0 -112
- virtual_casing-0.2.2/extern/SCTL/doc/ackn.rst +0 -8
- virtual_casing-0.2.2/extern/SCTL/doc/conf.py +0 -209
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/boundary_integral.rst +0 -83
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/boundary_quadrature.rst +0 -8
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/cheb_utils.rst +0 -8
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/comm.rst +0 -105
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/common.rst +0 -86
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/fft_wrapper.rst +0 -41
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/fmm-wrapper.rst +0 -46
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/generic-kernel.rst +0 -40
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/index.rst +0 -55
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/iterator.rst +0 -100
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/kernel_functions.rst +0 -36
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/lagrange-interp.rst +0 -32
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/lin-solve.rst +0 -71
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/mat_utils.rst +0 -8
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/math_utils.rst +0 -87
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/matrix.rst +0 -81
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/mem_mgr.rst +0 -37
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/morton.rst +0 -45
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/ode-solver.rst +0 -44
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/ompUtils.rst +0 -44
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/permutation.rst +0 -65
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/profile.rst +0 -57
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/quadrule.rst +0 -58
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/scratch_pool.rst +0 -81
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/sph_harm.rst +0 -8
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/stacktrace.rst +0 -16
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/static-array.rst +0 -54
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/tensor.rst +0 -71
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/tree.rst +0 -90
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/vec.rst +0 -71
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/vector.rst +0 -95
- virtual_casing-0.2.2/extern/SCTL/doc/doxygen/vtudata.rst +0 -42
- virtual_casing-0.2.2/extern/SCTL/doc/index.rst +0 -168
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/boundaryintegralop.rst +0 -124
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/comm.rst +0 -120
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/fft.rst +0 -119
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/fmm.rst +0 -108
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/gmres.rst +0 -147
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/index.rst +0 -91
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/interp-quadrule.rst +0 -66
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/kernels.rst +0 -86
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/lagrange-interp.rst +0 -117
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/matrix.rst +0 -52
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/permutation.rst +0 -39
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/profile.rst +0 -85
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/sdc.rst +0 -71
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/tensor.rst +0 -75
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/tree.rst +0 -171
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/vec.rst +0 -120
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/vector.rst +0 -72
- virtual_casing-0.2.2/extern/SCTL/doc/tutorial/vtudata.rst +0 -86
- virtual_casing-0.2.2/extern/SCTL/include/sctl/blas.h +0 -21
- virtual_casing-0.2.2/extern/SCTL/include/sctl/boundary_integral.hpp +0 -517
- virtual_casing-0.2.2/extern/SCTL/include/sctl/boundary_integral.txx +0 -1381
- virtual_casing-0.2.2/extern/SCTL/include/sctl/boundary_quadrature.hpp +0 -1907
- virtual_casing-0.2.2/extern/SCTL/include/sctl/cheb_utils.hpp +0 -1384
- virtual_casing-0.2.2/extern/SCTL/include/sctl/comm.hpp +0 -649
- virtual_casing-0.2.2/extern/SCTL/include/sctl/comm.txx +0 -2303
- virtual_casing-0.2.2/extern/SCTL/include/sctl/common.hpp +0 -121
- virtual_casing-0.2.2/extern/SCTL/include/sctl/experimental/quad_element.cpp +0 -498
- virtual_casing-0.2.2/extern/SCTL/include/sctl/experimental/quad_element.hpp +0 -190
- virtual_casing-0.2.2/extern/SCTL/include/sctl/fft_wrapper.hpp +0 -134
- virtual_casing-0.2.2/extern/SCTL/include/sctl/fft_wrapper.txx +0 -1241
- virtual_casing-0.2.2/extern/SCTL/include/sctl/fmm-wrapper.hpp +0 -239
- virtual_casing-0.2.2/extern/SCTL/include/sctl/fmm-wrapper.txx +0 -1038
- virtual_casing-0.2.2/extern/SCTL/include/sctl/generic-kernel.hpp +0 -144
- virtual_casing-0.2.2/extern/SCTL/include/sctl/generic-kernel.txx +0 -337
- virtual_casing-0.2.2/extern/SCTL/include/sctl/intrin-wrapper.hpp +0 -3083
- virtual_casing-0.2.2/extern/SCTL/include/sctl/iterator.hpp +0 -418
- virtual_casing-0.2.2/extern/SCTL/include/sctl/iterator.txx +0 -268
- virtual_casing-0.2.2/extern/SCTL/include/sctl/kernel_functions.hpp +0 -688
- virtual_casing-0.2.2/extern/SCTL/include/sctl/lagrange-interp.hpp +0 -60
- virtual_casing-0.2.2/extern/SCTL/include/sctl/lagrange-interp.txx +0 -176
- virtual_casing-0.2.2/extern/SCTL/include/sctl/lapack.h +0 -23
- virtual_casing-0.2.2/extern/SCTL/include/sctl/lin-solve.hpp +0 -161
- virtual_casing-0.2.2/extern/SCTL/include/sctl/lin-solve.txx +0 -532
- virtual_casing-0.2.2/extern/SCTL/include/sctl/mat_utils.hpp +0 -22
- virtual_casing-0.2.2/extern/SCTL/include/sctl/mat_utils.txx +0 -518
- virtual_casing-0.2.2/extern/SCTL/include/sctl/math_utils.hpp +0 -545
- virtual_casing-0.2.2/extern/SCTL/include/sctl/math_utils.txx +0 -503
- virtual_casing-0.2.2/extern/SCTL/include/sctl/matrix.hpp +0 -463
- virtual_casing-0.2.2/extern/SCTL/include/sctl/matrix.txx +0 -601
- virtual_casing-0.2.2/extern/SCTL/include/sctl/mem_mgr.hpp +0 -130
- virtual_casing-0.2.2/extern/SCTL/include/sctl/mem_mgr.txx +0 -538
- virtual_casing-0.2.2/extern/SCTL/include/sctl/morton.hpp +0 -321
- virtual_casing-0.2.2/extern/SCTL/include/sctl/morton.txx +0 -545
- virtual_casing-0.2.2/extern/SCTL/include/sctl/ode-solver.hpp +0 -134
- virtual_casing-0.2.2/extern/SCTL/include/sctl/ode-solver.txx +0 -319
- virtual_casing-0.2.2/extern/SCTL/include/sctl/ompUtils.hpp +0 -196
- virtual_casing-0.2.2/extern/SCTL/include/sctl/ompUtils.txx +0 -384
- virtual_casing-0.2.2/extern/SCTL/include/sctl/permutation.hpp +0 -162
- virtual_casing-0.2.2/extern/SCTL/include/sctl/permutation.txx +0 -147
- virtual_casing-0.2.2/extern/SCTL/include/sctl/profile.hpp +0 -206
- virtual_casing-0.2.2/extern/SCTL/include/sctl/profile.txx +0 -558
- virtual_casing-0.2.2/extern/SCTL/include/sctl/quadrule.hpp +0 -201
- virtual_casing-0.2.2/extern/SCTL/include/sctl/quadrule.txx +0 -592
- virtual_casing-0.2.2/extern/SCTL/include/sctl/scratch_pool.hpp +0 -143
- virtual_casing-0.2.2/extern/SCTL/include/sctl/scratch_pool.txx +0 -249
- virtual_casing-0.2.2/extern/SCTL/include/sctl/sph_harm.hpp +0 -330
- virtual_casing-0.2.2/extern/SCTL/include/sctl/sph_harm.txx +0 -3836
- virtual_casing-0.2.2/extern/SCTL/include/sctl/sse2neon.h +0 -9289
- virtual_casing-0.2.2/extern/SCTL/include/sctl/stacktrace.h +0 -211
- virtual_casing-0.2.2/extern/SCTL/include/sctl/static-array.hpp +0 -230
- virtual_casing-0.2.2/extern/SCTL/include/sctl/static-array.txx +0 -108
- virtual_casing-0.2.2/extern/SCTL/include/sctl/tensor.hpp +0 -297
- virtual_casing-0.2.2/extern/SCTL/include/sctl/tensor.txx +0 -337
- virtual_casing-0.2.2/extern/SCTL/include/sctl/tree.hpp +0 -298
- virtual_casing-0.2.2/extern/SCTL/include/sctl/tree.txx +0 -1871
- virtual_casing-0.2.2/extern/SCTL/include/sctl/vec-test.hpp +0 -457
- virtual_casing-0.2.2/extern/SCTL/include/sctl/vec.hpp +0 -397
- virtual_casing-0.2.2/extern/SCTL/include/sctl/vec.txx +0 -420
- virtual_casing-0.2.2/extern/SCTL/include/sctl/vector.hpp +0 -436
- virtual_casing-0.2.2/extern/SCTL/include/sctl/vector.txx +0 -437
- virtual_casing-0.2.2/extern/SCTL/include/sctl/vtudata.hpp +0 -54
- virtual_casing-0.2.2/extern/SCTL/include/sctl/vtudata.txx +0 -205
- virtual_casing-0.2.2/extern/SCTL/include/sctl.hpp +0 -109
- virtual_casing-0.2.2/extern/SCTL/src/test-boundary_integral.cpp +0 -96
- virtual_casing-0.2.2/extern/SCTL/src/test-cheb_utils.cpp +0 -129
- virtual_casing-0.2.2/extern/SCTL/src/test-comm.cpp +0 -359
- virtual_casing-0.2.2/extern/SCTL/src/test-fft-fallback.cpp +0 -461
- virtual_casing-0.2.2/extern/SCTL/src/test-fft.cpp +0 -11
- virtual_casing-0.2.2/extern/SCTL/src/test-fmm.cpp +0 -12
- virtual_casing-0.2.2/extern/SCTL/src/test-generic-kernel.cpp +0 -106
- virtual_casing-0.2.2/extern/SCTL/src/test-gmres.cpp +0 -10
- virtual_casing-0.2.2/extern/SCTL/src/test-intrin-wrapper.cpp +0 -128
- virtual_casing-0.2.2/extern/SCTL/src/test-iterator.cpp +0 -186
- virtual_casing-0.2.2/extern/SCTL/src/test-kernel_functions.cpp +0 -529
- virtual_casing-0.2.2/extern/SCTL/src/test-lagrange-interp.cpp +0 -123
- virtual_casing-0.2.2/extern/SCTL/src/test-linear-solver.cpp +0 -62
- virtual_casing-0.2.2/extern/SCTL/src/test-mat_utils.cpp +0 -115
- virtual_casing-0.2.2/extern/SCTL/src/test-math_utils.cpp +0 -216
- virtual_casing-0.2.2/extern/SCTL/src/test-matrix.cpp +0 -267
- virtual_casing-0.2.2/extern/SCTL/src/test-mem_mgr.cpp +0 -139
- virtual_casing-0.2.2/extern/SCTL/src/test-morton.cpp +0 -248
- virtual_casing-0.2.2/extern/SCTL/src/test-ode-solver.cpp +0 -34
- virtual_casing-0.2.2/extern/SCTL/src/test-ompUtils.cpp +0 -177
- virtual_casing-0.2.2/extern/SCTL/src/test-permutation.cpp +0 -156
- virtual_casing-0.2.2/extern/SCTL/src/test-profile.cpp +0 -114
- virtual_casing-0.2.2/extern/SCTL/src/test-pt-tree.cpp +0 -10
- virtual_casing-0.2.2/extern/SCTL/src/test-quad-elem.cpp +0 -95
- virtual_casing-0.2.2/extern/SCTL/src/test-quadrule.cpp +0 -14
- virtual_casing-0.2.2/extern/SCTL/src/test-scratch-pool-perf.cpp +0 -291
- virtual_casing-0.2.2/extern/SCTL/src/test-scratch-pool.cpp +0 -133
- virtual_casing-0.2.2/extern/SCTL/src/test-sph-harm.cpp +0 -7
- virtual_casing-0.2.2/extern/SCTL/src/test-static-array.cpp +0 -124
- virtual_casing-0.2.2/extern/SCTL/src/test-tensor.cpp +0 -11
- virtual_casing-0.2.2/extern/SCTL/src/test-utils.hpp +0 -45
- virtual_casing-0.2.2/extern/SCTL/src/test-vec.cpp +0 -6
- virtual_casing-0.2.2/extern/SCTL/src/test-vector.cpp +0 -268
- virtual_casing-0.2.2/extern/SCTL/src/test-vtudata.cpp +0 -95
- virtual_casing-0.2.2/extern/SCTL/src/test.cpp +0 -86
- virtual_casing-0.2.2/include/virtual-casing.h +0 -161
- virtual_casing-0.2.2/include/virtual-casing.hpp +0 -338
- virtual_casing-0.2.2/include/virtual-casing.txx +0 -748
- virtual_casing-0.2.2/pyproject.toml +0 -54
- virtual_casing-0.2.2/src/__init__.py +0 -46
- virtual_casing-0.2.2/src/__init__.pyi +0 -23
- virtual_casing-0.2.2/src/_vc_baseline.pyi +0 -365
- virtual_casing-0.2.2/src/cpu_features.cpp +0 -36
- virtual_casing-0.2.2/src/python.cpp +0 -318
- virtual_casing-0.2.2/src/virtual-casing.cpp +0 -75
- virtual_casing-0.2.2/test/axisymm.cpp +0 -86
- virtual_casing-0.2.2/test/check_isa.py +0 -43
- virtual_casing-0.2.2/test/test.py +0 -253
- virtual_casing-0.2.2/test/virtual-casing-c.c +0 -71
- virtual_casing-0.2.2/test/virtual-casing.cpp +0 -146
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/.gitignore +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/.gitmodules +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/LICENSE +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/cmake/FindFFTW.cmake +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/.clang-format +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/.gitignore +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/.gitmodules +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/LICENSE +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/applications/virtual-casing/BetaScan_run_20.Bxyz.txt +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/applications/virtual-casing/Makefile +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/applications/virtual-casing/ellipse.coils +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/extern/SCTL/.clang-format +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/extern/SCTL/.gitattributes +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/extern/SCTL/.gitignore +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/extern/SCTL/.readthedocs.yaml +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/extern/SCTL/LICENSE +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/extern/SCTL/doc/Doxyfile +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/extern/SCTL/doc/Makefile +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/extern/SCTL/doc/requirements.txt +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/extern/SCTL/doc/tutorial/gmres-rsult.txt +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/geom/LHD-X.mat +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/geom/LHD-Y.mat +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/geom/LHD-Z.mat +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/geom/NCSX +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/geom/Quas3-X.mat +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/geom/Quas3-Y.mat +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/geom/Quas3-Z.mat +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/geom/W7X-X.mat +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/geom/W7X-Y.mat +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/BIEST/geom/W7X-Z.mat +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/SCTL/.clang-format +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/SCTL/.gitattributes +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/SCTL/.gitignore +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/SCTL/.readthedocs.yaml +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/SCTL/LICENSE +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/SCTL/doc/Doxyfile +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/SCTL/doc/Makefile +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/SCTL/doc/requirements.txt +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/extern/SCTL/doc/tutorial/gmres-rsult.txt +0 -0
- {virtual_casing-0.2.2 → virtual_casing-0.3.1}/src/py.typed +0 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# This file is based on examples in
|
|
2
|
+
# https://docs.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions
|
|
3
|
+
|
|
4
|
+
# Note that all the "sudo" commands here appear to cause a warning message
|
|
5
|
+
# "sudo: setrlimit(RLIMIT_CORE): operation not permitted"
|
|
6
|
+
# This appears to be a known harmless annoyance:
|
|
7
|
+
# https://gitlab.alpinelinux.org/alpine/aports/-/issues/11122
|
|
8
|
+
|
|
9
|
+
name: Test
|
|
10
|
+
|
|
11
|
+
on: [push, pull_request, workflow_dispatch]
|
|
12
|
+
|
|
13
|
+
concurrency:
|
|
14
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
15
|
+
cancel-in-progress: true
|
|
16
|
+
|
|
17
|
+
jobs:
|
|
18
|
+
test:
|
|
19
|
+
runs-on: ubuntu-latest
|
|
20
|
+
|
|
21
|
+
env:
|
|
22
|
+
OMPI_ALLOW_RUN_AS_ROOT: 1
|
|
23
|
+
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1
|
|
24
|
+
|
|
25
|
+
strategy:
|
|
26
|
+
fail-fast: false
|
|
27
|
+
matrix:
|
|
28
|
+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] # To sync with coveragerc use 3 level
|
|
29
|
+
|
|
30
|
+
steps:
|
|
31
|
+
# First print out lots of information. We do this in separate
|
|
32
|
+
# "name" blocks because otherwise the output gets mixed together
|
|
33
|
+
# in the github actions log.
|
|
34
|
+
|
|
35
|
+
- name: Print user and group id
|
|
36
|
+
run: set -ex && id
|
|
37
|
+
|
|
38
|
+
- name: PWD
|
|
39
|
+
run: set -ex && pwd
|
|
40
|
+
|
|
41
|
+
- name: ls -l
|
|
42
|
+
run: set -ex && ls -l
|
|
43
|
+
|
|
44
|
+
- name: apt-get stuff needed for compiling
|
|
45
|
+
run: |
|
|
46
|
+
sudo apt-get update
|
|
47
|
+
sudo apt-get install -y build-essential liblapack-dev git m4 libfftw3-dev libopenblas-dev
|
|
48
|
+
|
|
49
|
+
- uses: actions/checkout@v7
|
|
50
|
+
with:
|
|
51
|
+
submodules: recursive
|
|
52
|
+
fetch-depth: 0 # setuptools_scm needs the tags
|
|
53
|
+
|
|
54
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
55
|
+
uses: actions/setup-python@v7
|
|
56
|
+
with:
|
|
57
|
+
python-version: ${{ matrix.python-version }}
|
|
58
|
+
|
|
59
|
+
- name: which python after python setup
|
|
60
|
+
run: |
|
|
61
|
+
which python
|
|
62
|
+
python --version
|
|
63
|
+
|
|
64
|
+
- name: Ensure pip is installed
|
|
65
|
+
run: |
|
|
66
|
+
python -m ensurepip --upgrade
|
|
67
|
+
python -m pip install --upgrade pip
|
|
68
|
+
|
|
69
|
+
- name: Verify pip
|
|
70
|
+
run: python -m pip --version
|
|
71
|
+
|
|
72
|
+
- name: Install python dependencies
|
|
73
|
+
run: |
|
|
74
|
+
python -m pip install wheel numpy cmake ninja scipy
|
|
75
|
+
|
|
76
|
+
- name: Install virtual-casing package
|
|
77
|
+
run: python -m pip install -v .
|
|
78
|
+
|
|
79
|
+
- name: Run tests
|
|
80
|
+
run: |
|
|
81
|
+
cd test
|
|
82
|
+
python -m unittest -v test.py
|
|
83
|
+
|
|
84
|
+
# The Makefile builds the C API and the standalone binaries, which nothing
|
|
85
|
+
# else in CI covers; a link-order bug went unnoticed here for some time.
|
|
86
|
+
makefile:
|
|
87
|
+
runs-on: ubuntu-latest
|
|
88
|
+
|
|
89
|
+
steps:
|
|
90
|
+
- uses: actions/checkout@v7
|
|
91
|
+
with:
|
|
92
|
+
submodules: recursive
|
|
93
|
+
fetch-depth: 0 # setuptools_scm needs the tags
|
|
94
|
+
|
|
95
|
+
- name: apt-get stuff needed for compiling
|
|
96
|
+
run: |
|
|
97
|
+
sudo apt-get update
|
|
98
|
+
# liblapack-dev pulls a libblas.so provider, so -lblas/-llapack resolve
|
|
99
|
+
sudo apt-get install -y build-essential libfftw3-dev liblapack-dev libopenblas-dev
|
|
100
|
+
|
|
101
|
+
- name: make all
|
|
102
|
+
run: make all -j$(nproc)
|
|
103
|
+
|
|
104
|
+
- name: Run the C API test
|
|
105
|
+
run: ./bin/virtual-casing-c
|
|
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>=3.0,<4" 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 python -c "
|
|
136
|
+
import sys, virtual_casing._vc_baseline as m
|
|
137
|
+
# __init__.py presents the classes as virtual_casing, which would make
|
|
138
|
+
# stubgen re-export them rather than declare them; restore their real home
|
|
139
|
+
for o in vars(m).values():
|
|
140
|
+
if isinstance(o, type):
|
|
141
|
+
o.__module__ = m.__name__
|
|
142
|
+
sys.argv = ['pybind11-stubgen', '--print-value-comments', 'virtual_casing._vc_baseline', '-o', 'regenerated']
|
|
143
|
+
from pybind11_stubgen import main; main()
|
|
144
|
+
"
|
|
145
|
+
# stubgen leaves trailing whitespace in docstrings; the committed copy has
|
|
146
|
+
# it stripped, so normalise before comparing
|
|
147
|
+
sed -i 's/[[:space:]]*$//' regenerated/virtual_casing/_vc_baseline.pyi
|
|
148
|
+
diff -u src/_vc_baseline.pyi regenerated/virtual_casing/_vc_baseline.pyi \
|
|
149
|
+
|| { echo "::error::src/_vc_baseline.pyi is stale; regenerate it, strip trailing whitespace, and commit"; exit 1; }
|
|
150
|
+
|
|
151
|
+
- name: Type-check the stubs themselves
|
|
152
|
+
run: python -m mypy --strict src/__init__.pyi src/_vc_baseline.pyi
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
name: Wheel Builder
|
|
2
|
+
|
|
3
|
+
on: [push, pull_request, workflow_dispatch]
|
|
4
|
+
|
|
5
|
+
concurrency:
|
|
6
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
7
|
+
# a tag build is the one that publishes, so never cancel it
|
|
8
|
+
cancel-in-progress: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
build_wheels:
|
|
12
|
+
name: Build wheels on ${{ matrix.runner }} #(${{ runner.arch }})
|
|
13
|
+
runs-on: ${{ matrix.runner }}
|
|
14
|
+
|
|
15
|
+
strategy:
|
|
16
|
+
fail-fast: false
|
|
17
|
+
matrix:
|
|
18
|
+
include:
|
|
19
|
+
- runner: ubuntu-latest # x86_64
|
|
20
|
+
arch_flag: "-march=ivybridge"
|
|
21
|
+
|
|
22
|
+
- runner: macos-15 # arm64
|
|
23
|
+
deployment_target: 15
|
|
24
|
+
arch_flag: "-mcpu=apple-m1"
|
|
25
|
+
|
|
26
|
+
# every Mac that runs macOS 15 has AVX2, so ivybridge is conservative here
|
|
27
|
+
- runner: macos-15-intel # x86_64
|
|
28
|
+
deployment_target: 15
|
|
29
|
+
arch_flag: "-march=ivybridge"
|
|
30
|
+
|
|
31
|
+
steps:
|
|
32
|
+
- name: Checkout repository
|
|
33
|
+
uses: actions/checkout@v7
|
|
34
|
+
with:
|
|
35
|
+
submodules: recursive
|
|
36
|
+
fetch-depth: 0 # setuptools_scm needs the tags
|
|
37
|
+
|
|
38
|
+
- name: Set up Python
|
|
39
|
+
uses: actions/setup-python@v7
|
|
40
|
+
with:
|
|
41
|
+
python-version: "3.x"
|
|
42
|
+
|
|
43
|
+
- name: Install cibuildwheel
|
|
44
|
+
run: python -m pip install cibuildwheel
|
|
45
|
+
|
|
46
|
+
- name: Build wheels
|
|
47
|
+
run: python -m cibuildwheel --output-dir wheelhouse
|
|
48
|
+
env:
|
|
49
|
+
CIBW_ARCHS_LINUX: x86_64
|
|
50
|
+
CIBW_ENVIRONMENT_LINUX: CI=True VC_ARCH_FLAG=${{ matrix.arch_flag }} LIBXSMM_DIR=/opt/libxsmm
|
|
51
|
+
# LIBXSMM's own code is built for SSE4.2; the matrix kernels it generates use the CPU that runs them
|
|
52
|
+
CIBW_BEFORE_ALL_LINUX: >
|
|
53
|
+
yum install -y lapack-devel openblas-devel fftw-devel &&
|
|
54
|
+
git clone --depth 1 --branch 2.1.0 https://github.com/libxsmm/libxsmm.git /opt/libxsmm &&
|
|
55
|
+
make -C /opt/libxsmm -j$(nproc) STATIC=1 SSE=4 lib
|
|
56
|
+
CIBW_BEFORE_BUILD_LINUX: python -m pip install --upgrade pip setuptools wheel numpy cmake ninja && git config --global --add safe.directory /project
|
|
57
|
+
CIBW_MANYLINUX_X86_64_IMAGE: quay.io/pypa/manylinux_2_28_x86_64
|
|
58
|
+
CIBW_SKIP: "*-musllinux_*"
|
|
59
|
+
CIBW_ENVIRONMENT_MACOS: CI=True VC_ARCH_FLAG=${{ matrix.arch_flag }} MACOSX_DEPLOYMENT_TARGET=${{ matrix.deployment_target }} CC=gcc-12 CXX=g++-12 LIBXSMM_DIR=/tmp/libxsmm # with GCC
|
|
60
|
+
#CIBW_ENVIRONMENT_MACOS: CI=True VC_ARCH_FLAG=${{ matrix.arch_flat }} MACOSX_DEPLOYMENT_TARGET=${{ matrix.deployment_target }} OpenMP_ROOT=$(brew --prefix)/opt/libomp # with Apple Clang
|
|
61
|
+
# LIBXSMM's own code is built for the runner (SSE4.2 on x86_64); the matrix kernels it generates use the CPU
|
|
62
|
+
# that runs them
|
|
63
|
+
CIBW_BEFORE_ALL_MACOS: >
|
|
64
|
+
brew install fftw lapack gcc@12 libomp openblas &&
|
|
65
|
+
git clone --depth 1 --branch 2.1.0 https://github.com/libxsmm/libxsmm.git /tmp/libxsmm &&
|
|
66
|
+
MACOSX_DEPLOYMENT_TARGET=${{ matrix.deployment_target }} make -C /tmp/libxsmm -j$(sysctl -n hw.ncpu) STATIC=1 lib
|
|
67
|
+
CIBW_BEFORE_BUILD_MACOS: python -m pip install --upgrade pip setuptools wheel numpy cmake ninja && git config --global --add safe.directory /project
|
|
68
|
+
CIBW_BUILD: cp310-* cp311-* cp312-* cp313-* cp314-*
|
|
69
|
+
# exercise the repaired wheel, not the source build test.yml already covers
|
|
70
|
+
CIBW_TEST_REQUIRES: numpy scipy
|
|
71
|
+
# check_isa.py forces each variant that was built and is runnable here;
|
|
72
|
+
# arm64 builds only baseline, and v4 must not be forced without AVX-512
|
|
73
|
+
CIBW_TEST_COMMAND: >
|
|
74
|
+
python -m unittest discover -s {project}/test -p "test.py" &&
|
|
75
|
+
python {project}/test/check_isa.py
|
|
76
|
+
|
|
77
|
+
- name: Debug with tmate on failure
|
|
78
|
+
if: ${{ failure() && github.event_name == 'workflow_dispatch' }}
|
|
79
|
+
uses: mxschmitt/action-tmate@v3
|
|
80
|
+
with:
|
|
81
|
+
timeout-minutes: 15
|
|
82
|
+
|
|
83
|
+
- name: Upload wheels
|
|
84
|
+
uses: actions/upload-artifact@v7
|
|
85
|
+
with:
|
|
86
|
+
name: wheels-${{ matrix.runner }}
|
|
87
|
+
path: wheelhouse/*.whl
|
|
88
|
+
overwrite: true
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
build_sdist:
|
|
92
|
+
name: Build source distribution
|
|
93
|
+
runs-on: ubuntu-latest
|
|
94
|
+
|
|
95
|
+
steps:
|
|
96
|
+
- uses: actions/checkout@v7
|
|
97
|
+
with:
|
|
98
|
+
submodules: recursive
|
|
99
|
+
fetch-depth: 0 # setuptools_scm needs the tags
|
|
100
|
+
|
|
101
|
+
- uses: actions/setup-python@v7
|
|
102
|
+
name: Install Python
|
|
103
|
+
with:
|
|
104
|
+
python-version: '3.11'
|
|
105
|
+
|
|
106
|
+
# - name: Install setuptools_scm
|
|
107
|
+
# run: python -m pip install setuptools_scm
|
|
108
|
+
|
|
109
|
+
- name: Build sdist
|
|
110
|
+
run: |
|
|
111
|
+
pip install build
|
|
112
|
+
python -m build --sdist
|
|
113
|
+
|
|
114
|
+
- uses: actions/upload-artifact@v7
|
|
115
|
+
with:
|
|
116
|
+
name: sdist
|
|
117
|
+
path: dist/*.tar.gz
|
|
118
|
+
overwrite: true
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
upload_pypi:
|
|
122
|
+
needs: [build_wheels, build_sdist]
|
|
123
|
+
runs-on: ubuntu-latest
|
|
124
|
+
# upload to PyPI on every tag starting with 'v'
|
|
125
|
+
if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/v')
|
|
126
|
+
# alternatively, to publish when a GitHub Release is created, use the following rule:
|
|
127
|
+
# if: github.event_name == 'release' && github.event.action == 'published'
|
|
128
|
+
permissions:
|
|
129
|
+
id-token: write
|
|
130
|
+
steps:
|
|
131
|
+
- uses: actions/download-artifact@v8
|
|
132
|
+
with:
|
|
133
|
+
path: dist
|
|
134
|
+
merge-multiple: true
|
|
135
|
+
|
|
136
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
137
|
+
with:
|
|
138
|
+
skip-existing: true # so a re-run after a partial upload doesn't 400
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
cff-version: 1.2.0
|
|
2
|
+
message: "If you use virtual-casing, please cite the software and the papers below."
|
|
3
|
+
type: software
|
|
4
|
+
title: "virtual-casing: the virtual-casing principle on toroidal surfaces"
|
|
5
|
+
authors:
|
|
6
|
+
- given-names: Dhairya
|
|
7
|
+
family-names: Malhotra
|
|
8
|
+
- given-names: Bharat
|
|
9
|
+
family-names: Medasani
|
|
10
|
+
- given-names: Matt
|
|
11
|
+
family-names: Landreman
|
|
12
|
+
- given-names: Chris
|
|
13
|
+
family-names: Smiet
|
|
14
|
+
- given-names: Antoine
|
|
15
|
+
family-names: Cerfon
|
|
16
|
+
abstract: "A C++ library, with C and Python interfaces, that computes from the total magnetic field on a toroidal surface the part due to currents outside (or inside) the surface, on and off the surface, and the gradient of the external part, using the virtual-casing principle and the high-order singular quadratures of BIEST."
|
|
17
|
+
repository-code: "https://github.com/hiddenSymmetries/virtual-casing"
|
|
18
|
+
license: Apache-2.0
|
|
19
|
+
preferred-citation:
|
|
20
|
+
type: article
|
|
21
|
+
title: "Efficient high-order singular quadrature schemes in magnetic fusion"
|
|
22
|
+
authors:
|
|
23
|
+
- given-names: Dhairya
|
|
24
|
+
family-names: Malhotra
|
|
25
|
+
- given-names: Antoine J.
|
|
26
|
+
family-names: Cerfon
|
|
27
|
+
- given-names: Michael
|
|
28
|
+
family-names: "O'Neil"
|
|
29
|
+
- given-names: Evan
|
|
30
|
+
family-names: Toler
|
|
31
|
+
journal: "Plasma Physics and Controlled Fusion"
|
|
32
|
+
publisher:
|
|
33
|
+
name: IOP Publishing
|
|
34
|
+
volume: 62
|
|
35
|
+
issue: 2
|
|
36
|
+
start: "024004"
|
|
37
|
+
year: 2020
|
|
38
|
+
month: 2
|
|
39
|
+
doi: "10.1088/1361-6587/ab57f4"
|
|
40
|
+
references:
|
|
41
|
+
- type: article
|
|
42
|
+
title: "Taylor states in stellarators: A fast high-order boundary integral solver"
|
|
43
|
+
authors:
|
|
44
|
+
- given-names: Dhairya
|
|
45
|
+
family-names: Malhotra
|
|
46
|
+
- given-names: Antoine
|
|
47
|
+
family-names: Cerfon
|
|
48
|
+
- given-names: Lise-Marie
|
|
49
|
+
family-names: Imbert-Gérard
|
|
50
|
+
- given-names: Michael
|
|
51
|
+
family-names: "O'Neil"
|
|
52
|
+
journal: "Journal of Computational Physics"
|
|
53
|
+
publisher:
|
|
54
|
+
name: Elsevier BV
|
|
55
|
+
volume: 397
|
|
56
|
+
start: 108791
|
|
57
|
+
year: 2019
|
|
58
|
+
month: 11
|
|
59
|
+
doi: "10.1016/j.jcp.2019.06.067"
|
|
60
|
+
notes: "The singular quadrature that virtual-casing uses through BIEST."
|
|
61
|
+
- type: article
|
|
62
|
+
title: "Efficient high-order singular quadrature schemes in magnetic fusion"
|
|
63
|
+
authors:
|
|
64
|
+
- given-names: Dhairya
|
|
65
|
+
family-names: Malhotra
|
|
66
|
+
- given-names: Antoine J.
|
|
67
|
+
family-names: Cerfon
|
|
68
|
+
- given-names: Michael
|
|
69
|
+
family-names: "O'Neil"
|
|
70
|
+
- given-names: Evan
|
|
71
|
+
family-names: Toler
|
|
72
|
+
journal: "Plasma Physics and Controlled Fusion"
|
|
73
|
+
publisher:
|
|
74
|
+
name: IOP Publishing
|
|
75
|
+
volume: 62
|
|
76
|
+
issue: 2
|
|
77
|
+
start: "024004"
|
|
78
|
+
year: 2020
|
|
79
|
+
month: 2
|
|
80
|
+
doi: "10.1088/1361-6587/ab57f4"
|
|
81
|
+
- type: software
|
|
82
|
+
title: "BIEST: Boundary Integral Equation Solver for Taylor states"
|
|
83
|
+
authors:
|
|
84
|
+
- given-names: Dhairya
|
|
85
|
+
family-names: Malhotra
|
|
86
|
+
repository-code: "https://github.com/dmalhotra/BIEST"
|
|
87
|
+
license: Apache-2.0
|
|
88
|
+
doi: "10.5281/zenodo.23511944"
|
|
89
|
+
notes: "virtual-casing uses BIEST's singular quadratures, surface operators and off-surface operator, included as the git submodule extern/BIEST."
|
|
90
|
+
- type: software
|
|
91
|
+
title: "SCTL: Scientific Computing Template Library"
|
|
92
|
+
authors:
|
|
93
|
+
- given-names: Dhairya
|
|
94
|
+
family-names: Malhotra
|
|
95
|
+
- given-names: Tianyue
|
|
96
|
+
family-names: Li
|
|
97
|
+
- given-names: Robert
|
|
98
|
+
family-names: Blackwell
|
|
99
|
+
- given-names: Abtin
|
|
100
|
+
family-names: Rahimian
|
|
101
|
+
- given-names: Wen
|
|
102
|
+
family-names: Yan
|
|
103
|
+
- given-names: Xuanzhao
|
|
104
|
+
family-names: Gao
|
|
105
|
+
repository-code: "https://github.com/dmalhotra/SCTL"
|
|
106
|
+
url: "https://sctl.readthedocs.io"
|
|
107
|
+
license: Apache-2.0
|
|
108
|
+
doi: "10.5281/zenodo.23511629"
|
|
109
|
+
notes: "virtual-casing is built on SCTL, included as the git submodule extern/SCTL: directly for its containers, and through BIEST for the adaptive near-surface quadrature of off-surface evaluation (QuadElemList), FFTs and Gauss-Legendre rules."
|
|
110
|
+
- type: software
|
|
111
|
+
title: findFFTW
|
|
112
|
+
authors:
|
|
113
|
+
- given-names: Wenzel
|
|
114
|
+
family-names: Jakob
|
|
115
|
+
- given-names: Patrick
|
|
116
|
+
family-names: Bos
|
|
117
|
+
repository-code: "https://github.com/egpbos/findFFTW"
|
|
118
|
+
license: BSD-3-Clause
|
|
119
|
+
notes: "cmake/FindFFTW.cmake."
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
cmake_minimum_required(VERSION 3.16)
|
|
2
|
+
project(virtual_casing)
|
|
3
|
+
#set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
|
|
4
|
+
|
|
5
|
+
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
|
6
|
+
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
|
7
|
+
set(CMAKE_CXX_STANDARD 17)
|
|
8
|
+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
9
|
+
|
|
10
|
+
OPTION (USE_PROFILER "Activate code profiling." OFF)
|
|
11
|
+
if (USE_PROFILER)
|
|
12
|
+
add_definitions (-DSCTL_PROFILE=5 -DSCTL_VERBOSE)
|
|
13
|
+
endif ()
|
|
14
|
+
set(CMAKE_VERBOSE_MAKEFILE ON CACHE BOOL "ON")
|
|
15
|
+
|
|
16
|
+
if(DEFINED ENV{CONDA_PREFIX})
|
|
17
|
+
include_directories($ENV{CONDA_PREFIX}/include)
|
|
18
|
+
link_directories("$ENV{CONDA_PREFIX}/lib")
|
|
19
|
+
message(STATUS "Conda prefix is $ENV{CONDA_PREFIX}")
|
|
20
|
+
endif()
|
|
21
|
+
|
|
22
|
+
# Add linker and incldue directories for conda build before finding any library
|
|
23
|
+
if (DEFINED ENV{CONDA_BUILD})
|
|
24
|
+
link_directories("$ENV{BUILD_PREFIX}/lib")
|
|
25
|
+
include_directories("$ENV{BUILD_PREFIX}/include")
|
|
26
|
+
message(STATUS "Prefix environment variable is $ENV{BUILD_PREFIX}")
|
|
27
|
+
endif ()
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
# Wheels turn this off (pyproject.toml): one N=1 dgemm, no LAPACK, ~80% of wheel size
|
|
31
|
+
option (VC_USE_BLAS "Link BLAS/LAPACK; SCTL falls back to its own routines without them" ON)
|
|
32
|
+
if (VC_USE_BLAS)
|
|
33
|
+
find_package (BLAS)
|
|
34
|
+
endif ()
|
|
35
|
+
if (BLAS_FOUND)
|
|
36
|
+
add_definitions (-DSCTL_HAVE_BLAS)
|
|
37
|
+
if (NOT ${BLA_VENDOR} MATCHES "^Intel")
|
|
38
|
+
find_package (LAPACK)
|
|
39
|
+
if(LAPACK_FOUND)
|
|
40
|
+
add_definitions (-DSCTL_HAVE_LAPACK)
|
|
41
|
+
endif()
|
|
42
|
+
else()
|
|
43
|
+
add_definitions (-DSCTL_HAVE_LAPACK)
|
|
44
|
+
endif()
|
|
45
|
+
endif ()
|
|
46
|
+
|
|
47
|
+
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
|
48
|
+
find_package(FFTW COMPONENTS DOUBLE_LIB)
|
|
49
|
+
if(FFTW_DOUBLE_LIB_FOUND)
|
|
50
|
+
message(STATUS "FFTW_INCLUDE_DIR is ${FFTW_INCLUDE_DIRS}")
|
|
51
|
+
add_definitions (-DSCTL_HAVE_FFTW)
|
|
52
|
+
include_directories("${FFTW_INCLUDE_DIRS}")
|
|
53
|
+
endif()
|
|
54
|
+
# float/long-double FFTW is never called; linking it only bloats the wheel
|
|
55
|
+
|
|
56
|
+
# LIBXSMM generates SCTL's small matrix products for the CPU that runs them, whatever the compiler flags
|
|
57
|
+
option (VC_USE_LIBXSMM "Link LIBXSMM, if found in LIBXSMM_DIR or the default paths, for SCTL's small matrix products" ON)
|
|
58
|
+
if (VC_USE_LIBXSMM)
|
|
59
|
+
find_path (LIBXSMM_INCLUDE_DIR libxsmm.h HINTS "$ENV{LIBXSMM_DIR}/include")
|
|
60
|
+
find_library (LIBXSMM_LIBRARY NAMES libxsmm.a xsmm HINTS "$ENV{LIBXSMM_DIR}/lib")
|
|
61
|
+
endif ()
|
|
62
|
+
if (LIBXSMM_INCLUDE_DIR AND LIBXSMM_LIBRARY)
|
|
63
|
+
find_package (Threads REQUIRED)
|
|
64
|
+
set (LIBXSMM_LIBRARIES ${LIBXSMM_LIBRARY} Threads::Threads ${CMAKE_DL_LIBS} m)
|
|
65
|
+
if (NOT APPLE)
|
|
66
|
+
list (APPEND LIBXSMM_LIBRARIES rt)
|
|
67
|
+
endif ()
|
|
68
|
+
# versions before 2.0 lack this interface
|
|
69
|
+
include (CheckCXXSourceCompiles)
|
|
70
|
+
set (CMAKE_REQUIRED_INCLUDES ${LIBXSMM_INCLUDE_DIR})
|
|
71
|
+
set (CMAKE_REQUIRED_LIBRARIES ${LIBXSMM_LIBRARIES})
|
|
72
|
+
check_cxx_source_compiles ("#include <libxsmm.h>
|
|
73
|
+
int main() {
|
|
74
|
+
const libxsmm_gemm_shape shape = libxsmm_create_gemm_shape(1, 1, 1, 1, 1, 1, LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64);
|
|
75
|
+
return libxsmm_dispatch_gemm(shape, 0, 0) == nullptr;
|
|
76
|
+
}" LIBXSMM_FOUND)
|
|
77
|
+
unset (CMAKE_REQUIRED_INCLUDES)
|
|
78
|
+
unset (CMAKE_REQUIRED_LIBRARIES)
|
|
79
|
+
endif ()
|
|
80
|
+
if (LIBXSMM_FOUND)
|
|
81
|
+
add_definitions (-DSCTL_HAVE_LIBXSMM)
|
|
82
|
+
include_directories ("${LIBXSMM_INCLUDE_DIR}")
|
|
83
|
+
endif ()
|
|
84
|
+
|
|
85
|
+
find_package(Git QUIET)
|
|
86
|
+
if(GIT_FOUND AND EXISTS "${PROJECT_SOURCE_DIR}/.git")
|
|
87
|
+
# Update submodules as needed
|
|
88
|
+
option(GIT_SUBMODULE "Check submodules during build" ON)
|
|
89
|
+
if(GIT_SUBMODULE)
|
|
90
|
+
message(STATUS "Submodule update")
|
|
91
|
+
execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init --recursive
|
|
92
|
+
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
|
93
|
+
RESULT_VARIABLE GIT_SUBMOD_RESULT)
|
|
94
|
+
if(NOT GIT_SUBMOD_RESULT EQUAL "0")
|
|
95
|
+
message(FATAL_ERROR "git submodule update --init failed with ${GIT_SUBMOD_RESULT}, please checkout submodules")
|
|
96
|
+
endif()
|
|
97
|
+
endif()
|
|
98
|
+
endif()
|
|
99
|
+
|
|
100
|
+
include(CheckCXXCompilerFlag)
|
|
101
|
+
IF(DEFINED ENV{VC_ARCH_FLAG})
|
|
102
|
+
message(STATUS "User provided architecture flag: $ENV{VC_ARCH_FLAG}")
|
|
103
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 $ENV{VC_ARCH_FLAG} -ffp-contract=fast")
|
|
104
|
+
elseif(DEFINED ENV{CONDA_BUILD})
|
|
105
|
+
message(STATUS "conda build environment detected. Let conda set compilation flags accordingly.")
|
|
106
|
+
else()
|
|
107
|
+
# Temporary fix till clang 15 is default on macs with Apple silicon
|
|
108
|
+
message(STATUS "Local build detected. Set compilation flags accordingly.")
|
|
109
|
+
unset(COMPILER_SUPPORTS_MARCH_NATIVE CACHE)
|
|
110
|
+
CHECK_CXX_COMPILER_FLAG(-march=native COMPILER_SUPPORTS_MARCH_NATIVE)
|
|
111
|
+
if(COMPILER_SUPPORTS_MARCH_NATIVE)
|
|
112
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -march=native -ffp-contract=fast")
|
|
113
|
+
elseif(${CMAKE_HOST_SYSTEM_PROCESSOR} STREQUAL "arm64")
|
|
114
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -mcpu=native -ffp-contract=fast")
|
|
115
|
+
endif()
|
|
116
|
+
endif()
|
|
117
|
+
|
|
118
|
+
find_package(OpenMP REQUIRED)
|
|
119
|
+
|
|
120
|
+
if (SKBUILD)
|
|
121
|
+
find_package(pybind11 CONFIG REQUIRED)
|
|
122
|
+
|
|
123
|
+
# SCTL selects its vector ISA at compile time and has no runtime dispatch, so
|
|
124
|
+
# reaching AVX2/AVX-512 means compiling the extension once per level and
|
|
125
|
+
# choosing in __init__.py. AVX-512 cannot be a single-wheel target: Intel
|
|
126
|
+
# fused it off on client CPUs from Alder Lake onwards.
|
|
127
|
+
option (VC_DISPATCH "Build one extension per x86-64 instruction-set level" ON)
|
|
128
|
+
set(vc_variants baseline)
|
|
129
|
+
if (VC_DISPATCH AND CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|AMD64")
|
|
130
|
+
list(APPEND vc_variants v3 v4)
|
|
131
|
+
set(vc_march_v3 "-march=x86-64-v3")
|
|
132
|
+
set(vc_march_v4 "-march=x86-64-v4")
|
|
133
|
+
endif()
|
|
134
|
+
|
|
135
|
+
foreach (variant IN LISTS vc_variants)
|
|
136
|
+
set(tgt _vc_${variant})
|
|
137
|
+
pybind11_add_module(${tgt} src/python.cpp)
|
|
138
|
+
target_compile_definitions(${tgt} PRIVATE VC_MODULE_NAME=${tgt})
|
|
139
|
+
# after CMAKE_CXX_FLAGS, so this -march wins over VC_ARCH_FLAG
|
|
140
|
+
target_compile_options(${tgt} PRIVATE ${vc_march_${variant}}
|
|
141
|
+
"$<$<CXX_COMPILER_ID:PGI>:-Wc,--pending_instantiations=1000>")
|
|
142
|
+
target_include_directories(${tgt} PRIVATE "$<$<BOOL:${FFTW_DOUBLE_LIB_FOUND}>:${FFTW_INCLUDE_DIRS}>"
|
|
143
|
+
"include" "extern/SCTL/include" "extern/BIEST/include")
|
|
144
|
+
target_link_libraries(${tgt} PRIVATE "$<$<BOOL:${OpenMP_CXX_FOUND}>:OpenMP::OpenMP_CXX>"
|
|
145
|
+
"$<$<BOOL:${FFTW_DOUBLE_LIB_FOUND}>:FFTW::Double>" "$<$<BOOL:${LIBXSMM_FOUND}>:${LIBXSMM_LIBRARIES}>"
|
|
146
|
+
"$<$<BOOL:${BLAS_FOUND}>:${BLAS_LIBRARIES}>" "$<$<BOOL:${LAPACK_FOUND}>:${LAPACK_LIBRARIES}>")
|
|
147
|
+
if (LIBXSMM_FOUND AND NOT APPLE)
|
|
148
|
+
# not exported, so that another copy of LIBXSMM in the process does not replace these functions
|
|
149
|
+
target_link_options(${tgt} PRIVATE "LINKER:--exclude-libs,libxsmm.a")
|
|
150
|
+
endif ()
|
|
151
|
+
install(TARGETS ${tgt} LIBRARY DESTINATION ${PROJECT_NAME})
|
|
152
|
+
endforeach()
|
|
153
|
+
|
|
154
|
+
pybind11_add_module(_cpu src/cpu_features.cpp) # baseline: must run anywhere
|
|
155
|
+
install(TARGETS _cpu LIBRARY DESTINATION ${PROJECT_NAME})
|
|
156
|
+
# py.typed opts the package in to PEP 561; without it the stubs are ignored
|
|
157
|
+
install(FILES src/__init__.py src/__init__.pyi src/_vc_baseline.pyi src/py.typed
|
|
158
|
+
DESTINATION ${PROJECT_NAME})
|
|
159
|
+
endif()
|
|
160
|
+
|
|
161
|
+
add_executable(vc_testing EXCLUDE_FROM_ALL test/virtual-casing.cpp)
|
|
162
|
+
# Fix for PowerPC with PGI compiler
|
|
163
|
+
target_compile_options(vc_testing PUBLIC "$<$<CXX_COMPILER_ID:PGI>:-Wc,--pending_instantiations=1000>")
|
|
164
|
+
target_include_directories(vc_testing PRIVATE "$<$<BOOL:${FFTW_DOUBLE_LIB_FOUND}>:${FFTW_INCLUDE_DIRS}>"
|
|
165
|
+
"include" "extern/SCTL/include" "extern/BIEST/include")
|
|
166
|
+
target_link_libraries(vc_testing PUBLIC $<$<BOOL:${FFTW_DOUBLE_LIB_FOUND}>:FFTW::Double>
|
|
167
|
+
"$<$<BOOL:${LIBXSMM_FOUND}>:${LIBXSMM_LIBRARIES}>"
|
|
168
|
+
"$<$<BOOL:${BLAS_FOUND}>:${BLAS_LIBRARIES}>"
|
|
169
|
+
"$<$<BOOL:${LAPACK_FOUND}>:${LAPACK_LIBRARIES}>" $<$<BOOL:${OpenMP_CXX_FOUND}>:OpenMP::OpenMP_CXX>)
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
include src/python.cpp src/cpu_features.cpp src/__init__.py
|
|
2
|
+
include src/__init__.pyi src/_vc_baseline.pyi src/py.typed
|
|
3
|
+
include test/virtual-casing.cpp
|
|
4
|
+
include LICENSE NOTICE README.md
|
|
5
|
+
graft include
|
|
6
|
+
graft extern/SCTL/include
|
|
7
|
+
graft extern/BIEST/include
|
|
8
|
+
graft cmake
|
|
9
|
+
global-include CMakeLists.txt *.cmake
|