ddfem 1.0.9__py3-none-any.whl → 1.0.11__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. ddfem/__init__.py +10 -6
  2. ddfem/__main__.py +12 -13
  3. ddfem/boundary.py +2 -2
  4. ddfem/data/2.11.dev20250709/extra.modules +14 -0
  5. ddfem/data/2.11.dev20250709/femscheme_0bb54cd4f1cd1df2477f5f59393c6a2e.cc +43 -0
  6. ddfem/data/2.11.dev20250709/femscheme_5c9e2700386c07226eb4db155fa5ef14.cc +43 -0
  7. ddfem/data/2.11.dev20250709/femscheme_765ef00d995a939c34bdc0d0cc4847ca.cc +43 -0
  8. ddfem/data/2.11.dev20250709/femspace_11b3436cb033df683615c50d5d4239bd_f14dd0b3b474c0cd816334330f55ad72.cc +45 -0
  9. ddfem/data/2.11.dev20250709/femspace_f4f043307753c8e74af23c94c28a3b0d_438586e783f51d84a82e82b0d8daceea.cc +45 -0
  10. ddfem/data/2.11.dev20250709/{integrands_3bde0abfafcf45a3cff4d1029568ab5cv1_3_a524c1196983e65de1c06d7d6afdeb44.cc → integrands_0003e4cbb961fd653fe295d2c4fa50a7v1_3_a524c1196983e65de1c06d7d6afdeb44.cc} +367 -14
  11. ddfem/data/2.11.dev20250709/{integrands_f3ca00a2ef95c9a48de9ec1b807b1b30v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → integrands_0fa4a1c37449cf574971977e10cf682av1_3_a524c1196983e65de1c06d7d6afdeb44.cc} +8 -8
  12. ddfem/data/2.11.dev20250709/{integrands_2e5e6f48655bd358419554a0857f697bv1_3_a524c1196983e65de1c06d7d6afdeb44.cc → integrands_29b696aa653181a57d036f771efa8be9v1_3_a524c1196983e65de1c06d7d6afdeb44.cc} +8 -8
  13. ddfem/data/2.11.dev20250709/{integrands_5e1afa60a15644998389a84306246ea5v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → integrands_536f9ba0ea4ecd1f7d4e2bc43ef29d08v1_3_a524c1196983e65de1c06d7d6afdeb44.cc} +8 -8
  14. ddfem/data/2.11.dev20250709/{integrands_008eefa148b772fa3192dd3c1728c140v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → integrands_5907ab5c70328c21dd308abf09e529aev1_3_a524c1196983e65de1c06d7d6afdeb44.cc} +8 -8
  15. ddfem/data/2.11.dev20250709/{integrands_563572f4cb20b041e8198ba7d5f88584v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → integrands_68eba4e963a61031a52da3365f515585v1_3_a524c1196983e65de1c06d7d6afdeb44.cc} +8 -8
  16. ddfem/data/2.11.dev20250709/integrands_83927be37e79b291517b827b9ddc1983v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +533 -0
  17. ddfem/data/2.11.dev20250709/integrands_8ed2f23c088e3a3d82a3259b663796c7v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +533 -0
  18. ddfem/data/2.11.dev20250709/integrands_af3bbe7d629df162ef8c570e1503bf62v1_3_a524c1196983e65de1c06d7d6afdeb44.cc +762 -0
  19. ddfem/data/2.11.dev20250709/{integrands_2339be3c67df1d67b18125c34ced69c2v1_3_a524c1196983e65de1c06d7d6afdeb44.cc → integrands_bf510277401791ad5e30831b49a8ed7cv1_3_a524c1196983e65de1c06d7d6afdeb44.cc} +25 -14
  20. ddfem/data/2.11.dev20250709/integrands_d0634430f14d3432dae186e57ec5aecav1_3_a524c1196983e65de1c06d7d6afdeb44.cc +587 -0
  21. ddfem/data/2.11.dev20250709/intro.modules +34 -100
  22. ddfem/data/2.11.dev20250709/{localfunction_10ad0a2d88c74db5f4bf5f81e138974f_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_0cb4ca9e24e2891510640b0737aaab21_a524c1196983e65de1c06d7d6afdeb44.cc} +64 -29
  23. ddfem/data/2.11.dev20250709/localfunction_0f7b2106478c5d2af781b1f377a180d2_a524c1196983e65de1c06d7d6afdeb44.cc +393 -0
  24. ddfem/data/2.11.dev20250709/localfunction_10f9d7a54f79c12d6ca923b9ee56b80d_a524c1196983e65de1c06d7d6afdeb44.cc +324 -0
  25. ddfem/data/2.11.dev20250709/localfunction_10f9d7a54f79c12d6ca923b9ee56b80d_af122c1df944c95cd395ec0f91d0f970.cc +322 -0
  26. ddfem/data/2.11.dev20250709/localfunction_1c20e613977d8cea4cf5227c12aa68a6_a524c1196983e65de1c06d7d6afdeb44.cc +164 -0
  27. ddfem/data/2.11.dev20250709/{localfunction_191355e6250b2d2e260d96f519ad9976_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_217e4bf8b368a7768c4897cf58f71d84_a524c1196983e65de1c06d7d6afdeb44.cc} +14 -14
  28. ddfem/data/2.11.dev20250709/localfunction_22e797a8f3e8c322f33c41e07bd15165_a524c1196983e65de1c06d7d6afdeb44.cc +1445 -0
  29. ddfem/data/2.11.dev20250709/localfunction_2a97db5a6a479d02138a836cb0890cf2_a524c1196983e65de1c06d7d6afdeb44.cc +173 -0
  30. ddfem/data/2.11.dev20250709/localfunction_2e2afc8df6107683d574a8d96d5249f4_af122c1df944c95cd395ec0f91d0f970.cc +512 -0
  31. ddfem/data/2.11.dev20250709/localfunction_32613626342183eafa360dc1f0f18924_a524c1196983e65de1c06d7d6afdeb44.cc +1425 -0
  32. ddfem/data/2.11.dev20250709/localfunction_37174cfc9d6bf565336cac0d2ea785f5_a524c1196983e65de1c06d7d6afdeb44.cc +786 -0
  33. ddfem/data/2.11.dev20250709/{localfunction_d75993d7ae5919d23117b153e900840d_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_3d957c5b2628e5120636b8e3f461bc0d_a524c1196983e65de1c06d7d6afdeb44.cc} +64 -29
  34. ddfem/data/2.11.dev20250709/localfunction_3ecaa105be9e3abddf3a85d8adc5d36f_a524c1196983e65de1c06d7d6afdeb44.cc +697 -0
  35. ddfem/data/2.11.dev20250709/{localfunction_f626cd43dc8558135fe0b32cde016644_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_3ecaf7de7505b53bb0b5fb6d78549387_a524c1196983e65de1c06d7d6afdeb44.cc} +14 -14
  36. ddfem/data/2.11.dev20250709/{localfunction_1d27a90a52b9053192c9cc902283f79b_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_4192604521151252f1c8fa56a1f9f226_a524c1196983e65de1c06d7d6afdeb44.cc} +14 -14
  37. ddfem/data/2.11.dev20250709/localfunction_4484607e3f9bd9999dbd7bb9d595a7b2_a524c1196983e65de1c06d7d6afdeb44.cc +173 -0
  38. ddfem/data/2.11.dev20250709/localfunction_4976bbef3267846b59f3a26497ffe9db_a524c1196983e65de1c06d7d6afdeb44.cc +474 -0
  39. ddfem/data/2.11.dev20250709/{localfunction_a8c726f728cd35d137188b33301aeef1_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_4adfaf8a08fac23151af0b1e790db1f7_a524c1196983e65de1c06d7d6afdeb44.cc} +14 -14
  40. ddfem/data/2.11.dev20250709/{localfunction_00f2e5593eeb23f01906255d67244f6e_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_4f6a526abfe63959f81b09a5796c5eb1_a524c1196983e65de1c06d7d6afdeb44.cc} +44 -29
  41. ddfem/data/2.11.dev20250709/localfunction_5591a2c803b9658084d8f11d44bf3ae1_a524c1196983e65de1c06d7d6afdeb44.cc +485 -0
  42. ddfem/data/2.11.dev20250709/localfunction_6363af791dde11d699a9a3d876cc5d9a_a524c1196983e65de1c06d7d6afdeb44.cc +549 -0
  43. ddfem/data/2.11.dev20250709/localfunction_6363af791dde11d699a9a3d876cc5d9a_af122c1df944c95cd395ec0f91d0f970.cc +547 -0
  44. ddfem/data/2.11.dev20250709/localfunction_65bda5736a84d4aa0ef2d48ebcc90ed5_a524c1196983e65de1c06d7d6afdeb44.cc +173 -0
  45. ddfem/data/2.11.dev20250709/localfunction_6eccfc8fd91ce34d81e7c3962ece5d94_a524c1196983e65de1c06d7d6afdeb44.cc +766 -0
  46. ddfem/data/2.11.dev20250709/localfunction_762aa49bc5a47ad3d8d8bbde36b42ee5_a524c1196983e65de1c06d7d6afdeb44.cc +723 -0
  47. ddfem/data/2.11.dev20250709/localfunction_76e8db0f046ac9e37a793e0bb13eea7b_a524c1196983e65de1c06d7d6afdeb44.cc +292 -0
  48. ddfem/data/2.11.dev20250709/localfunction_7792f4273b0fd848c5a0fc9d6f12683e_a524c1196983e65de1c06d7d6afdeb44.cc +280 -0
  49. ddfem/data/2.11.dev20250709/localfunction_7d81d496538f240d504e5597484ee746_a524c1196983e65de1c06d7d6afdeb44.cc +462 -0
  50. ddfem/data/2.11.dev20250709/localfunction_7f7ef99c50708814ba5a82b0956b0aed_a524c1196983e65de1c06d7d6afdeb44.cc +461 -0
  51. ddfem/data/2.11.dev20250709/localfunction_898de4ae138e0ed305ef1399c66aa10a_a524c1196983e65de1c06d7d6afdeb44.cc +313 -0
  52. ddfem/data/2.11.dev20250709/localfunction_98b04b00bb93b8c6da99c91867e597ca_a524c1196983e65de1c06d7d6afdeb44.cc +639 -0
  53. ddfem/data/2.11.dev20250709/{localfunction_86a0670f34bf2ac8155423a1c1bc2e75_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_a46a988b5d8571e80fd401a36d7341b7_a524c1196983e65de1c06d7d6afdeb44.cc} +64 -29
  54. ddfem/data/2.11.dev20250709/{localfunction_1d13146d4bff10e178aba773fe2a9f1d_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_a99a0c7f35b06ac5a1fa7f081b5e64f9_a524c1196983e65de1c06d7d6afdeb44.cc} +14 -14
  55. ddfem/data/2.11.dev20250709/{localfunction_e4557ecff74fe5b37313674e67db2782_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_a9bb07439605d560b583608f20441342_a524c1196983e65de1c06d7d6afdeb44.cc} +67 -29
  56. ddfem/data/2.11.dev20250709/{localfunction_82d7cb9338bf118426fac2abf41a91a4_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_cda923259a47bb19861404a9fdb64303_a524c1196983e65de1c06d7d6afdeb44.cc} +14 -14
  57. ddfem/data/2.11.dev20250709/localfunction_d0f33c2dc1ae0e619d85a7621c8e83a6_a524c1196983e65de1c06d7d6afdeb44.cc +325 -0
  58. ddfem/data/2.11.dev20250709/localfunction_d3d9b8a21e3075c9ff40117c5244f28e_a524c1196983e65de1c06d7d6afdeb44.cc +381 -0
  59. ddfem/data/2.11.dev20250709/localfunction_d4b9ca85d48735ee01f395a42eaa0cee_af122c1df944c95cd395ec0f91d0f970.cc +774 -0
  60. ddfem/data/2.11.dev20250709/localfunction_dd1fb4bd60f2d8b3a062dbbdaedb9fee_a524c1196983e65de1c06d7d6afdeb44.cc +869 -0
  61. ddfem/data/2.11.dev20250709/localfunction_dd5ab085a9d94f578c1f3d337ea360a3_a524c1196983e65de1c06d7d6afdeb44.cc +161 -0
  62. ddfem/data/2.11.dev20250709/{localfunction_3e323e81c52891c0ecb656eac273e52f_a524c1196983e65de1c06d7d6afdeb44.cc → localfunction_e2b19c5987f9b6fb0cd5453bfa7f4f9f_a524c1196983e65de1c06d7d6afdeb44.cc} +14 -30
  63. ddfem/data/2.11.dev20250709/{localfunction_e69118a51208cfab8a028711e966e76c_19659fe2f2f74bcfb5d532f1a0d38be9.cc → localfunction_e85b93fe9b8fcd40ee82782fc600b65b_a524c1196983e65de1c06d7d6afdeb44.cc} +89 -78
  64. ddfem/data/extra.modules +13 -0
  65. ddfem/examples/beam.py +43 -50
  66. ddfem/examples/chemical_reaction.py +1 -1
  67. ddfem/examples/five_circle_flat.py +42 -28
  68. ddfem/examples/linear_elasticity.py +5 -1
  69. ddfem/examples/triple_circle.py +86 -83
  70. ddfem/examples/triple_circle_beam.py +71 -61
  71. ddfem/geometry/primitive_base.py +1 -1
  72. {ddfem-1.0.9.dist-info → ddfem-1.0.11.dist-info}/METADATA +35 -3
  73. ddfem-1.0.11.dist-info/RECORD +124 -0
  74. ddfem/data/2.11.dev20250709/boundary.modules +0 -9
  75. ddfem/data/2.11.dev20250709/femspace_90f0a9524a8cb701e8ee5027b7658a0e_0faf32f13b591f4f60f83c591507b9be.cc +0 -40
  76. ddfem/data/2.11.dev20250709/geometry.modules +0 -84
  77. ddfem/data/2.11.dev20250709/hierarchicalgrid_966e2a5c8356c5b278ccd3acad180f0a.cc +0 -30
  78. ddfem/data/2.11.dev20250709/localfunction_aeb3d963412cdc65630e0a4c3c0dde0f_a524c1196983e65de1c06d7d6afdeb44.cc +0 -135
  79. ddfem/data/2.11.dev20250709/localfunction_bdfb7ddf42a423f7d0791458634d4b8f_a524c1196983e65de1c06d7d6afdeb44.cc +0 -135
  80. ddfem/data/2.11.dev20250709/localfunction_c5ebc4ae4b5d3bad6be770eb08c50d08_19659fe2f2f74bcfb5d532f1a0d38be9.cc +0 -1131
  81. ddfem/data/2.11.dev20250709/localfunction_f4583c5cc10d24a8bdedf7510ce9da7b_a524c1196983e65de1c06d7d6afdeb44.cc +0 -299
  82. ddfem/data/2.11.dev20250709/localfunction_f4b1d42cbb447375f39ed834570cd3f0_a524c1196983e65de1c06d7d6afdeb44.cc +0 -135
  83. ddfem/data/2.11.dev20250709/localfunction_fc22d5adaf3b9563160dc2aec55e8ba1_19659fe2f2f74bcfb5d532f1a0d38be9.cc +0 -113
  84. ddfem/data/2.11.dev20250709/transformers.modules +0 -13
  85. ddfem/data/2.11.dev20250709/yaspcoordinates_dim2_ctdouble.cc +0 -55
  86. ddfem-1.0.9.dist-info/RECORD +0 -96
  87. {ddfem-1.0.9.dist-info → ddfem-1.0.11.dist-info}/WHEEL +0 -0
  88. {ddfem-1.0.9.dist-info → ddfem-1.0.11.dist-info}/licenses/LICENSE +0 -0
  89. {ddfem-1.0.9.dist-info → ddfem-1.0.11.dist-info}/top_level.txt +0 -0
