ddfem 1.0.9__tar.gz → 1.0.11__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 (144) hide show
  1. {ddfem-1.0.9 → ddfem-1.0.11}/PKG-INFO +35 -3
  2. ddfem-1.0.11/README.md +39 -0
  3. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/__init__.py +10 -6
  4. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/__main__.py +12 -13
  5. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/boundary.py +2 -2
  6. ddfem-1.0.11/ddfem/data/2.11.dev20250709/extra.modules +14 -0
  7. ddfem-1.0.11/ddfem/data/2.11.dev20250709/femscheme_0bb54cd4f1cd1df2477f5f59393c6a2e.cc +43 -0
  8. ddfem-1.0.11/ddfem/data/2.11.dev20250709/femscheme_5c9e2700386c07226eb4db155fa5ef14.cc +43 -0
  9. ddfem-1.0.11/ddfem/data/2.11.dev20250709/femscheme_765ef00d995a939c34bdc0d0cc4847ca.cc +43 -0
  10. ddfem-1.0.11/ddfem/data/2.11.dev20250709/femspace_11b3436cb033df683615c50d5d4239bd_f14dd0b3b474c0cd816334330f55ad72.cc +45 -0
  11. ddfem-1.0.11/ddfem/data/2.11.dev20250709/femspace_f4f043307753c8e74af23c94c28a3b0d_438586e783f51d84a82e82b0d8daceea.cc +45 -0
  12. ddfem-1.0.9/ddfem/data/2.11.dev20250709/integrands_3bde0abfafcf45a3cff4d1029568ab5cv1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_0003e4cbb961fd653fe295d2c4fa50a7v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +367 -14
  13. ddfem-1.0.9/ddfem/data/2.11.dev20250709/integrands_f3ca00a2ef95c9a48de9ec1b807b1b30v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_0fa4a1c37449cf574971977e10cf682av1_3_a524c1196983e65de1c06d7d6afdeb44.cc +8 -8
  14. ddfem-1.0.9/ddfem/data/2.11.dev20250709/integrands_2e5e6f48655bd358419554a0857f697bv1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_29b696aa653181a57d036f771efa8be9v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +8 -8
  15. ddfem-1.0.9/ddfem/data/2.11.dev20250709/integrands_5e1afa60a15644998389a84306246ea5v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_536f9ba0ea4ecd1f7d4e2bc43ef29d08v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +8 -8
  16. ddfem-1.0.9/ddfem/data/2.11.dev20250709/integrands_008eefa148b772fa3192dd3c1728c140v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_5907ab5c70328c21dd308abf09e529aev1_3_a524c1196983e65de1c06d7d6afdeb44.cc +8 -8
  17. ddfem-1.0.9/ddfem/data/2.11.dev20250709/integrands_563572f4cb20b041e8198ba7d5f88584v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_68eba4e963a61031a52da3365f515585v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +8 -8
  18. ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_83927be37e79b291517b827b9ddc1983v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +533 -0
  19. ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_8ed2f23c088e3a3d82a3259b663796c7v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +533 -0
  20. ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_af3bbe7d629df162ef8c570e1503bf62v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +762 -0
  21. ddfem-1.0.9/ddfem/data/2.11.dev20250709/integrands_2339be3c67df1d67b18125c34ced69c2v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_bf510277401791ad5e30831b49a8ed7cv1_3_a524c1196983e65de1c06d7d6afdeb44.cc +25 -14
  22. ddfem-1.0.11/ddfem/data/2.11.dev20250709/integrands_d0634430f14d3432dae186e57ec5aecav1_3_a524c1196983e65de1c06d7d6afdeb44.cc +587 -0
  23. ddfem-1.0.11/ddfem/data/2.11.dev20250709/intro.modules +43 -0
  24. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_3e323e81c52891c0ecb656eac273e52f_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_0cb4ca9e24e2891510640b0737aaab21_a524c1196983e65de1c06d7d6afdeb44.cc +64 -29
  25. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_0f7b2106478c5d2af781b1f377a180d2_a524c1196983e65de1c06d7d6afdeb44.cc +393 -0
  26. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_10f9d7a54f79c12d6ca923b9ee56b80d_a524c1196983e65de1c06d7d6afdeb44.cc +324 -0
  27. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_10f9d7a54f79c12d6ca923b9ee56b80d_af122c1df944c95cd395ec0f91d0f970.cc +322 -0
  28. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_1c20e613977d8cea4cf5227c12aa68a6_a524c1196983e65de1c06d7d6afdeb44.cc +164 -0
  29. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_191355e6250b2d2e260d96f519ad9976_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_217e4bf8b368a7768c4897cf58f71d84_a524c1196983e65de1c06d7d6afdeb44.cc +14 -14
  30. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_22e797a8f3e8c322f33c41e07bd15165_a524c1196983e65de1c06d7d6afdeb44.cc +1445 -0
  31. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_2a97db5a6a479d02138a836cb0890cf2_a524c1196983e65de1c06d7d6afdeb44.cc +173 -0
  32. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_2e2afc8df6107683d574a8d96d5249f4_af122c1df944c95cd395ec0f91d0f970.cc +512 -0
  33. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_32613626342183eafa360dc1f0f18924_a524c1196983e65de1c06d7d6afdeb44.cc +1425 -0
  34. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_37174cfc9d6bf565336cac0d2ea785f5_a524c1196983e65de1c06d7d6afdeb44.cc +786 -0
  35. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_d75993d7ae5919d23117b153e900840d_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_3d957c5b2628e5120636b8e3f461bc0d_a524c1196983e65de1c06d7d6afdeb44.cc +64 -29
  36. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_3ecaa105be9e3abddf3a85d8adc5d36f_a524c1196983e65de1c06d7d6afdeb44.cc +697 -0
  37. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_f626cd43dc8558135fe0b32cde016644_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_3ecaf7de7505b53bb0b5fb6d78549387_a524c1196983e65de1c06d7d6afdeb44.cc +14 -14
  38. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_1d27a90a52b9053192c9cc902283f79b_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_4192604521151252f1c8fa56a1f9f226_a524c1196983e65de1c06d7d6afdeb44.cc +14 -14
  39. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_4484607e3f9bd9999dbd7bb9d595a7b2_a524c1196983e65de1c06d7d6afdeb44.cc +173 -0
  40. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_4976bbef3267846b59f3a26497ffe9db_a524c1196983e65de1c06d7d6afdeb44.cc +474 -0
  41. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_a8c726f728cd35d137188b33301aeef1_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_4adfaf8a08fac23151af0b1e790db1f7_a524c1196983e65de1c06d7d6afdeb44.cc +14 -14
  42. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_00f2e5593eeb23f01906255d67244f6e_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_4f6a526abfe63959f81b09a5796c5eb1_a524c1196983e65de1c06d7d6afdeb44.cc +44 -29
  43. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_5591a2c803b9658084d8f11d44bf3ae1_a524c1196983e65de1c06d7d6afdeb44.cc +485 -0
  44. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_6363af791dde11d699a9a3d876cc5d9a_a524c1196983e65de1c06d7d6afdeb44.cc +549 -0
  45. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_6363af791dde11d699a9a3d876cc5d9a_af122c1df944c95cd395ec0f91d0f970.cc +547 -0
  46. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_65bda5736a84d4aa0ef2d48ebcc90ed5_a524c1196983e65de1c06d7d6afdeb44.cc +173 -0
  47. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_6eccfc8fd91ce34d81e7c3962ece5d94_a524c1196983e65de1c06d7d6afdeb44.cc +766 -0
  48. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_762aa49bc5a47ad3d8d8bbde36b42ee5_a524c1196983e65de1c06d7d6afdeb44.cc +723 -0
  49. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_76e8db0f046ac9e37a793e0bb13eea7b_a524c1196983e65de1c06d7d6afdeb44.cc +292 -0
  50. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_7792f4273b0fd848c5a0fc9d6f12683e_a524c1196983e65de1c06d7d6afdeb44.cc +280 -0
  51. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_7d81d496538f240d504e5597484ee746_a524c1196983e65de1c06d7d6afdeb44.cc +462 -0
  52. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_7f7ef99c50708814ba5a82b0956b0aed_a524c1196983e65de1c06d7d6afdeb44.cc +461 -0
  53. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_898de4ae138e0ed305ef1399c66aa10a_a524c1196983e65de1c06d7d6afdeb44.cc +313 -0
  54. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_98b04b00bb93b8c6da99c91867e597ca_a524c1196983e65de1c06d7d6afdeb44.cc +639 -0
  55. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_86a0670f34bf2ac8155423a1c1bc2e75_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_a46a988b5d8571e80fd401a36d7341b7_a524c1196983e65de1c06d7d6afdeb44.cc +64 -29
  56. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_1d13146d4bff10e178aba773fe2a9f1d_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_a99a0c7f35b06ac5a1fa7f081b5e64f9_a524c1196983e65de1c06d7d6afdeb44.cc +14 -14
  57. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_e4557ecff74fe5b37313674e67db2782_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_a9bb07439605d560b583608f20441342_a524c1196983e65de1c06d7d6afdeb44.cc +67 -29
  58. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_82d7cb9338bf118426fac2abf41a91a4_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_cda923259a47bb19861404a9fdb64303_a524c1196983e65de1c06d7d6afdeb44.cc +14 -14
  59. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_d0f33c2dc1ae0e619d85a7621c8e83a6_a524c1196983e65de1c06d7d6afdeb44.cc +325 -0
  60. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_d3d9b8a21e3075c9ff40117c5244f28e_a524c1196983e65de1c06d7d6afdeb44.cc +381 -0
  61. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_d4b9ca85d48735ee01f395a42eaa0cee_af122c1df944c95cd395ec0f91d0f970.cc +774 -0
  62. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_dd1fb4bd60f2d8b3a062dbbdaedb9fee_a524c1196983e65de1c06d7d6afdeb44.cc +869 -0
  63. ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_dd5ab085a9d94f578c1f3d337ea360a3_a524c1196983e65de1c06d7d6afdeb44.cc +161 -0
  64. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_10ad0a2d88c74db5f4bf5f81e138974f_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_e2b19c5987f9b6fb0cd5453bfa7f4f9f_a524c1196983e65de1c06d7d6afdeb44.cc +14 -30
  65. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_e69118a51208cfab8a028711e966e76c_19659fe2f2f74bcfb5d532f1a0d38be9.cc → ddfem-1.0.11/ddfem/data/2.11.dev20250709/localfunction_e85b93fe9b8fcd40ee82782fc600b65b_a524c1196983e65de1c06d7d6afdeb44.cc +89 -78
  66. ddfem-1.0.11/ddfem/data/extra.modules +13 -0
  67. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/beam.py +43 -50
  68. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/chemical_reaction.py +1 -1
  69. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/five_circle_flat.py +42 -28
  70. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/linear_elasticity.py +5 -1
  71. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/triple_circle.py +86 -83
  72. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/triple_circle_beam.py +71 -61
  73. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/primitive_base.py +1 -1
  74. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem.egg-info/PKG-INFO +35 -3
  75. ddfem-1.0.11/ddfem.egg-info/SOURCES.txt +127 -0
  76. {ddfem-1.0.9 → ddfem-1.0.11}/pyproject.toml +1 -1
  77. ddfem-1.0.9/README.md +0 -7
  78. ddfem-1.0.9/ddfem/data/2.11.dev20250709/boundary.modules +0 -9
  79. ddfem-1.0.9/ddfem/data/2.11.dev20250709/femspace_90f0a9524a8cb701e8ee5027b7658a0e_0faf32f13b591f4f60f83c591507b9be.cc +0 -40
  80. ddfem-1.0.9/ddfem/data/2.11.dev20250709/geometry.modules +0 -84
  81. ddfem-1.0.9/ddfem/data/2.11.dev20250709/hierarchicalgrid_966e2a5c8356c5b278ccd3acad180f0a.cc +0 -30
  82. ddfem-1.0.9/ddfem/data/2.11.dev20250709/intro.modules +0 -109
  83. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_aeb3d963412cdc65630e0a4c3c0dde0f_a524c1196983e65de1c06d7d6afdeb44.cc +0 -135
  84. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_bdfb7ddf42a423f7d0791458634d4b8f_a524c1196983e65de1c06d7d6afdeb44.cc +0 -135
  85. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_c5ebc4ae4b5d3bad6be770eb08c50d08_19659fe2f2f74bcfb5d532f1a0d38be9.cc +0 -1131
  86. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_f4583c5cc10d24a8bdedf7510ce9da7b_a524c1196983e65de1c06d7d6afdeb44.cc +0 -299
  87. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_f4b1d42cbb447375f39ed834570cd3f0_a524c1196983e65de1c06d7d6afdeb44.cc +0 -135
  88. ddfem-1.0.9/ddfem/data/2.11.dev20250709/localfunction_fc22d5adaf3b9563160dc2aec55e8ba1_19659fe2f2f74bcfb5d532f1a0d38be9.cc +0 -113
  89. ddfem-1.0.9/ddfem/data/2.11.dev20250709/transformers.modules +0 -13
  90. ddfem-1.0.9/ddfem/data/2.11.dev20250709/yaspcoordinates_dim2_ctdouble.cc +0 -55
  91. ddfem-1.0.9/ddfem.egg-info/SOURCES.txt +0 -99
  92. {ddfem-1.0.9 → ddfem-1.0.11}/LICENSE +0 -0
  93. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/adapt_010e1455a389aa01992af42c0a3f4b14.cc +0 -0
  94. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/femscheme_ddd4458a70dff1f9762ec5a96ca4ba9c.cc +0 -0
  95. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/femscheme_f2a3cb32a864b08c0236366e732fb908.cc +0 -0
  96. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/femspace_4ff9049b6f297245e5d33296d14cd684_d5b136dbe3c5077b69c99b8c322eb563.cc +0 -0
  97. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/hierarchicalgrid_d827e80243feae36e8b9006bb24207e7.cc +0 -0
  98. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/indexset_e9c0cdc96a4fc702a0969c29910954e6.cc +0 -0
  99. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/integrands_ed7208bd651abb351e34c9990e0313bcv1_3_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
  100. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/localfunction_228c55d163ca194a905826bcc20fcbc0_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
  101. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/localfunction_42ff56710f3bd510798ecabb32a6cbf0_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
  102. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/localfunction_42ff56710f3bd510798ecabb32a6cbf0_af122c1df944c95cd395ec0f91d0f970.cc +0 -0
  103. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/localfunction_83d9e6dd70d1c31c973224e210cc36b4_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
  104. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/localfunction_a854465b265a1a51dacb4f71f7eeb06b_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
  105. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/localfunction_ae8173bdb67b8ea50ce75c3912841100_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
  106. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/localfunction_b8239bf849ec7c1903f627833e6dac5a_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
  107. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/localfunction_bcafb581216501f273e23c0e26cd57af_af122c1df944c95cd395ec0f91d0f970.cc +0 -0
  108. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/referenceelements_0fff57b283123cc055345ec95574c857.cc +0 -0
  109. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/referenceelements_de274310a0055100b832a0e8892b0258.cc +0 -0
  110. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/referenceelements_f4457f35395151d83a965d4cf5fce70d.cc +0 -0
  111. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/view_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
  112. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/2.11.dev20250709/view_af122c1df944c95cd395ec0f91d0f970.cc +0 -0
  113. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/data/generate.py +0 -0
  114. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/__init__.py +0 -0
  115. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/advection_diffusion.py +0 -0
  116. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/cahn_hilliard.py +0 -0
  117. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/constant.py +0 -0
  118. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/forchheimer.py +0 -0
  119. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/hyperelasticity.py +0 -0
  120. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/plaplace.py +0 -0
  121. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/examples/single_circle.py +0 -0
  122. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/__init__.py +0 -0
  123. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/arc.py +0 -0
  124. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/ball.py +0 -0
  125. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/box.py +0 -0
  126. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/domain.py +0 -0
  127. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/domain_dune.py +0 -0
  128. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/helpers.py +0 -0
  129. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/pie.py +0 -0
  130. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/plane.py +0 -0
  131. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/geometry/vesica.py +0 -0
  132. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/model2ufl.py +0 -0
  133. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/plot.py +0 -0
  134. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/transformers/DDM1.py +0 -0
  135. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/transformers/Fitted.py +0 -0
  136. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/transformers/Mix0.py +0 -0
  137. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/transformers/NNS.py +0 -0
  138. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/transformers/NS.py +0 -0
  139. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/transformers/__init__.py +0 -0
  140. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem/transformers/transformer_base.py +0 -0
  141. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem.egg-info/dependency_links.txt +0 -0
  142. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem.egg-info/requires.txt +0 -0
  143. {ddfem-1.0.9 → ddfem-1.0.11}/ddfem.egg-info/top_level.txt +0 -0
  144. {ddfem-1.0.9 → ddfem-1.0.11}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ddfem
3
- Version: 1.0.9
3
+ Version: 1.0.11
4
4
  Summary: Diffuse domain finite element solver
5
5
  Author-email: Luke Benfield <luke.benfield@warwick.ac.uk>, Andreas Dedner <a.s.dedner@warwick.ac.uk>
6
6
  License-Expression: MIT
@@ -39,8 +39,40 @@ Dynamic: license-file
39
39
 
40
40
  # Diffuse Domain Finite Element Methods
41
41
 
42
- This is a package for solving complex PDEs based on the diffuse domain idea.
42
+ [ddfem][0] is a Python package that simplifies the transformation
43
+ of a wide range of PDEs using the Diffuse Domain Method.
44
+ While the original PDE will often be defined on a complex domain,
45
+ after the transformation it can be solved on simple e.g. square domain.
46
+ The original geometry is embedded in the simpler domain using
47
+ a phase-field function representation.
48
+ We provide implementations for different versions of the Diffuse Domain Method
49
+ making it easy to compare and chose the most suitable version for the problem at hand.
50
+ Adding new versions is also straightforward.
51
+ Furthermore, we provide a new approach
52
+ to combine multiple boundary conditions
53
+ of different types on distinct boundary segments.
43
54
 
44
- [Documentation][0]
55
+ The geometry subpackage provides several simple signed distance functions (SDF),
56
+ and operators to allow an easy definition of the complex domain.
57
+
58
+ We have designed the package to have a wide compatibility with existing finite element solvers,
59
+ as all transformations are performed using the Unified Form Language,
60
+ [UFL][2] and do not require any other external packages.
61
+
62
+ While not required, we recommend using [Dune-Fem][1]
63
+ as it enables some optimisations for form compiling,
64
+ and can improve the mesh by utilising the different grid views.
65
+ We have used this package to test the package and
66
+ for all examples used throughout this tutorial.
67
+
68
+ ## Getting started
69
+
70
+ How to install the package using `pip` is discussed in our [tutorial][4].
71
+
72
+ Enjoy - and let us know of any [issues][3] you encountered
45
73
 
46
74
  [0]: https://ddfem.readthedocs.io/en/latest/index.html
75
+ [1]: https://www.dune-project.org/modules/dune-fem/
76
+ [2]: https://github.com/FEniCS/ufl
77
+ [3]: https://gitlab.dune-project.org/dune-fem/ddfem/-/issues
78
+ [4]: https://ddfem.readthedocs.io/en/latest/installation.html
ddfem-1.0.11/README.md ADDED
@@ -0,0 +1,39 @@
1
+ # Diffuse Domain Finite Element Methods
2
+
3
+ [ddfem][0] is a Python package that simplifies the transformation
4
+ of a wide range of PDEs using the Diffuse Domain Method.
5
+ While the original PDE will often be defined on a complex domain,
6
+ after the transformation it can be solved on simple e.g. square domain.
7
+ The original geometry is embedded in the simpler domain using
8
+ a phase-field function representation.
9
+ We provide implementations for different versions of the Diffuse Domain Method
10
+ making it easy to compare and chose the most suitable version for the problem at hand.
11
+ Adding new versions is also straightforward.
12
+ Furthermore, we provide a new approach
13
+ to combine multiple boundary conditions
14
+ of different types on distinct boundary segments.
15
+
16
+ The geometry subpackage provides several simple signed distance functions (SDF),
17
+ and operators to allow an easy definition of the complex domain.
18
+
19
+ We have designed the package to have a wide compatibility with existing finite element solvers,
20
+ as all transformations are performed using the Unified Form Language,
21
+ [UFL][2] and do not require any other external packages.
22
+
23
+ While not required, we recommend using [Dune-Fem][1]
24
+ as it enables some optimisations for form compiling,
25
+ and can improve the mesh by utilising the different grid views.
26
+ We have used this package to test the package and
27
+ for all examples used throughout this tutorial.
28
+
29
+ ## Getting started
30
+
31
+ How to install the package using `pip` is discussed in our [tutorial][4].
32
+
33
+ Enjoy - and let us know of any [issues][3] you encountered
34
+
35
+ [0]: https://ddfem.readthedocs.io/en/latest/index.html
36
+ [1]: https://www.dune-project.org/modules/dune-fem/
37
+ [2]: https://github.com/FEniCS/ufl
38
+ [3]: https://gitlab.dune-project.org/dune-fem/ddfem/-/issues
39
+ [4]: https://ddfem.readthedocs.io/en/latest/installation.html
@@ -29,11 +29,15 @@ def GridView(domain, omega=None, *,
29
29
  region = gridFunction(
30
30
  omega.phi(x) * (1 - omega.phi(x)), gridView=gridView
31
31
  ) # interface
32
- for j in range(1, refinements + 1):
33
- omega.epsilon.value = startEps * j / refinements
34
- mark(region, 0.00247262315663, maxLevel=refinements) # 1 epsilon
32
+
33
+ p = 0.5 * (1 - ufl.tanh(3)) # 1 epsilon
34
+ tolerance = p * (1 - p)
35
+
36
+ for j in range(0, refinements):
37
+ omega.epsilon.value = startEps * (1 - j / refinements)
38
+ mark(region, tolerance, maxLevel=refinements)
35
39
  adapt(gridView.hierarchicalGrid)
36
- omega.epsilon.value = startEps/factor * 0.5**(refinements/dims[0])
40
+ omega.epsilon.value = startEps/factor #* 0.5**(refinements/dims[0])
37
41
  if adaptLevels>0:
38
42
  sd = gridFunction(omega(x), gridView=gridView)
39
43
  bary = dims[0] * [1.0 / (dims[0]+1)]
@@ -65,13 +69,13 @@ def GridView(domain, omega=None, *,
65
69
  def solve(uflModel, domain):
66
70
  # we use a Lagrange space
67
71
  from dune.fem.space import lagrange
68
- # and the build-in solver
72
+ # and the built-in solver
69
73
  from dune.fem.scheme import galerkin
70
74
 
71
75
  gridView = GridView(domain)
72
76
  space = lagrange(gridView, dimRange=1)
73
77
  scheme = galerkin(uflModel, space=space,
74
78
  solver=("suitesparse","umfpack"))
75
- uh = space.interpolate(0,name="ddm")
79
+ uh = space.function(name="uh")
76
80
  scheme.solve(target=uh)
77
81
  return uh
@@ -26,13 +26,13 @@ def main():
26
26
  if dune:
27
27
  from dune.fem.utility import FemThreadPoolExecutor
28
28
  from dune.generator import builder
29
-
30
- module = "intro"
29
+
30
+ modules = ["intro"]
31
31
  workers = 4
32
32
  if len(sys.argv)>1:
33
33
  workers = int(sys.argv[1])
34
34
  if len(sys.argv)>2:
35
- module = sys.argv[2]
35
+ modules = sys.argv[2:]
36
36
 
37
37
  builder.initialize()
38
38
 
@@ -40,10 +40,12 @@ def main():
40
40
  dataPath = os.path.join(ddfem.__path__[0],"data",femVersion)
41
41
  print(f"obtaining data from {dataPath}")
42
42
  onlyCompile = []
43
- if not module == "all":
44
- filename = os.path.join(dataPath,module+".modules")
45
- with open(filename,"r") as f:
46
- onlyCompile = f.readlines()
43
+ if not "all" in modules:
44
+ onlyCompile = []
45
+ for m in modules + ["extra"]:
46
+ filename = os.path.join(dataPath,m+".modules")
47
+ with open(filename,"r") as f:
48
+ onlyCompile += f.readlines()
47
49
  onlyCompile = set([c.strip()+".cc" for c in onlyCompile])
48
50
  else:
49
51
  onlyCompile = os.listdir(dataPath)
@@ -60,12 +62,9 @@ def main():
60
62
  # https://docs.python.org/3/library/urllib.request.html
61
63
  os.environ["no_proxy"] = "*"
62
64
 
63
- url = "https://gitlab.dune-project.org/dune-fem/ddfem/-/raw/improveDocBuild/doc/XXX?ref_type=heads"
64
- if module == "all":
65
- modules = ["boundary","examples","intro",
66
- "transformers", "geometry"]
67
- else:
68
- modules = [module]
65
+ url = "https://gitlab.dune-project.org/dune-fem/ddfem/-/raw/master/doc/XXX?ref_type=heads"
66
+ if "all" in modules:
67
+ modules = ["boundary","intro", "transformers", "geometry"]
69
68
  for filebase in modules:
70
69
  a = urllib.request.urlretrieve(
71
70
  url.replace("XXX",f"{filebase}.py"),
@@ -1,6 +1,5 @@
1
1
  import inspect
2
2
 
3
- import ufl
4
3
  from ufl import replace, zero
5
4
  from ufl.algorithms.ad import expand_derivatives
6
5
  from ufl.core.expr import Expr
@@ -19,7 +18,7 @@ class BoundaryCondition:
19
18
 
20
19
  class BndValue(BoundaryCondition):
21
20
  def __init__(self, value):
22
- if isinstance(value, ufl.core.expr.Expr):
21
+ if isinstance(value, Expr):
23
22
  super().__init__(lambda t, x, u: value)
24
23
  else:
25
24
  num_args = len(inspect.signature(value).parameters)
@@ -161,6 +160,7 @@ class BoundaryTerms:
161
160
  for w_func in self.bV_weight:
162
161
  weight += w_func(x)
163
162
  return weight
163
+
164
164
  def _total_weight(self, x):
165
165
  weight = 1e-10 # tol
166
166
  for w_func in self.bV_weight + self.bF_weight:
@@ -0,0 +1,14 @@
1
+ femscheme_0bb54cd4f1cd1df2477f5f59393c6a2e
2
+ localfunction_7792f4273b0fd848c5a0fc9d6f12683e_a524c1196983e65de1c06d7d6afdeb44
3
+ femspace_f4f043307753c8e74af23c94c28a3b0d_438586e783f51d84a82e82b0d8daceea
4
+ localfunction_762aa49bc5a47ad3d8d8bbde36b42ee5_a524c1196983e65de1c06d7d6afdeb44
5
+ localfunction_3d957c5b2628e5120636b8e3f461bc0d_a524c1196983e65de1c06d7d6afdeb44
6
+ localfunction_6363af791dde11d699a9a3d876cc5d9a_a524c1196983e65de1c06d7d6afdeb44
7
+ localfunction_6eccfc8fd91ce34d81e7c3962ece5d94_a524c1196983e65de1c06d7d6afdeb44
8
+ localfunction_3ecaa105be9e3abddf3a85d8adc5d36f_a524c1196983e65de1c06d7d6afdeb44
9
+ localfunction_37174cfc9d6bf565336cac0d2ea785f5_a524c1196983e65de1c06d7d6afdeb44
10
+ localfunction_10f9d7a54f79c12d6ca923b9ee56b80d_af122c1df944c95cd395ec0f91d0f970
11
+ localfunction_10f9d7a54f79c12d6ca923b9ee56b80d_a524c1196983e65de1c06d7d6afdeb44
12
+ localfunction_7f7ef99c50708814ba5a82b0956b0aed_a524c1196983e65de1c06d7d6afdeb44
13
+ localfunction_4f6a526abfe63959f81b09a5796c5eb1_a524c1196983e65de1c06d7d6afdeb44
14
+ femspace_11b3436cb033df683615c50d5d4239bd_f14dd0b3b474c0cd816334330f55ad72
@@ -0,0 +1,43 @@
1
+ #ifndef Guard_femscheme_0bb54cd4f1cd1df2477f5f59393c6a2e
2
+ #define Guard_femscheme_0bb54cd4f1cd1df2477f5f59393c6a2e
3
+
4
+ #include <config.h>
5
+
6
+ #define USING_DUNE_PYTHON 1
7
+
8
+ #include <dune/alugrid/dgf.hh>
9
+ #include <dune/alugrid/grid.hh>
10
+ #include <dune/fem/function/adaptivefunction.hh>
11
+ #include <dune/fem/gridpart/adaptiveleafgridpart.hh>
12
+ #include <dune/fem/gridpart/filter/simple.hh>
13
+ #include <dune/fem/gridpart/filteredgridpart.hh>
14
+ #include <dune/fem/operator/linear/spoperator.hh>
15
+ #include <dune/fem/schemes/dirichletwrapper.hh>
16
+ #include <dune/fem/schemes/molgalerkin.hh>
17
+ #include <dune/fem/solver/ldlsolver.hh>
18
+ #include <dune/fem/solver/spqrsolver.hh>
19
+ #include <dune/fem/solver/umfpacksolver.hh>
20
+ #include <dune/fem/space/lagrange.hh>
21
+ #include <dune/fempy/parameter.hh>
22
+ #include <dune/fempy/py/discretefunction.hh>
23
+ #include <dune/fempy/py/gridview.hh>
24
+ #include <dune/fempy/py/scheme.hh>
25
+ #include <dune/fempy/py/space.hh>
26
+ #include <dune/python/grid/gridview.hh>
27
+ #include <dune/python/grid/hierarchical.hh>
28
+
29
+ #include <dune/python/common/typeregistry.hh>
30
+ #include <dune/python/pybind11/pybind11.h>
31
+ #include <dune/python/pybind11/stl.h>
32
+
33
+ PYBIND11_MODULE( femscheme_0bb54cd4f1cd1df2477f5f59393c6a2e, module )
34
+ {
35
+ using pybind11::operator""_a;
36
+ pybind11::module cls0 = module;
37
+ {
38
+ using DuneType = Dune::Fem::GalerkinScheme< Dune::Fem::VirtualizedIntegrands< typename Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>::GridPartType, std::tuple< Dune::FieldVector< double, 3 >, Dune::FieldMatrix< double, 3, 2 > >, std::tuple< Dune::FieldVector< double, 3 >, Dune::FieldMatrix< double, 3, 2 > > >, Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>, Dune::Fem::UMFPACKInverseOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >, typename Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>::MatrixType >, false >;
39
+ auto cls = Dune::Python::insertClass< DuneType >( cls0, "Scheme",pybind11::dynamic_attr(), Dune::Python::GenerateTypeName("Dune::Fem::GalerkinScheme< Dune::Fem::VirtualizedIntegrands< typename Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>::GridPartType, std::tuple< Dune::FieldVector< double, 3 >, Dune::FieldMatrix< double, 3, 2 > >, std::tuple< Dune::FieldVector< double, 3 >, Dune::FieldMatrix< double, 3, 2 > > >, Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>, Dune::Fem::UMFPACKInverseOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >, typename Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>::MatrixType >, false >"), Dune::Python::IncludeFiles{"dune/alugrid/dgf.hh","dune/alugrid/grid.hh","dune/fem/function/adaptivefunction.hh","dune/fem/gridpart/adaptiveleafgridpart.hh","dune/fem/gridpart/filter/simple.hh","dune/fem/gridpart/filteredgridpart.hh","dune/fem/operator/linear/spoperator.hh","dune/fem/schemes/dirichletwrapper.hh","dune/fem/schemes/molgalerkin.hh","dune/fem/solver/ldlsolver.hh","dune/fem/solver/spqrsolver.hh","dune/fem/solver/umfpacksolver.hh","dune/fem/space/lagrange.hh","dune/fempy/parameter.hh","dune/fempy/py/discretefunction.hh","dune/fempy/py/gridview.hh","dune/fempy/py/scheme.hh","dune/fempy/py/space.hh","dune/python/grid/gridview.hh","dune/python/grid/hierarchical.hh"}).first;
40
+ Dune::FemPy::registerScheme( cls0, cls );
41
+ }
42
+ }
43
+ #endif
@@ -0,0 +1,43 @@
1
+ #ifndef Guard_femscheme_5c9e2700386c07226eb4db155fa5ef14
2
+ #define Guard_femscheme_5c9e2700386c07226eb4db155fa5ef14
3
+
4
+ #include <config.h>
5
+
6
+ #define USING_DUNE_PYTHON 1
7
+
8
+ #include <dune/alugrid/dgf.hh>
9
+ #include <dune/alugrid/grid.hh>
10
+ #include <dune/fem/function/adaptivefunction.hh>
11
+ #include <dune/fem/gridpart/adaptiveleafgridpart.hh>
12
+ #include <dune/fem/gridpart/filter/simple.hh>
13
+ #include <dune/fem/gridpart/filteredgridpart.hh>
14
+ #include <dune/fem/operator/linear/spoperator.hh>
15
+ #include <dune/fem/schemes/dirichletwrapper.hh>
16
+ #include <dune/fem/schemes/molgalerkin.hh>
17
+ #include <dune/fem/solver/ldlsolver.hh>
18
+ #include <dune/fem/solver/spqrsolver.hh>
19
+ #include <dune/fem/solver/umfpacksolver.hh>
20
+ #include <dune/fem/space/lagrange.hh>
21
+ #include <dune/fempy/parameter.hh>
22
+ #include <dune/fempy/py/discretefunction.hh>
23
+ #include <dune/fempy/py/gridview.hh>
24
+ #include <dune/fempy/py/scheme.hh>
25
+ #include <dune/fempy/py/space.hh>
26
+ #include <dune/python/grid/gridview.hh>
27
+ #include <dune/python/grid/hierarchical.hh>
28
+
29
+ #include <dune/python/common/typeregistry.hh>
30
+ #include <dune/python/pybind11/pybind11.h>
31
+ #include <dune/python/pybind11/stl.h>
32
+
33
+ PYBIND11_MODULE( femscheme_5c9e2700386c07226eb4db155fa5ef14, module )
34
+ {
35
+ using pybind11::operator""_a;
36
+ pybind11::module cls0 = module;
37
+ {
38
+ using DuneType = Dune::Fem::GalerkinScheme< Dune::Fem::VirtualizedIntegrands< typename Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>::GridPartType, std::tuple< Dune::FieldVector< double, 2 >, Dune::FieldMatrix< double, 2, 2 > >, std::tuple< Dune::FieldVector< double, 2 >, Dune::FieldMatrix< double, 2, 2 > > >, Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>, Dune::Fem::UMFPACKInverseOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >, typename Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>::MatrixType >, false >;
39
+ auto cls = Dune::Python::insertClass< DuneType >( cls0, "Scheme",pybind11::dynamic_attr(), Dune::Python::GenerateTypeName("Dune::Fem::GalerkinScheme< Dune::Fem::VirtualizedIntegrands< typename Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>::GridPartType, std::tuple< Dune::FieldVector< double, 2 >, Dune::FieldMatrix< double, 2, 2 > >, std::tuple< Dune::FieldVector< double, 2 >, Dune::FieldMatrix< double, 2, 2 > > >, Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>, Dune::Fem::UMFPACKInverseOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >, typename Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>::MatrixType >, false >"), Dune::Python::IncludeFiles{"dune/alugrid/dgf.hh","dune/alugrid/grid.hh","dune/fem/function/adaptivefunction.hh","dune/fem/gridpart/adaptiveleafgridpart.hh","dune/fem/gridpart/filter/simple.hh","dune/fem/gridpart/filteredgridpart.hh","dune/fem/operator/linear/spoperator.hh","dune/fem/schemes/dirichletwrapper.hh","dune/fem/schemes/molgalerkin.hh","dune/fem/solver/ldlsolver.hh","dune/fem/solver/spqrsolver.hh","dune/fem/solver/umfpacksolver.hh","dune/fem/space/lagrange.hh","dune/fempy/parameter.hh","dune/fempy/py/discretefunction.hh","dune/fempy/py/gridview.hh","dune/fempy/py/scheme.hh","dune/fempy/py/space.hh","dune/python/grid/gridview.hh","dune/python/grid/hierarchical.hh"}).first;
40
+ Dune::FemPy::registerScheme( cls0, cls );
41
+ }
42
+ }
43
+ #endif
@@ -0,0 +1,43 @@
1
+ #ifndef Guard_femscheme_765ef00d995a939c34bdc0d0cc4847ca
2
+ #define Guard_femscheme_765ef00d995a939c34bdc0d0cc4847ca
3
+
4
+ #include <config.h>
5
+
6
+ #define USING_DUNE_PYTHON 1
7
+
8
+ #include <dune/alugrid/dgf.hh>
9
+ #include <dune/alugrid/grid.hh>
10
+ #include <dune/fem/function/adaptivefunction.hh>
11
+ #include <dune/fem/gridpart/adaptiveleafgridpart.hh>
12
+ #include <dune/fem/gridpart/filter/simple.hh>
13
+ #include <dune/fem/gridpart/filteredgridpart.hh>
14
+ #include <dune/fem/operator/linear/spoperator.hh>
15
+ #include <dune/fem/schemes/dirichletwrapper.hh>
16
+ #include <dune/fem/schemes/molgalerkin.hh>
17
+ #include <dune/fem/solver/ldlsolver.hh>
18
+ #include <dune/fem/solver/spqrsolver.hh>
19
+ #include <dune/fem/solver/umfpacksolver.hh>
20
+ #include <dune/fem/space/lagrange.hh>
21
+ #include <dune/fempy/parameter.hh>
22
+ #include <dune/fempy/py/discretefunction.hh>
23
+ #include <dune/fempy/py/gridview.hh>
24
+ #include <dune/fempy/py/scheme.hh>
25
+ #include <dune/fempy/py/space.hh>
26
+ #include <dune/python/grid/gridview.hh>
27
+ #include <dune/python/grid/hierarchical.hh>
28
+
29
+ #include <dune/python/common/typeregistry.hh>
30
+ #include <dune/python/pybind11/pybind11.h>
31
+ #include <dune/python/pybind11/stl.h>
32
+
33
+ PYBIND11_MODULE( femscheme_765ef00d995a939c34bdc0d0cc4847ca, module )
34
+ {
35
+ using pybind11::operator""_a;
36
+ pybind11::module cls0 = module;
37
+ {
38
+ using DuneType = Dune::Fem::GalerkinScheme< Dune::Fem::VirtualizedIntegrands< typename Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>::GridPartType, std::tuple< Dune::FieldVector< double, 2 >, Dune::FieldMatrix< double, 2, 2 > >, std::tuple< Dune::FieldVector< double, 2 >, Dune::FieldMatrix< double, 2, 2 > > >, Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>, Dune::Fem::UMFPACKInverseOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >, typename Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>::MatrixType >, true >;
39
+ auto cls = Dune::Python::insertClass< DuneType >( cls0, "Scheme",pybind11::dynamic_attr(), Dune::Python::GenerateTypeName("Dune::Fem::GalerkinScheme< Dune::Fem::VirtualizedIntegrands< typename Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>::GridPartType, std::tuple< Dune::FieldVector< double, 2 >, Dune::FieldMatrix< double, 2, 2 > >, std::tuple< Dune::FieldVector< double, 2 >, Dune::FieldMatrix< double, 2, 2 > > >, Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>, Dune::Fem::UMFPACKInverseOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >, typename Dune::Fem::SparseRowLinearOperator< Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >,Dune::Fem::SparseRowMatrix<double,int>>::MatrixType >, true >"), Dune::Python::IncludeFiles{"dune/alugrid/dgf.hh","dune/alugrid/grid.hh","dune/fem/function/adaptivefunction.hh","dune/fem/gridpart/adaptiveleafgridpart.hh","dune/fem/gridpart/filter/simple.hh","dune/fem/gridpart/filteredgridpart.hh","dune/fem/operator/linear/spoperator.hh","dune/fem/schemes/dirichletwrapper.hh","dune/fem/schemes/molgalerkin.hh","dune/fem/solver/ldlsolver.hh","dune/fem/solver/spqrsolver.hh","dune/fem/solver/umfpacksolver.hh","dune/fem/space/lagrange.hh","dune/fempy/parameter.hh","dune/fempy/py/discretefunction.hh","dune/fempy/py/gridview.hh","dune/fempy/py/scheme.hh","dune/fempy/py/space.hh","dune/python/grid/gridview.hh","dune/python/grid/hierarchical.hh"}).first;
40
+ Dune::FemPy::registerScheme( cls0, cls );
41
+ }
42
+ }
43
+ #endif
@@ -0,0 +1,45 @@
1
+ #ifndef Guard_femspace_11b3436cb033df683615c50d5d4239bd_f14dd0b3b474c0cd816334330f55ad72
2
+ #define Guard_femspace_11b3436cb033df683615c50d5d4239bd_f14dd0b3b474c0cd816334330f55ad72
3
+
4
+ #include <config.h>
5
+
6
+ #define USING_DUNE_PYTHON 1
7
+
8
+ #define BACKENDNAME "as_numpy"
9
+ #include <dune/alugrid/dgf.hh>
10
+ #include <dune/alugrid/grid.hh>
11
+ #include <dune/fem/function/adaptivefunction.hh>
12
+ #include <dune/fem/gridpart/adaptiveleafgridpart.hh>
13
+ #include <dune/fem/gridpart/filter/simple.hh>
14
+ #include <dune/fem/gridpart/filteredgridpart.hh>
15
+ #include <dune/fem/space/lagrange.hh>
16
+ #include <dune/fempy/py/discretefunction.hh>
17
+ #include <dune/fempy/py/gridview.hh>
18
+ #include <dune/fempy/py/space.hh>
19
+ #include <dune/python/grid/gridview.hh>
20
+ #include <dune/python/grid/hierarchical.hh>
21
+
22
+ #include <dune/python/common/typeregistry.hh>
23
+ #include <dune/python/pybind11/pybind11.h>
24
+ #include <dune/python/pybind11/stl.h>
25
+
26
+ PYBIND11_MODULE( femspace_11b3436cb033df683615c50d5d4239bd_f14dd0b3b474c0cd816334330f55ad72, module )
27
+ {
28
+ using pybind11::operator""_a;
29
+ pybind11::module cls0 = module;
30
+ {
31
+ using DuneType = Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>;
32
+ auto cls = Dune::Python::insertClass< DuneType, std::shared_ptr<DuneType> >( cls0, "Space",pybind11::dynamic_attr(), Dune::Python::GenerateTypeName("Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>"), Dune::Python::IncludeFiles{"dune/alugrid/dgf.hh","dune/alugrid/grid.hh","dune/fem/function/adaptivefunction.hh","dune/fem/gridpart/adaptiveleafgridpart.hh","dune/fem/gridpart/filter/simple.hh","dune/fem/gridpart/filteredgridpart.hh","dune/fem/space/lagrange.hh","dune/fempy/py/discretefunction.hh","dune/fempy/py/gridview.hh","dune/fempy/py/space.hh","dune/python/grid/gridview.hh","dune/python/grid/hierarchical.hh"}).first;
33
+ Dune::FemPy::registerSpace( cls0, cls );
34
+ }
35
+ using pybind11::operator""_a;
36
+ {
37
+ using DuneType = Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >;
38
+ auto cls = Dune::Python::insertClass< DuneType >( cls0, "DiscreteFunction",pybind11::buffer_protocol(),pybind11::dynamic_attr(), Dune::Python::GenerateTypeName("Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >"), Dune::Python::IncludeFiles{"dune/alugrid/dgf.hh","dune/alugrid/grid.hh","dune/fem/function/adaptivefunction.hh","dune/fem/gridpart/adaptiveleafgridpart.hh","dune/fem/gridpart/filter/simple.hh","dune/fem/gridpart/filteredgridpart.hh","dune/fem/space/lagrange.hh","dune/fempy/py/discretefunction.hh","dune/fempy/py/gridview.hh","dune/fempy/py/space.hh","dune/python/grid/gridview.hh","dune/python/grid/hierarchical.hh"}).first;
39
+ Dune::FemPy::registerDiscreteFunction( cls0, cls );
40
+ cls.def( pybind11::init( [] ( const std::string &name, const Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 2 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>&space, pybind11::array_t<double> dofVector ) {double *dof = static_cast< double* >( dofVector.request(false).ptr );
41
+ return new DuneType(name,space,dof);
42
+ } ), "name"_a, "space"_a, "dofVector"_a, pybind11::keep_alive< 1, 3 >(), pybind11::keep_alive< 1, 4 >() );
43
+ }
44
+ }
45
+ #endif
@@ -0,0 +1,45 @@
1
+ #ifndef Guard_femspace_f4f043307753c8e74af23c94c28a3b0d_438586e783f51d84a82e82b0d8daceea
2
+ #define Guard_femspace_f4f043307753c8e74af23c94c28a3b0d_438586e783f51d84a82e82b0d8daceea
3
+
4
+ #include <config.h>
5
+
6
+ #define USING_DUNE_PYTHON 1
7
+
8
+ #define BACKENDNAME "as_numpy"
9
+ #include <dune/alugrid/dgf.hh>
10
+ #include <dune/alugrid/grid.hh>
11
+ #include <dune/fem/function/adaptivefunction.hh>
12
+ #include <dune/fem/gridpart/adaptiveleafgridpart.hh>
13
+ #include <dune/fem/gridpart/filter/simple.hh>
14
+ #include <dune/fem/gridpart/filteredgridpart.hh>
15
+ #include <dune/fem/space/lagrange.hh>
16
+ #include <dune/fempy/py/discretefunction.hh>
17
+ #include <dune/fempy/py/gridview.hh>
18
+ #include <dune/fempy/py/space.hh>
19
+ #include <dune/python/grid/gridview.hh>
20
+ #include <dune/python/grid/hierarchical.hh>
21
+
22
+ #include <dune/python/common/typeregistry.hh>
23
+ #include <dune/python/pybind11/pybind11.h>
24
+ #include <dune/python/pybind11/stl.h>
25
+
26
+ PYBIND11_MODULE( femspace_f4f043307753c8e74af23c94c28a3b0d_438586e783f51d84a82e82b0d8daceea, module )
27
+ {
28
+ using pybind11::operator""_a;
29
+ pybind11::module cls0 = module;
30
+ {
31
+ using DuneType = Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>;
32
+ auto cls = Dune::Python::insertClass< DuneType, std::shared_ptr<DuneType> >( cls0, "Space",pybind11::dynamic_attr(), Dune::Python::GenerateTypeName("Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>"), Dune::Python::IncludeFiles{"dune/alugrid/dgf.hh","dune/alugrid/grid.hh","dune/fem/function/adaptivefunction.hh","dune/fem/gridpart/adaptiveleafgridpart.hh","dune/fem/gridpart/filter/simple.hh","dune/fem/gridpart/filteredgridpart.hh","dune/fem/space/lagrange.hh","dune/fempy/py/discretefunction.hh","dune/fempy/py/gridview.hh","dune/fempy/py/space.hh","dune/python/grid/gridview.hh","dune/python/grid/hierarchical.hh"}).first;
33
+ Dune::FemPy::registerSpace( cls0, cls );
34
+ }
35
+ using pybind11::operator""_a;
36
+ {
37
+ using DuneType = Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >;
38
+ auto cls = Dune::Python::insertClass< DuneType >( cls0, "DiscreteFunction",pybind11::buffer_protocol(),pybind11::dynamic_attr(), Dune::Python::GenerateTypeName("Dune::Fem::AdaptiveDiscreteFunction< Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage> >"), Dune::Python::IncludeFiles{"dune/alugrid/dgf.hh","dune/alugrid/grid.hh","dune/fem/function/adaptivefunction.hh","dune/fem/gridpart/adaptiveleafgridpart.hh","dune/fem/gridpart/filter/simple.hh","dune/fem/gridpart/filteredgridpart.hh","dune/fem/space/lagrange.hh","dune/fempy/py/discretefunction.hh","dune/fempy/py/gridview.hh","dune/fempy/py/space.hh","dune/python/grid/gridview.hh","dune/python/grid/hierarchical.hh"}).first;
39
+ Dune::FemPy::registerDiscreteFunction( cls0, cls );
40
+ cls.def( pybind11::init( [] ( const std::string &name, const Dune::Fem::DynamicLagrangeDiscreteFunctionSpace< Dune::Fem::FunctionSpace< double, double, 2, 3 >, Dune::FemPy::GridPart< Dune::Fem::FilteredGridPart< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > >, Dune::Fem::SimpleFilter< Dune::FemPy::GridPart< Dune::Fem::AdaptiveLeafGridPart< Dune::ALUGrid< 2, 2, Dune::simplex > > > >, true > >, Dune::Fem::CodegenStorage>&space, pybind11::array_t<double> dofVector ) {double *dof = static_cast< double* >( dofVector.request(false).ptr );
41
+ return new DuneType(name,space,dof);
42
+ } ), "name"_a, "space"_a, "dofVector"_a, pybind11::keep_alive< 1, 3 >(), pybind11::keep_alive< 1, 4 >() );
43
+ }
44
+ }
45
+ #endif