ngstrefftz 0.3.2402.dev34__tar.gz → 0.3.2403.dev5__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.
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.github/workflows/build_pip.sh +1 -1
- ngstrefftz-0.3.2403.dev5/.github/workflows/ngsolve_version.txt +1 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/Dockerfile +5 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/PKG-INFO +2 -2
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/requirements.txt +4 -4
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/.github/workflows/build.yml +35 -29
- ngstrefftz-0.3.2403.dev5/external_dependencies/ngstents/.github/workflows/build_pip.ps1 +24 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/.github/workflows/build_pip.sh +4 -4
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/.github/workflows/build_pip_mac.sh +2 -2
- ngstrefftz-0.3.2403.dev5/external_dependencies/ngstents/.github/workflows/ngsolve_version.txt +1 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/README.md +2 -0
- ngstrefftz-0.3.2403.dev5/external_dependencies/ngstents/setup.py +27 -0
- ngstrefftz-0.3.2403.dev5/external_dependencies/ngstents/src/CMakeLists.txt +97 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/tents.cpp +1 -1
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/tents.hpp +1 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/embtrefftz.cpp +6 -4
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/monomialfespace.cpp +17 -2
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/monomialfespace.hpp +6 -24
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/ngstrefftz.egg-info/PKG-INFO +2 -2
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/ngstrefftz.egg-info/SOURCES.txt +1 -0
- ngstrefftz-0.3.2403.dev5/src/ngstrefftz.egg-info/requires.txt +3 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/trefftzfespace.cpp +126 -29
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/trefftzfespace.hpp +30 -3
- ngstrefftz-0.3.2402.dev34/.github/workflows/ngsolve_version.txt +0 -1
- ngstrefftz-0.3.2402.dev34/external_dependencies/ngstents/.github/workflows/build_pip.ps1 +0 -20
- ngstrefftz-0.3.2402.dev34/external_dependencies/ngstents/setup.py +0 -103
- ngstrefftz-0.3.2402.dev34/external_dependencies/ngstents/src/CMakeLists.txt +0 -73
- ngstrefftz-0.3.2402.dev34/src/ngstrefftz.egg-info/requires.txt +0 -3
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.clang-format +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.github/workflows/build.yml +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.github/workflows/build_linux_test.sh +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.github/workflows/build_pip.ps1 +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.github/workflows/build_pip_mac.sh +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.github/workflows/fix_auditwheel_policy.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.github/workflows/pyodide/Dockerfile +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.github/workflows/pyodide/build_in_docker.sh +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.github/workflows/pyodide/merge.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.github/workflows/pyodide/requirements.txt +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/.gitmodules +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/CONTRIBUTING.md +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/LICENSE +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/README.md +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/_static/breadcrumbs.html +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/_static/css/mytheme.css +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/conf.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/contrib.rst +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/docu.rst +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/index.rst +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/intro.rst +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/embTrefftz-adv.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/embTrefftz-helm.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/embTrefftz-poi.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/embTrefftz-stokes.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/embTrefftz-wave.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/embTrefftz.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/helmholtz.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/index.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/laplace.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/qtwave.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/tunfitted.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/twave.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/notebooks/twavetents.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/paper/codemeta.json +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/paper/paper.bib +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/paper/paper.md +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/docs/readme.rst +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/.github/workflows/fix_auditwheel_policy.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/advection/Advection_Periodic_Clipping.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/advection/advection2d.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/advection/advection2d_periodic.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/burgers/Burgers_Clipping.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/burgers/burgers1d.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/burgers/burgers2d.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/euler/Euler_Clipping.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/euler/euler2d.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/euler/mach3_windtunnel.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/maxwell/maxwell3d.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/symbolic/symbolic_advection2d.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/symbolic/symbolic_burgers.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/symbolic/symbolic_euler.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/symbolic/symbolic_wave.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/symbolic/symbolic_wave1d_interface.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/symbolic/wave_penetrable_cylinder.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/tents/draw3dtent.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/tents/draw3dvertex.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/wave/horn.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/wave/wave2d.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/wave/wave2d_timedepbc.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/demo/wave/wave3d.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/BurgersMTP.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/INDEX.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/StartPitching.ipynb +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/conf.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/figs/CausalityCond.png +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/figs/dag.png +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/figs/map.png +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/figs/subtents.png +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/index.rst +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/readme.rst +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/docs/requirements.txt +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/py/__init__.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/py/conslaw/__init__.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/py/utils/__init__.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/py/utils/_drawtents.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/py/utils/_drawtents2d.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/advection.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/burgers.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/concurrentqueue.h +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/conservationlaw.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/euler.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/maxwell.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/paralleldepend.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/python_conslaw.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/python_tents.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/symbolic.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/tconservationlaw_tp_impl.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/tentsolver.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/tentsolver_impl.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/vis3d.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/vis3d.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/wave.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/tests/test_burgers_2D.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/tests/test_causal_tents.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/tests/test_conslaw.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/tests/test_tent_height_2D.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/tests/test_tentlayers.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/setup.cfg +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/setup.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/CMakeLists.txt +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/__init__.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/airy.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/condensedg.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/condensedg.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/diffopmapped.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/embtrefftz.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/mesh1dtents.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/mesh1dtents.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/ngstrefftz.egg-info/dependency_links.txt +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/ngstrefftz.egg-info/top_level.txt +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/ngsttd.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/planewavefe.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/planewavefe.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/python_trefftz.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/scalarmappedfe.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/scalarmappedfe.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/specialcoefficientfunction.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/specialcoefficientfunction.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/specialintegrator.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/specialintegrator.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/twavetents.cpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/src/twavetents.hpp +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/test/dg.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/test/embt.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/test/tents.py +0 -0
- {ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/test/trefftz.py +0 -0
|
@@ -25,7 +25,7 @@ do
|
|
|
25
25
|
|
|
26
26
|
#rm -rf /home/app/ngstrefftz/make
|
|
27
27
|
rm -rf _skbuild
|
|
28
|
-
$PYDIR/pip install pytest-check numpy wheel scikit-build mkl==2023.* mkl-devel==2023.* setuptools setuptools_scm
|
|
28
|
+
$PYDIR/pip install pytest-check numpy wheel scikit-build mkl==2023.* mkl-devel==2023.* setuptools==69.5.1 setuptools_scm==8.1.0
|
|
29
29
|
$PYDIR/pip install -r ./.github/workflows/ngsolve_version.txt
|
|
30
30
|
|
|
31
31
|
$PYDIR/pip wheel -vvv .
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ngsolve>=6.2.2402
|
|
@@ -2,6 +2,11 @@ FROM python:3.10-slim-bullseye
|
|
|
2
2
|
|
|
3
3
|
WORKDIR /home/app
|
|
4
4
|
|
|
5
|
+
#RUN apt --yes update && apt --yes install git pandoc sphinx
|
|
6
|
+
#COPY . /home/app/ngstrefftz
|
|
7
|
+
#RUN cd /home/app/ngstrefftz/docs && pip install -r requirements.txt
|
|
8
|
+
#RUN cd /home/app/ngstrefftz/docs && sphinx-build -M html . _build -vvv
|
|
9
|
+
|
|
5
10
|
RUN pip install ngstrefftz
|
|
6
11
|
ENV PYTHONPATH=$PYTHONPATH:/usr/local/lib/python3.10/site-packages/
|
|
7
12
|
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ngstrefftz
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2403.dev5
|
|
4
4
|
Summary: NGSTrefftz is an add-on to NGSolve for Trefftz methods.
|
|
5
5
|
Home-page: https://github.com/PaulSt/ngstrefftz
|
|
6
6
|
Author: Paul Stocker
|
|
7
7
|
Author-email: p.stocker@math.uni-goettingen.de
|
|
8
8
|
License: LGPL2.1
|
|
9
9
|
License-File: LICENSE
|
|
10
|
-
Requires-Dist: ngsolve>=6.2.
|
|
10
|
+
Requires-Dist: ngsolve>=6.2.2402
|
|
11
11
|
Requires-Dist: ngstents>=0.0.2.dev39
|
|
12
12
|
Requires-Dist: mkl
|
|
13
13
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
setuptools
|
|
1
|
+
setuptools>=61
|
|
3
2
|
setuptools_scm
|
|
4
3
|
jupyter>=1.0.0
|
|
5
4
|
|
|
6
5
|
matplotlib>=3.6.1
|
|
7
6
|
matplotlib-inline>=0.1.6
|
|
8
7
|
|
|
8
|
+
pandoc>=2.3
|
|
9
9
|
nbconvert>=7.2.1
|
|
10
10
|
nbformat>=5.7.0
|
|
11
11
|
nbsphinx>=0.8.9
|
|
@@ -20,6 +20,6 @@ myst_parser>=0.15.0
|
|
|
20
20
|
numpy>=1.23.4
|
|
21
21
|
scipy>=1.11.1
|
|
22
22
|
ngsolve>=6.2.2403
|
|
23
|
-
xfem
|
|
24
|
-
ngstrefftz>=0.2.
|
|
23
|
+
xfem==2.1.2303.post137.dev0
|
|
24
|
+
ngstrefftz>=0.2.2402
|
|
25
25
|
webgui-jupyter-widgets>=0.2.31
|
|
@@ -24,11 +24,11 @@ jobs:
|
|
|
24
24
|
pip3 install pytest matplotlib numpy
|
|
25
25
|
- name: set path
|
|
26
26
|
run: |
|
|
27
|
-
echo "PYTHONPATH=/usr/lib/python3/dist-packages/:$GITHUB_WORKSPACE/install" >> $GITHUB_ENV
|
|
27
|
+
echo "PYTHONPATH=/usr/lib/python3/dist-packages/:$GITHUB_WORKSPACE/install/lib/python3.10/dist-packages" >> $GITHUB_ENV
|
|
28
28
|
echo "NETGENDIR=/usr/bin/" >> $GITHUB_ENV
|
|
29
|
-
- uses: actions/checkout@
|
|
29
|
+
- uses: actions/checkout@v4
|
|
30
30
|
- name: cmake ngstents
|
|
31
|
-
run: cmake -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/install -B$GITHUB_WORKSPACE/make -S$GITHUB_WORKSPACE/src
|
|
31
|
+
run: cmake -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/install -DPY_INSTALL_DIR="" -B$GITHUB_WORKSPACE/make -S$GITHUB_WORKSPACE/src
|
|
32
32
|
- name: compile ngstents
|
|
33
33
|
run: |
|
|
34
34
|
make -C$GITHUB_WORKSPACE/make
|
|
@@ -39,27 +39,32 @@ jobs:
|
|
|
39
39
|
pytest .
|
|
40
40
|
|
|
41
41
|
macos-nightly:
|
|
42
|
-
runs-on: macos-
|
|
42
|
+
runs-on: macos-13
|
|
43
43
|
steps:
|
|
44
|
-
- name:
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
cp -R /Volumes/NGSolve/* /Applications
|
|
44
|
+
- name: Get Python
|
|
45
|
+
uses: actions/setup-python@v4
|
|
46
|
+
with:
|
|
47
|
+
python-version: '3.12'
|
|
49
48
|
- name: set path
|
|
50
49
|
run: |
|
|
51
|
-
echo "
|
|
52
|
-
echo "
|
|
53
|
-
echo "
|
|
54
|
-
echo "
|
|
55
|
-
|
|
56
|
-
-
|
|
50
|
+
echo "PYDIR=${{ env.Python3_ROOT_DIR }}/bin" >> $GITHUB_ENV
|
|
51
|
+
echo "NETGEN_Dir=${{ env.Python3_ROOT_DIR }}/bin/../lib/python3.12/site-packages/netgen/cmake" >> $GITHUB_ENV
|
|
52
|
+
echo "NGSolve_Dir=${{ env.Python3_ROOT_DIR }}/bin/../lib/python3.12/site-packages/ngsolve/cmake" >> $GITHUB_ENV
|
|
53
|
+
echo "/Applications/CMake.app/Contents/bin" >> $GITHUB_PATH
|
|
54
|
+
- run: echo "CMAKE_PREFIX_PATH=${{ env.CMAKE_PREFIX_PATH }}:${{ env.NGSolve_Dir }}:${{ env.NETGEN_Dir }}" >> $GITHUB_ENV
|
|
55
|
+
- name: install ngsolve
|
|
56
|
+
run: pip3 install ngsolve pytest matplotlib
|
|
57
|
+
- uses: actions/checkout@v4
|
|
57
58
|
- name: cmake ngstents
|
|
58
59
|
run: cmake -B$GITHUB_WORKSPACE/make -S$GITHUB_WORKSPACE/src
|
|
59
60
|
- name: compile ngstents
|
|
60
61
|
run: |
|
|
61
62
|
make -C$GITHUB_WORKSPACE/make
|
|
62
63
|
sudo make -C$GITHUB_WORKSPACE/make install
|
|
64
|
+
- name: test ngstents
|
|
65
|
+
run: |
|
|
66
|
+
cd $GITHUB_WORKSPACE/tests
|
|
67
|
+
pytest .
|
|
63
68
|
|
|
64
69
|
pypi-linux:
|
|
65
70
|
name: Build wheels for linux
|
|
@@ -68,7 +73,7 @@ jobs:
|
|
|
68
73
|
steps:
|
|
69
74
|
- name: clear cache
|
|
70
75
|
run: rm -rf /opt/hostedtoolcache
|
|
71
|
-
- uses: actions/checkout@
|
|
76
|
+
- uses: actions/checkout@v4
|
|
72
77
|
with:
|
|
73
78
|
submodules: 'True'
|
|
74
79
|
path: 'ngstents'
|
|
@@ -78,9 +83,9 @@ jobs:
|
|
|
78
83
|
- name: build pip
|
|
79
84
|
run: docker run -v $GITHUB_WORKSPACE:/workspace sameli/manylinux2014_x86_64_cuda_11.7 /bin/sh /workspace/ngstents/.github/workflows/build_pip.sh
|
|
80
85
|
- name: Store the binary wheel
|
|
81
|
-
uses: actions/upload-artifact@
|
|
86
|
+
uses: actions/upload-artifact@v4
|
|
82
87
|
with:
|
|
83
|
-
name: python-package-distributions
|
|
88
|
+
name: python-package-distributions-linux
|
|
84
89
|
path: ngstents/wheelhouse
|
|
85
90
|
|
|
86
91
|
pypi-mac:
|
|
@@ -88,13 +93,13 @@ jobs:
|
|
|
88
93
|
needs: [ubuntu-nightly, macos-nightly]
|
|
89
94
|
strategy:
|
|
90
95
|
matrix:
|
|
91
|
-
py: ['3.8', '3.9', '3.10', '3.11']
|
|
96
|
+
py: ['3.8', '3.9', '3.10', '3.11', '3.12']
|
|
92
97
|
runs-on: macos-11
|
|
93
98
|
env:
|
|
94
99
|
MACOSX_DEPLOYMENT_TARGET: '10.15'
|
|
95
100
|
steps:
|
|
96
101
|
- name: Checkout
|
|
97
|
-
uses: actions/checkout@
|
|
102
|
+
uses: actions/checkout@v4
|
|
98
103
|
with:
|
|
99
104
|
fetch-depth: 0
|
|
100
105
|
submodules: recursive
|
|
@@ -106,9 +111,9 @@ jobs:
|
|
|
106
111
|
- name: Run build script
|
|
107
112
|
run: cd ngstents/.github/workflows && bash build_pip_mac.sh ${{ matrix.py }}
|
|
108
113
|
- name: Store the binary wheel
|
|
109
|
-
uses: actions/upload-artifact@
|
|
114
|
+
uses: actions/upload-artifact@v4
|
|
110
115
|
with:
|
|
111
|
-
name: python-package-distributions
|
|
116
|
+
name: python-package-distributions-mac-${{ matrix.py }}
|
|
112
117
|
path: ngstents/wheelhouse
|
|
113
118
|
|
|
114
119
|
pypi-win:
|
|
@@ -116,11 +121,11 @@ jobs:
|
|
|
116
121
|
needs: [ubuntu-nightly, macos-nightly]
|
|
117
122
|
strategy:
|
|
118
123
|
matrix:
|
|
119
|
-
py: ['3.8', '3.9', '3.10', '3.11']
|
|
124
|
+
py: ['3.8', '3.9', '3.10', '3.11', '3.12']
|
|
120
125
|
runs-on: windows-2019
|
|
121
126
|
steps:
|
|
122
127
|
- name: Checkout
|
|
123
|
-
uses: actions/checkout@
|
|
128
|
+
uses: actions/checkout@v4
|
|
124
129
|
with:
|
|
125
130
|
fetch-depth: 0
|
|
126
131
|
submodules: recursive
|
|
@@ -133,9 +138,9 @@ jobs:
|
|
|
133
138
|
- name: Run build script
|
|
134
139
|
run: Set-Location ngstents/.github/workflows; ./build_pip.ps1 ${{ env.pythonLocation }}
|
|
135
140
|
- name: Store the binary wheel
|
|
136
|
-
uses: actions/upload-artifact@
|
|
141
|
+
uses: actions/upload-artifact@v4
|
|
137
142
|
with:
|
|
138
|
-
name: python-package-distributions
|
|
143
|
+
name: python-package-distributions-win-${{ matrix.py }}
|
|
139
144
|
path: ngstents/wheelhouse
|
|
140
145
|
|
|
141
146
|
publish-pypi:
|
|
@@ -144,9 +149,10 @@ jobs:
|
|
|
144
149
|
runs-on: ubuntu-latest
|
|
145
150
|
steps:
|
|
146
151
|
- name: Download all the dists
|
|
147
|
-
uses: actions/download-artifact@
|
|
152
|
+
uses: actions/download-artifact@v4
|
|
148
153
|
with:
|
|
149
|
-
|
|
154
|
+
pattern: python-package-distributions-*
|
|
155
|
+
merge-multiple: true
|
|
150
156
|
path: ngstents/wheelhouse/
|
|
151
157
|
- name: Publish binary distributions to PyPI
|
|
152
158
|
if: github.ref == 'refs/heads/master'
|
|
@@ -161,7 +167,7 @@ jobs:
|
|
|
161
167
|
needs: [publish-pypi]
|
|
162
168
|
runs-on: ubuntu-latest
|
|
163
169
|
steps:
|
|
164
|
-
- uses: actions/checkout@
|
|
170
|
+
- uses: actions/checkout@v4
|
|
165
171
|
with:
|
|
166
172
|
fetch-depth: 0 # otherwise, you will failed to push refs to dest repo
|
|
167
173
|
submodules: 'True'
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
$ErrorActionPreference = "Stop"
|
|
2
|
+
|
|
3
|
+
if (test-path _skbuild) {
|
|
4
|
+
cmd.exe /c rd /s /q _skbuild
|
|
5
|
+
}
|
|
6
|
+
if (test-path dist) {
|
|
7
|
+
cmd.exe /c rd /s /q dist
|
|
8
|
+
}
|
|
9
|
+
if (test-path venv_ngs) {
|
|
10
|
+
cmd.exe /c rd /s /q venv_ngs
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
Set-Location ../..
|
|
14
|
+
python.exe -m venv .\venv_ngs
|
|
15
|
+
.\venv_ngs\scripts\Activate.ps1
|
|
16
|
+
$env:PATH += Join-Path ";" (Get-Item .).FullName "venv_ngs\bin"
|
|
17
|
+
|
|
18
|
+
pip3 install scikit-build wheel numpy twine mkl-devel==2022.* mkl==2022.* setuptools==69.5.1 setuptools_scm==8.1.0
|
|
19
|
+
pip3 install -r .github/workflows/ngsolve_version.txt
|
|
20
|
+
|
|
21
|
+
#$env:NGSolve_DIR = "$env:Python3_ROOT_DIR\lib\site-packages\ngsolve\cmake"
|
|
22
|
+
#$env:Netgen_DIR = "$env:Python3_ROOT_DIR\lib\site-packages\netgen\cmake"
|
|
23
|
+
|
|
24
|
+
python setup.py bdist_wheel -G"Visual Studio 16 2019" -d wheelhouse
|
|
@@ -15,18 +15,18 @@ git config --global --add safe.directory '*'
|
|
|
15
15
|
|
|
16
16
|
export ORIGINAL_PATH="$PATH"
|
|
17
17
|
|
|
18
|
-
for pyversion in 38 39 310 311
|
|
18
|
+
for pyversion in 38 39 310 311 312
|
|
19
19
|
do
|
|
20
20
|
export PYDIR="/opt/python/cp${pyversion}-cp${pyversion}/bin"
|
|
21
21
|
export PATH="$ORIGINAL_PATH:$PYDIR"
|
|
22
22
|
|
|
23
23
|
rm -rf _skbuild
|
|
24
|
-
$PYDIR/pip install pytest-check numpy wheel scikit-build mkl==2023.* mkl-devel==2023.* setuptools
|
|
25
|
-
$PYDIR/pip install
|
|
24
|
+
$PYDIR/pip install pytest-check numpy wheel scikit-build mkl==2023.* mkl-devel==2023.* setuptools==69.5.1 setuptools_scm==8.1.0
|
|
25
|
+
$PYDIR/pip install -r ./.github/workflows/ngsolve_version.txt
|
|
26
26
|
|
|
27
27
|
$PYDIR/pip wheel -vvv .
|
|
28
28
|
rename linux_ manylinux_2_17_x86_64.manylinux2014_ ngstents*.whl
|
|
29
29
|
mv ngstents*.whl wheelhouse/
|
|
30
30
|
rm -rf *.whl
|
|
31
|
-
$PYDIR/pip uninstall -y ngsolve netgen-mesher setuptools pytest-check numpy wheel scikit-build mkl mkl-devel
|
|
31
|
+
$PYDIR/pip uninstall -y ngsolve netgen-mesher setuptools setuptools_scm pytest-check numpy wheel scikit-build mkl mkl-devel
|
|
32
32
|
done
|
|
@@ -11,9 +11,9 @@ export PATH=/Applications/CMake.app/Contents/bin:$PATH
|
|
|
11
11
|
export NETGEN_Dir=$PYDIR/../lib/python$1/site-packages/netgen/cmake
|
|
12
12
|
export NGSolve_Dir=$PYDIR/../lib/python$1/site-packages/ngsolve/cmake
|
|
13
13
|
export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$NGSolve_Dir:$NETGEN_Dir
|
|
14
|
-
$PYDIR/pip3 install scikit-build wheel
|
|
14
|
+
$PYDIR/pip3 install scikit-build wheel setuptools==69.5.1 setuptools_scm==8.1.0
|
|
15
15
|
|
|
16
16
|
export CMAKE_OSX_ARCHITECTURES='arm64;x86_64'
|
|
17
|
-
$PYDIR/pip3 install
|
|
17
|
+
$PYDIR/pip3 install -r ./.github/workflows/ngsolve_version.txt
|
|
18
18
|
|
|
19
19
|
$PYDIR/python3 setup.py bdist_wheel --plat-name macosx-10.15-universal2 -d wheelhouse
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ngsolve>=6.2.2402
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
from skbuild import setup
|
|
4
|
+
from setuptools_scm import get_version
|
|
5
|
+
import sys
|
|
6
|
+
|
|
7
|
+
_cmake_args = []
|
|
8
|
+
version = get_version().split('+')[0]
|
|
9
|
+
|
|
10
|
+
ngsolve_version = '6.2.2402'
|
|
11
|
+
install_requires = [ 'ngsolve >= '+ngsolve_version, 'matplotlib' ]
|
|
12
|
+
|
|
13
|
+
setup(
|
|
14
|
+
name='ngstents',
|
|
15
|
+
version=version,
|
|
16
|
+
author='Jay Gopalakrishnan',
|
|
17
|
+
author_email='gjay@pdx.edu',
|
|
18
|
+
description='Spacetime tent facilities for solving hyperbolic equations',
|
|
19
|
+
long_description='This ngstents package is a c++ extension of the NGSolve finite element library, designed to ease experimentation with solvers based on spacetime tents for hyperbolic systems. A python front-end allows new equations (linear or nonlinear conservation laws) to be solved by easily defining required fluxes and numerical fluxes in a few lines of code.',
|
|
20
|
+
url="https://github.com/jayggg/ngstents",
|
|
21
|
+
license="LGPL2.1",
|
|
22
|
+
install_requires=install_requires,
|
|
23
|
+
packages=["ngstents"],
|
|
24
|
+
package_dir={"ngstents": "src"},
|
|
25
|
+
cmake_args=_cmake_args,
|
|
26
|
+
cmake_source_dir='src',
|
|
27
|
+
)
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
cmake_minimum_required(VERSION 3.1)
|
|
2
|
+
project(ngstents)
|
|
3
|
+
set(CMAKE_CXX_STANDARD 17)
|
|
4
|
+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
5
|
+
|
|
6
|
+
# Find NGSolve and Netgen using python
|
|
7
|
+
if(CMAKE_VERSION VERSION_LESS "3.18")
|
|
8
|
+
find_package(Python3 REQUIRED COMPONENTS Interpreter Development)
|
|
9
|
+
else()
|
|
10
|
+
find_package(Python3 REQUIRED COMPONENTS Interpreter Development.Module)
|
|
11
|
+
endif()
|
|
12
|
+
set(Netgen_DIR "" CACHE PATH "Path to directory containing NetgenConfig.cmake")
|
|
13
|
+
set(NGSolve_DIR "" CACHE PATH "Path to directory containing NGSolveConfig.cmake")
|
|
14
|
+
execute_process(COMMAND ${Python3_EXECUTABLE} -m netgen.config OUTPUT_STRIP_TRAILING_WHITESPACE OUTPUT_VARIABLE Netgen_DIR)
|
|
15
|
+
execute_process(COMMAND ${Python3_EXECUTABLE} -m ngsolve.config OUTPUT_STRIP_TRAILING_WHITESPACE OUTPUT_VARIABLE NGSolve_DIR)
|
|
16
|
+
find_package(NGSolve CONFIG REQUIRED)
|
|
17
|
+
|
|
18
|
+
### check if CMAKE_INSTALL_PREFIX is set by user, if not install in NGSolve python dir
|
|
19
|
+
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
|
20
|
+
execute_process(COMMAND ${Python3_EXECUTABLE} -m site --user-site OUTPUT_STRIP_TRAILING_WHITESPACE OUTPUT_VARIABLE install_dir RESULT_VARIABLE ret)
|
|
21
|
+
if (NOT ret EQUAL 0)
|
|
22
|
+
# user site directory is disabled (are we in a virtual environment?)
|
|
23
|
+
set(install_dir ${Python3_SITEARCH})
|
|
24
|
+
endif()
|
|
25
|
+
message("The python module ${module_name} will be installed to: ${install_dir}")
|
|
26
|
+
set(CMAKE_INSTALL_PREFIX ${install_dir} CACHE PATH "Install dir" FORCE)
|
|
27
|
+
else(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
|
28
|
+
#set(PY_INSTALL_DIR ${NGSOLVE_INSTALL_DIR_PYTHON} CACHE STRING "subdir of install dir for python modules")
|
|
29
|
+
execute_process(COMMAND ${Python3_EXECUTABLE} -c "import os.path, sysconfig;print(os.path.relpath(sysconfig.get_path('platlib'), sysconfig.get_path('data')))" OUTPUT_VARIABLE PY_INSTALL_DIR OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
30
|
+
endif(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
|
31
|
+
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} CACHE PATH "build dir")
|
|
32
|
+
|
|
33
|
+
add_library(_pytents SHARED
|
|
34
|
+
python_tents.cpp
|
|
35
|
+
tents.cpp
|
|
36
|
+
)
|
|
37
|
+
add_library(_pyconslaw SHARED
|
|
38
|
+
python_conslaw.cpp
|
|
39
|
+
burgers.cpp
|
|
40
|
+
euler.cpp
|
|
41
|
+
wave.cpp
|
|
42
|
+
advection.cpp
|
|
43
|
+
maxwell.cpp
|
|
44
|
+
symbolic.cpp
|
|
45
|
+
vis3d.cpp
|
|
46
|
+
)
|
|
47
|
+
target_link_libraries(_pytents PUBLIC ngsolve Python3::Module)
|
|
48
|
+
set_target_properties(_pytents PROPERTIES PREFIX "" CXX_STANDARD 17)
|
|
49
|
+
target_compile_definitions(_pytents PRIVATE NGSTENT_EXPORTS)
|
|
50
|
+
target_link_libraries(_pyconslaw PRIVATE _pytents)
|
|
51
|
+
set_target_properties(_pyconslaw PROPERTIES PREFIX "" CXX_STANDARD 17)
|
|
52
|
+
if(WIN32)
|
|
53
|
+
set_target_properties(_pytents PROPERTIES SUFFIX ".pyd" )
|
|
54
|
+
set_target_properties(_pyconslaw PROPERTIES SUFFIX ".pyd" )
|
|
55
|
+
else(WIN32)
|
|
56
|
+
set_target_properties(_pytents PROPERTIES SUFFIX ".so")
|
|
57
|
+
set_target_properties(_pyconslaw PROPERTIES SUFFIX ".so")
|
|
58
|
+
endif(WIN32)
|
|
59
|
+
set_target_properties(_pytents PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/ngstents")
|
|
60
|
+
set_target_properties(_pyconslaw PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/ngstents")
|
|
61
|
+
|
|
62
|
+
option(BUILD_STUB_FILES "Generate stub files for better autocompletion support" OFF)
|
|
63
|
+
if(BUILD_STUB_FILES)
|
|
64
|
+
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import pybind11_stubgen; print(pybind11_stubgen.__file__)" OUTPUT_VARIABLE stubgen_path RESULT_VARIABLE pybind11_stubgen)
|
|
65
|
+
if(pybind11_stubgen AND NOT ${pybind11_stubgen} EQUAL 0)
|
|
66
|
+
message(WARNING "pybind11-stubgeN not found, if you want to create stub files
|
|
67
|
+
for better autocompletion support install it with pip.")
|
|
68
|
+
else()
|
|
69
|
+
message("-- Found pybind11-stubgen: ${stubgen_path}")
|
|
70
|
+
set(FOUND_STUBGEN ON)
|
|
71
|
+
endif()
|
|
72
|
+
message(STATUS
|
|
73
|
+
"This project is only compatible with\n\t\tpybind11-stubgen==0.5")
|
|
74
|
+
endif(BUILD_STUB_FILES)
|
|
75
|
+
|
|
76
|
+
message("With 'make install' the python package will be installed to: ${CMAKE_INSTALL_PREFIX}/${PY_INSTALL_DIR}")
|
|
77
|
+
install(TARGETS _pytents DESTINATION ${CMAKE_INSTALL_PREFIX}/${PY_INSTALL_DIR}/ngstents)
|
|
78
|
+
install(TARGETS _pyconslaw DESTINATION ${CMAKE_INSTALL_PREFIX}/${PY_INSTALL_DIR}/ngstents/conslaw)
|
|
79
|
+
|
|
80
|
+
install(FILES
|
|
81
|
+
../py/__init__.py
|
|
82
|
+
DESTINATION ${CMAKE_INSTALL_PREFIX}/${PY_INSTALL_DIR}/ngstents)
|
|
83
|
+
|
|
84
|
+
install(FILES
|
|
85
|
+
../py/utils/__init__.py
|
|
86
|
+
../py/utils/_drawtents.py
|
|
87
|
+
../py/utils/_drawtents2d.py
|
|
88
|
+
DESTINATION ${CMAKE_INSTALL_PREFIX}/${PY_INSTALL_DIR}/ngstents/utils)
|
|
89
|
+
|
|
90
|
+
install(FILES
|
|
91
|
+
../py/conslaw/__init__.py
|
|
92
|
+
DESTINATION ${CMAKE_INSTALL_PREFIX}/${PY_INSTALL_DIR}/ngstents/conslaw)
|
|
93
|
+
|
|
94
|
+
if(FOUND_STUBGEN)
|
|
95
|
+
install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m pybind11_stubgen --no-setup-py ngstents)")
|
|
96
|
+
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/stubs/ngstents-stubs/ DESTINATION ${CMAKE_INSTALL_PREFIX}/${PY_INSTALL_DIR}/ngstents)
|
|
97
|
+
endif(FOUND_STUBGEN)
|
{ngstrefftz-0.3.2402.dev34 → ngstrefftz-0.3.2403.dev5}/external_dependencies/ngstents/src/tents.cpp
RENAMED
|
@@ -565,7 +565,7 @@ std::tuple<Table<int>,Table<int>> TentSlabPitcher::InitializeMeshData(LocalHeap
|
|
|
565
565
|
// Get the periodic vertex associated with a primary vertex in periodic case
|
|
566
566
|
void TentSlabPitcher::GetVertexElements(int vnr_main, Array<int> & elems) const
|
|
567
567
|
{
|
|
568
|
-
ma->GetVertexElements
|
|
568
|
+
elems = ma->GetVertexElements(vnr_main);
|
|
569
569
|
if(per_verts[vnr_main].Size()==0)
|
|
570
570
|
return;
|
|
571
571
|
else
|
|
@@ -147,6 +147,7 @@ namespace ngcomp
|
|
|
147
147
|
|
|
148
148
|
vector<shared_ptr<Matrix<SCAL>>> ETmats (ne);
|
|
149
149
|
auto lfvec = make_shared<VVector<SCAL>> (ndof);
|
|
150
|
+
lfvec->operator= (0.0);
|
|
150
151
|
|
|
151
152
|
size_t active_elements = 0;
|
|
152
153
|
size_t test_local_ndof = test_fes->GetNDof () / ne;
|
|
@@ -249,14 +250,15 @@ namespace ngcomp
|
|
|
249
250
|
nz = tndof;
|
|
250
251
|
else
|
|
251
252
|
{
|
|
252
|
-
nz = dofs.Size () - test_dofs.Size ();
|
|
253
|
-
nz = max (nz, 0);
|
|
253
|
+
nz = max<size_t> (dofs.Size () - test_dofs.Size (), 0);
|
|
254
254
|
for (int i = 0; i < min (elmat.Width (), elmat.Height ()); i++)
|
|
255
255
|
if (abs (elmat (i, i)) < eps)
|
|
256
256
|
nz++;
|
|
257
257
|
}
|
|
258
|
-
if (dofs.Size ()
|
|
259
|
-
throw Exception ("
|
|
258
|
+
if (dofs.Size () < nz)
|
|
259
|
+
throw Exception ("tndof too large, nz: " + to_string (nz)
|
|
260
|
+
+ ", dofs:" + to_string (dofs.Size ())
|
|
261
|
+
+ ", test_dofs:" + to_string (test_dofs.Size ()));
|
|
260
262
|
|
|
261
263
|
if (getrange)
|
|
262
264
|
ETmats[ei.Nr ()]
|
|
@@ -98,9 +98,15 @@ namespace ngcomp
|
|
|
98
98
|
case ET_QUAD:
|
|
99
99
|
case ET_TRIG:
|
|
100
100
|
{
|
|
101
|
+
Vec<2> scale = 1.0;
|
|
102
|
+
if (usescale == 2)
|
|
103
|
+
scale = { 1.0 / ElSize<2> (ei, { 1.0, 0 }),
|
|
104
|
+
1.0 / ElSize<2> (ei, { 0, 1.0 }) };
|
|
105
|
+
else if (usescale != 0)
|
|
106
|
+
scale = 1.0 / ElSize<2> (ei);
|
|
101
107
|
return *(new (alloc) ScalarMappedElement<2> (
|
|
102
108
|
local_ndof, order, basismat, eltype, ElCenter<2> (ei),
|
|
103
|
-
|
|
109
|
+
scale));
|
|
104
110
|
break;
|
|
105
111
|
}
|
|
106
112
|
case ET_HEX:
|
|
@@ -108,9 +114,18 @@ namespace ngcomp
|
|
|
108
114
|
case ET_PYRAMID:
|
|
109
115
|
case ET_TET:
|
|
110
116
|
{
|
|
117
|
+
Vec<3> scale = 1.0;
|
|
118
|
+
if (usescale == 2)
|
|
119
|
+
{
|
|
120
|
+
double hx = ElSize<3> (ei, { 1.0, 1.0, 0 });
|
|
121
|
+
double ht = ElSize<3> (ei, { 0, 0, 1.0 });
|
|
122
|
+
scale = { 1.0 / hx, 1.0 / hx, 1.0 / ht };
|
|
123
|
+
}
|
|
124
|
+
else if (usescale != 0)
|
|
125
|
+
scale = 1.0 / ElSize<3> (ei);
|
|
111
126
|
return *(new (alloc) ScalarMappedElement<3> (
|
|
112
127
|
local_ndof, order, basismat, eltype, ElCenter<3> (ei),
|
|
113
|
-
|
|
128
|
+
scale));
|
|
114
129
|
break;
|
|
115
130
|
}
|
|
116
131
|
}
|
|
@@ -51,47 +51,29 @@ namespace ngcomp
|
|
|
51
51
|
MatToCSR (basis, tb);
|
|
52
52
|
return tb;
|
|
53
53
|
}
|
|
54
|
-
|
|
55
|
-
|
|
54
|
+
template <int D>
|
|
55
|
+
double ElSize (ElementId ei, Vec<D> coeff_const = 1.0) const
|
|
56
56
|
{
|
|
57
|
-
if (usescale == 0)
|
|
58
|
-
return 1.0;
|
|
59
|
-
LocalHeap lh (1000 * 1000);
|
|
60
57
|
double anisotropicdiam = 0.0;
|
|
61
58
|
auto vertices_index = ma->GetElVertices (ei);
|
|
62
|
-
|
|
63
59
|
for (auto vertex1 : vertices_index)
|
|
64
60
|
{
|
|
65
61
|
for (auto vertex2 : vertices_index)
|
|
66
62
|
{
|
|
67
|
-
Vec<D>
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
ElementTransformation &trafo = ma->GetTrafo (ei, lh);
|
|
71
|
-
MappedIntegrationPoint<D, D> mip (ir[0], trafo);
|
|
72
|
-
mip.Point () = v1;
|
|
73
|
-
double c1 = coeff_cf ? coeff_cf->Evaluate (mip) : 1.0;
|
|
74
|
-
mip.Point () = v2;
|
|
75
|
-
double c2 = coeff_cf ? coeff_cf->Evaluate (mip) : 1.0;
|
|
76
|
-
|
|
77
|
-
anisotropicdiam = max (
|
|
78
|
-
anisotropicdiam,
|
|
79
|
-
sqrt (L2Norm2 (v1.Range (0, D - 1) - v2.Range (0, D - 1))
|
|
80
|
-
+ pow (c1 * v1 (D - 1) - c2 * v2 (D - 1), 2)));
|
|
63
|
+
Vec<D> v = ma->GetPoint<D> (vertex2) - ma->GetPoint<D> (vertex1);
|
|
64
|
+
vtimes (v, coeff_const);
|
|
65
|
+
anisotropicdiam = max (anisotropicdiam, sqrt (L2Norm2 (v)));
|
|
81
66
|
}
|
|
82
67
|
}
|
|
83
68
|
return anisotropicdiam;
|
|
84
69
|
}
|
|
85
|
-
|
|
86
70
|
template <int D> Vec<D> ElCenter (ElementId ei) const
|
|
87
71
|
{
|
|
88
|
-
if (useshift == 0)
|
|
89
|
-
return 1;
|
|
90
72
|
Vec<D> center = 0;
|
|
91
73
|
auto vertices_index = ma->GetElVertices (ei);
|
|
92
74
|
for (auto vertex : vertices_index)
|
|
93
75
|
center += ma->GetPoint<D> (vertex);
|
|
94
|
-
center *= (1.0 / vertices_index.Size ());
|
|
76
|
+
center *= (1.0 / vertices_index.Size ()) * useshift;
|
|
95
77
|
return center;
|
|
96
78
|
}
|
|
97
79
|
};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ngstrefftz
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2403.dev5
|
|
4
4
|
Summary: NGSTrefftz is an add-on to NGSolve for Trefftz methods.
|
|
5
5
|
Home-page: https://github.com/PaulSt/ngstrefftz
|
|
6
6
|
Author: Paul Stocker
|
|
7
7
|
Author-email: p.stocker@math.uni-goettingen.de
|
|
8
8
|
License: LGPL2.1
|
|
9
9
|
License-File: LICENSE
|
|
10
|
-
Requires-Dist: ngsolve>=6.2.
|
|
10
|
+
Requires-Dist: ngsolve>=6.2.2402
|
|
11
11
|
Requires-Dist: ngstents>=0.0.2.dev39
|
|
12
12
|
Requires-Dist: mkl
|
|
13
13
|
|
|
@@ -48,6 +48,7 @@ external_dependencies/ngstents/.github/workflows/build_pip.ps1
|
|
|
48
48
|
external_dependencies/ngstents/.github/workflows/build_pip.sh
|
|
49
49
|
external_dependencies/ngstents/.github/workflows/build_pip_mac.sh
|
|
50
50
|
external_dependencies/ngstents/.github/workflows/fix_auditwheel_policy.py
|
|
51
|
+
external_dependencies/ngstents/.github/workflows/ngsolve_version.txt
|
|
51
52
|
external_dependencies/ngstents/demo/advection/Advection_Periodic_Clipping.ipynb
|
|
52
53
|
external_dependencies/ngstents/demo/advection/advection2d.py
|
|
53
54
|
external_dependencies/ngstents/demo/advection/advection2d_periodic.py
|