xfem 2.1.2405.dev38__tar.gz → 2.1.2406.dev1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/.ci/build_pip.sh +1 -1
  2. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/.gitlab-ci.yml +1 -1
  3. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/PKG-INFO +1 -1
  4. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/pyproject.toml +12 -2
  5. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/__init__.py +9 -0
  6. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/_version.py +2 -2
  7. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/SpaceTimeFE.cpp +27 -0
  8. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/SpaceTimeFE.hpp +3 -0
  9. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/SpaceTimeFESpace.cpp +4 -2
  10. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/diffopDt.cpp +49 -28
  11. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/diffopDt.hpp +38 -18
  12. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/.ci/build_pip_mac.sh +0 -0
  13. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/.ci/ci_ctests.sh +0 -0
  14. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/.ci/fix_auditwheel_policy.py +0 -0
  15. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/.github/workflows/extras-workflow.yml +0 -0
  16. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/.github/workflows/paper-workflow.yml +0 -0
  17. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/.github/workflows/pypi.yml +0 -0
  18. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/.gitignore +0 -0
  19. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/.gitmodules +0 -0
  20. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/CMakeLists.txt +0 -0
  21. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/Dockerfile +0 -0
  22. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/INSTALLATION.md +0 -0
  23. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/LICENSE +0 -0
  24. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/MANIFEST.in +0 -0
  25. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/README.md +0 -0
  26. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cmake_modules/check_submodules.cmake +0 -0
  27. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cmake_modules/cmake_uninstall.cmake.in +0 -0
  28. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/config.h.cmake +0 -0
  29. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/CMakeLists.txt +0 -0
  30. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/cutintegral.cpp +0 -0
  31. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/cutintegral.hpp +0 -0
  32. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/fieldeval.cpp +0 -0
  33. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/fieldeval.hpp +0 -0
  34. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/lsetintdomain.cpp +0 -0
  35. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/lsetintdomain.hpp +0 -0
  36. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/mlsetintegration.cpp +0 -0
  37. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/mlsetintegration.hpp +0 -0
  38. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/python_cutint.cpp +0 -0
  39. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/spacetimecutrule.cpp +0 -0
  40. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/spacetimecutrule.hpp +0 -0
  41. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/straightcutrule.cpp +0 -0
  42. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/straightcutrule.hpp +0 -0
  43. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/xdecompose.cpp +0 -0
  44. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/xdecompose.hpp +0 -0
  45. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/xintegration.cpp +0 -0
  46. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/cutint/xintegration.hpp +0 -0
  47. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/CMakeLists.txt +0 -0
  48. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/README.md +0 -0
  49. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/aggregates/aggfem_shapetester.py +0 -0
  50. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/aggregates/fictdom_aggfem.py +0 -0
  51. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/aggregates/fictdom_dg_aggfem.py +0 -0
  52. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/fictdom.py +0 -0
  53. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/fictdom_dg.py +0 -0
  54. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/fictdom_mlset.py +0 -0
  55. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/compp1prolong-playground.py +0 -0
  56. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/cutint/area_of_a_circle_quads.py +0 -0
  57. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/cutint/integrate_one_big_quad2D.py +0 -0
  58. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/cutint/integrate_one_big_quad3D.py +0 -0
  59. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/fictdom_dg3d.py +0 -0
  60. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/lsetcurving/integrate.py +0 -0
  61. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/make_uniform3D_grid.py +0 -0
  62. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mg_cut_poisson_p1.py +0 -0
  63. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mg_cut_poisson_p1p2_skinny.py +0 -0
  64. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mg_cut_poisson_p2.py +0 -0
  65. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mg_cut_poisson_p2_skinny.py +0 -0
  66. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mg_p1_working.py +0 -0
  67. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/cube.py +0 -0
  68. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/cube2.py +0 -0
  69. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/cube_codim2_test.py +0 -0
  70. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/even_simpler.py +0 -0
  71. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/multiple_triangles.py +0 -0
  72. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/simple.py +0 -0
  73. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/simple_mlcutinfo.py +0 -0
  74. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/simple_with_convinience.py +0 -0
  75. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/square.py +0 -0
  76. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/tensor_functions.py +0 -0
  77. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/test_GetOuterBoundary.py +0 -0
  78. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/test_draw.py +0 -0
  79. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/triangle.py +0 -0
  80. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/zalesak_disk.py +0 -0
  81. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/mlset/zalesak_sphere.py +0 -0
  82. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/p1prolong-playground.py +0 -0
  83. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/p2prolong-playground.py +0 -0
  84. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/graveyard/stokesxfem.py +0 -0
  85. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/linelasticity.py +0 -0
  86. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/lsetgeoms.py +0 -0
  87. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/moving_domain.py +0 -0
  88. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/mpi/mpi_nxfem.py +0 -0
  89. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/IF_circle.py +0 -0
  90. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/IF_marking.py +0 -0
  91. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/IF_periodic.py +0 -0
  92. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/area_of_a_hypersphere_ST.py +0 -0
  93. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/area_of_a_hypersphere_ST_conv.py +0 -0
  94. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/area_of_a_hypersphere_ST_conv_higher_order.py +0 -0
  95. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/area_of_a_sphere_ST.py +0 -0
  96. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/area_of_a_sphere_ST_conv.py +0 -0
  97. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/area_of_a_sphere_ST_conv_higher_order.py +0 -0
  98. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/fictdomain_Neumann_quad_testing.py +0 -0
  99. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/kite3D_in_sympy.py +0 -0
  100. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/kite_in_sympy.py +0 -0
  101. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/spaceP1_timeDGP1_3D.py +0 -0
  102. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/spaceP1_timeDGP1_3D_static.py +0 -0
  103. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/spaceP1_timeDGP1_kite.py +0 -0
  104. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/spaceP1_timeDGP1_kite3D.py +0 -0
  105. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/spaceP2_timeDGP1.py +0 -0
  106. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/spaceP2_timeDGP1_new.py +0 -0
  107. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/graveyard/spacePX_timeDGP1_kite.py +0 -0
  108. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/spaceDGtimeDG_unfitted.py +0 -0
  109. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/spaceDGtimeDG_unfitted_3D.py +0 -0
  110. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/spacetimeCG_unfitted.py +0 -0
  111. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/spacetimeDG_fitted.py +0 -0
  112. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/spacetimeDG_unfitted.py +0 -0
  113. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/spacetime_geom_error.py +0 -0
  114. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spacetime/spacetime_vtk.py +0 -0
  115. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/spdes/surfstokestracefem.py +0 -0
  116. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/stokescutfem.py +0 -0
  117. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/tracefem.py +0 -0
  118. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/demos/unf_interf_prob.py +0 -0
  119. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/feature-details.md +0 -0
  120. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/bubble-coarse.pdf +0 -0
  121. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/cuttet-quadrature.png +0 -0
  122. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/graveyard/cut_quadrature.png +0 -0
  123. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/graveyard/cut_quadrature_mlset.png +0 -0
  124. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/graveyard/cuttet.jpg +0 -0
  125. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/graveyard/intpoints.jpg +0 -0
  126. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/graveyard/spacetime1.png +0 -0
  127. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/graveyard/spacetime2.png +0 -0
  128. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/graveyard/zdisc-cut-elements.png +0 -0
  129. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/lsetcurv.jpg +0 -0
  130. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/mlset.png +0 -0
  131. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/patches.png +0 -0
  132. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/spacetime.png +0 -0
  133. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/twophase.pdf +0 -0
  134. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/unfittedmesh.jpg +0 -0
  135. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/xfem.jpg +0 -0
  136. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/graphics/xfes.png +0 -0
  137. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/latex.template +0 -0
  138. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/lit-ngsxfem.bib +0 -0
  139. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/literature.md +0 -0
  140. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/_static/custom.css +0 -0
  141. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/bullets.css +0 -0
  142. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/conf.py +0 -0
  143. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/contents.rst +0 -0
  144. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/index.rst +0 -0
  145. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/jupyter/index.rst +0 -0
  146. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/requirements.txt +0 -0
  147. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/xfem_misc/demos.rst +0 -0
  148. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/xfem_misc/feature-details.rst +0 -0
  149. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/xfem_misc/installation.rst +0 -0
  150. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/doc/sphinx/xfem_misc/literature.rst +0 -0
  151. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/CMakeLists.txt +0 -0
  152. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/calcpointshift.cpp +0 -0
  153. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/calcpointshift.hpp +0 -0
  154. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/lsetrefine.cpp +0 -0
  155. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/lsetrefine.hpp +0 -0
  156. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/projshift.cpp +0 -0
  157. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/projshift.hpp +0 -0
  158. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/python_lsetcurving.cpp +0 -0
  159. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/shiftedevaluate.cpp +0 -0
  160. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/shiftedevaluate.hpp +0 -0
  161. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/shiftintegrators.cpp +0 -0
  162. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/lsetcurving/shiftintegrators.hpp +0 -0
  163. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/ngsolve_addon.cmake +0 -0
  164. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/CMakeLists.txt +0 -0
  165. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/cutmg.py +0 -0
  166. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/lset_smoothblend.py +0 -0
  167. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/lset_spacetime.py +0 -0
  168. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/lsetcurv.py +0 -0
  169. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/mlset.py +0 -0
  170. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/ngs_check.py +0 -0
  171. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/python_ngsxfem.cpp +0 -0
  172. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/python/utils.py +0 -0
  173. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/CMakeLists.txt +0 -0
  174. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/SpaceTimeFESpace.hpp +0 -0
  175. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/python_spacetime.cpp +0 -0
  176. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/spacetime_vtk.cpp +0 -0
  177. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/spacetime_vtk.hpp +0 -0
  178. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/timecf.cpp +0 -0
  179. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/spacetime/timecf.hpp +0 -0
  180. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/CMakeLists.txt +0 -0
  181. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/ngsxfem_report.py +0 -0
  182. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_aggregates.py +0 -0
  183. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_backuprule.py +0 -0
  184. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_calc_linearized.py +0 -0
  185. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_differential_symbol.py +0 -0
  186. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_intcurved.py +0 -0
  187. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_local_solve.py +0 -0
  188. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_localgeom.py +0 -0
  189. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_memory_usage.py +0 -0
  190. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_mlset_integration.py +0 -0
  191. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_mlset_module_functionality.py +0 -0
  192. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_mlset_poisson.py +0 -0
  193. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_navier_stokes_2d1.py +0 -0
  194. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_ngsolve_version.py +0 -0
  195. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_nonlin.py +0 -0
  196. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_num_nxfem.py +0 -0
  197. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_nxfem.py +0 -0
  198. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_quadchallenges.py +0 -0
  199. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_shifteval.py +0 -0
  200. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_simd_cutint.py +0 -0
  201. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_simd_lf_blf.py +0 -0
  202. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_spacetime_lsetcurv.py +0 -0
  203. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_spacetime_set.py +0 -0
  204. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_spacetime_vtk.py +0 -0
  205. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_spacetimecutrule.py +0 -0
  206. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_straightcutrule.py +0 -0
  207. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_utils.py +0 -0
  208. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/tests/pytests/test_xfes_ndof.py +0 -0
  209. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/CMakeLists.txt +0 -0
  210. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/bitarraycf.cpp +0 -0
  211. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/bitarraycf.hpp +0 -0
  212. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/ngsxstd.cpp +0 -0
  213. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/ngsxstd.hpp +0 -0
  214. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/p1interpol.cpp +0 -0
  215. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/p1interpol.hpp +0 -0
  216. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/python_utils.cpp +0 -0
  217. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/restrictedblf.cpp +0 -0
  218. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/restrictedblf.hpp +0 -0
  219. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/restrictedfespace.cpp +0 -0
  220. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/restrictedfespace.hpp +0 -0
  221. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/xprolongation.cpp +0 -0
  222. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/utils/xprolongation.hpp +0 -0
  223. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/CMakeLists.txt +0 -0
  224. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/aggregates.cpp +0 -0
  225. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/aggregates.hpp +0 -0
  226. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/cutinfo.cpp +0 -0
  227. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/cutinfo.hpp +0 -0
  228. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/ghostpenalty.cpp +0 -0
  229. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/ghostpenalty.hpp +0 -0
  230. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/python_xfem.cpp +0 -0
  231. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/sFESpace.cpp +0 -0
  232. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/sFESpace.hpp +0 -0
  233. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/symboliccutbfi.cpp +0 -0
  234. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/symboliccutbfi.hpp +0 -0
  235. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/symboliccutlfi.cpp +0 -0
  236. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/symboliccutlfi.hpp +0 -0
  237. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/xFESpace.cpp +0 -0
  238. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/xFESpace.hpp +0 -0
  239. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/xfemdiffops.cpp +0 -0
  240. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/xfemdiffops.hpp +0 -0
  241. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/xfiniteelement.cpp +0 -0
  242. {xfem-2.1.2405.dev38 → xfem-2.1.2406.dev1}/xfem/xfiniteelement.hpp +0 -0
@@ -31,7 +31,7 @@ pip wheel -vvv .
31
31
  rm -rf _skbuild
32
32
  #auditwheel repair xfem*.whl
33
33
  #rm -f *.whl
34
- rename linux_ manylinux_2_17_x86_64.manylinux2014_ xfem*.whl
34
+ rename linux_ manylinux_2_28_x86_64.manylinux2014_ xfem*.whl
35
35
  mv xfem*.whl wheelhouse/
36
36
  rm -rf *.whl
37
37
 
@@ -273,7 +273,7 @@ pages:
273
273
 
274
274
  pip_linux:
275
275
  #image: quay.io/pypa/manylinux2014_x86_64
276
- image: sameli/manylinux2014_x86_64_cuda_11.7
276
+ image: quay.io/pypa/manylinux_2_28_x86_64
277
277
 
278
278
  stage: deploy
279
279
  script:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: xfem
3
- Version: 2.1.2405.dev38
3
+ Version: 2.1.2406.dev1
4
4
  Summary: (ngs)xfem is an Add-on library to Netgen/NGSolve for unfitted/cut FEM.
5
5
  Author-Email: Christoph Lehrenfeld <lehrenfeld@math.uni-goettingen.de>
6
6
  Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
@@ -12,7 +12,17 @@ classifiers = [
12
12
  ]
13
13
 
14
14
  [build-system]
15
- requires = ["setuptools>=45", "setuptools_scm[toml]>=8", "toml", "scikit-build-core>=0.9.0", "pybind11_stubgen", "cmake>=3.26.1", "ngsolve>=6.2.2405"]
15
+ requires = ["setuptools>=45",
16
+ "setuptools_scm[toml]>=8",
17
+ "scikit-build-core>=0.9.0",
18
+ "pybind11_stubgen",
19
+ "cmake>=3.26.1",
20
+ "ngsolve>=6.2.2405",
21
+ "toml; python_version >= '3.11'",
22
+ "tomli>=1.1.0; python_version < '3.11'"
23
+ ]
24
+
25
+
16
26
  build-backend = "scikit_build_core.build"
17
27
 
18
28
  [tool.scikit-build]
@@ -47,7 +57,7 @@ skip = """
47
57
  """
48
58
 
49
59
  [tool.cibuildwheel.linux]
50
- repair-wheel-command = "mv {wheel} {dest_dir} && rename linux_x86_64 manylinux_2_17_x86_64.manylinux2014_x86_64 {dest_dir}/*-linux_x86_64*.whl"
60
+ repair-wheel-command = "mv {wheel} {dest_dir} && rename linux_x86_64 manylinux_2_28_x86_64.manylinux2014_x86_64 {dest_dir}/*-linux_x86_64*.whl"
51
61
 
52
62
 
53
63
  [tool.cibuildwheel.macos]
@@ -135,6 +135,15 @@ Evaluates the time derivative (w.r.t. the reference time interval) of a Space-Ti
135
135
  return add
136
136
  raise Exception("cannot form dt")
137
137
 
138
+ def ddtref(func):
139
+ """
140
+ Evaluates the 2nd time derivative (w.r.t. the reference time interval) of a Space-Time function.
141
+ """
142
+ add = func.Operator("ddt")
143
+ if add:
144
+ return add
145
+ raise Exception("cannot form ddt")
146
+
138
147
  def dt(func):
139
148
  """
140
149
  Deprecated: use "dtref" instead
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '2.1.2405.dev38'
16
- __version_tuple__ = version_tuple = (2, 1, 2405, 'dev38')
15
+ __version__ = version = '2.1.2406.dev1'
16
+ __version_tuple__ = version_tuple = (2, 1, 2406, 'dev1')
@@ -155,6 +155,33 @@ namespace ngfem
155
155
 
156
156
  }
157
157
 
158
+ template <int D>
159
+ void SpaceTimeFE<D> :: CalcDDtShape (const IntegrationPoint & ip,
160
+ BareSliceVector<> ddshape) const
161
+
162
+ {
163
+ // matrix of derivatives:
164
+
165
+ Matrix<double> time_ddshape(tFE->GetNDof(),1);
166
+ IntegrationPoint z(override_time ? time : ip.Weight());
167
+
168
+ if(!IsSpaceTimeIntegrationPoint(ip))//only effectiv if sanity check is on
169
+ throw Exception("SpaceTimeFE :: CalcShape called with a mere space IR");
170
+
171
+ tFE->CalcDDShape(z,time_ddshape);
172
+
173
+ Vector<> space_shape(sFE->GetNDof());
174
+ sFE->CalcShape(ip,space_shape);
175
+
176
+ int ii = 0;
177
+ for(int j = 0; j < tFE->GetNDof(); j++) {
178
+ for(int i=0; i< sFE->GetNDof(); i++) {
179
+ ddshape(ii++) = space_shape(i)*time_ddshape(j,0);
180
+ }
181
+ }
182
+
183
+ }
184
+
158
185
  void LagrangePolyHornerCalc::CalcNewtonBasisCoeffs() {
159
186
  NewtonBasisCoeffs.SetSize(nodes.Size(), nodes.Size());
160
187
  for(int i=0; i<nodes.Size(); i++){
@@ -38,6 +38,9 @@ namespace ngfem
38
38
  virtual void CalcDtShape (const IntegrationPoint & ip,
39
39
  BareSliceVector<> dshape) const;
40
40
 
41
+ virtual void CalcDDtShape (const IntegrationPoint & ip,
42
+ BareSliceVector<> dshape) const;
43
+
41
44
  virtual void CalcDShape (const IntegrationPoint & ip,
42
45
  BareSliceMatrix<> dshape) const;
43
46
 
@@ -63,14 +63,16 @@ SpaceTimeFESpace :: SpaceTimeFESpace (shared_ptr<MeshAccess> ama, shared_ptr<FES
63
63
  Switch<2> (ma->GetDimension()-2, [&] (auto SDIM) {
64
64
  enum {SDIM2 = SDIM()+2}; // work around MSVC compile issue
65
65
  Switch<3> (dimension-1, [&] (auto DIM) {
66
- additional_evaluators.Set ("dt", make_shared<T_DifferentialOperator<DiffOpDtVec<SDIM2,DIM()+1>>>());
66
+ additional_evaluators.Set ("dt", make_shared<T_DifferentialOperator<DiffOpDtVec<SDIM2,DIM()+1,1>>>());
67
+ additional_evaluators.Set ("ddt", make_shared<T_DifferentialOperator<DiffOpDtVec<SDIM2,DIM()+1,2>>>());
67
68
  additional_evaluators.Set ("hesse", make_shared<T_DifferentialOperator<DiffOpHesse<DIM()+1>>> ());
68
69
  });
69
70
  });
70
71
  }
71
72
  else
72
73
  Switch<3> (ma->GetDimension()-1, [&] (auto DIM) {
73
- additional_evaluators.Set ("dt", make_shared<T_DifferentialOperator<DiffOpDt<DIM+1>>>());
74
+ additional_evaluators.Set ("dt", make_shared<T_DifferentialOperator<DiffOpDt<DIM+1,1>>>());
75
+ additional_evaluators.Set ("ddt", make_shared<T_DifferentialOperator<DiffOpDt<DIM+1,2>>>());
74
76
  additional_evaluators.Set ("fix_tref_bottom", make_shared<T_DifferentialOperator<DiffOpFixt<DIM+1,0>>>());
75
77
  additional_evaluators.Set ("fix_tref_top", make_shared<T_DifferentialOperator<DiffOpFixt<DIM+1,1>>>());
76
78
  additional_evaluators.Set ("hesse", make_shared<T_DifferentialOperator<DiffOpHesse<DIM+1>>> ());
@@ -8,9 +8,9 @@
8
8
  namespace ngfem
9
9
  {
10
10
 
11
- template <int SpaceD>
11
+ template <int SpaceD, int DerivOrder>
12
12
  template<typename FEL, typename MIP, typename MAT>
13
- void DiffOpDt<SpaceD>::GenerateMatrix (const FEL & bfel, const MIP & mip,
13
+ void DiffOpDt<SpaceD, DerivOrder>::GenerateMatrix (const FEL & bfel, const MIP & mip,
14
14
  MAT & mat, LocalHeap & lh)
15
15
  {
16
16
  IntegrationPoint ip(mip.IP());
@@ -18,21 +18,29 @@ namespace ngfem
18
18
 
19
19
  const SpaceTimeFE<SpaceD>* scafed = dynamic_cast<const SpaceTimeFE<SpaceD> * > (& bfel);
20
20
  FlatVector<> dtshape (scafed->GetNDof(),lh);
21
- scafed->CalcDtShape(ip,dtshape);
21
+ if (DerivOrder == 1)
22
+ scafed->CalcDtShape(ip,dtshape);
23
+ else
24
+ scafed->CalcDDtShape(ip,dtshape);
22
25
  mat.Row(0) = dtshape;
23
26
  }
24
27
 
25
28
  // explicit instantiation (needed for clang starting from NGSolve v6.2.2103 - not sure why exactly though)
26
- template void DiffOpDt<1>::GenerateMatrix(const FiniteElement & bfel, const ngfem::MappedIntegrationPoint<1, 1, double> & mip,
27
- ngbla::FlatMatrixFixHeight<1, double, 1> & mat, LocalHeap & lh);
28
-
29
- template class T_DifferentialOperator<DiffOpDt<1>>;
30
- template class T_DifferentialOperator<DiffOpDt<2>>;
31
- template class T_DifferentialOperator<DiffOpDt<3>>;
32
-
33
- template <int SpaceD, int D>
29
+ template void DiffOpDt<1,1>::GenerateMatrix(const FiniteElement & bfel, const ngfem::MappedIntegrationPoint<1, 1, double> & mip,
30
+ ngbla::FlatMatrixFixHeight<1, double, 1> & mat, LocalHeap & lh);
31
+ template void DiffOpDt<1,2>::GenerateMatrix(const FiniteElement & bfel, const ngfem::MappedIntegrationPoint<1, 1, double> & mip,
32
+ ngbla::FlatMatrixFixHeight<1, double, 1> & mat, LocalHeap & lh);
33
+
34
+ template class T_DifferentialOperator<DiffOpDt<1,1>>;
35
+ template class T_DifferentialOperator<DiffOpDt<2,1>>;
36
+ template class T_DifferentialOperator<DiffOpDt<3,1>>;
37
+ template class T_DifferentialOperator<DiffOpDt<1,2>>;
38
+ template class T_DifferentialOperator<DiffOpDt<2,2>>;
39
+ template class T_DifferentialOperator<DiffOpDt<3,2>>;
40
+
41
+ template <int SpaceD, int D, int DerivOrder>
34
42
  template <typename FEL, typename MIP, typename MAT>
35
- void DiffOpDtVec<SpaceD, D>::GenerateMatrix (const FEL & bfel, const MIP & mip,
43
+ void DiffOpDtVec<SpaceD, D, DerivOrder>::GenerateMatrix (const FEL & bfel, const MIP & mip,
36
44
  MAT & mat, LocalHeap & lh)
37
45
  {
38
46
  IntegrationPoint ip(mip.IP());
@@ -40,27 +48,40 @@ namespace ngfem
40
48
 
41
49
  const SpaceTimeFE<SpaceD>& scafed = dynamic_cast<const SpaceTimeFE<SpaceD>& > (bfel);
42
50
  FlatVector<> dtshape (scafed.GetNDof(),lh);
43
- scafed.CalcDtShape(ip,dtshape);
51
+
52
+ if (DerivOrder == 1)
53
+ scafed.CalcDtShape(ip,dtshape);
54
+ else
55
+ scafed.CalcDDtShape(ip,dtshape);
44
56
  for (int j = 0; j < D; j++)
45
57
  for (int k = 0; k < dtshape.Size(); k++)
46
58
  mat(j,k*D+j) = dtshape(k);
47
59
  }
48
60
 
49
- template class T_DifferentialOperator<DiffOpDtVec<0, 1>>;
50
- template class T_DifferentialOperator<DiffOpDtVec<0, 2>>;
51
- template class T_DifferentialOperator<DiffOpDtVec<0, 3>>;
52
-
53
- template class T_DifferentialOperator<DiffOpDtVec<1, 1>>;
54
- template class T_DifferentialOperator<DiffOpDtVec<1, 2>>;
55
- template class T_DifferentialOperator<DiffOpDtVec<1, 3>>;
56
-
57
- template class T_DifferentialOperator<DiffOpDtVec<2, 1>>;
58
- template class T_DifferentialOperator<DiffOpDtVec<2, 2>>;
59
- template class T_DifferentialOperator<DiffOpDtVec<2, 3>>;
60
-
61
- template class T_DifferentialOperator<DiffOpDtVec<3, 1>>;
62
- template class T_DifferentialOperator<DiffOpDtVec<3, 2>>;
63
- template class T_DifferentialOperator<DiffOpDtVec<3, 3>>;
61
+ template class T_DifferentialOperator<DiffOpDtVec<0, 1, 1>>;
62
+ template class T_DifferentialOperator<DiffOpDtVec<0, 2, 1>>;
63
+ template class T_DifferentialOperator<DiffOpDtVec<0, 3, 1>>;
64
+ template class T_DifferentialOperator<DiffOpDtVec<1, 1, 1>>;
65
+ template class T_DifferentialOperator<DiffOpDtVec<1, 2, 1>>;
66
+ template class T_DifferentialOperator<DiffOpDtVec<1, 3, 1>>;
67
+ template class T_DifferentialOperator<DiffOpDtVec<2, 1, 1>>;
68
+ template class T_DifferentialOperator<DiffOpDtVec<2, 2, 1>>;
69
+ template class T_DifferentialOperator<DiffOpDtVec<2, 3, 1>>;
70
+ template class T_DifferentialOperator<DiffOpDtVec<3, 1, 1>>;
71
+ template class T_DifferentialOperator<DiffOpDtVec<3, 2, 1>>;
72
+ template class T_DifferentialOperator<DiffOpDtVec<3, 3, 1>>;
73
+ template class T_DifferentialOperator<DiffOpDtVec<0, 1, 2>>;
74
+ template class T_DifferentialOperator<DiffOpDtVec<0, 2, 2>>;
75
+ template class T_DifferentialOperator<DiffOpDtVec<0, 3, 2>>;
76
+ template class T_DifferentialOperator<DiffOpDtVec<1, 1, 2>>;
77
+ template class T_DifferentialOperator<DiffOpDtVec<1, 2, 2>>;
78
+ template class T_DifferentialOperator<DiffOpDtVec<1, 3, 2>>;
79
+ template class T_DifferentialOperator<DiffOpDtVec<2, 1, 2>>;
80
+ template class T_DifferentialOperator<DiffOpDtVec<2, 2, 2>>;
81
+ template class T_DifferentialOperator<DiffOpDtVec<2, 3, 2>>;
82
+ template class T_DifferentialOperator<DiffOpDtVec<3, 1, 2>>;
83
+ template class T_DifferentialOperator<DiffOpDtVec<3, 2, 2>>;
84
+ template class T_DifferentialOperator<DiffOpDtVec<3, 3, 2>>;
64
85
 
65
86
  template <int SpaceD, int time>
66
87
  template <typename FEL, typename MIP, typename MAT>
@@ -7,8 +7,8 @@
7
7
  namespace ngfem
8
8
  {
9
9
 
10
- template<int SpaceD>
11
- class DiffOpDt : public DiffOp<DiffOpDt<SpaceD>>
10
+ template<int SpaceD, int DerivOrder>
11
+ class DiffOpDt : public DiffOp<DiffOpDt<SpaceD, DerivOrder>>
12
12
  {
13
13
 
14
14
  public:
@@ -23,8 +23,8 @@ template<int SpaceD>
23
23
  MAT & mat, LocalHeap & lh);
24
24
  };
25
25
 
26
- template <int SpaceD, int D>
27
- class DiffOpDtVec : public DiffOp<DiffOpDtVec<SpaceD, D>>
26
+ template <int SpaceD, int D, int DerivOrder>
27
+ class DiffOpDtVec : public DiffOp<DiffOpDtVec<SpaceD, D, DerivOrder>>
28
28
  {
29
29
 
30
30
  public:
@@ -105,20 +105,40 @@ template<int SpaceD>
105
105
 
106
106
 
107
107
  #ifndef FILE_DIFFOPDT_CPP
108
- extern template class T_DifferentialOperator<DiffOpDt<1>>;
109
- extern template class T_DifferentialOperator<DiffOpDt<2>>;
110
- extern template class T_DifferentialOperator<DiffOpDt<3>>;
111
- extern template class T_DifferentialOperator<DiffOpDtVec<0, 1>>;
112
- extern template class T_DifferentialOperator<DiffOpDtVec<0, 2>>;
113
- extern template class T_DifferentialOperator<DiffOpDtVec<0, 3>>;
114
- extern template class T_DifferentialOperator<DiffOpDtVec<1, 1>>;
115
- extern template class T_DifferentialOperator<DiffOpDtVec<1, 2>>;
116
- extern template class T_DifferentialOperator<DiffOpDtVec<2, 1>>;
117
- extern template class T_DifferentialOperator<DiffOpDtVec<2, 2>>;
118
- extern template class T_DifferentialOperator<DiffOpDtVec<2, 3>>;
119
- extern template class T_DifferentialOperator<DiffOpDtVec<3, 1>>;
120
- extern template class T_DifferentialOperator<DiffOpDtVec<3, 2>>;
121
- extern template class T_DifferentialOperator<DiffOpDtVec<3, 3>>;
108
+ extern template class T_DifferentialOperator<DiffOpDt<1,1>>;
109
+ extern template class T_DifferentialOperator<DiffOpDt<2,1>>;
110
+ extern template class T_DifferentialOperator<DiffOpDt<3,1>>;
111
+ extern template class T_DifferentialOperator<DiffOpDt<1,1>>;
112
+ extern template class T_DifferentialOperator<DiffOpDt<2,1>>;
113
+ extern template class T_DifferentialOperator<DiffOpDt<3,1>>;
114
+ extern template class T_DifferentialOperator<DiffOpDt<1,2>>;
115
+ extern template class T_DifferentialOperator<DiffOpDt<2,2>>;
116
+ extern template class T_DifferentialOperator<DiffOpDt<3,2>>;
117
+ extern template class T_DifferentialOperator<DiffOpDt<1,2>>;
118
+ extern template class T_DifferentialOperator<DiffOpDt<2,2>>;
119
+ extern template class T_DifferentialOperator<DiffOpDt<3,2>>;
120
+ extern template class T_DifferentialOperator<DiffOpDtVec<0, 1, 1>>;
121
+ extern template class T_DifferentialOperator<DiffOpDtVec<0, 2, 1>>;
122
+ extern template class T_DifferentialOperator<DiffOpDtVec<0, 3, 1>>;
123
+ extern template class T_DifferentialOperator<DiffOpDtVec<1, 1, 1>>;
124
+ extern template class T_DifferentialOperator<DiffOpDtVec<1, 2, 1>>;
125
+ extern template class T_DifferentialOperator<DiffOpDtVec<2, 1, 1>>;
126
+ extern template class T_DifferentialOperator<DiffOpDtVec<2, 2, 1>>;
127
+ extern template class T_DifferentialOperator<DiffOpDtVec<2, 3, 1>>;
128
+ extern template class T_DifferentialOperator<DiffOpDtVec<3, 1, 1>>;
129
+ extern template class T_DifferentialOperator<DiffOpDtVec<3, 2, 1>>;
130
+ extern template class T_DifferentialOperator<DiffOpDtVec<3, 3, 1>>;
131
+ extern template class T_DifferentialOperator<DiffOpDtVec<0, 1, 2>>;
132
+ extern template class T_DifferentialOperator<DiffOpDtVec<0, 2, 2>>;
133
+ extern template class T_DifferentialOperator<DiffOpDtVec<0, 3, 2>>;
134
+ extern template class T_DifferentialOperator<DiffOpDtVec<1, 1, 2>>;
135
+ extern template class T_DifferentialOperator<DiffOpDtVec<1, 2, 2>>;
136
+ extern template class T_DifferentialOperator<DiffOpDtVec<2, 1, 2>>;
137
+ extern template class T_DifferentialOperator<DiffOpDtVec<2, 2, 2>>;
138
+ extern template class T_DifferentialOperator<DiffOpDtVec<2, 3, 2>>;
139
+ extern template class T_DifferentialOperator<DiffOpDtVec<3, 1, 2>>;
140
+ extern template class T_DifferentialOperator<DiffOpDtVec<3, 2, 2>>;
141
+ extern template class T_DifferentialOperator<DiffOpDtVec<3, 3, 2>>;
122
142
  extern template class T_DifferentialOperator<DiffOpFixt<1, 0>>;
123
143
  extern template class T_DifferentialOperator<DiffOpFixt<1, 1>>;
124
144
  extern template class T_DifferentialOperator<DiffOpFixt<2, 0>>;
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes