ddfem 1.0.2__tar.gz → 1.0.3__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 (46) hide show
  1. {ddfem-1.0.2 → ddfem-1.0.3}/PKG-INFO +7 -3
  2. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/boundary.py +0 -1
  3. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/domain_dune.py +8 -5
  4. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem.egg-info/PKG-INFO +7 -3
  5. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem.egg-info/requires.txt +3 -0
  6. {ddfem-1.0.2 → ddfem-1.0.3}/pyproject.toml +9 -3
  7. {ddfem-1.0.2 → ddfem-1.0.3}/LICENSE +0 -0
  8. {ddfem-1.0.2 → ddfem-1.0.3}/README.md +0 -0
  9. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/__init__.py +0 -0
  10. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/__init__.py +0 -0
  11. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/advection_diffusion.py +0 -0
  12. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/beam.py +0 -0
  13. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/cahn_hilliard.py +0 -0
  14. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/chemical_reaction.py +0 -0
  15. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/constant.py +0 -0
  16. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/five_circle_flat.py +0 -0
  17. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/forchheimer.py +0 -0
  18. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/hyperelasticity.py +0 -0
  19. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/linear_elasticity.py +0 -0
  20. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/plaplace.py +0 -0
  21. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/single_circle.py +0 -0
  22. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/triple_circle.py +0 -0
  23. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/examples/triple_circle_beam.py +0 -0
  24. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/__init__.py +0 -0
  25. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/arc.py +0 -0
  26. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/ball.py +0 -0
  27. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/box.py +0 -0
  28. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/domain.py +0 -0
  29. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/helpers.py +0 -0
  30. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/pie.py +0 -0
  31. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/plane.py +0 -0
  32. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/primitive_base.py +0 -0
  33. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/geometry/vesica.py +0 -0
  34. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/model2ufl.py +0 -0
  35. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/plot.py +0 -0
  36. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/transformers/DDM1.py +0 -0
  37. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/transformers/Fitted.py +0 -0
  38. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/transformers/Mix0.py +0 -0
  39. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/transformers/NNS.py +0 -0
  40. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/transformers/NS.py +0 -0
  41. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/transformers/__init__.py +0 -0
  42. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem/transformers/transformer_base.py +0 -0
  43. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem.egg-info/SOURCES.txt +0 -0
  44. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem.egg-info/dependency_links.txt +0 -0
  45. {ddfem-1.0.2 → ddfem-1.0.3}/ddfem.egg-info/top_level.txt +0 -0
  46. {ddfem-1.0.2 → ddfem-1.0.3}/setup.cfg +0 -0
@@ -1,11 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ddfem
3
- Version: 1.0.2
3
+ Version: 1.0.3
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
7
- Project-URL: Homepage, https://...
8
- Project-URL: Issues, https://...
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
9
11
  Classifier: Programming Language :: Python :: 3
10
12
  Classifier: Operating System :: OS Independent
11
13
  Requires-Python: >=3.9
@@ -13,6 +15,8 @@ Description-Content-Type: text/markdown
13
15
  License-File: LICENSE
14
16
  Requires-Dist: fenics-ufl==2022.2.0
15
17
  Requires-Dist: numpy
18
+ Provides-Extra: dune
19
+ Requires-Dist: dune-fem; extra == "dune"
16
20
  Dynamic: license-file
17
21
 
18
22
  # Diffuse Domain Finite Element Methods
@@ -87,7 +87,6 @@ def classify_boundary(boundary_dict):
87
87
  boundary_values.update([(kk, f) for kk in ids])
88
88
 
89
89
  else:
90
- print(type(k), type(f))
91
90
  raise NotImplementedError(f"unknown boundary type {k} : {f}")
92
91
 
93
92
  return boundary_flux_cs, boundary_flux_vs, boundary_values
@@ -7,22 +7,25 @@ from .domain import Domain
7
7
 
8
8
 
9
9
  class DomainDune(Domain):
10
- def __init__(self, omega, x, gridView):
10
+ def __init__(self, omega, x, gridView, filterTolerance=0):
11
11
  super().__init__(omega)
12
12
  self.x = x
13
13
  self.gridView = gridView
14
+ self.fullSDF = self.gridFunction(self.omega(self.x), name="full-sdf")
15
+ if filterTolerance>0:
16
+ self.gridView = self._filter(tolerance=filterTolerance)
17
+ self.fullSDF = self.gridFunction(self.omega(self.x), name="full-sdf")
14
18
 
15
19
  self._phi = None
16
20
  self._bndProj = None
17
21
  self._extProj = None
18
22
  self._bndProjSDFs = {}
19
23
 
20
- self.fullSDF = self.gridFunction(self.omega(self.x), name="full-sdf")
21
24
 
22
25
  def gridFunction(self, expr, name):
23
26
  start_ = time.time()
24
27
  gf = dune.fem.function.gridFunction(expr, name=name, gridView=self.gridView)
25
- print(f"{name} setup: {time.time() - start_}")
28
+ # print(f"{name} setup: {time.time() - start_}")
26
29
  return gf
27
30
 
28
31
  def phi(self, x):
@@ -67,11 +70,11 @@ class DomainDune(Domain):
67
70
  )
68
71
 
69
72
  self.gridView.hierarchicalGrid.adapt(mark)
70
- print(self.gridView.size(0))
73
+ # print(self.gridView.size(0))
71
74
  lowerTol /= 2
72
75
  upperTol /= 2
73
76
 
74
- def _filter(self, tolerance=1):
77
+ def _filter(self, tolerance):
75
78
  sd = self.fullSDF
76
79
  tol = tolerance # * self.epsilon.value: issue here with epsilon being a UFL expression due to CSG approach
77
80
  phiFilter = (
@@ -1,11 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ddfem
3
- Version: 1.0.2
3
+ Version: 1.0.3
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
7
- Project-URL: Homepage, https://...
8
- Project-URL: Issues, https://...
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
9
11
  Classifier: Programming Language :: Python :: 3
10
12
  Classifier: Operating System :: OS Independent
11
13
  Requires-Python: >=3.9
@@ -13,6 +15,8 @@ Description-Content-Type: text/markdown
13
15
  License-File: LICENSE
14
16
  Requires-Dist: fenics-ufl==2022.2.0
15
17
  Requires-Dist: numpy
18
+ Provides-Extra: dune
19
+ Requires-Dist: dune-fem; extra == "dune"
16
20
  Dynamic: license-file
17
21
 
18
22
  # Diffuse Domain Finite Element Methods
@@ -1,2 +1,5 @@
1
1
  fenics-ufl==2022.2.0
2
2
  numpy
3
+
4
+ [dune]
5
+ dune-fem
@@ -7,7 +7,7 @@ packages = ["ddfem","ddfem.geometry","ddfem.transformers","ddfem.examples"]
7
7
 
8
8
  [project]
9
9
  name = "ddfem"
10
- version = "1.0.2"
10
+ version = "1.0.3"
11
11
  dependencies = [ "fenics-ufl == 2022.2.0", "numpy" ]
12
12
  authors = [
13
13
  { name="Luke Benfield", email="luke.benfield@warwick.ac.uk" },
@@ -23,6 +23,12 @@ classifiers = [
23
23
  license = "MIT"
24
24
  license-files = ["LICEN[CS]E*"]
25
25
 
26
+ [project.optional-dependencies]
27
+ dune = ["dune-fem"]
28
+
26
29
  [project.urls]
27
- Homepage = "https://..."
28
- Issues = "https://..."
30
+ Homepage = "https://gitlab.dune-project.org/dune-fem/ddfem"
31
+ Issues = "https://gitlab.dune-project.org/dune-fem/ddfem/-/issues"
32
+ Documentation = "https://ddfem.readthedocs.io/en/latest/index.html"
33
+ Repository = "https://gitlab.dune-project.org/dune-fem/ddfem.git"
34
+
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes