ngsolve 6.2.2506.post216.dev0__cp314-cp314-manylinux_2_28_x86_64.whl

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 (306) hide show
  1. ngsolve-6.2.2506.post216.dev0.data/data/bin/ngs_nvcc +22 -0
  2. ngsolve-6.2.2506.post216.dev0.data/data/bin/ngs_nvlink +17 -0
  3. ngsolve-6.2.2506.post216.dev0.data/data/bin/ngscxx +15 -0
  4. ngsolve-6.2.2506.post216.dev0.data/data/bin/ngsld +11 -0
  5. ngsolve-6.2.2506.post216.dev0.data/data/bin/ngsolve.tcl +648 -0
  6. ngsolve-6.2.2506.post216.dev0.data/data/bin/ngspy +2 -0
  7. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/analytic_integrals.hpp +10 -0
  8. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/arnoldi.hpp +55 -0
  9. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/bandmatrix.hpp +334 -0
  10. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/basematrix.hpp +963 -0
  11. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/basevector.hpp +1268 -0
  12. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/bdbequations.hpp +2807 -0
  13. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/bdbintegrator.hpp +1660 -0
  14. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/bem_diffops.hpp +475 -0
  15. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/bessel.hpp +1064 -0
  16. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/bilinearform.hpp +966 -0
  17. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/bla.hpp +29 -0
  18. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/blockalloc.hpp +95 -0
  19. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/blockjacobi.hpp +328 -0
  20. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/bspline.hpp +116 -0
  21. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/calcinverse.hpp +141 -0
  22. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/cg.hpp +368 -0
  23. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/chebyshev.hpp +44 -0
  24. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/cholesky.hpp +720 -0
  25. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/clapack.h +7254 -0
  26. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/code_generation.hpp +296 -0
  27. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/coefficient.hpp +2033 -0
  28. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/coefficient_impl.hpp +19 -0
  29. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/coefficient_stdmath.hpp +167 -0
  30. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/commutingAMG.hpp +106 -0
  31. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/comp.hpp +79 -0
  32. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/compatibility.hpp +41 -0
  33. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/complex_wrapper.hpp +101 -0
  34. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/compressedfespace.hpp +110 -0
  35. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/contact.hpp +239 -0
  36. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/cuda_core.hpp +216 -0
  37. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/cuda_linalg.hpp +185 -0
  38. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/cuda_ngbla.hpp +317 -0
  39. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/cuda_ngstd.hpp +414 -0
  40. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/cuda_profiler.hpp +240 -0
  41. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/diagonalmatrix.hpp +160 -0
  42. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/differentialoperator.hpp +276 -0
  43. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/diffop.hpp +1286 -0
  44. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/diffop_impl.hpp +328 -0
  45. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/diffopwithfactor.hpp +123 -0
  46. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/discontinuous.hpp +84 -0
  47. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/dump.hpp +949 -0
  48. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/ectypes.hpp +121 -0
  49. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/eigen.hpp +60 -0
  50. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/eigensystem.hpp +18 -0
  51. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/elasticity_equations.hpp +595 -0
  52. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/elementbyelement.hpp +201 -0
  53. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/elementtopology.hpp +1760 -0
  54. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/elementtransformation.hpp +339 -0
  55. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/evalfunc.hpp +405 -0
  56. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/expr.hpp +1693 -0
  57. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/facetfe.hpp +175 -0
  58. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/facetfespace.hpp +180 -0
  59. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/facethofe.hpp +111 -0
  60. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/facetsurffespace.hpp +112 -0
  61. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/fe_interfaces.hpp +32 -0
  62. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/fem.hpp +87 -0
  63. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/fesconvert.hpp +14 -0
  64. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/fespace.hpp +1454 -0
  65. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/finiteelement.hpp +286 -0
  66. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/globalinterfacespace.hpp +77 -0
  67. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/globalspace.hpp +115 -0
  68. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/gridfunction.hpp +525 -0
  69. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/h1amg.hpp +124 -0
  70. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/h1hofe.hpp +188 -0
  71. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/h1hofe_impl.hpp +1262 -0
  72. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/h1hofefo.hpp +148 -0
  73. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/h1hofefo_impl.hpp +185 -0
  74. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/h1hofespace.hpp +167 -0
  75. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/h1lofe.hpp +1240 -0
  76. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/h1lumping.hpp +41 -0
  77. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurl_equations.hpp +1381 -0
  78. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurlcurlfe.hpp +2241 -0
  79. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurlcurlfespace.hpp +78 -0
  80. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurlfe.hpp +259 -0
  81. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurlfe_utils.hpp +107 -0
  82. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurlhdiv_dshape.hpp +857 -0
  83. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurlhdivfes.hpp +308 -0
  84. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurlhofe.hpp +175 -0
  85. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurlhofe_impl.hpp +1871 -0
  86. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurlhofespace.hpp +193 -0
  87. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hcurllofe.hpp +1146 -0
  88. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdiv_equations.hpp +880 -0
  89. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivdivfe.hpp +2923 -0
  90. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivdivsurfacespace.hpp +76 -0
  91. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivfe.hpp +206 -0
  92. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivfe_utils.hpp +717 -0
  93. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivfes.hpp +75 -0
  94. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivhofe.hpp +447 -0
  95. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivhofe_impl.hpp +1107 -0
  96. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivhofefo.hpp +229 -0
  97. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivhofespace.hpp +177 -0
  98. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivhosurfacefespace.hpp +106 -0
  99. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hdivlofe.hpp +773 -0
  100. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hidden.hpp +74 -0
  101. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/householder.hpp +181 -0
  102. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hypre_ams_precond.hpp +123 -0
  103. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/hypre_precond.hpp +73 -0
  104. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/integrator.hpp +2012 -0
  105. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/integratorcf.hpp +253 -0
  106. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/interpolate.hpp +49 -0
  107. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/intrule.hpp +2542 -0
  108. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/intrules_SauterSchwab.hpp +25 -0
  109. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/irspace.hpp +49 -0
  110. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/jacobi.hpp +153 -0
  111. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/kernels.hpp +724 -0
  112. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/l2hofe.hpp +194 -0
  113. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/l2hofe_impl.hpp +564 -0
  114. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/l2hofefo.hpp +542 -0
  115. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/l2hofespace.hpp +344 -0
  116. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/la.hpp +38 -0
  117. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/linalg_kernels.hpp +70 -0
  118. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/linearform.hpp +266 -0
  119. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/matrix.hpp +2145 -0
  120. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/memusage.hpp +41 -0
  121. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/meshaccess.hpp +1359 -0
  122. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/mgpre.hpp +204 -0
  123. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/mp_coefficient.hpp +145 -0
  124. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/mptools.hpp +2281 -0
  125. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/multigrid.hpp +42 -0
  126. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/multivector.hpp +447 -0
  127. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/mumpsinverse.hpp +187 -0
  128. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/mycomplex.hpp +361 -0
  129. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/ng_lapack.hpp +1661 -0
  130. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/ngblas.hpp +1232 -0
  131. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/ngs_defines.hpp +30 -0
  132. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/ngs_stdcpp_include.hpp +106 -0
  133. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/ngs_utils.hpp +121 -0
  134. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/ngsobject.hpp +1019 -0
  135. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/ngsstream.hpp +113 -0
  136. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/ngstd.hpp +72 -0
  137. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/nodalhofe.hpp +96 -0
  138. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/nodalhofe_impl.hpp +141 -0
  139. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/normalfacetfe.hpp +223 -0
  140. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/normalfacetfespace.hpp +98 -0
  141. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/normalfacetsurfacefespace.hpp +84 -0
  142. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/order.hpp +251 -0
  143. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/parallel_matrices.hpp +222 -0
  144. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/paralleldofs.hpp +340 -0
  145. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/parallelngs.hpp +23 -0
  146. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/parallelvector.hpp +269 -0
  147. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/pardisoinverse.hpp +200 -0
  148. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/periodic.hpp +129 -0
  149. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/plateaufespace.hpp +25 -0
  150. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/pml.hpp +275 -0
  151. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/pmltrafo.hpp +631 -0
  152. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/postproc.hpp +142 -0
  153. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/potentialtools.hpp +22 -0
  154. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/precomp.hpp +60 -0
  155. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/preconditioner.hpp +602 -0
  156. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/prolongation.hpp +380 -0
  157. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/python_comp.hpp +107 -0
  158. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/python_fem.hpp +89 -0
  159. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/python_linalg.hpp +58 -0
  160. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/python_ngstd.hpp +386 -0
  161. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/recursive_pol.hpp +4896 -0
  162. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/recursive_pol_tet.hpp +395 -0
  163. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/recursive_pol_trig.hpp +492 -0
  164. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/reorderedfespace.hpp +81 -0
  165. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/sample_sort.hpp +105 -0
  166. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/scalarfe.hpp +335 -0
  167. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/shapefunction_utils.hpp +113 -0
  168. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/simd_complex.hpp +329 -0
  169. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/smoother.hpp +253 -0
  170. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/solve.hpp +89 -0
  171. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/sparsecholesky.hpp +317 -0
  172. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/sparsefactorization_interface.hpp +159 -0
  173. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/sparsematrix.hpp +1052 -0
  174. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/sparsematrix_dyn.hpp +90 -0
  175. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/sparsematrix_impl.hpp +1055 -0
  176. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/special_matrix.hpp +463 -0
  177. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/specialelement.hpp +125 -0
  178. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/statushandler.hpp +33 -0
  179. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/stringops.hpp +12 -0
  180. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/superluinverse.hpp +136 -0
  181. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/symbolicintegrator.hpp +850 -0
  182. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/symmetricmatrix.hpp +144 -0
  183. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/tangentialfacetfe.hpp +224 -0
  184. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/tangentialfacetfespace.hpp +91 -0
  185. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/tensor.hpp +522 -0
  186. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/tensorcoefficient.hpp +446 -0
  187. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/tensorproductintegrator.hpp +113 -0
  188. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/thcurlfe.hpp +128 -0
  189. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/thcurlfe_impl.hpp +380 -0
  190. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/thdivfe.hpp +80 -0
  191. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/thdivfe_impl.hpp +492 -0
  192. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/tpdiffop.hpp +461 -0
  193. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/tpfes.hpp +133 -0
  194. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/tpintrule.hpp +224 -0
  195. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/triangular.hpp +465 -0
  196. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/tscalarfe.hpp +245 -0
  197. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/tscalarfe_impl.hpp +1029 -0
  198. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/umfpackinverse.hpp +148 -0
  199. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/unifiedvector.hpp +103 -0
  200. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/vector.hpp +1452 -0
  201. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/voxelcoefficientfunction.hpp +41 -0
  202. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/vtkoutput.hpp +198 -0
  203. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/vvector.hpp +208 -0
  204. ngsolve-6.2.2506.post216.dev0.data/data/include/netgen/webgui.hpp +92 -0
  205. ngsolve-6.2.2506.post216.dev0.data/data/lib/cmake/ngsolve/NGSolveConfig.cmake +102 -0
  206. ngsolve-6.2.2506.post216.dev0.data/data/lib/cmake/ngsolve/ngsolve-targets-release.cmake +89 -0
  207. ngsolve-6.2.2506.post216.dev0.data/data/lib/cmake/ngsolve/ngsolve-targets.cmake +180 -0
  208. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/netgen_mesher.libs/libngbla.so +0 -0
  209. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/netgen_mesher.libs/libngcomp.so +0 -0
  210. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/netgen_mesher.libs/libngfem.so +0 -0
  211. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/netgen_mesher.libs/libngla.so +0 -0
  212. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/netgen_mesher.libs/libngsbem.so +0 -0
  213. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/netgen_mesher.libs/libngscudalib.so +0 -0
  214. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/netgen_mesher.libs/libngsolve.so +0 -0
  215. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/netgen_mesher.libs/libngstd.so +0 -0
  216. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/TensorProductTools.py +210 -0
  217. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/__console.py +94 -0
  218. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/__expr.py +181 -0
  219. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/__init__.py +148 -0
  220. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/_scikit_build_core_dependencies.py +30 -0
  221. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/bvp.py +78 -0
  222. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/config/__init__.py +1 -0
  223. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/config/__main__.py +4 -0
  224. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/config/config.py +60 -0
  225. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/TensorProduct/__init__.py +0 -0
  226. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/TensorProduct/tp_dg_1d_1d.py +80 -0
  227. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/TensorProduct/tp_dg_1d_2d.py +73 -0
  228. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/TensorProduct/tp_dg_2d_1d.py +72 -0
  229. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/TensorProduct/tp_dg_2d_2d.py +66 -0
  230. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/__init__.py +0 -0
  231. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/__init__.py +0 -0
  232. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/hhj.py +44 -0
  233. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/hybrid_dg.py +53 -0
  234. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/mixed.py +30 -0
  235. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/nonlin.py +29 -0
  236. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/pickling.py +26 -0
  237. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/pml.py +31 -0
  238. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/taskmanager.py +20 -0
  239. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/tdnns.py +47 -0
  240. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/timeDG-skeleton.py +45 -0
  241. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/timeDG.py +38 -0
  242. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/timeDGlap.py +42 -0
  243. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/howto/timeDGwave.py +61 -0
  244. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/intro/__init__.py +0 -0
  245. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/intro/adaptive.py +123 -0
  246. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/intro/cmagnet.py +59 -0
  247. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/intro/elasticity.py +76 -0
  248. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/intro/navierstokes.py +74 -0
  249. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/intro/poisson.ipynb +170 -0
  250. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/intro/poisson.py +41 -0
  251. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/mpi/__init__.py +0 -0
  252. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/mpi/mpi_cmagnet.py +87 -0
  253. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/mpi/mpi_navierstokes.py +117 -0
  254. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/mpi/mpi_poisson.py +89 -0
  255. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/demos/mpi/mpi_timeDG.py +82 -0
  256. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/directsolvers.py +14 -0
  257. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/eigenvalues.py +364 -0
  258. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/internal.py +89 -0
  259. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/krylovspace.py +1182 -0
  260. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/meshes.py +748 -0
  261. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/ngs2petsc.py +310 -0
  262. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/ngscuda.so +0 -0
  263. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/ngscxx.py +42 -0
  264. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/ngslib.so +0 -0
  265. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/nonlinearsolvers.py +203 -0
  266. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/preconditioners.py +11 -0
  267. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/solve_implementation.py +168 -0
  268. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/solvers/__init__.py +7 -0
  269. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/solvers/cudss.py +112 -0
  270. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/timestepping.py +185 -0
  271. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/timing.py +108 -0
  272. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/utils.py +167 -0
  273. ngsolve-6.2.2506.post216.dev0.data/data/lib/python3.14/site-packages/ngsolve/webgui.py +671 -0
  274. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/beam.geo +17 -0
  275. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/beam.vol +240 -0
  276. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/chip.in2d +41 -0
  277. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/chip.vol +614 -0
  278. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/coil.geo +12 -0
  279. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/coil.vol +2560 -0
  280. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/coilshield.geo +24 -0
  281. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/coilshield.vol +3179 -0
  282. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/cube.geo +19 -0
  283. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/cube.vol +1832 -0
  284. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d10_DGdoubleglazing.pde +50 -0
  285. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d11_chip_nitsche.pde +40 -0
  286. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d1_square.pde +43 -0
  287. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d2_chip.pde +35 -0
  288. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d3_helmholtz.pde +22 -0
  289. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d4_cube.pde +46 -0
  290. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d5_beam.pde +74 -0
  291. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d6_shaft.pde +73 -0
  292. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d7_coil.pde +50 -0
  293. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d8_coilshield.pde +49 -0
  294. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/d9_hybridDG.pde +72 -0
  295. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/doubleglazing.in2d +27 -0
  296. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/doubleglazing.vol +737 -0
  297. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/piezo2d40round4.vol.gz +0 -0
  298. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/shaft.geo +73 -0
  299. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/shaft.vol +4291 -0
  300. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/square.in2d +17 -0
  301. ngsolve-6.2.2506.post216.dev0.data/data/share/ngsolve/square.vol +149 -0
  302. ngsolve-6.2.2506.post216.dev0.dist-info/METADATA +14 -0
  303. ngsolve-6.2.2506.post216.dev0.dist-info/RECORD +306 -0
  304. ngsolve-6.2.2506.post216.dev0.dist-info/WHEEL +5 -0
  305. ngsolve-6.2.2506.post216.dev0.dist-info/licenses/LICENSE +504 -0
  306. ngsolve-6.2.2506.post216.dev0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,773 @@
1
+ #ifndef FILE_HDIVLOFE
2
+ #define FILE_HDIVLOFE
3
+
4
+ /*********************************************************************/
5
+ /* File: hdivlofe.hpp */
6
+ /* Author: Joachim Schoeberl */
7
+ /* Date: 5. Jul. 2001 */
8
+ /*********************************************************************/
9
+
10
+
11
+ #include "hdivfe.hpp"
12
+
13
+ namespace ngfem
14
+ {
15
+
16
+ template <ELEMENT_TYPE ET>
17
+ class HDivDummyFE : public HDivFiniteElement<ET_trait<ET>::DIM>
18
+ {
19
+ public:
20
+ HDivDummyFE() : HDivFiniteElement<ET_trait<ET>::DIM> (0,0) { ; }
21
+ virtual ELEMENT_TYPE ElementType() const override { return ET; }
22
+ virtual void CalcShape (const IntegrationPoint & ip,
23
+ BareSliceMatrix<> shape) const override { ; }
24
+ };
25
+
26
+ template <ELEMENT_TYPE ET>
27
+ class HDivNormalDummyFE : public HDivNormalFiniteElement<ET_trait<ET>::DIM>
28
+ {
29
+ public:
30
+ HDivNormalDummyFE() : HDivNormalFiniteElement<ET_trait<ET>::DIM> (0,0) { ; }
31
+ virtual ELEMENT_TYPE ElementType() const override { return ET; }
32
+ virtual void CalcShape (const IntegrationPoint & ip,
33
+ FlatVector<> shape) const override { ; }
34
+ };
35
+
36
+
37
+ ///
38
+ class FE_RTTrig0 : public HDivFiniteElement<2>
39
+ {
40
+ ///
41
+ public:
42
+ ///
43
+ FE_RTTrig0();
44
+ ///
45
+ virtual ~FE_RTTrig0();
46
+ virtual ELEMENT_TYPE ElementType() const override { return ET_TRIG; }
47
+ ///
48
+ virtual void CalcShape (const IntegrationPoint & ip,
49
+ BareSliceMatrix<> shape) const override;
50
+ };
51
+
52
+
53
+
54
+ /// RT0 + Curl B3
55
+ class FE_RTTrig0plus : public HDivFiniteElement<2>
56
+ {
57
+ ///
58
+ public:
59
+ ///
60
+ FE_RTTrig0plus();
61
+ ///
62
+ virtual ~FE_RTTrig0plus();
63
+ ///
64
+ virtual ELEMENT_TYPE ElementType() const override { return ET_TRIG; }
65
+ virtual void CalcShape (const IntegrationPoint & ip,
66
+ BareSliceMatrix<> shape) const override;
67
+ };
68
+
69
+
70
+
71
+
72
+ ///
73
+ class FE_BDMTrig1 : public HDivFiniteElement<2>
74
+ {
75
+ ///
76
+ static Matrix<> trans;
77
+
78
+ public:
79
+ ///
80
+ FE_BDMTrig1();
81
+ ///
82
+ virtual ~FE_BDMTrig1();
83
+ virtual ELEMENT_TYPE ElementType() const override { return ET_TRIG; }
84
+ ///
85
+ virtual void CalcShape (const IntegrationPoint & ip,
86
+ BareSliceMatrix<> shape) const override;
87
+
88
+ ///
89
+ virtual void CalcShape1 (const IntegrationPoint & ip,
90
+ FlatMatrixFixWidth<2> shape) const override;
91
+
92
+ ///
93
+ void Orthogonalize();
94
+ };
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+
104
+ class HDivNormalSegm0 : public HDivNormalFiniteElement<1>
105
+ {
106
+ public:
107
+
108
+ HDivNormalSegm0 ();
109
+ virtual ELEMENT_TYPE ElementType() const override { return ET_SEGM; }
110
+ /// compute shape
111
+ virtual void CalcShape (const IntegrationPoint & ip,
112
+ FlatVector<> shape) const override;
113
+ };
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+ #ifdef ABC
125
+
126
+ /// BDM1 + H(div)-bubble curl B3
127
+ class FE_BDMTrig1plus : public HDivFiniteElement
128
+ {
129
+ ///
130
+ // static Array<IPData*> ipdata;
131
+ ///
132
+ static FlatMatrix<> trans;
133
+
134
+ public:
135
+
136
+ ///
137
+ FE_BDMTrig1plus();
138
+ ///
139
+ virtual ~FE_BDMTrig1plus();
140
+
141
+ ///
142
+ virtual int SpatialDim () const { return 2; }
143
+ ///
144
+ virtual int GetNDof () const override { return 7; }
145
+ ///
146
+ virtual int Order () const override { return 2; }
147
+ ///
148
+ virtual ELEMENT_TYPE ElementType() const override { return ET_TRIG; }
149
+
150
+ ///
151
+ virtual void CalcShape (const IntegrationPoint & ip,
152
+ FlatVector<> & shape,
153
+ int comp = 1) const override;
154
+
155
+ ///
156
+ virtual void CalcShape1 (const IntegrationPoint & ip,
157
+ FlatVector<> & shape,
158
+ int comp = 1) const override;
159
+
160
+ ///
161
+ void Orthogonalize();
162
+
163
+ ///
164
+ // virtual const Array<IPData*> & GetIPData () const
165
+ // { return ipdata; }
166
+ };
167
+
168
+
169
+
170
+
171
+
172
+
173
+ ///
174
+ class FE_BDFMTrig2 : public HDivFiniteElement
175
+ {
176
+ ///
177
+ // static Array<IPData*> ipdata;
178
+ ///
179
+ static FlatMatrix<> trans;
180
+
181
+ public:
182
+
183
+ ///
184
+ FE_BDFMTrig2();
185
+ ///
186
+ virtual ~FE_BDFMTrig2();
187
+
188
+ ///
189
+ virtual int SpatialDim () const { return 2; }
190
+ ///
191
+ virtual int GetNDof () const override { return 9; }
192
+ ///
193
+ virtual int Order () const override{ return 2; }
194
+ ///
195
+ virtual ELEMENT_TYPE ElementType() const override { return ET_TRIG; }
196
+
197
+ ///
198
+ virtual void CalcShape (const IntegrationPoint & ip,
199
+ FlatVector<> & shape,
200
+ int comp = 1) const override;
201
+
202
+ /// full P2
203
+ virtual void CalcShape1 (const IntegrationPoint & ip,
204
+ FlatVector<> & shape,
205
+ int comp = 1) const override;
206
+
207
+ ///
208
+ void Orthogonalize();
209
+
210
+ ///
211
+ // virtual const Array<IPData*> & GetIPData () const
212
+ // { return ipdata; }
213
+ };
214
+
215
+
216
+
217
+
218
+
219
+
220
+
221
+
222
+ ///
223
+ class FE_BDMTrig2 : public HDivFiniteElement
224
+ {
225
+ ///
226
+ // static Array<IPData*> ipdata;
227
+ ///
228
+ static FlatMatrix<> trans;
229
+
230
+ public:
231
+
232
+ ///
233
+ FE_BDMTrig2();
234
+ ///
235
+ virtual ~FE_BDMTrig2();
236
+
237
+ ///
238
+ virtual int SpatialDim () const { return 2; }
239
+ ///
240
+ virtual int GetNDof () const override { return 12; }
241
+ ///
242
+ virtual int Order () const override { return 3; }
243
+ ///
244
+ virtual ELEMENT_TYPE ElementType() const override { return ET_TRIG; }
245
+
246
+ ///
247
+ virtual void CalcShape (const IntegrationPoint & ip,
248
+ FlatVector<> & shape,
249
+ int comp = 1) const override;
250
+
251
+ ///
252
+ virtual void CalcShape1 (const IntegrationPoint & ip,
253
+ FlatVector<> & shape,
254
+ int comp = 1) const override;
255
+
256
+ ///
257
+ void Orthogonalize();
258
+
259
+ ///
260
+ // virtual const Array<IPData*> & GetIPData () const
261
+ // { return ipdata; }
262
+
263
+ };
264
+
265
+
266
+
267
+
268
+
269
+
270
+
271
+ ///
272
+ class FE_BDMTrig2plus : public HDivFiniteElement
273
+ {
274
+ ///
275
+ // static Array<IPData*> ipdata;
276
+ ///
277
+ static FlatMatrix<> trans;
278
+
279
+ public:
280
+
281
+ ///
282
+ FE_BDMTrig2plus();
283
+ ///
284
+ virtual ~FE_BDMTrig2plus();
285
+
286
+ ///
287
+ virtual int SpatialDim () const { return 2; }
288
+ ///
289
+ virtual int GetNDof () const override { return 14; }
290
+ ///
291
+ virtual int Order () const override { return 2; }
292
+ ///
293
+ virtual ELEMENT_TYPE ElementType() const override { return ET_TRIG; }
294
+
295
+ ///
296
+ virtual void CalcShape (const IntegrationPoint & ip,
297
+ FlatVector<> & shape,
298
+ int comp = 1) const override;
299
+
300
+ ///
301
+ virtual void CalcShape1 (const IntegrationPoint & ip,
302
+ FlatVector<> & shape,
303
+ int comp = 1) const override;
304
+
305
+ ///
306
+ void Orthogonalize();
307
+
308
+ ///
309
+ // virtual const Array<IPData*> & GetIPData () const
310
+ // { return ipdata; }
311
+
312
+ };
313
+
314
+
315
+ #endif
316
+
317
+ ///
318
+ class FE_RTQuad0 : public HDivFiniteElement<2>
319
+ {
320
+ protected:
321
+ ///
322
+ // static Array<IPData> ipdata;
323
+
324
+ public:
325
+
326
+ ///
327
+ FE_RTQuad0();
328
+ ///
329
+ virtual ~FE_RTQuad0();
330
+ ///
331
+ virtual ELEMENT_TYPE ElementType() const override { return ET_QUAD; }
332
+
333
+ virtual void CalcShape (const IntegrationPoint & ip,
334
+ BareSliceMatrix<> shape) const override;
335
+
336
+ };
337
+
338
+
339
+
340
+ #ifdef OLD
341
+
342
+
343
+ ///
344
+ class FE_BDMQuad1 : public HDivFiniteElement
345
+ {
346
+ ///
347
+ // static Array<IPData*> ipdata;
348
+ ///
349
+ static FlatMatrix<> trans;
350
+
351
+ public:
352
+
353
+ ///
354
+ FE_BDMQuad1();
355
+ ///
356
+ virtual ~FE_BDMQuad1();
357
+
358
+ ///
359
+ virtual int SpatialDim () const { return 2; }
360
+ ///
361
+ virtual int GetNDof () const override { return 8; }
362
+ ///
363
+ virtual int Order () const override { return 2; }
364
+ ///
365
+ virtual ELEMENT_TYPE ElementType() const override { return ET_QUAD; }
366
+
367
+ ///
368
+ virtual void CalcShape (const IntegrationPoint & ip,
369
+ FlatVector<> & shape,
370
+ int comp = 1) const override;
371
+
372
+ ///
373
+ virtual void CalcShape1 (const IntegrationPoint & ip,
374
+ FlatVector<> & shape,
375
+ int comp = 1) const override;
376
+
377
+ ///
378
+ void Orthogonalize();
379
+
380
+ ///
381
+ // virtual const Array<IPData*> & GetIPData () const
382
+ // { return ipdata; }
383
+
384
+ };
385
+
386
+
387
+
388
+
389
+
390
+
391
+
392
+
393
+ ///
394
+ class FE_RTSegm0 : public HDivFiniteElement
395
+ {
396
+ ///
397
+ // static Array<IPData*> ipdata;
398
+
399
+ public:
400
+
401
+ ///
402
+ FE_RTSegm0();
403
+ ///
404
+ virtual ~FE_RTSegm0();
405
+
406
+ ///
407
+ virtual int SpatialDim () const { return 1; }
408
+ ///
409
+ virtual int GetNDof () const override { return 1; }
410
+ ///
411
+ virtual int Order () const override { return 1; }
412
+ ///
413
+ virtual ELEMENT_TYPE ElementType() const override { return ET_SEGM; }
414
+
415
+ ///
416
+ virtual void CalcShape (const IntegrationPoint & ip,
417
+ FlatVector<> & shape,
418
+ int comp = 1) const override;
419
+
420
+ ///
421
+ virtual void CalcDShape (const IntegrationPoint & ip,
422
+ FlatMatrix<> & dshape,
423
+ int comp = 1) const;
424
+
425
+ ///
426
+ // virtual const Array<IPData*> & GetIPData () const
427
+ // { return ipdata; }
428
+
429
+ };
430
+
431
+
432
+
433
+
434
+
435
+
436
+
437
+
438
+
439
+ ///
440
+ class FE_RTSegm1 : public HDivFiniteElement
441
+ {
442
+ ///
443
+ // static Array<IPData*> ipdata;
444
+
445
+ public:
446
+
447
+ ///
448
+ FE_RTSegm1();
449
+ ///
450
+ virtual ~FE_RTSegm1();
451
+
452
+ ///
453
+ virtual int SpatialDim () const { return 1; }
454
+ ///
455
+ virtual int GetNDof () const override { return 2; }
456
+ ///
457
+ virtual int Order () const override { return 1; }
458
+ ///
459
+ virtual ELEMENT_TYPE ElementType() const override { return ET_SEGM; }
460
+
461
+
462
+ ///
463
+ virtual void CalcShape (const IntegrationPoint & ip,
464
+ FlatVector<> & shape,
465
+ int comp = 1) const override;
466
+
467
+ ///
468
+ virtual void CalcDShape (const IntegrationPoint & ip,
469
+ FlatMatrix<> & dshape,
470
+ int comp = 1) const;
471
+
472
+
473
+ ///
474
+ // virtual const Array<IPData*> & GetIPData () const
475
+ // { return ipdata; }
476
+ };
477
+
478
+
479
+
480
+
481
+ ///
482
+ class FE_RTSegm2 : public HDivFiniteElement
483
+ {
484
+ ///
485
+ // static Array<IPData*> ipdata;
486
+
487
+ public:
488
+
489
+ ///
490
+ FE_RTSegm2();
491
+ ///
492
+ virtual ~FE_RTSegm2();
493
+
494
+ ///
495
+ virtual int SpatialDim () const { return 1; }
496
+ ///
497
+ virtual int GetNDof () const override { return 3; }
498
+ ///
499
+ virtual int Order () const override { return 3; }
500
+ ///
501
+ virtual ELEMENT_TYPE ElementType() const override { return ET_SEGM; }
502
+
503
+
504
+ ///
505
+ virtual void CalcShape (const IntegrationPoint & ip,
506
+ FlatVector<> & shape,
507
+ int comp = 1) const override;
508
+
509
+ ///
510
+ virtual void CalcDShape (const IntegrationPoint & ip,
511
+ FlatMatrix<> & dshape,
512
+ int comp = 1) const;
513
+
514
+
515
+ ///
516
+ // virtual const Array<IPData*> & GetIPData () const
517
+ // { return ipdata; }
518
+ };
519
+
520
+
521
+ #endif
522
+
523
+
524
+
525
+
526
+ ///
527
+ class FE_BDMTet1 : public HDivFiniteElement<3>
528
+ {
529
+ ///
530
+ // static Array<IPData> ipdata;
531
+ ///
532
+ static Matrix<> trans;
533
+
534
+ public:
535
+
536
+ ///
537
+ FE_BDMTet1();
538
+ ///
539
+ virtual ~FE_BDMTet1();
540
+
541
+ ///
542
+ virtual void CalcShape (const IntegrationPoint & ip,
543
+ BareSliceMatrix<> shape) const override;
544
+
545
+ ///
546
+ virtual void CalcShape1 (const IntegrationPoint & ip,
547
+ FlatMatrixFixWidth<3> shape) const override;
548
+
549
+ ///
550
+ void Orthogonalize();
551
+
552
+ };
553
+
554
+
555
+
556
+ #ifdef ABC
557
+
558
+ ///
559
+ class FE_BDFMTet2 : public HDivFiniteElement
560
+ {
561
+ ///
562
+ // static Array<IPData*> ipdata;
563
+ ///
564
+ static FlatMatrix<> trans;
565
+ ///
566
+ static FlatMatrix<> trans2;
567
+
568
+
569
+ public:
570
+
571
+ ///
572
+ FE_BDFMTet2();
573
+ ///
574
+ virtual ~FE_BDFMTet2();
575
+
576
+ ///
577
+ virtual int SpatialDim () const { return 3; }
578
+ ///
579
+ virtual int GetNDof () const override { return 18; }
580
+ ///
581
+ virtual int Order () const override { return 2; }
582
+ ///
583
+ virtual ELEMENT_TYPE ElementType() const override { return ET_TET; }
584
+
585
+ ///
586
+ virtual void CalcShape (const IntegrationPoint & ip,
587
+ FlatVector<> & shape,
588
+ int comp = 1) const override;
589
+
590
+ /// full p2
591
+ virtual void CalcShape1 (const IntegrationPoint & ip,
592
+ FlatVector<> & shape,
593
+ int comp = 1) const override;
594
+
595
+ /// full P1
596
+ virtual void CalcShape2 (const IntegrationPoint & ip,
597
+ FlatVector<> & shape,
598
+ int comp = 1) const override;
599
+
600
+
601
+ ///
602
+ void Orthogonalize();
603
+
604
+ ///
605
+ // virtual const Array<IPData*> & GetIPData () const
606
+ // { return ipdata; }
607
+ };
608
+
609
+
610
+
611
+
612
+
613
+
614
+
615
+
616
+
617
+
618
+ /**
619
+ Space: Q1,1 + z-bubbles
620
+ */
621
+ class FE_BDMPrism1 : public HDivFiniteElement
622
+ {
623
+ ///
624
+ // static Array<IPData*> ipdata;
625
+ ///
626
+ static FlatMatrix<> trans;
627
+
628
+ public:
629
+
630
+ ///
631
+ FE_BDMPrism1();
632
+ ///
633
+ virtual ~FE_BDMPrism1();
634
+
635
+ ///
636
+ virtual int SpatialDim () const { return 3; }
637
+ ///
638
+ virtual int GetNDof () const override { return 18; }
639
+ ///
640
+ virtual int Order () const override { return 1; }
641
+ ///
642
+ virtual ELEMENT_TYPE ElementType() const override { return ET_PRISM; }
643
+
644
+ ///
645
+ virtual void CalcShape (const IntegrationPoint & ip,
646
+ FlatVector<> & shape,
647
+ int comp = 1) const override;
648
+
649
+ ///
650
+ virtual void CalcShape1 (const IntegrationPoint & ip,
651
+ FlatVector<> & shape,
652
+ int comp = 1) const override;
653
+
654
+ ///
655
+ void Orthogonalize();
656
+
657
+ ///
658
+ // virtual const Array<IPData*> & GetIPData () const
659
+ // { return ipdata; }
660
+ };
661
+
662
+
663
+
664
+
665
+ /**
666
+ Space: Q1,1 + z-bubbles
667
+ */
668
+ class FE_BDMPrism1p : public HDivFiniteElement
669
+ {
670
+ ///
671
+ // static Array<IPData*> ipdata;
672
+ ///
673
+ static FlatMatrix<> trans;
674
+
675
+ public:
676
+
677
+ ///
678
+ FE_BDMPrism1p();
679
+ ///
680
+ virtual ~FE_BDMPrism1p();
681
+
682
+ ///
683
+ virtual int SpatialDim () const { return 3; }
684
+ ///
685
+ virtual int GetNDof () const override { return 21; }
686
+ ///
687
+ virtual int Order () const override { return 1; }
688
+ ///
689
+ virtual ELEMENT_TYPE ElementType() const { return ET_PRISM; }
690
+
691
+ ///
692
+ virtual void CalcShape (const IntegrationPoint & ip,
693
+ FlatVector<> & shape,
694
+ int comp = 1) const override;
695
+
696
+ ///
697
+ virtual void CalcShape1 (const IntegrationPoint & ip,
698
+ FlatVector<> & shape,
699
+ int comp = 1) const override;
700
+
701
+ ///
702
+ void Orthogonalize();
703
+
704
+ ///
705
+ // virtual const Array<IPData*> & GetIPData () const
706
+ // { return ipdata; }
707
+ };
708
+
709
+
710
+
711
+
712
+
713
+
714
+ /**
715
+ Space: BDFMTrig2 x P1 + P1 x P2
716
+ total: 2*9+3*3 = 27 dofs
717
+ extern:
718
+ 3*4 quad dofs
719
+ 2*3 trig dofs
720
+ */
721
+ class FE_BDFMPrism2 : public HDivFiniteElement
722
+ {
723
+ ///
724
+ // static Array<IPData*> ipdata;
725
+ ///
726
+ static FlatMatrix<> trans;
727
+ ///
728
+ static FlatMatrix<> trans2;
729
+
730
+ public:
731
+
732
+ ///
733
+ FE_BDFMPrism2();
734
+ ///
735
+ virtual ~FE_BDFMPrism2();
736
+
737
+ ///
738
+ virtual int SpatialDim () const { return 3; }
739
+ ///
740
+ virtual int GetNDof () const override { return 27; }
741
+ ///
742
+ virtual int Order () const override { return 3; }
743
+ ///
744
+ virtual ELEMENT_TYPE ElementType() const override { return ET_PRISM; }
745
+
746
+ ///
747
+ virtual void CalcShape (const IntegrationPoint & ip,
748
+ FlatVector<> & shape,
749
+ int comp = 1) const override;
750
+
751
+ ///
752
+ virtual void CalcShape1 (const IntegrationPoint & ip,
753
+ FlatVector<> & shape,
754
+ int comp = 1) const override;
755
+
756
+ ///
757
+ void Orthogonalize();
758
+
759
+ ///
760
+ // virtual const Array<IPData*> & GetIPData () const
761
+ // { return ipdata; }
762
+ };
763
+
764
+
765
+
766
+ #endif
767
+
768
+
769
+
770
+ }
771
+
772
+
773
+ #endif