ngstrefftz 0.3.2602.dev4__tar.gz → 0.3.2602.dev9__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.2602.dev4 → ngstrefftz-0.3.2602.dev9}/.github/workflows/build.yml +11 -10
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/PKG-INFO +4 -2
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/_version.py +3 -3
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/requirements.txt +2 -2
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/.github/workflows/build.yml +5 -38
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/docs/_config.yml +5 -17
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/docs/_toc.yml +2 -3
- ngstrefftz-0.3.2602.dev9/external_dependencies/ngstents/docs/assets/css/style.scss +2 -0
- ngstrefftz-0.3.2602.dev9/external_dependencies/ngstents/docs/do +2 -0
- ngstrefftz-0.3.2602.dev9/external_dependencies/ngstents/docs/figs/ngsTentsLogo.png +0 -0
- ngstrefftz-0.3.2602.dev9/external_dependencies/ngstents/docs/index.ipynb +49 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/pyproject.toml +8 -1
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/pyproject.toml +7 -4
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/embtrefftz.cpp +64 -19
- ngstrefftz-0.3.2602.dev9/src/planewavefe.hpp +402 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/specialintegrator.cpp +4 -4
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/trefftzfespace.cpp +3 -4
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/twavetents.cpp +24 -0
- ngstrefftz-0.3.2602.dev4/external_dependencies/ngstents/docs/INDEX.ipynb +0 -43
- ngstrefftz-0.3.2602.dev4/external_dependencies/ngstents/docs/conf.py +0 -99
- ngstrefftz-0.3.2602.dev4/external_dependencies/ngstents/docs/index.rst +0 -41
- ngstrefftz-0.3.2602.dev4/external_dependencies/ngstents/docs/intro.md +0 -0
- ngstrefftz-0.3.2602.dev4/external_dependencies/ngstents/docs/readme.rst +0 -2
- ngstrefftz-0.3.2602.dev4/src/planewavefe.hpp +0 -381
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/.clang-format +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/.github/workflows/fix_auditwheel_policy.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/.github/workflows/pyodide/Dockerfile +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/.github/workflows/pyodide/build_in_docker.sh +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/.github/workflows/pyodide/merge.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/.github/workflows/pyodide/requirements.txt +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/.gitignore +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/.gitmodules +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/CMakeLists.txt +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/CONTRIBUTING.md +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/Dockerfile +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/LICENSE +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/README.md +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/Doxyfile.in +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/_static/breadcrumbs.html +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/_static/css/mytheme.css +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/conf.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/contrib.rst +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/docu.rst +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/index.rst +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/intro.rst +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/embTrefftz-adv.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/embTrefftz-helm.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/embTrefftz-poi.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/embTrefftz-stokes.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/embTrefftz-wave.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/embTrefftz.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/helmholtz.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/index.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/laplace.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/qtelliptic.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/qtwave.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/tunfitted.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/twave.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/notebooks/twavetents.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/paper/codemeta.json +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/paper/paper.bib +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/paper/paper.md +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/docs/readme.rst +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/.gitignore +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/README.md +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/advection/Advection_Periodic_Clipping.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/advection/advection2d.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/advection/advection2d_periodic.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/burgers/Burgers_Clipping.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/burgers/burgers1d.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/burgers/burgers2d.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/euler/Euler_Clipping.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/euler/euler2d.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/euler/mach3_windtunnel.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/maxwell/maxwell3d.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/symbolic/symbolic_advection2d.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/symbolic/symbolic_burgers.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/symbolic/symbolic_euler.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/symbolic/symbolic_wave.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/symbolic/symbolic_wave1d_interface.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/symbolic/wave_penetrable_cylinder.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/tents/draw3dtent.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/tents/draw3dvertex.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/wave/horn.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/wave/wave2d.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/wave/wave2d_timedepbc.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/demo/wave/wave3d.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/docs/BurgersMTP.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/docs/StartPitching.ipynb +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/docs/figs/CausalityCond.png +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/docs/figs/dag.png +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/docs/figs/map.png +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/docs/figs/subtents.png +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/docs/requirements.txt +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/py/__init__.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/py/conslaw/__init__.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/py/utils/__init__.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/py/utils/_drawtents.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/py/utils/_drawtents2d.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/CMakeLists.txt +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/advection.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/burgers.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/concurrentqueue.h +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/conservationlaw.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/euler.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/maxwell.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/ngsolve_addon.cmake +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/paralleldepend.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/python_conslaw.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/python_tents.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/symbolic.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/tconservationlaw_tp_impl.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/tents.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/tents.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/tentsolver.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/tentsolver_impl.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/vis3d.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/vis3d.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/src/wave.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/tests/test_burgers_2D.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/tests/test_causal_tents.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/tests/test_conslaw.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/tests/test_tent_height_2D.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/tests/test_tentlayers.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/__init__.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/airy.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/boxintegral.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/boxintegral.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/condensedg.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/condensedg.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/diffopmapped.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/embtrefftz.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/mesh1dtents.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/mesh1dtents.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/monomialfespace.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/monomialfespace.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/ngsttd.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/planewavefe.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/pufe.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/pufe.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/pufespace.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/pufespace.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/python_trefftz.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/scalarmappedfe.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/scalarmappedfe.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/specialcoefficientfunction.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/specialcoefficientfunction.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/specialintegrator.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/tp0fespace.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/tp0fespace.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/trefftzfespace.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/src/twavetents.hpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/test/boxint.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/test/conforming_trefftz.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/test/dg.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/test/embt.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/test/embtrefftz_gtest.cpp +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/test/tents.py +0 -0
- {ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/test/trefftz.py +0 -0
|
@@ -45,14 +45,14 @@ jobs:
|
|
|
45
45
|
submodules: true
|
|
46
46
|
path: "NGSTrefftz"
|
|
47
47
|
fetch-depth: 0 # otherwise, you will fail to push refs to dest repo
|
|
48
|
-
|
|
49
|
-
with:
|
|
50
|
-
python-version: "3.13"
|
|
48
|
+
#- uses: actions/setup-python@v6
|
|
49
|
+
#with:
|
|
50
|
+
#python-version: "3.13"
|
|
51
51
|
- name: install ngstrefftz
|
|
52
52
|
#env:
|
|
53
53
|
#NGSTREFFTZ_USE_GTEST: 'ON'
|
|
54
54
|
run: |
|
|
55
|
-
python3 -m pip install --break-system-packages numpy scipy
|
|
55
|
+
python3 -m pip install --break-system-packages numpy scipy
|
|
56
56
|
cd NGSTrefftz && python3 -m pip install --break-system-packages . -v
|
|
57
57
|
- name: run test
|
|
58
58
|
run: cd $GITHUB_WORKSPACE/NGSTrefftz/test && python3 -m doctest -v *.py
|
|
@@ -75,7 +75,8 @@ jobs:
|
|
|
75
75
|
- name: install ngsolve
|
|
76
76
|
run: |
|
|
77
77
|
cd NGSTrefftz
|
|
78
|
-
pip install numpy scipy
|
|
78
|
+
pip install tomli numpy scipy
|
|
79
|
+
# pip install mkl-devel==2025.* mkl==2025.*
|
|
79
80
|
# pip install ngsolve
|
|
80
81
|
python3 <<'PY'
|
|
81
82
|
import tomllib, pathlib, subprocess, sys
|
|
@@ -107,12 +108,12 @@ jobs:
|
|
|
107
108
|
- os: ubuntu-latest
|
|
108
109
|
doit: ${{ inputs.level == 'quick' }}
|
|
109
110
|
cibw_build: cp313-*
|
|
110
|
-
- os: windows-
|
|
111
|
+
- os: windows-2025
|
|
111
112
|
cibw-arch: AMD64
|
|
112
|
-
cmake-generator: "Visual Studio
|
|
113
|
+
cmake-generator: "Visual Studio 17 2022"
|
|
113
114
|
cmake_generator_platform: "x64"
|
|
114
115
|
doit: ${{ inputs.level != 'quick' }}
|
|
115
|
-
cibw_build:
|
|
116
|
+
cibw_build: cp311-* cp312-* cp313-* cp314-*
|
|
116
117
|
env:
|
|
117
118
|
CIBW_BUILD: ${{ matrix.cibw_build }}
|
|
118
119
|
steps:
|
|
@@ -267,8 +268,8 @@ jobs:
|
|
|
267
268
|
merge-multiple: true
|
|
268
269
|
#- name: Display structure of downloaded files
|
|
269
270
|
#run: ls -R $GITHUB_WORKSPACE/wheels
|
|
270
|
-
|
|
271
|
-
|
|
271
|
+
- name: install ngstrefftz
|
|
272
|
+
run: pip install $GITHUB_WORKSPACE/wheels/*-cp313-cp313-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
|
|
272
273
|
- name: Build Sphinx HTML
|
|
273
274
|
run: sphinx-build -b html $GITHUB_WORKSPACE/NGSTrefftz/docs $GITHUB_WORKSPACE/NGSTrefftz/docs/_build/html
|
|
274
275
|
#- name: Download pyodide stuff
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: ngstrefftz
|
|
3
|
-
Version: 0.3.2602.
|
|
3
|
+
Version: 0.3.2602.dev9
|
|
4
4
|
Summary: NGSTrefftz is an add-on to NGSolve for Trefftz methods.
|
|
5
5
|
Author-Email: Paul Stocker <paul.stocker@univie.ac.at>
|
|
6
6
|
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
|
|
7
7
|
Project-URL: Documentation, https://paulst.github.io/NGSTrefftz
|
|
8
8
|
Project-URL: Repository, https://github.com/PaulSt/ngstrefftz
|
|
9
9
|
Requires-Python: >=3.10
|
|
10
|
-
Requires-Dist:
|
|
10
|
+
Requires-Dist: mkl<2026.0,>=2024; platform_system != "Darwin"
|
|
11
|
+
Requires-Dist: mkl-devel<2026.0,>=2024; platform_system != "Darwin"
|
|
12
|
+
Requires-Dist: ngsolve==6.2.2603
|
|
11
13
|
Description-Content-Type: text/markdown
|
|
12
14
|
|
|
13
15
|
# NGSTrefftz
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '0.3.2602.
|
|
22
|
-
__version_tuple__ = version_tuple = (0, 3, 2602, '
|
|
21
|
+
__version__ = version = '0.3.2602.dev9'
|
|
22
|
+
__version_tuple__ = version_tuple = (0, 3, 2602, 'dev9')
|
|
23
23
|
|
|
24
|
-
__commit_id__ = commit_id = '
|
|
24
|
+
__commit_id__ = commit_id = 'g95bb94f98'
|
|
@@ -13,8 +13,10 @@ jobs:
|
|
|
13
13
|
runs-on: ${{ matrix.os }}
|
|
14
14
|
strategy:
|
|
15
15
|
matrix:
|
|
16
|
-
os: [ubuntu-latest, macos-
|
|
16
|
+
os: [ubuntu-latest, macos-latest]
|
|
17
17
|
include:
|
|
18
|
+
- os: ubuntu-latest
|
|
19
|
+
cibw_build: cp313-*
|
|
18
20
|
- os: windows-2022
|
|
19
21
|
cibw-arch: AMD64
|
|
20
22
|
cmake-generator: "Visual Studio 17 2022"
|
|
@@ -28,11 +30,11 @@ jobs:
|
|
|
28
30
|
fetch-depth: 0
|
|
29
31
|
|
|
30
32
|
- name: Build wheels
|
|
31
|
-
uses: pypa/cibuildwheel
|
|
33
|
+
uses: pypa/cibuildwheel@@v2.23.2
|
|
32
34
|
|
|
33
35
|
- uses: actions/upload-artifact@v4
|
|
34
36
|
with:
|
|
35
|
-
name: cibw-wheels-${{ matrix.os }}
|
|
37
|
+
name: cibw-wheels-${{ matrix.os }}
|
|
36
38
|
path: ./wheelhouse/*.whl
|
|
37
39
|
|
|
38
40
|
build_sdist:
|
|
@@ -72,38 +74,3 @@ jobs:
|
|
|
72
74
|
skip-existing: true
|
|
73
75
|
password: ${{ secrets.PYPI_API_TOKEN }}
|
|
74
76
|
|
|
75
|
-
docs:
|
|
76
|
-
runs-on: ubuntu-24.04
|
|
77
|
-
environment:
|
|
78
|
-
name: github-pages
|
|
79
|
-
url: ${{ steps.deployment.outputs.page_url }}
|
|
80
|
-
permissions:
|
|
81
|
-
pages: write
|
|
82
|
-
id-token: write
|
|
83
|
-
steps:
|
|
84
|
-
- uses: actions/checkout@v4
|
|
85
|
-
with:
|
|
86
|
-
fetch-depth: 0 # otherwise, you will failed to push refs to dest repo
|
|
87
|
-
submodules: 'False'
|
|
88
|
-
path: '.'
|
|
89
|
-
- name: apt-get
|
|
90
|
-
run: sudo apt-get update && DEBIAN_FRONTEND="noninteractive" sudo apt-get -y install python3-testresources npm nodejs pandoc -y
|
|
91
|
-
- name: pip install requirements
|
|
92
|
-
run: |
|
|
93
|
-
python3 -m pip install --break-system-packages build webgui_jupyter_widgets scikit-build-core pybind11_stubgen cmake ngsolve "numpy<2" matplotlib setuptools-scm "ninja>=1.5" toml "setuptools_scm[toml]>=8"
|
|
94
|
-
python3 -m build -wn .
|
|
95
|
-
python3 -m pip install --break-system-packages dist/*.whl
|
|
96
|
-
python3 -c 'import ngstents'
|
|
97
|
-
- name: Build the book
|
|
98
|
-
run: |
|
|
99
|
-
cd docs
|
|
100
|
-
python3 -m pip install --break-system-packages jupyter-book
|
|
101
|
-
jupyter-book build .
|
|
102
|
-
- name: Upload artifact
|
|
103
|
-
uses: actions/upload-pages-artifact@v3
|
|
104
|
-
with:
|
|
105
|
-
path: "docs/_build/html"
|
|
106
|
-
- name: Deploy to GitHub Pages
|
|
107
|
-
if: github.ref == 'refs/heads/master'
|
|
108
|
-
id: deployment
|
|
109
|
-
uses: actions/deploy-pages@v4
|
|
@@ -1,34 +1,22 @@
|
|
|
1
1
|
# Book settings
|
|
2
2
|
# Learn more at https://jupyterbook.org/customize/config.html
|
|
3
3
|
|
|
4
|
-
title:
|
|
4
|
+
title: ngsTents
|
|
5
5
|
author: Jay Gopalakrishnan
|
|
6
|
+
logo: figs/ngsTentsLogo.png
|
|
6
7
|
copyright : "2024" # Copyright year to be placed in the footer
|
|
7
8
|
|
|
8
9
|
repository:
|
|
9
10
|
url: https://github.com/jayggg/ngstents
|
|
11
|
+
path_to_book: docs # Optional path to your book, relative to the repository root
|
|
12
|
+
branch: gh-pages # Which repo branch to use when creating links
|
|
10
13
|
|
|
11
14
|
# Force re-execution of notebooks on each build.
|
|
12
15
|
# See https://jupyterbook.org/content/execute.html
|
|
13
16
|
execute:
|
|
14
|
-
execute_notebooks:
|
|
17
|
+
execute_notebooks: auto
|
|
15
18
|
timeout: 5000
|
|
16
19
|
|
|
17
|
-
# Define the name of the latex output file for PDF builds
|
|
18
|
-
# latex:
|
|
19
|
-
# latex_documents:
|
|
20
|
-
# targetname: ngstentsdoc.tex
|
|
21
|
-
#
|
|
22
|
-
# Add a bibtex file so that we can create citations
|
|
23
|
-
# bibtex_bibfiles:
|
|
24
|
-
# - references.bib
|
|
25
|
-
#
|
|
26
|
-
# Information about where the book exists on the web
|
|
27
|
-
# repository:
|
|
28
|
-
# url: https://jayggg.github.io/ngstents/
|
|
29
|
-
# path_to_book: docs # Optional path to your book, relative to the repository root
|
|
30
|
-
# branch: master # Which branch of the repository should be used when creating links (optional)
|
|
31
|
-
|
|
32
20
|
|
|
33
21
|
# Add GitHub buttons to your book
|
|
34
22
|
# See https://jupyterbook.org/customize/config.html#add-a-link-to-your-repository
|
{ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/docs/_toc.yml
RENAMED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
# Table of contents
|
|
2
|
-
# Learn more at https://jupyterbook.org/customize/toc.html
|
|
3
2
|
|
|
4
3
|
format: jb-book
|
|
5
|
-
root:
|
|
4
|
+
root: index.ipynb
|
|
6
5
|
|
|
7
6
|
parts:
|
|
8
|
-
- caption:
|
|
7
|
+
- caption: Concepts & Usage
|
|
9
8
|
numbered: False
|
|
10
9
|
chapters:
|
|
11
10
|
- file: StartPitching.ipynb
|
|
Binary file
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cells": [
|
|
3
|
+
{
|
|
4
|
+
"cell_type": "markdown",
|
|
5
|
+
"id": "096ca91a-ba85-4b6c-b103-72bd888f6567",
|
|
6
|
+
"metadata": {},
|
|
7
|
+
"source": [
|
|
8
|
+
"# Spacetime Tents in NGSolve"
|
|
9
|
+
]
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"cell_type": "markdown",
|
|
13
|
+
"id": "b694b134-565e-4208-841e-3f7ac8b082c1",
|
|
14
|
+
"metadata": {},
|
|
15
|
+
"source": [
|
|
16
|
+
"The **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 (`import ngstents`) 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."
|
|
17
|
+
]
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"cell_type": "markdown",
|
|
21
|
+
"id": "3e80540e-f0bd-414a-93af-f7a26d5ed062",
|
|
22
|
+
"metadata": {},
|
|
23
|
+
"source": [
|
|
24
|
+
"This documentation introduces *concepts* on which ngsTents are based on as well as the *usage* of the package. It is structured as two hands-on lecture notebooks. These lectures were first presented in an NGSolve User Meeting and were prepared by [Jay Gopalakrishnan](https://web.pdx.edu/~gjay/). Send all comments to gjay@pdx.edu or pull requests via [ngstents repository in GitHub](https://github.com/jayggg/ngstents). \n"
|
|
25
|
+
]
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"metadata": {
|
|
29
|
+
"kernelspec": {
|
|
30
|
+
"display_name": "Python 3 (ipykernel)",
|
|
31
|
+
"language": "python",
|
|
32
|
+
"name": "python3"
|
|
33
|
+
},
|
|
34
|
+
"language_info": {
|
|
35
|
+
"codemirror_mode": {
|
|
36
|
+
"name": "ipython",
|
|
37
|
+
"version": 3
|
|
38
|
+
},
|
|
39
|
+
"file_extension": ".py",
|
|
40
|
+
"mimetype": "text/x-python",
|
|
41
|
+
"name": "python",
|
|
42
|
+
"nbconvert_exporter": "python",
|
|
43
|
+
"pygments_lexer": "ipython3",
|
|
44
|
+
"version": "3.14.0"
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
"nbformat": 4,
|
|
48
|
+
"nbformat_minor": 5
|
|
49
|
+
}
|
{ngstrefftz-0.3.2602.dev4 → ngstrefftz-0.3.2602.dev9}/external_dependencies/ngstents/pyproject.toml
RENAMED
|
@@ -12,7 +12,14 @@ classifiers = [
|
|
|
12
12
|
]
|
|
13
13
|
|
|
14
14
|
[build-system]
|
|
15
|
-
requires = ["ngsolve>=6.2.
|
|
15
|
+
requires = ["ngsolve>=6.2.2506",
|
|
16
|
+
"matplotlib",
|
|
17
|
+
"setuptools>=45",
|
|
18
|
+
"setuptools_scm>=8",
|
|
19
|
+
"toml; python_version >= '3.11'",
|
|
20
|
+
"tomli>=1.1.0; python_version < '3.11'",
|
|
21
|
+
"scikit-build-core>=0.9.0",
|
|
22
|
+
"cmake>=3.26.1"]
|
|
16
23
|
build-backend = "scikit_build_core.build"
|
|
17
24
|
|
|
18
25
|
##########################################################################
|
|
@@ -9,7 +9,9 @@ classifiers = [
|
|
|
9
9
|
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
|
|
10
10
|
]
|
|
11
11
|
dependencies = [
|
|
12
|
-
"
|
|
12
|
+
"mkl>=2024,<2026.0 ; platform_system != 'Darwin'",
|
|
13
|
+
"mkl-devel>=2024,<2026.0 ; platform_system != 'Darwin'",
|
|
14
|
+
"ngsolve==6.2.2603",
|
|
13
15
|
]
|
|
14
16
|
|
|
15
17
|
|
|
@@ -18,15 +20,16 @@ Documentation = "https://paulst.github.io/NGSTrefftz"
|
|
|
18
20
|
Repository = "https://github.com/PaulSt/ngstrefftz"
|
|
19
21
|
|
|
20
22
|
[build-system]
|
|
21
|
-
requires = ["ngsolve==6.2.
|
|
23
|
+
requires = ["ngsolve==6.2.2603",
|
|
22
24
|
"scikit-build-core>=0.9.0",
|
|
23
25
|
"pybind11_stubgen",
|
|
24
26
|
"setuptools>=45",
|
|
25
27
|
"setuptools_scm>=8",
|
|
26
28
|
"toml; python_version >= '3.11'",
|
|
27
29
|
"tomli>=1.1.0; python_version < '3.11'",
|
|
28
|
-
"mkl
|
|
29
|
-
"mkl-devel
|
|
30
|
+
"mkl>=2024,<2026.0 ; platform_system != 'Darwin'",
|
|
31
|
+
"mkl-devel>=2024,<2026.0 ; platform_system != 'Darwin'",
|
|
32
|
+
]
|
|
30
33
|
build-backend = "scikit_build_core.build"
|
|
31
34
|
|
|
32
35
|
[tool.scikit-build]
|
|
@@ -402,23 +402,50 @@ Elmats2Sparse (const FlatArray<optional<Matrix<SCAL>>> &etmats,
|
|
|
402
402
|
|
|
403
403
|
void calculateBilinearFormIntegrators (
|
|
404
404
|
const SumOfIntegrals &bf,
|
|
405
|
-
Array<shared_ptr<BilinearFormIntegrator>> bfis[4]
|
|
405
|
+
Array<shared_ptr<BilinearFormIntegrator>> bfis[4],
|
|
406
|
+
shared_ptr<MeshAccess> ma)
|
|
406
407
|
{
|
|
407
408
|
for (auto icf : bf.icfs)
|
|
408
409
|
{
|
|
409
410
|
DifferentialSymbol &dx = icf->dx;
|
|
410
|
-
|
|
411
|
+
shared_ptr<BilinearFormIntegrator> bfi
|
|
412
|
+
= icf->MakeBilinearFormIntegrator ();
|
|
413
|
+
|
|
414
|
+
if (dx.definedon) // DifferentialSymbol cannot set definedon region as it
|
|
415
|
+
// has no mesh access.
|
|
416
|
+
{
|
|
417
|
+
if (auto definedon_string = get_if<string> (&*dx.definedon);
|
|
418
|
+
definedon_string)
|
|
419
|
+
{
|
|
420
|
+
Region reg (ma, dx.vb, *definedon_string);
|
|
421
|
+
bfi->SetDefinedOn (reg.Mask ());
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
bfis[dx.vb] += bfi;
|
|
411
426
|
}
|
|
412
427
|
}
|
|
413
428
|
|
|
414
429
|
void calculateLinearFormIntegrators (
|
|
415
430
|
const SumOfIntegrals &trhs,
|
|
416
|
-
Array<shared_ptr<LinearFormIntegrator>> lfis[4])
|
|
431
|
+
Array<shared_ptr<LinearFormIntegrator>> lfis[4], shared_ptr<MeshAccess> ma)
|
|
417
432
|
{
|
|
418
433
|
for (auto icf : trhs.icfs)
|
|
419
434
|
{
|
|
420
435
|
DifferentialSymbol &dx = icf->dx;
|
|
421
|
-
|
|
436
|
+
shared_ptr<LinearFormIntegrator> lfi = icf->MakeLinearFormIntegrator ();
|
|
437
|
+
|
|
438
|
+
if (dx.definedon)
|
|
439
|
+
{
|
|
440
|
+
if (auto definedon_string = get_if<string> (&*dx.definedon);
|
|
441
|
+
definedon_string)
|
|
442
|
+
{
|
|
443
|
+
Region reg (ma, dx.vb, *definedon_string);
|
|
444
|
+
lfi->SetDefinedOn (reg.Mask ());
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
lfis[dx.vb] += lfi;
|
|
422
449
|
}
|
|
423
450
|
}
|
|
424
451
|
|
|
@@ -458,14 +485,31 @@ bool fesHasInactiveDofs (const FESpace &fes)
|
|
|
458
485
|
}
|
|
459
486
|
|
|
460
487
|
bool bfIsDefinedOnElement (const SumOfIntegrals &bf,
|
|
461
|
-
const Ngs_Element &mesh_element
|
|
488
|
+
const Ngs_Element &mesh_element,
|
|
489
|
+
shared_ptr<MeshAccess> ma)
|
|
462
490
|
{
|
|
463
491
|
for (auto icf : bf.icfs)
|
|
464
492
|
{
|
|
465
|
-
if (icf->dx.vb
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
493
|
+
if (icf->dx.vb != mesh_element.VB ())
|
|
494
|
+
continue;
|
|
495
|
+
|
|
496
|
+
if (!icf->dx.definedonelements
|
|
497
|
+
|| icf->dx.definedonelements->Test (mesh_element.Nr ()))
|
|
498
|
+
return true;
|
|
499
|
+
|
|
500
|
+
if (icf->dx.definedon) // check region
|
|
501
|
+
{
|
|
502
|
+
if (auto definedon_string = get_if<string> (&*icf->dx.definedon);
|
|
503
|
+
definedon_string)
|
|
504
|
+
{
|
|
505
|
+
Region reg (ma, icf->dx.vb, *definedon_string);
|
|
506
|
+
const BitArray &definedon = reg.Mask ();
|
|
507
|
+
size_t mat = ma->GetElIndex (mesh_element);
|
|
508
|
+
if (mat >= definedon.Size ())
|
|
509
|
+
return false;
|
|
510
|
+
return definedon.Test (mat);
|
|
511
|
+
}
|
|
512
|
+
}
|
|
469
513
|
}
|
|
470
514
|
return false;
|
|
471
515
|
}
|
|
@@ -651,7 +695,8 @@ void calculateParticularSolution (
|
|
|
651
695
|
{
|
|
652
696
|
for (const auto &lfi : lfis[vorb])
|
|
653
697
|
{
|
|
654
|
-
if (lfi->DefinedOnElement (ei.Nr ())
|
|
698
|
+
if (lfi->DefinedOnElement (ei.Nr ())
|
|
699
|
+
&& lfi->DefinedOn (ma.GetElIndex (ei)))
|
|
655
700
|
{
|
|
656
701
|
auto &mapped_trafo
|
|
657
702
|
= trafo.AddDeformation (lfi->GetDeformation ().get (), mlh);
|
|
@@ -756,15 +801,15 @@ namespace ngcomp
|
|
|
756
801
|
Array<shared_ptr<BilinearFormIntegrator>> op_integrators[4],
|
|
757
802
|
cop_lhs_integrators[4], cop_rhs_integrators[4];
|
|
758
803
|
if (top)
|
|
759
|
-
calculateBilinearFormIntegrators (*top, op_integrators);
|
|
804
|
+
calculateBilinearFormIntegrators (*top, op_integrators, ma);
|
|
760
805
|
if (cop && crhs)
|
|
761
806
|
{
|
|
762
|
-
calculateBilinearFormIntegrators (*cop, cop_lhs_integrators);
|
|
763
|
-
calculateBilinearFormIntegrators (*crhs, cop_rhs_integrators);
|
|
807
|
+
calculateBilinearFormIntegrators (*cop, cop_lhs_integrators, ma);
|
|
808
|
+
calculateBilinearFormIntegrators (*crhs, cop_rhs_integrators, ma);
|
|
764
809
|
}
|
|
765
810
|
Array<shared_ptr<BilinearFormIntegrator>> fes_ip_integrators[4];
|
|
766
811
|
if (fes_ip)
|
|
767
|
-
calculateBilinearFormIntegrators (*fes_ip, fes_ip_integrators);
|
|
812
|
+
calculateBilinearFormIntegrators (*fes_ip, fes_ip_integrators, ma);
|
|
768
813
|
|
|
769
814
|
Array<optional<Matrix<SCAL>>> etmats (num_elements);
|
|
770
815
|
Array<optional<Matrix<SCAL>>> etmats_trefftz_inv (num_elements);
|
|
@@ -779,7 +824,7 @@ namespace ngcomp
|
|
|
779
824
|
particular_solution_vec->operator= (0.0);
|
|
780
825
|
Array<shared_ptr<LinearFormIntegrator>> lfis[4];
|
|
781
826
|
if (trhs)
|
|
782
|
-
calculateLinearFormIntegrators (*trhs, lfis);
|
|
827
|
+
calculateLinearFormIntegrators (*trhs, lfis, ma);
|
|
783
828
|
|
|
784
829
|
// we compute embedding matrices E_C, E_T and particular solution u_p that
|
|
785
830
|
// satisfy
|
|
@@ -797,9 +842,9 @@ namespace ngcomp
|
|
|
797
842
|
|
|
798
843
|
// skip this element, if the bilinear forms are not defined
|
|
799
844
|
// on this element
|
|
800
|
-
if (!(top && bfIsDefinedOnElement (*top, mesh_element))
|
|
801
|
-
&& !(cop && bfIsDefinedOnElement (*cop, mesh_element))
|
|
802
|
-
&& !(crhs && bfIsDefinedOnElement (*crhs, mesh_element)))
|
|
845
|
+
if (!(top && bfIsDefinedOnElement (*top, mesh_element, ma))
|
|
846
|
+
&& !(cop && bfIsDefinedOnElement (*cop, mesh_element, ma))
|
|
847
|
+
&& !(crhs && bfIsDefinedOnElement (*crhs, mesh_element, ma)))
|
|
803
848
|
return;
|
|
804
849
|
|
|
805
850
|
Array<DofId> dofs, dofs_test, dofs_conforming;
|
|
@@ -1091,7 +1136,7 @@ namespace ngcomp
|
|
|
1091
1136
|
particular_solution_vec = make_shared<VVector<double>> (fes->GetNDof ());
|
|
1092
1137
|
particular_solution_vec->operator= (0.0);
|
|
1093
1138
|
Array<shared_ptr<LinearFormIntegrator>> lfis[4];
|
|
1094
|
-
calculateLinearFormIntegrators (*_trhs, lfis);
|
|
1139
|
+
calculateLinearFormIntegrators (*_trhs, lfis, ma);
|
|
1095
1140
|
|
|
1096
1141
|
ma->IterateElements (
|
|
1097
1142
|
vb, clh, [&] (Ngs_Element mesh_element, LocalHeap &lh) {
|