ddfem 1.0.8__tar.gz → 1.0.10__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.
- ddfem-1.0.10/PKG-INFO +101 -0
- ddfem-1.0.10/README.md +62 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/__init__.py +1 -1
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/__main__.py +21 -2
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/boundary.modules +1 -1
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/hierarchicalgrid_472c2c2d007bf5604887ab2f16b7eb13.cc +30 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/integrands_00ee9b3b89e4e44212e5b7ad7948a24ev1_3_a524c1196983e65de1c06d7d6afdeb44.cc +587 -0
- ddfem-1.0.8/ddfem/data/2.11.dev20250709/integrands_f3ca00a2ef95c9a48de9ec1b807b1b30v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.10/ddfem/data/2.11.dev20250709/integrands_2e6d4e3b5cff269867d26022ac7cee09v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +8 -8
- ddfem-1.0.8/ddfem/data/2.11.dev20250709/integrands_2e5e6f48655bd358419554a0857f697bv1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.10/ddfem/data/2.11.dev20250709/integrands_59ef814e4fbd86ef9c0aeac61e84e9a7v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +8 -8
- ddfem-1.0.8/ddfem/data/2.11.dev20250709/integrands_563572f4cb20b041e8198ba7d5f88584v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.10/ddfem/data/2.11.dev20250709/integrands_96ea175da69be26acf1a8d94dc0b3c93v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +8 -8
- ddfem-1.0.8/ddfem/data/2.11.dev20250709/integrands_2339be3c67df1d67b18125c34ced69c2v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.10/ddfem/data/2.11.dev20250709/integrands_bf510277401791ad5e30831b49a8ed7cv1_3_a524c1196983e65de1c06d7d6afdeb44.cc +25 -14
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/intro.modules +26 -23
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_0cb4ca9e24e2891510640b0737aaab21_a524c1196983e65de1c06d7d6afdeb44.cc +170 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_0f7b2106478c5d2af781b1f377a180d2_a524c1196983e65de1c06d7d6afdeb44.cc +393 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_1460b632dc5919e94a2147108f4f34f4_19659fe2f2f74bcfb5d532f1a0d38be9.cc +468 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_161bbe6dde741c6e3f90c2919b8d17a4_19659fe2f2f74bcfb5d532f1a0d38be9.cc +171 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_268716e3e3ec528038367ee04d335ea1_19659fe2f2f74bcfb5d532f1a0d38be9.cc +289 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_29566243d89228735978e58471af60be_19659fe2f2f74bcfb5d532f1a0d38be9.cc +246 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_2a890b2a64788a92607670296c0d37ac_19659fe2f2f74bcfb5d532f1a0d38be9.cc +311 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_2a97db5a6a479d02138a836cb0890cf2_a524c1196983e65de1c06d7d6afdeb44.cc +173 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_2bbefabe87db948827d02bdb8d69a7d1_19659fe2f2f74bcfb5d532f1a0d38be9.cc +240 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_34a46b87fa5c0a5a4f0bc44949f2eda9_19659fe2f2f74bcfb5d532f1a0d38be9.cc +239 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_3c10414582133a0fa8e341c4544a97c7_19659fe2f2f74bcfb5d532f1a0d38be9.cc +220 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_3dfb73430ddb90a26b6f50f85e52e2a4_19659fe2f2f74bcfb5d532f1a0d38be9.cc +216 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_4484607e3f9bd9999dbd7bb9d595a7b2_a524c1196983e65de1c06d7d6afdeb44.cc +173 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_465e17370f4344b8997151adacf7aec6_19659fe2f2f74bcfb5d532f1a0d38be9.cc +403 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_57e9651c5364ef528f41cf138e126115_19659fe2f2f74bcfb5d532f1a0d38be9.cc +272 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_5c2a00bf7ec417475a0a378ed462beeb_19659fe2f2f74bcfb5d532f1a0d38be9.cc +350 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_5d71e054c405bc6584738437908af804_19659fe2f2f74bcfb5d532f1a0d38be9.cc +364 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_6343878b30d190cc70b631d882009dec_19659fe2f2f74bcfb5d532f1a0d38be9.cc +342 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_639a3f3873411f43337e687cb070368f_19659fe2f2f74bcfb5d532f1a0d38be9.cc +230 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_65bda5736a84d4aa0ef2d48ebcc90ed5_a524c1196983e65de1c06d7d6afdeb44.cc +173 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_6661b21a0e1340a9a9f7b32da595f130_19659fe2f2f74bcfb5d532f1a0d38be9.cc +468 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_75e876499fa3b7abc096aa08f88a1c2d_19659fe2f2f74bcfb5d532f1a0d38be9.cc +213 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_7d81d496538f240d504e5597484ee746_a524c1196983e65de1c06d7d6afdeb44.cc +462 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_8647b4efdf8a37595f73652bc1905df2_19659fe2f2f74bcfb5d532f1a0d38be9.cc +335 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_98b04b00bb93b8c6da99c91867e597ca_a524c1196983e65de1c06d7d6afdeb44.cc +639 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_98b32c4b5bc0d8083f3d2c394aa33429_19659fe2f2f74bcfb5d532f1a0d38be9.cc +340 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_9b741917efb5aa6a09e375272e4ae3aa_19659fe2f2f74bcfb5d532f1a0d38be9.cc +317 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_a369aff055312b472a92ee7e257534ff_19659fe2f2f74bcfb5d532f1a0d38be9.cc +392 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_a46a988b5d8571e80fd401a36d7341b7_a524c1196983e65de1c06d7d6afdeb44.cc +170 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_a6cc88a79948487ce95a6c3f22487b36_19659fe2f2f74bcfb5d532f1a0d38be9.cc +395 -0
- ddfem-1.0.8/ddfem/data/2.11.dev20250709/localfunction_e4557ecff74fe5b37313674e67db2782_a524c1196983e65de1c06d7d6afdeb44.cc → ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_a9bb07439605d560b583608f20441342_a524c1196983e65de1c06d7d6afdeb44.cc +67 -29
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_aa506761997f291dfd2e62b678f010b2_19659fe2f2f74bcfb5d532f1a0d38be9.cc +280 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_b5edf0c36f0fc96cc6f5f3677c6557a1_19659fe2f2f74bcfb5d532f1a0d38be9.cc +214 -0
- ddfem-1.0.8/ddfem/data/2.11.dev20250709/localfunction_c5ebc4ae4b5d3bad6be770eb08c50d08_19659fe2f2f74bcfb5d532f1a0d38be9.cc → ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_c3d0902cf8bb4b86b62a2293de2b74e9_19659fe2f2f74bcfb5d532f1a0d38be9.cc +29 -29
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_cf4a29dc25e72137baf2f8fb8b8d3c50_19659fe2f2f74bcfb5d532f1a0d38be9.cc +267 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_d0f33c2dc1ae0e619d85a7621c8e83a6_a524c1196983e65de1c06d7d6afdeb44.cc +325 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_d40efa41ac661ff77278d2ae4812b06d_19659fe2f2f74bcfb5d532f1a0d38be9.cc +377 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_e85b93fe9b8fcd40ee82782fc600b65b_a524c1196983e65de1c06d7d6afdeb44.cc +247 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_e9c8d4f4cedd30cab76a588b95bbccab_19659fe2f2f74bcfb5d532f1a0d38be9.cc +325 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_f0d3fe89de368f7ea295a1982a807bd8_19659fe2f2f74bcfb5d532f1a0d38be9.cc +281 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_fb15e1ad2c62e6660c67949fcf166d81_19659fe2f2f74bcfb5d532f1a0d38be9.cc +339 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/localfunction_fb17410b0b5d479dce9ffc6f9d61ab37_19659fe2f2f74bcfb5d532f1a0d38be9.cc +317 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/referenceelements_fe266b8abf61f4601198949ea6b0dfd3.cc +24 -0
- ddfem-1.0.10/ddfem/data/2.11.dev20250709/yaspcoordinates_dim3_ctdouble.cc +55 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/primitive_base.py +1 -1
- ddfem-1.0.10/ddfem.egg-info/PKG-INFO +101 -0
- ddfem-1.0.10/ddfem.egg-info/SOURCES.txt +141 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/pyproject.toml +1 -1
- ddfem-1.0.8/PKG-INFO +0 -46
- ddfem-1.0.8/README.md +0 -7
- ddfem-1.0.8/ddfem/data/2.11.dev20250709/integrands_5e1afa60a15644998389a84306246ea5v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +0 -453
- ddfem-1.0.8/ddfem/data/2.11.dev20250709/localfunction_f4583c5cc10d24a8bdedf7510ce9da7b_a524c1196983e65de1c06d7d6afdeb44.cc +0 -299
- ddfem-1.0.8/ddfem.egg-info/PKG-INFO +0 -46
- ddfem-1.0.8/ddfem.egg-info/SOURCES.txt +0 -99
- {ddfem-1.0.8 → ddfem-1.0.10}/LICENSE +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/boundary.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/adapt_010e1455a389aa01992af42c0a3f4b14.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/femscheme_ddd4458a70dff1f9762ec5a96ca4ba9c.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/femscheme_f2a3cb32a864b08c0236366e732fb908.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/femspace_4ff9049b6f297245e5d33296d14cd684_d5b136dbe3c5077b69c99b8c322eb563.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/femspace_90f0a9524a8cb701e8ee5027b7658a0e_0faf32f13b591f4f60f83c591507b9be.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/geometry.modules +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/hierarchicalgrid_966e2a5c8356c5b278ccd3acad180f0a.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/hierarchicalgrid_d827e80243feae36e8b9006bb24207e7.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/indexset_e9c0cdc96a4fc702a0969c29910954e6.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/integrands_008eefa148b772fa3192dd3c1728c140v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/integrands_3bde0abfafcf45a3cff4d1029568ab5cv1_3_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/integrands_ed7208bd651abb351e34c9990e0313bcv1_3_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_00f2e5593eeb23f01906255d67244f6e_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_10ad0a2d88c74db5f4bf5f81e138974f_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_191355e6250b2d2e260d96f519ad9976_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_1d13146d4bff10e178aba773fe2a9f1d_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_1d27a90a52b9053192c9cc902283f79b_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_228c55d163ca194a905826bcc20fcbc0_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_3e323e81c52891c0ecb656eac273e52f_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_42ff56710f3bd510798ecabb32a6cbf0_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_42ff56710f3bd510798ecabb32a6cbf0_af122c1df944c95cd395ec0f91d0f970.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_82d7cb9338bf118426fac2abf41a91a4_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_83d9e6dd70d1c31c973224e210cc36b4_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_86a0670f34bf2ac8155423a1c1bc2e75_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_a854465b265a1a51dacb4f71f7eeb06b_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_a8c726f728cd35d137188b33301aeef1_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_ae8173bdb67b8ea50ce75c3912841100_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_aeb3d963412cdc65630e0a4c3c0dde0f_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_b8239bf849ec7c1903f627833e6dac5a_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_bcafb581216501f273e23c0e26cd57af_af122c1df944c95cd395ec0f91d0f970.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_bdfb7ddf42a423f7d0791458634d4b8f_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_d75993d7ae5919d23117b153e900840d_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_e69118a51208cfab8a028711e966e76c_19659fe2f2f74bcfb5d532f1a0d38be9.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_f4b1d42cbb447375f39ed834570cd3f0_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_f626cd43dc8558135fe0b32cde016644_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/localfunction_fc22d5adaf3b9563160dc2aec55e8ba1_19659fe2f2f74bcfb5d532f1a0d38be9.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/referenceelements_0fff57b283123cc055345ec95574c857.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/referenceelements_de274310a0055100b832a0e8892b0258.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/referenceelements_f4457f35395151d83a965d4cf5fce70d.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/transformers.modules +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/view_a524c1196983e65de1c06d7d6afdeb44.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/view_af122c1df944c95cd395ec0f91d0f970.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/2.11.dev20250709/yaspcoordinates_dim2_ctdouble.cc +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/data/generate.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/__init__.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/advection_diffusion.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/beam.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/cahn_hilliard.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/chemical_reaction.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/constant.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/five_circle_flat.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/forchheimer.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/hyperelasticity.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/linear_elasticity.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/plaplace.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/single_circle.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/triple_circle.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/examples/triple_circle_beam.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/__init__.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/arc.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/ball.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/box.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/domain.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/domain_dune.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/helpers.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/pie.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/plane.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/geometry/vesica.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/model2ufl.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/plot.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/transformers/DDM1.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/transformers/Fitted.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/transformers/Mix0.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/transformers/NNS.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/transformers/NS.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/transformers/__init__.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem/transformers/transformer_base.py +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem.egg-info/dependency_links.txt +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem.egg-info/requires.txt +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/ddfem.egg-info/top_level.txt +0 -0
- {ddfem-1.0.8 → ddfem-1.0.10}/setup.cfg +0 -0
ddfem-1.0.10/PKG-INFO
ADDED
@@ -0,0 +1,101 @@
|
|
1
|
+
Metadata-Version: 2.4
|
2
|
+
Name: ddfem
|
3
|
+
Version: 1.0.10
|
4
|
+
Summary: Diffuse domain finite element solver
|
5
|
+
Author-email: Luke Benfield <luke.benfield@warwick.ac.uk>, Andreas Dedner <a.s.dedner@warwick.ac.uk>
|
6
|
+
License-Expression: MIT
|
7
|
+
Project-URL: Homepage, https://gitlab.dune-project.org/dune-fem/ddfem
|
8
|
+
Project-URL: Issues, https://gitlab.dune-project.org/dune-fem/ddfem/-/issues
|
9
|
+
Project-URL: Documentation, https://ddfem.readthedocs.io/en/latest/index.html
|
10
|
+
Project-URL: Repository, https://gitlab.dune-project.org/dune-fem/ddfem.git
|
11
|
+
Classifier: Programming Language :: Python :: 3
|
12
|
+
Classifier: Operating System :: OS Independent
|
13
|
+
Requires-Python: >=3.9
|
14
|
+
Description-Content-Type: text/markdown
|
15
|
+
License-File: LICENSE
|
16
|
+
Requires-Dist: fenics-ufl==2022.2.0
|
17
|
+
Requires-Dist: numpy
|
18
|
+
Requires-Dist: setuptools<79.1
|
19
|
+
Provides-Extra: dune
|
20
|
+
Requires-Dist: dune-fem==2.11.dev20250709; extra == "dune"
|
21
|
+
Requires-Dist: dune_alugrid==2.11.dev20250709; extra == "dune"
|
22
|
+
Requires-Dist: dune_common==2.11.dev20250709; extra == "dune"
|
23
|
+
Requires-Dist: dune_fem-dg==2.11.dev20250709; extra == "dune"
|
24
|
+
Requires-Dist: dune_geometry==2.11.dev20250709; extra == "dune"
|
25
|
+
Requires-Dist: dune_grid==2.11.dev20250709; extra == "dune"
|
26
|
+
Requires-Dist: dune_istl==2.11.dev20250709; extra == "dune"
|
27
|
+
Requires-Dist: dune_localfunctions==2.11.dev20250709; extra == "dune"
|
28
|
+
Requires-Dist: pygmsh; extra == "dune"
|
29
|
+
Provides-Extra: doc
|
30
|
+
Requires-Dist: jupyter; extra == "doc"
|
31
|
+
Requires-Dist: jupytext; extra == "doc"
|
32
|
+
Requires-Dist: nbsphinx; extra == "doc"
|
33
|
+
Requires-Dist: sphinx_rtd_theme; extra == "doc"
|
34
|
+
Requires-Dist: twine; extra == "doc"
|
35
|
+
Requires-Dist: build; extra == "doc"
|
36
|
+
Provides-Extra: dev
|
37
|
+
Requires-Dist: ddfem[doc,dune]; extra == "dev"
|
38
|
+
Dynamic: license-file
|
39
|
+
|
40
|
+
# Diffuse Domain Finite Element Methods
|
41
|
+
|
42
|
+
This is a Python package that implements a framework for transforming PDEs defined on
|
43
|
+
a complex domains using the Diffuse Domain Method to reformulate the problem on a simple domain.
|
44
|
+
This method avoids traditional challenges by embedding the original geometry with a phase-field function representation.
|
45
|
+
|
46
|
+
Our aim is to make the application of a variety of Diffuse Domain approaches more accessible and straightforward to use. We have designed the package to have a wide compatibility with existing finite element solvers, as all transformations are performed only using the Unified Form Language,
|
47
|
+
[UFL][2].
|
48
|
+
|
49
|
+
Furthermore, we provide a new approach to combine multiple boundary conditions of different types on distinct boundary segments.
|
50
|
+
|
51
|
+
The `geometry` subpackage provides several simple signed distance functions (SDF),
|
52
|
+
and operators to allow an easy definition of the complex domain. The `transfromers` subpackes implements a number of different diffuse domain approaches including some novel ones which we
|
53
|
+
will describe in detail in an upcoming paper.
|
54
|
+
|
55
|
+
While not required, we recommend using [Dune-Fem][1] as it enables some optimisations for form compiling and has been used for testing the package and for the examples throughout
|
56
|
+
our [Documentation][0].
|
57
|
+
|
58
|
+
## Getting started
|
59
|
+
|
60
|
+
Using `pip` and a virtual environment is the easiest way to get started with`ddfem`:
|
61
|
+
|
62
|
+
```bash
|
63
|
+
pip install ddfem
|
64
|
+
```
|
65
|
+
|
66
|
+
will install the basic package. We have mainly tested it with `dune` as solver backend and provide some extra features when used with `dune`. Currently the code relies on a pre-release version and the best way to guarantee compatibility is to use
|
67
|
+
|
68
|
+
```bash
|
69
|
+
pip install ddfem[dune]
|
70
|
+
```
|
71
|
+
|
72
|
+
On most machine you will also need to run
|
73
|
+
|
74
|
+
```bash
|
75
|
+
pip install mpi4py
|
76
|
+
```
|
77
|
+
|
78
|
+
The main example `intro` file in our tutorial can be obtained easily by running
|
79
|
+
|
80
|
+
```
|
81
|
+
python -m ddfem
|
82
|
+
```
|
83
|
+
|
84
|
+
This step can take some time (so do it before a coffee break) since it precompiles all required modules. This is done in parallel using `4` processes by default. Change that by adding a parameter to the above call, e.g., to use `8` processes run
|
85
|
+
|
86
|
+
```
|
87
|
+
python -m ddfem 8
|
88
|
+
```
|
89
|
+
|
90
|
+
After this step has completed you should find the two files `intro.py` and `intro_nb.ipynb` in your folder.
|
91
|
+
|
92
|
+
Enjoy - and let use know of any [issues][3] you encountered
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
[0]: https://ddfem.readthedocs.io/en/latest/index.html
|
98
|
+
[1]: https://www.dune-project.org/modules/dune-fem/
|
99
|
+
[2]: https://github.com/FEniCS/ufl
|
100
|
+
[3]: https://gitlab.dune-project.org/dune-fem/ddfem/-/issues
|
101
|
+
|
ddfem-1.0.10/README.md
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
# Diffuse Domain Finite Element Methods
|
2
|
+
|
3
|
+
This is a Python package that implements a framework for transforming PDEs defined on
|
4
|
+
a complex domains using the Diffuse Domain Method to reformulate the problem on a simple domain.
|
5
|
+
This method avoids traditional challenges by embedding the original geometry with a phase-field function representation.
|
6
|
+
|
7
|
+
Our aim is to make the application of a variety of Diffuse Domain approaches more accessible and straightforward to use. We have designed the package to have a wide compatibility with existing finite element solvers, as all transformations are performed only using the Unified Form Language,
|
8
|
+
[UFL][2].
|
9
|
+
|
10
|
+
Furthermore, we provide a new approach to combine multiple boundary conditions of different types on distinct boundary segments.
|
11
|
+
|
12
|
+
The `geometry` subpackage provides several simple signed distance functions (SDF),
|
13
|
+
and operators to allow an easy definition of the complex domain. The `transfromers` subpackes implements a number of different diffuse domain approaches including some novel ones which we
|
14
|
+
will describe in detail in an upcoming paper.
|
15
|
+
|
16
|
+
While not required, we recommend using [Dune-Fem][1] as it enables some optimisations for form compiling and has been used for testing the package and for the examples throughout
|
17
|
+
our [Documentation][0].
|
18
|
+
|
19
|
+
## Getting started
|
20
|
+
|
21
|
+
Using `pip` and a virtual environment is the easiest way to get started with`ddfem`:
|
22
|
+
|
23
|
+
```bash
|
24
|
+
pip install ddfem
|
25
|
+
```
|
26
|
+
|
27
|
+
will install the basic package. We have mainly tested it with `dune` as solver backend and provide some extra features when used with `dune`. Currently the code relies on a pre-release version and the best way to guarantee compatibility is to use
|
28
|
+
|
29
|
+
```bash
|
30
|
+
pip install ddfem[dune]
|
31
|
+
```
|
32
|
+
|
33
|
+
On most machine you will also need to run
|
34
|
+
|
35
|
+
```bash
|
36
|
+
pip install mpi4py
|
37
|
+
```
|
38
|
+
|
39
|
+
The main example `intro` file in our tutorial can be obtained easily by running
|
40
|
+
|
41
|
+
```
|
42
|
+
python -m ddfem
|
43
|
+
```
|
44
|
+
|
45
|
+
This step can take some time (so do it before a coffee break) since it precompiles all required modules. This is done in parallel using `4` processes by default. Change that by adding a parameter to the above call, e.g., to use `8` processes run
|
46
|
+
|
47
|
+
```
|
48
|
+
python -m ddfem 8
|
49
|
+
```
|
50
|
+
|
51
|
+
After this step has completed you should find the two files `intro.py` and `intro_nb.ipynb` in your folder.
|
52
|
+
|
53
|
+
Enjoy - and let use know of any [issues][3] you encountered
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
|
58
|
+
[0]: https://ddfem.readthedocs.io/en/latest/index.html
|
59
|
+
[1]: https://www.dune-project.org/modules/dune-fem/
|
60
|
+
[2]: https://github.com/FEniCS/ufl
|
61
|
+
[3]: https://gitlab.dune-project.org/dune-fem/ddfem/-/issues
|
62
|
+
|
@@ -65,7 +65,7 @@ def GridView(domain, omega=None, *,
|
|
65
65
|
def solve(uflModel, domain):
|
66
66
|
# we use a Lagrange space
|
67
67
|
from dune.fem.space import lagrange
|
68
|
-
# and the
|
68
|
+
# and the built-in solver
|
69
69
|
from dune.fem.scheme import galerkin
|
70
70
|
|
71
71
|
gridView = GridView(domain)
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import sys, os
|
1
|
+
import sys, os, urllib
|
2
2
|
try:
|
3
3
|
import dune
|
4
4
|
except ImportError:
|
@@ -28,7 +28,7 @@ def main():
|
|
28
28
|
from dune.generator import builder
|
29
29
|
|
30
30
|
module = "intro"
|
31
|
-
workers =
|
31
|
+
workers = 4
|
32
32
|
if len(sys.argv)>1:
|
33
33
|
workers = int(sys.argv[1])
|
34
34
|
if len(sys.argv)>2:
|
@@ -56,5 +56,24 @@ def main():
|
|
56
56
|
with open(filename,"r") as f:
|
57
57
|
executor.submit( builder.load, file.replace(".cc",""), f.read(), None )
|
58
58
|
|
59
|
+
# make sure things are safe on Mac
|
60
|
+
# https://docs.python.org/3/library/urllib.request.html
|
61
|
+
os.environ["no_proxy"] = "*"
|
62
|
+
|
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]
|
69
|
+
for filebase in modules:
|
70
|
+
a = urllib.request.urlretrieve(
|
71
|
+
url.replace("XXX",f"{filebase}.py"),
|
72
|
+
filename=f"{filebase}.py")
|
73
|
+
b = urllib.request.urlretrieve(
|
74
|
+
url.replace("XXX",f"{filebase}_nb.ipynb"),
|
75
|
+
filename=f"{filebase}_nb.ipynb"
|
76
|
+
)
|
77
|
+
|
59
78
|
if __name__ == "__main__":
|
60
79
|
main()
|
@@ -5,5 +5,5 @@ referenceelements_0fff57b283123cc055345ec95574c857
|
|
5
5
|
referenceelements_f4457f35395151d83a965d4cf5fce70d
|
6
6
|
femspace_90f0a9524a8cb701e8ee5027b7658a0e_0faf32f13b591f4f60f83c591507b9be
|
7
7
|
localfunction_fc22d5adaf3b9563160dc2aec55e8ba1_19659fe2f2f74bcfb5d532f1a0d38be9
|
8
|
-
|
8
|
+
localfunction_c3d0902cf8bb4b86b62a2293de2b74e9_19659fe2f2f74bcfb5d532f1a0d38be9
|
9
9
|
localfunction_e69118a51208cfab8a028711e966e76c_19659fe2f2f74bcfb5d532f1a0d38be9
|
@@ -0,0 +1,30 @@
|
|
1
|
+
#ifndef Guard_hierarchicalgrid_472c2c2d007bf5604887ab2f16b7eb13
|
2
|
+
#define Guard_hierarchicalgrid_472c2c2d007bf5604887ab2f16b7eb13
|
3
|
+
|
4
|
+
#include <config.h>
|
5
|
+
|
6
|
+
#define USING_DUNE_PYTHON 1
|
7
|
+
|
8
|
+
#include <dune/grid/io/file/dgfparser/dgfyasp.hh>
|
9
|
+
#include <dune/grid/yaspgrid.hh>
|
10
|
+
#include <dune/python/grid/hierarchical.hh>
|
11
|
+
|
12
|
+
#include <dune/python/common/typeregistry.hh>
|
13
|
+
#include <dune/python/pybind11/pybind11.h>
|
14
|
+
#include <dune/python/pybind11/stl.h>
|
15
|
+
|
16
|
+
PYBIND11_MODULE( hierarchicalgrid_472c2c2d007bf5604887ab2f16b7eb13, module )
|
17
|
+
{
|
18
|
+
using pybind11::operator""_a;
|
19
|
+
pybind11::module cls0 = module;
|
20
|
+
{
|
21
|
+
using DuneType = Dune::YaspGrid< 3, Dune::EquidistantOffsetCoordinates< double, 3 > >;
|
22
|
+
auto cls = Dune::Python::insertClass< DuneType, std::shared_ptr<DuneType> >( cls0, "HierarchicalGrid",pybind11::dynamic_attr(), Dune::Python::GenerateTypeName("Dune::YaspGrid< 3, Dune::EquidistantOffsetCoordinates< double, 3 > >"), Dune::Python::IncludeFiles{"dune/grid/io/file/dgfparser/dgfyasp.hh","dune/grid/yaspgrid.hh","dune/python/grid/hierarchical.hh"}).first;
|
23
|
+
Dune::Python::registerHierarchicalGrid( cls0, cls );
|
24
|
+
cls.def( pybind11::init( [] ( const Dune::EquidistantOffsetCoordinates< double, 3 >& coordinates, std::array<bool, 3> periodic, int overlap ) {std::bitset<3> periodic_;
|
25
|
+
for (int i=0;i<3;++i) periodic_.set(i,periodic[i]);
|
26
|
+
return new DuneType(coordinates,periodic_,overlap);
|
27
|
+
} ), "coordinates"_a, "periodic"_a, "overlap"_a );
|
28
|
+
}
|
29
|
+
}
|
30
|
+
#endif
|