@@ -1,135 +0,0 @@
1
- #ifndef GUARD_aeb3d963412cdc65630e0a4c3c0dde0f
2
- #define GUARD_aeb3d963412cdc65630e0a4c3c0dde0f
3
-
4
- #define USING_DUNE_PYTHON 1
5
- #include <config.h>
6
- #include <dune/alugrid/dgf.hh>
7
- #include <dune/alugrid/grid.hh>
8
- #include <dune/fem/gridpart/adaptiveleafgridpart.hh>
9
- #include <dune/fem/gridpart/filter/simple.hh>
10
- #include <dune/fem/gridpart/filteredgridpart.hh>
11
- #include <dune/fempy/py/gridview.hh>
12
- #include <dune/python/grid/gridview.hh>
13
- #include <dune/python/grid/hierarchical.hh>
14
- #include <dune/fem/function/localfunction/bindable.hh>
15
- #include <dune/fem/common/intersectionside.hh>
16
- #include <dune/python/pybind11/pybind11.h>
17
- #include <dune/python/pybind11/extensions.h>
18
- #include <dune/fempy/py/grid/gridpart.hh>
19
- #include <dune/common/exceptions.hh>
20
- #include <dune/fempy/py/ufllocalfunction.hh>
21
-
22
- namespace UFLLocalFunctions_aeb3d963412cdc65630e0a4c3c0dde0f
23
- {
24
-
25
- // UFLLocalFunction
26
- // ----------------
27
-
28
- template< class GridPart >
29
- struct UFLLocalFunction
30
- : public Dune::Fem::BindableGridFunctionWithSpace<GridPart,Dune::Dim<1>>
31
- {
32
- typedef GridPart GridPartType;
33
- typedef typename GridPartType::GridViewType GridView;
34
- typedef typename GridView::ctype ctype;
35
- typedef Dune::Fem::BindableGridFunctionWithSpace<GridPart,Dune::Dim<1>> BaseType;
36
- typedef Dune::Fem::GridFunctionSpace<GridPartType,Dune::Dim<1>> FunctionSpaceType;
37
- typedef typename GridPartType::template Codim< 0 >::EntityType EntityType;
38
- typedef typename GridPartType::IntersectionType IntersectionType;
39
- typedef typename EntityType::Geometry Geometry;
40
- typedef typename Geometry::GlobalCoordinate GlobalCoordinateType;
41
- typedef Dune::Fem::IntersectionSide Side;
42
- typedef double Conc0;
43
- typedef std::tuple< std::shared_ptr< Conc0 > > ConstantTupleType;
44
- template< std::size_t i >
45
- using ConstantsRangeType = typename std::tuple_element_t< i, ConstantTupleType >::element_type;
46
- typedef std::tuple<> CoefficientTupleType;
47
- static constexpr bool gridPartValid = true;
48
- template< std::size_t i >
49
- using CoefficientType = std::tuple_element_t< i, CoefficientTupleType >;
50
- template< std::size_t i >
51
- using ConstantType = typename std::tuple_element_t< i, ConstantTupleType >::element_type;
52
- using BaseType::entity;
53
- using BaseType::geometry;
54
-
55
- UFLLocalFunction ( const GridPartType &gridPart, const std::string &name, int order, const Dune::Fem::ParameterReader &parameter = Dune::Fem::Parameter::container() )
56
- : BaseType(gridPart,name,order)
57
- {
58
- std::get< 0 >( constants_ ) = std::make_shared< Conc0 >( (Conc0(0)) );
59
- }
60
-
61
- void bind ( const IntersectionType &intersection, Side side )
62
- {
63
- BaseType::bind(intersection, side);
64
- }
65
-
66
- void bind ( const EntityType &entity )
67
- {
68
- BaseType::bind(entity);
69
- }
70
-
71
- void unbind ()
72
- {
73
- BaseType::unbind();
74
- }
75
-
76
- template< class Point >
77
- void evaluate ( const Point &x, typename FunctionSpaceType::RangeType &result ) const
78
- {
79
- double tmp0 = constant< 0 >();
80
- result[ 0 ] = tmp0;
81
- }
82
-
83
- template< class Point >
84
- void jacobian ( const Point &x, typename FunctionSpaceType::JacobianRangeType &result ) const
85
- {
86
- result=typename FunctionSpaceType::JacobianRangeType(0);
87
- }
88
-
89
- template< class Point >
90
- void hessian ( const Point &x, typename FunctionSpaceType::HessianRangeType &result ) const
91
- {
92
- result=typename FunctionSpaceType::HessianRangeType(0);
93
- }
94
-
95
- template< std::size_t i >
96
- const ConstantType< i > &constant () const
97
- {
98
- return *std::get< i >( constants_ );
99
- }
100
-
101
- template< std::size_t i >
102
- ConstantType< i > &constant ()
103
- {
104
- return *std::get< i >( constants_ );
105
- }
106
-
107
- const Conc0 &conc0 () const
108
- {
109
- return *std::get< 0 >( constants_ );
110
- }
111
-
112
- Conc0 &conc0 ()
113
- {
114
- return *std::get< 0 >( constants_ );
115
- }
116
- ConstantTupleType constants_;
117
- std::tuple< > coefficients_;
118
- };
119
-
120
- } // namespace UFLLocalFunctions_aeb3d963412cdc65630e0a4c3c0dde0f
121
-
122
- PYBIND11_MODULE( localfunction_aeb3d963412cdc65630e0a4c3c0dde0f_a524c1196983e65de1c06d7d6afdeb44, module )
123
- {
124
- typedef UFLLocalFunctions_aeb3d963412cdc65630e0a4c3c0dde0f::UFLLocalFunction< typename 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 > > > LocalFunctionType;
125
- if constexpr( LocalFunctionType::gridPartValid )
126
- {
127
- auto cls = Dune::Python::insertClass<LocalFunctionType>(module,"UFLLocalFunction",Dune::Python::GenerateTypeName("UFLLocalFunctions_aeb3d963412cdc65630e0a4c3c0dde0f::UFLLocalFunction< typename 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::Python::IncludeFiles({"python/dune/generated/localfunction_aeb3d963412cdc65630e0a4c3c0dde0f_a524c1196983e65de1c06d7d6afdeb44.cc"})).first;
128
- Dune::FemPy::registerUFLLocalFunction( module, cls );
129
- cls.def( pybind11::init( [] ( pybind11::object gridView, const std::string &name, int order ) {return new LocalFunctionType( 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 >>(gridView),name,order); } ), pybind11::keep_alive< 1, 2 >() );
130
- cls.def_property( "c0", [] ( LocalFunctionType &self ) -> UFLLocalFunctions_aeb3d963412cdc65630e0a4c3c0dde0f::UFLLocalFunction< typename 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 > > >::Conc0 { return self.conc0(); }, [] ( LocalFunctionType &self, const UFLLocalFunctions_aeb3d963412cdc65630e0a4c3c0dde0f::UFLLocalFunction< typename 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 > > >::Conc0 &v ) { self.conc0() = v; } );
131
- cls.def_property_readonly( "virtualized", [] ( LocalFunctionType& ) -> bool { return true;});
132
- }
133
- }
134
-
135
- #endif
@@ -1,135 +0,0 @@
1
- #ifndef GUARD_bdfb7ddf42a423f7d0791458634d4b8f
2
- #define GUARD_bdfb7ddf42a423f7d0791458634d4b8f
3
-
4
- #define USING_DUNE_PYTHON 1
5
- #include <config.h>
6
- #include <dune/alugrid/dgf.hh>
7
- #include <dune/alugrid/grid.hh>
8
- #include <dune/fem/gridpart/adaptiveleafgridpart.hh>
9
- #include <dune/fem/gridpart/filter/simple.hh>
10
- #include <dune/fem/gridpart/filteredgridpart.hh>
11
- #include <dune/fempy/py/gridview.hh>
12
- #include <dune/python/grid/gridview.hh>
13
- #include <dune/python/grid/hierarchical.hh>
14
- #include <dune/fem/function/localfunction/bindable.hh>
15
- #include <dune/fem/common/intersectionside.hh>
16
- #include <dune/python/pybind11/pybind11.h>
17
- #include <dune/python/pybind11/extensions.h>
18
- #include <dune/fempy/py/grid/gridpart.hh>
19
- #include <dune/common/exceptions.hh>
20
- #include <dune/fempy/py/ufllocalfunction.hh>
21
-
22
- namespace UFLLocalFunctions_bdfb7ddf42a423f7d0791458634d4b8f
23
- {
24
-
25
- // UFLLocalFunction
26
- // ----------------
27
-
28
- template< class GridPart >
29
- struct UFLLocalFunction
30
- : public Dune::Fem::BindableGridFunctionWithSpace<GridPart,Dune::Dim<1>>
31
- {
32
- typedef GridPart GridPartType;
33
- typedef typename GridPartType::GridViewType GridView;
34
- typedef typename GridView::ctype ctype;
35
- typedef Dune::Fem::BindableGridFunctionWithSpace<GridPart,Dune::Dim<1>> BaseType;
36
- typedef Dune::Fem::GridFunctionSpace<GridPartType,Dune::Dim<1>> FunctionSpaceType;
37
- typedef typename GridPartType::template Codim< 0 >::EntityType EntityType;
38
- typedef typename GridPartType::IntersectionType IntersectionType;
39
- typedef typename EntityType::Geometry Geometry;
40
- typedef typename Geometry::GlobalCoordinate GlobalCoordinateType;
41
- typedef Dune::Fem::IntersectionSide Side;
42
- typedef double Conc7;
43
- typedef std::tuple< std::shared_ptr< Conc7 > > ConstantTupleType;
44
- template< std::size_t i >
45
- using ConstantsRangeType = typename std::tuple_element_t< i, ConstantTupleType >::element_type;
46
- typedef std::tuple<> CoefficientTupleType;
47
- static constexpr bool gridPartValid = true;
48
- template< std::size_t i >
49
- using CoefficientType = std::tuple_element_t< i, CoefficientTupleType >;
50
- template< std::size_t i >
51
- using ConstantType = typename std::tuple_element_t< i, ConstantTupleType >::element_type;
52
- using BaseType::entity;
53
- using BaseType::geometry;
54
-
55
- UFLLocalFunction ( const GridPartType &gridPart, const std::string &name, int order, const Dune::Fem::ParameterReader &parameter = Dune::Fem::Parameter::container() )
56
- : BaseType(gridPart,name,order)
57
- {
58
- std::get< 0 >( constants_ ) = std::make_shared< Conc7 >( (Conc7(0)) );
59
- }
60
-
61
- void bind ( const IntersectionType &intersection, Side side )
62
- {
63
- BaseType::bind(intersection, side);
64
- }
65
-
66
- void bind ( const EntityType &entity )
67
- {
68
- BaseType::bind(entity);
69
- }
70
-
71
- void unbind ()
72
- {
73
- BaseType::unbind();
74
- }
75
-
76
- template< class Point >
77
- void evaluate ( const Point &x, typename FunctionSpaceType::RangeType &result ) const
78
- {
79
- double tmp0 = constant< 0 >();
80
- result[ 0 ] = tmp0;
81
- }
82
-
83
- template< class Point >
84
- void jacobian ( const Point &x, typename FunctionSpaceType::JacobianRangeType &result ) const
85
- {
86
- result=typename FunctionSpaceType::JacobianRangeType(0);
87
- }
88
-
89
- template< class Point >
90
- void hessian ( const Point &x, typename FunctionSpaceType::HessianRangeType &result ) const
91
- {
92
- result=typename FunctionSpaceType::HessianRangeType(0);
93
- }
94
-
95
- template< std::size_t i >
96
- const ConstantType< i > &constant () const
97
- {
98
- return *std::get< i >( constants_ );
99
- }
100
-
101
- template< std::size_t i >
102
- ConstantType< i > &constant ()
103
- {
104
- return *std::get< i >( constants_ );
105
- }
106
-
107
- const Conc7 &conc7 () const
108
- {
109
- return *std::get< 0 >( constants_ );
110
- }
111
-
112
- Conc7 &conc7 ()
113
- {
114
- return *std::get< 0 >( constants_ );
115
- }
116
- ConstantTupleType constants_;
117
- std::tuple< > coefficients_;
118
- };
119
-
120
- } // namespace UFLLocalFunctions_bdfb7ddf42a423f7d0791458634d4b8f
121
-
122
- PYBIND11_MODULE( localfunction_bdfb7ddf42a423f7d0791458634d4b8f_a524c1196983e65de1c06d7d6afdeb44, module )
123
- {
124
- typedef UFLLocalFunctions_bdfb7ddf42a423f7d0791458634d4b8f::UFLLocalFunction< typename 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 > > > LocalFunctionType;
125
- if constexpr( LocalFunctionType::gridPartValid )
126
- {
127
- auto cls = Dune::Python::insertClass<LocalFunctionType>(module,"UFLLocalFunction",Dune::Python::GenerateTypeName("UFLLocalFunctions_bdfb7ddf42a423f7d0791458634d4b8f::UFLLocalFunction< typename 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::Python::IncludeFiles({"python/dune/generated/localfunction_bdfb7ddf42a423f7d0791458634d4b8f_a524c1196983e65de1c06d7d6afdeb44.cc"})).first;
128
- Dune::FemPy::registerUFLLocalFunction( module, cls );
129
- cls.def( pybind11::init( [] ( pybind11::object gridView, const std::string &name, int order ) {return new LocalFunctionType( 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 >>(gridView),name,order); } ), pybind11::keep_alive< 1, 2 >() );
130
- cls.def_property( "c7", [] ( LocalFunctionType &self ) -> UFLLocalFunctions_bdfb7ddf42a423f7d0791458634d4b8f::UFLLocalFunction< typename 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 > > >::Conc7 { return self.conc7(); }, [] ( LocalFunctionType &self, const UFLLocalFunctions_bdfb7ddf42a423f7d0791458634d4b8f::UFLLocalFunction< typename 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 > > >::Conc7 &v ) { self.conc7() = v; } );
131
- cls.def_property_readonly( "virtualized", [] ( LocalFunctionType& ) -> bool { return true;});
132
- }
133
- }
134
-
135
- #endif