ngsolve 6.2.2502__cp310-cp310-win_amd64.whl → 6.2.2504__cp310-cp310-win_amd64.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.

Potentially problematic release.


This version of ngsolve might be problematic. Click here for more details.

Files changed (52) hide show
  1. netgen/include/fespace.hpp +3 -2
  2. netgen/include/integrator.hpp +4 -16
  3. netgen/include/intrules_SauterSchwab.hpp +25 -0
  4. netgen/include/mp_coefficient.hpp +140 -0
  5. netgen/include/mptools.hpp +106 -161
  6. netgen/include/potentialtools.hpp +20 -0
  7. netgen/include/prolongation.hpp +126 -3
  8. netgen/include/sparsematrix_impl.hpp +71 -5
  9. netgen/include/symbolicintegrator.hpp +1 -0
  10. netgen/include/tangentialfacetfespace.hpp +7 -22
  11. netgen/lib/libngsolve.lib +0 -0
  12. netgen/libngsolve.dll +0 -0
  13. ngsolve/__init__.py +1 -0
  14. ngsolve/cmake/NGSolveConfig.cmake +5 -5
  15. ngsolve/cmake/ngsolve-targets.cmake +9 -2
  16. ngsolve/config/config.py +5 -5
  17. ngsolve/ngslib.pyd +0 -0
  18. ngsolve/solve_implementation.py +146 -0
  19. {ngsolve-6.2.2502.dist-info → ngsolve-6.2.2504.dist-info}/METADATA +2 -2
  20. {ngsolve-6.2.2502.dist-info → ngsolve-6.2.2504.dist-info}/RECORD +52 -48
  21. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/Scripts/ngsolve.tcl +0 -0
  22. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/beam.geo +0 -0
  23. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/beam.vol +0 -0
  24. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/chip.in2d +0 -0
  25. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/chip.vol +0 -0
  26. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/coil.geo +0 -0
  27. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/coil.vol +0 -0
  28. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/coilshield.geo +0 -0
  29. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/coilshield.vol +0 -0
  30. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/cube.geo +0 -0
  31. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/cube.vol +0 -0
  32. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d10_DGdoubleglazing.pde +0 -0
  33. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d11_chip_nitsche.pde +0 -0
  34. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d1_square.pde +0 -0
  35. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d2_chip.pde +0 -0
  36. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d3_helmholtz.pde +0 -0
  37. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d4_cube.pde +0 -0
  38. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d5_beam.pde +0 -0
  39. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d6_shaft.pde +0 -0
  40. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d7_coil.pde +0 -0
  41. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d8_coilshield.pde +0 -0
  42. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/d9_hybridDG.pde +0 -0
  43. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/doubleglazing.in2d +0 -0
  44. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/doubleglazing.vol +0 -0
  45. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/piezo2d40round4.vol.gz +0 -0
  46. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/shaft.geo +0 -0
  47. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/shaft.vol +0 -0
  48. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/square.in2d +0 -0
  49. {ngsolve-6.2.2502.data → ngsolve-6.2.2504.data}/data/share/ngsolve/square.vol +0 -0
  50. {ngsolve-6.2.2502.dist-info → ngsolve-6.2.2504.dist-info}/LICENSE +0 -0
  51. {ngsolve-6.2.2502.dist-info → ngsolve-6.2.2504.dist-info}/WHEEL +0 -0
  52. {ngsolve-6.2.2502.dist-info → ngsolve-6.2.2504.dist-info}/top_level.txt +0 -0
@@ -51,28 +51,94 @@ namespace ngla
51
51
  FlatArray<TM> val, size_t h, size_t w)
52
52
  {
53
53
  static Timer t("SparseMatrix::CreateFromCOO"); RegionTimer r(t);
54
- Array<int> cnt(h);
54
+ static Timer t1("SparseMatrix::CreateFromCOO 1");
55
+ static Timer t2("SparseMatrix::CreateFromCOO 2");
56
+ static Timer t3("SparseMatrix::CreateFromCOO 3");
55
57
 
56
58
  /*
57
- cnt = 0;
58
- for (auto i : indi) cnt[i]++;
59
- */
59
+ {
60
+ Array<int> cnt(h);
60
61
 
62
+ t1.Start();
61
63
  DynamicTable<int> tab(h);
62
64
  for (size_t i = 0; i < indi.Size(); i++)
63
65
  tab.AddUnique(indi[i], indj[i]);
66
+ t1.Stop();
64
67
  for (size_t i = 0; i < h; i++)
65
68
  cnt[i] = tab.EntrySize(i);
66
69
 
67
70
  auto matrix = make_shared<SparseMatrix<TM>> (cnt, w);
71
+ t2.Start();
68
72
  for (auto k : ngstd::Range(indi))
69
73
  matrix->CreatePosition(indi[k], indj[k]);
74
+ t2.Stop();
70
75
  matrix->SetZero();
71
76
 
77
+ t3.Start();
72
78
  for (auto k : ngstd::Range(indi))
73
79
  (*matrix)(indi[k], indj[k]) += val[k];
80
+ t3.Stop();
81
+ // return matrix;
82
+ }
83
+ */
84
+
85
+ Array<int> cnt(h);
86
+ cnt = 0;
87
+ for (auto i : indi)
88
+ cnt[i]++;
89
+
90
+ Table<int> tab(cnt);
91
+ cnt = 0;
92
+
93
+ for (auto [i,j] : Zip(indi, indj))
94
+ tab[i][cnt[i]++] = j;
95
+
96
+ cnt = 0;
97
+ // for (int i = 0; i < tab.Size(); i++)
98
+ ParallelFor (tab.Size(), [&] (size_t i)
99
+ {
100
+ QuickSort (tab[i]);
101
+
102
+ int prev = -1;
103
+ for (auto j : tab[i])
104
+ {
105
+ if (j != prev) cnt[i]++;
106
+ prev = j;
107
+ }
108
+ });
109
+
110
+ auto matrix = make_shared<SparseMatrix<TM>> (cnt, w);
111
+ t2.Start();
112
+ // for (auto k : ngstd::Range(indi))
113
+ // matrix->CreatePosition(indi[k], indj[k]);
74
114
 
75
- return matrix;
115
+ cnt = 0;
116
+ for (int i = 0; i < tab.Size(); i++)
117
+ {
118
+ int prev = -1;
119
+ for (auto j : tab[i])
120
+ {
121
+ auto cols = matrix->GetRowIndices(i);
122
+ if (j != prev)
123
+ cols[cnt[i]++] = j;
124
+ prev = j;
125
+ }
126
+ }
127
+
128
+ t2.Stop();
129
+ matrix->SetZero();
130
+
131
+ t3.Start();
132
+ /*
133
+ for (auto k : ngstd::Range(indi))
134
+ (*matrix)(indi[k], indj[k]) += val[k];
135
+ */
136
+ ParallelFor (indi.Size(), [&](size_t k)
137
+ {
138
+ AtomicAdd ( (*matrix)(indi[k], indj[k]), val[k]);
139
+ });
140
+ t3.Stop();
141
+ return matrix;
76
142
  }
77
143
 
78
144
 
@@ -604,6 +604,7 @@ public:
604
604
 
605
605
  class SymbolicFacetLinearFormIntegrator : public FacetLinearFormIntegrator
606
606
  {
607
+ protected:
607
608
  shared_ptr<CoefficientFunction> cf;
608
609
  Array<ProxyFunction*> proxies;
609
610
  Array<CoefficientFunction*> cache_cfs;
@@ -16,34 +16,22 @@ namespace ngcomp
16
16
  class NGS_DLL_HEADER TangentialFacetFESpace : public FESpace
17
17
  {
18
18
  protected:
19
- /// Level
20
- // int level;
21
- /// Number of Facets
22
- // int nfacets;
23
- ///
24
- // int ncfacets;
25
- ///
26
- // int nel;
27
-
28
19
  Array<int> first_facet_dof;
29
20
  Array<int> first_inner_dof; // for highest_order_dc
30
- // int ndof_lo;
31
21
 
32
22
  int rel_order;
33
23
 
34
24
  Array<IVec<2> > order_facet;
35
25
  Array<bool> fine_facet;
36
26
 
37
- // int ndof;
38
- // Array<int> ndlevel;
39
27
  bool var_order;
40
28
  bool print;
41
29
 
42
30
  bool highest_order_dc;
43
31
  bool hide_highest_order_dc;
32
+ bool all_dofs_together;
44
33
 
45
34
  public:
46
- ///
47
35
  TangentialFacetFESpace (shared_ptr<MeshAccess> ama, const Flags & flags,
48
36
  bool parseflags = false );
49
37
 
@@ -61,20 +49,11 @@ namespace ngcomp
61
49
  virtual void SetOrder (NodeId ni, int order) override;
62
50
  virtual int GetOrder (NodeId ni) const override;
63
51
 
64
-
65
- // virtual size_t GetNDof() const throw() override { return ndof; }
66
- // virtual size_t GetNDofLevel ( int i ) const override { return ndlevel[i]; }
67
-
68
52
  virtual FlatArray<VorB> GetDualShapeNodes (VorB vb) const override;
69
53
 
70
- // virtual int GetNDofLowOrder () const
71
- // { return ndof_lo; }
72
54
 
73
55
  virtual FiniteElement & GetFE(ElementId ei, Allocator & lh) const override;
74
56
 
75
- // virtual const FiniteElement & GetFE ( int elnr, LocalHeap & lh ) const;
76
- // virtual const FiniteElement & GetSFE ( int selnr, LocalHeap & lh ) const;
77
-
78
57
  virtual void GetFacetDofNrs (int felnr, Array<DofId> & dnums) const;
79
58
 
80
59
  virtual int GetNFacetDofs (int felnr) const;
@@ -90,6 +69,12 @@ namespace ngcomp
90
69
  virtual IVec<2> GetFacetOrder(int fnr) const;
91
70
 
92
71
  virtual int GetFirstFacetDof(int fanr) const;
72
+ const auto & GetFirstFacetDof() const { return first_facet_dof; }
73
+
74
+ IntRange GetFacetDofs (int nr) const
75
+ {
76
+ return IntRange (first_facet_dof[nr], first_facet_dof[nr+1]);
77
+ }
93
78
 
94
79
  virtual bool UsesHighestOrderDiscontinuous() const {return highest_order_dc;};
95
80
 
netgen/lib/libngsolve.lib CHANGED
Binary file
netgen/libngsolve.dll CHANGED
Binary file
ngsolve/__init__.py CHANGED
@@ -75,6 +75,7 @@ from .utils import x, y, z, dx, ds, grad, Grad, curl, div, Deviator, PyId, PyTra
75
75
  from . import solvers
76
76
  from . import preconditioners
77
77
  from . import timestepping
78
+ from .solve_implementation import Solve
78
79
 
79
80
  try:
80
81
  from netgen.occ import unit_square, unit_cube
@@ -1,4 +1,4 @@
1
- set(PACKAGE_VERSION "6.2.2502")
1
+ set(PACKAGE_VERSION "6.2.2504")
2
2
  find_package(Netgen CONFIG REQUIRED HINTS
3
3
  ${CMAKE_CURRENT_LIST_DIR}
4
4
  ${CMAKE_CURRENT_LIST_DIR}/..
@@ -23,15 +23,15 @@ set(NGSOLVE_PYBIND_INCLUDE_DIR "")
23
23
  set(NGSOLVE_PYTHON_INCLUDE_DIRS "C:/Python310/include")
24
24
  set(NGSOLVE_PYTHON_LIBRARIES "C:/Python310/libs/python310.lib")
25
25
  set(NGSOLVE_PYTHON_PACKAGES_INSTALL_DIR "")
26
- set(NGSOLVE_TCL_INCLUDE_PATH "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/ngsolve/external_dependencies/netgen/_skbuild/win-amd64-3.10/cmake-build/dependencies/src/project_tcl/generic")
26
+ set(NGSOLVE_TCL_INCLUDE_PATH "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/netgen/_skbuild/win-amd64-3.10/cmake-build/dependencies/src/project_tcl/generic")
27
27
  set(NGSOLVE_TCL_LIBRARY "C:/Python310/tcl/tclstub86.lib")
28
28
  set(NGSOLVE_TK_DND_LIBRARY "")
29
- set(NGSOLVE_TK_INCLUDE_PATH "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/ngsolve/external_dependencies/netgen/_skbuild/win-amd64-3.10/cmake-build/dependencies/src/project_tk/generic")
29
+ set(NGSOLVE_TK_INCLUDE_PATH "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/netgen/_skbuild/win-amd64-3.10/cmake-build/dependencies/src/project_tk/generic")
30
30
  set(NGSOLVE_TK_LIBRARY "C:/Python310/tcl/tkstub86.lib")
31
31
  set(NGSOLVE_X11_X11_LIB "")
32
32
  set(NGSOLVE_X11_Xmu_LIB "")
33
- set(NGSOLVE_ZLIB_INCLUDE_DIRS "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/ngsolve/external_dependencies/netgen/_skbuild/win-amd64-3.10/cmake-build/dependencies/zlib/include")
34
- set(NGSOLVE_ZLIB_LIBRARIES "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/ngsolve/external_dependencies/netgen/_skbuild/win-amd64-3.10/cmake-build/dependencies/zlib/lib/zlibstatic.lib")
33
+ set(NGSOLVE_ZLIB_INCLUDE_DIRS "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/netgen/_skbuild/win-amd64-3.10/cmake-build/dependencies/zlib/include")
34
+ set(NGSOLVE_ZLIB_LIBRARIES "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/netgen/_skbuild/win-amd64-3.10/cmake-build/dependencies/zlib/lib/zlibstatic.lib")
35
35
 
36
36
  set(NGSOLVE_INTEL_MIC OFF)
37
37
  set(NGSOLVE_USE_CCACHE ON)
@@ -19,7 +19,7 @@ set(CMAKE_IMPORT_FILE_VERSION 1)
19
19
  set(_cmake_targets_defined "")
20
20
  set(_cmake_targets_not_defined "")
21
21
  set(_cmake_expected_targets "")
22
- foreach(_cmake_expected_target IN ITEMS netgen_libs ngs_lapack netgen_python ngstd ngbla ngla ngfem ngcomp ngsolve)
22
+ foreach(_cmake_expected_target IN ITEMS netgen_libs ngs_lapack netgen_python ngstd ngbla ngla ngfem ngsbem ngcomp ngsolve)
23
23
  list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
24
24
  if(TARGET "${_cmake_expected_target}")
25
25
  list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
@@ -107,6 +107,13 @@ set_target_properties(ngfem PROPERTIES
107
107
  INTERFACE_LINK_LIBRARIES "ngbla;ngstd;\$<LINK_ONLY:>"
108
108
  )
109
109
 
110
+ # Create imported target ngsbem
111
+ add_library(ngsbem INTERFACE IMPORTED)
112
+
113
+ set_target_properties(ngsbem PROPERTIES
114
+ INTERFACE_LINK_LIBRARIES "ngcomp;ngfem;ngla;ngbla;ngstd;\$<LINK_ONLY:>"
115
+ )
116
+
110
117
  # Create imported target ngcomp
111
118
  add_library(ngcomp INTERFACE IMPORTED)
112
119
 
@@ -118,7 +125,7 @@ set_target_properties(ngcomp PROPERTIES
118
125
  add_library(ngsolve SHARED IMPORTED)
119
126
 
120
127
  set_target_properties(ngsolve PROPERTIES
121
- INTERFACE_LINK_LIBRARIES "netgen_libs;ngsolve;ngcomp;ngfem;ngbla;ngla;ngstd"
128
+ INTERFACE_LINK_LIBRARIES "netgen_libs;ngsolve;ngcomp;ngfem;ngsbem;ngbla;ngla;ngstd"
122
129
  )
123
130
 
124
131
  if(CMAKE_VERSION VERSION_LESS 3.0.0)
ngsolve/config/config.py CHANGED
@@ -29,15 +29,15 @@ NGSOLVE_INSTALL_DIR_INCLUDE = "netgen/include"
29
29
  NGSOLVE_INSTALL_DIR_CMAKE = "ngsolve/cmake"
30
30
  NGSOLVE_INSTALL_DIR_RES = "share"
31
31
 
32
- NGSOLVE_VERSION = "6.2.2502"
33
- NGSOLVE_VERSION_GIT = "v6.2.2502-0-g984bf8ae2"
34
- NGSOLVE_VERSION_PYTHON = "6.2.2502"
32
+ NGSOLVE_VERSION = "6.2.2504"
33
+ NGSOLVE_VERSION_GIT = "v6.2.2504-0-g7dd7ba8dd"
34
+ NGSOLVE_VERSION_PYTHON = "6.2.2504"
35
35
 
36
36
  NGSOLVE_VERSION_MAJOR = "6"
37
37
  NGSOLVE_VERSION_MINOR = "2"
38
38
  NGSOLVE_VERSION_TWEAK = "0"
39
- NGSOLVE_VERSION_PATCH = "2502"
40
- NGSOLVE_VERSION_HASH = "g984bf8ae2"
39
+ NGSOLVE_VERSION_PATCH = "2504"
40
+ NGSOLVE_VERSION_HASH = "g7dd7ba8dd"
41
41
 
42
42
  CMAKE_CXX_COMPILER = "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/cl.exe"
43
43
  CMAKE_CUDA_COMPILER = ""
ngsolve/ngslib.pyd CHANGED
Binary file
@@ -0,0 +1,146 @@
1
+ import functools
2
+
3
+ from ngsolve import (
4
+ BilinearForm,
5
+ GridFunction,
6
+ CoefficientFunction,
7
+ Region,
8
+ BND,
9
+ Preconditioner,
10
+ )
11
+ from .nonlinearsolvers import NewtonSolver
12
+ from .krylovspace import GMResSolver, LinearSolver
13
+
14
+
15
+ class Dirichlet:
16
+ def __init__(self, cf, region):
17
+ self.cf = cf
18
+ self.region = region
19
+
20
+
21
+ class Application:
22
+ def __init__(self, a: BilinearForm, gf: GridFunction):
23
+ self.a = a
24
+ self.gf = gf
25
+
26
+ def Solve(
27
+ self,
28
+ rhs,
29
+ *args,
30
+ dirichlet = None,
31
+ pre = None,
32
+ printrates: bool = False,
33
+ **kwargs,
34
+ ):
35
+ raise NotImplementedError("Solve method must be implemented in subclasses")
36
+
37
+ def __eq__(self, other):
38
+ return Equation(self, other)
39
+
40
+
41
+ class NonLinearApplication(Application):
42
+ def Solve(
43
+ self,
44
+ rhs=None,
45
+ dirichlet = None,
46
+ printing: bool = False,
47
+ **kwargs,
48
+ ):
49
+ solver_args = {}
50
+
51
+ if rhs is not None and rhs != 0:
52
+ rhs.Assemble()
53
+ solver_args["rhs"] = rhs
54
+ solver = NewtonSolver(self.a, self.gf, **solver_args)
55
+ if dirichlet is not None:
56
+ dirichlet_gf = GridFunction(self.gf.space)
57
+ if isinstance(dirichlet, Dirichlet):
58
+ dirichlet_gf.Set(dirichlet.cf, definedon=dirichlet.region)
59
+ else:
60
+ dirichlet_gf.Set(dirichlet, BND)
61
+ solver.SetDirichlet(dirichlet_gf.vec)
62
+ solver.Solve(**kwargs)
63
+
64
+
65
+ class LinearApplication(Application):
66
+ def Assemble(self):
67
+ if not hasattr(self, "vec"):
68
+ self.vec = self.gf.vec.CreateVector()
69
+ self.a.Apply(self.gf.vec, self.vec)
70
+
71
+ def Solve(
72
+ self,
73
+ rhs,
74
+ *args,
75
+ dirichlet = None,
76
+ pre = None,
77
+ lin_solver=None,
78
+ lin_solver_args = None,
79
+ printrates: bool = False,
80
+ ):
81
+ self.a.Assemble()
82
+ for arg in args:
83
+ if isinstance(arg, Dirichlet) or isinstance(arg, CoefficientFunction):
84
+ assert dirichlet is None, "Only one dirichlet condition can be set"
85
+ dirichlet = arg
86
+ if isinstance(arg, Preconditioner):
87
+ assert pre is None, "Only one preconditioner can be set"
88
+ pre = arg
89
+ if isinstance(arg, type) and issubclass(arg, LinearSolver):
90
+ assert lin_solver is None, "Only one linear solver can be set"
91
+ lin_solver = arg
92
+ rhs.Assemble()
93
+ if dirichlet is not None:
94
+ if isinstance(dirichlet, Dirichlet):
95
+ self.gf.Set(dirichlet.cf, definedon=dirichlet.region)
96
+ else:
97
+ self.gf.Set(dirichlet, BND)
98
+ rhs.vec.data += -self.a.mat * self.gf.vec
99
+ else:
100
+ self.gf.vec[:] = 0.0
101
+ if self.a.condense:
102
+ rhs.vec.data += self.a.harmonic_extension_trans * rhs.vec
103
+ if pre is None and lin_solver is None:
104
+ ainv = self.a.mat.Inverse(self.a.space.FreeDofs(self.a.condense))
105
+ else:
106
+ if lin_solver is None:
107
+ lin_solver = GMResSolver
108
+ if lin_solver_args is None:
109
+ lin_solver_args = {}
110
+ if pre is None:
111
+ freedofs = self.a.space.FreeDofs(self.a.condense)
112
+ else:
113
+ freedofs = None
114
+ if "printrates" not in lin_solver_args:
115
+ lin_solver_args["printrates"] = printrates
116
+ ainv = lin_solver(
117
+ mat=self.a.mat, pre=pre, freedofs=freedofs, **lin_solver_args
118
+ )
119
+ self.gf.vec.data += ainv * rhs.vec
120
+ if self.a.condense:
121
+ self.gf.vec.data += self.a.harmonic_extension * self.gf.vec
122
+ self.gf.vec.data += self.a.inner_solve * rhs.vec
123
+
124
+
125
+ class Equation:
126
+ def __init__(self, lhs, rhs):
127
+ self.lhs = lhs
128
+ self.rhs = rhs
129
+
130
+ @functools.wraps(Application.Solve)
131
+ def Solve(self, *args, **kwargs):
132
+ self.lhs.Solve(self.rhs, *args, **kwargs)
133
+
134
+
135
+ def _create_lin_appl(self, gfu: GridFunction) -> LinearApplication:
136
+ if not isinstance(gfu, GridFunction):
137
+ raise TypeError("gfu must be a GridFunction")
138
+ return LinearApplication(self, gfu)
139
+
140
+
141
+ BilinearForm.__mul__ = _create_lin_appl
142
+
143
+
144
+ @functools.wraps(Application.Solve)
145
+ def Solve(eq: Equation, *args, **kwargs):
146
+ eq.Solve(*args, **kwargs)
@@ -1,10 +1,10 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ngsolve
3
- Version: 6.2.2502
3
+ Version: 6.2.2504
4
4
  Summary: NGSolve
5
5
  Author: The NGSolve team
6
6
  License: LGPL2.1
7
7
  License-File: LICENSE
8
- Requires-Dist: netgen-mesher==6.2.2501.post54.dev0
8
+ Requires-Dist: netgen-mesher==6.2.2504
9
9
  Requires-Dist: mkl
10
10
 
@@ -1,4 +1,4 @@
1
- netgen/libngsolve.dll,sha256=O-3IOn-QMJGpe7R-fewHUuI_-B3u2_a3Ijy3I1f_-wU,35117568
1
+ netgen/libngsolve.dll,sha256=ZQOZ98N5AZ2bZggF7SuS5CLyA-K-KuZWVP0h1KQrMKo,35780608
2
2
  netgen/ngscxx.bat,sha256=Xw_hdRbpmz5NgZfbPoExNHXl0QsfvPp4ppoi8gqb7es,698
3
3
  netgen/ngsld.bat,sha256=YD1I1rK70K_YvLev7aYQMD9mCcwF55k1B_8pRWPpob0,428
4
4
  netgen/ngspy,sha256=MaX37DUOAnfU-gDmgQTw3fRs6JSJE6Jbq6xMSKNk_JQ,70
@@ -51,7 +51,7 @@ netgen/include/facetsurffespace.hpp,sha256=qO4tLszTL3YHmWCsWZn9QKTW45GiIJ4UFnf5y
51
51
  netgen/include/fe_interfaces.hpp,sha256=gGLCSJtPBuOCQZuo2t0VGvXrRwNt0OOPLRag--qXfS8,854
52
52
  netgen/include/fem.hpp,sha256=DPZpvRbOezchnVcUGlOE5R6xKFvmAqUeRza4GC285rw,2181
53
53
  netgen/include/fesconvert.hpp,sha256=hbGst9rksfUJX3BguHcgiF62myv3D3a2zkbjv2Ccl4g,574
54
- netgen/include/fespace.hpp,sha256=T0ZIfr2k7yj4wtXLJrqIgFSfx4C4R-1eS0KlBAvQeyI,48408
54
+ netgen/include/fespace.hpp,sha256=fFarmWIll99eUN5y3Dedz3fOtDJGymkQ5cSDxfGXqUI,48503
55
55
  netgen/include/finiteelement.hpp,sha256=ULds8D80WXlpVqgCppjHKrXhFuo-WewzIr3IalsIv8g,9431
56
56
  netgen/include/globalinterfacespace.hpp,sha256=atR009fWSlJpYjRI3OgMcvInOajz1W5egPLdfPAPFu8,2796
57
57
  netgen/include/globalspace.hpp,sha256=ZYni-ie6O2DD0N3u-fdmVfwygpV5lwJ3SOAnSSgWMNo,4079
@@ -91,10 +91,11 @@ netgen/include/hidden.hpp,sha256=t_dOumFNhFSPbqVVEnH2N7J4kZjKIdBCzIgGAXa9YXg,272
91
91
  netgen/include/householder.hpp,sha256=DUZUZ-zG7zVTtpgUB7Bpo3-1l-w0QciSVBvzEmi7h_A,6101
92
92
  netgen/include/hypre_ams_precond.hpp,sha256=fi2sMKV46VwHxj1mIcOorpA3eK0dJg2magch0YexSLE,3288
93
93
  netgen/include/hypre_precond.hpp,sha256=_85-R4NqLi2w7GT-vHAk1SMIlbnxYUl1JDAwCpkIdTI,1918
94
- netgen/include/integrator.hpp,sha256=feIiNHlv5DIxyf5TfDQhEnGVc0o3sx4qYC0YC04YiB0,67650
94
+ netgen/include/integrator.hpp,sha256=NsPm_eyi-OP6iSUTGfoiigGROuT4PgW3Z7qEHA8Btno,67156
95
95
  netgen/include/integratorcf.hpp,sha256=YFUZSINM8_aUfXc73ewJEBVesuR6wD-mnt9rHoiB5Wg,8119
96
96
  netgen/include/interpolate.hpp,sha256=mM3hYHpyjUtVlrinl59DaCUGA04F82-ZAJUCYMuh76M,1689
97
97
  netgen/include/intrule.hpp,sha256=XxsIC1L5b4DMfXu9xe7Kr9gKgFki9g0p39nByE-k2eY,83361
98
+ netgen/include/intrules_SauterSchwab.hpp,sha256=2f9Lb77H6sgaVq7576L78zNGbv4MYgHpddIzfc36TKA,675
98
99
  netgen/include/irspace.hpp,sha256=UFWeaFVUDwsHCJZqtZBBDnhWC4Oyy34z9Pr6KzofHPg,1557
99
100
  netgen/include/jacobi.hpp,sha256=Y4lJtfjoeHjtuYqlNwMH_WDumFmARIw4a-V8eU_Ij9o,4222
100
101
  netgen/include/l2hofe.hpp,sha256=03O8VX8PyBM6v8IrrVooN85H_X-NM4j2neDPivn-xGI,6843
@@ -107,7 +108,8 @@ netgen/include/matrix.hpp,sha256=0UT4qQMFBMf3eq8FS7XTkMbQaVSgz--EiNdVMzGq-Sc,579
107
108
  netgen/include/memusage.hpp,sha256=m_-fuupqepSve37WkRkoFHHyTtE9PdGnOVPIdQHlDiw,1209
108
109
  netgen/include/meshaccess.hpp,sha256=Yk5VSmQx4cp5WEHnfsZXUOijVlooEoozTAaUu75zla8,48419
109
110
  netgen/include/mgpre.hpp,sha256=5Zqt3pzrvm3EOfr84iU6rQx23LTkntUTd_s4_i6wEzI,5029
110
- netgen/include/mptools.hpp,sha256=LUuPHuRv06i7UxENbUJcp3HQRFJuwoBfGT5nzw2C3EQ,38375
111
+ netgen/include/mp_coefficient.hpp,sha256=TroJJa2ZrOfh8xaU2TY4m8raSaxvMU4pBXpxAeOZSt8,4876
112
+ netgen/include/mptools.hpp,sha256=ZiykV7RaX07CpRK5fJRO-vCUGJs_iusPXNK6G8rmKt8,35737
111
113
  netgen/include/multigrid.hpp,sha256=7YgJfeGTBnb-aFWHrbcVk3dos6XYU0iVCgiY8UvRopY,898
112
114
  netgen/include/multivector.hpp,sha256=5rkNSqyPhIXAb1lGKLcy908D9Uw9oqY4wpUXZEXbEPE,13082
113
115
  netgen/include/mumpsinverse.hpp,sha256=8YiUlQZMFVsJ0kuwaSphGZvxyEZJAZZApH8XahiTeEo,4249
@@ -136,9 +138,10 @@ netgen/include/plateaufespace.hpp,sha256=EKUQyPESNdB1vhz3U7B-QVQmfkNACNk2r5KvN-x
136
138
  netgen/include/pml.hpp,sha256=iftuUVHXkFSqa-dIU8hImQewscv0qdek_fN3gR9xbSY,7559
137
139
  netgen/include/pmltrafo.hpp,sha256=j6Sk5tHbzKPT1hj_jI6n6-cRUgV5b3_o3kRNev95wDE,20237
138
140
  netgen/include/postproc.hpp,sha256=TiEqDkANZJtxl-aOYMac-FKhtSkokXS3AuxAScqUDBQ,5334
141
+ netgen/include/potentialtools.hpp,sha256=DhBMmkL4xcm3UYOqt1cWoonjVf5m2ceCxp6s6qTWp24,355
139
142
  netgen/include/precomp.hpp,sha256=mx_zGsnBxqRVArwgkDpvUcX8EzP8v_8QwVdOp5m1nWQ,1337
140
143
  netgen/include/preconditioner.hpp,sha256=3UCrQqZ49YUHneg24-JoYVO40B4Di1DR-A3TQLZme2A,14630
141
- netgen/include/prolongation.hpp,sha256=JGW4mvgtPsqANsNZpTUeEMJuSp9eh07M_Whmoa2qxAQ,7468
144
+ netgen/include/prolongation.hpp,sha256=WjfpHPXxSBa1lOPbrTXEKo44wxe6OeGVMPK-XR0E-7c,11304
142
145
  netgen/include/python_comp.hpp,sha256=FgujlcVk9FKWwMBEo9CfJ-q_Kb4TNcCziotVTFIuXvY,3571
143
146
  netgen/include/python_fem.hpp,sha256=pdSB1RLhv2Vi52TaRoGpjQ21EHOA3RFAF0jeiWDp6EQ,3161
144
147
  netgen/include/python_linalg.hpp,sha256=HdWTpdddyVmv3ZO73sG0BoHleKiREg9emIcyjFl3au8,1761
@@ -156,16 +159,16 @@ netgen/include/solve.hpp,sha256=lzCGHU1QOj9VXG43Q8MzvDi48-BfVH_fG8R0ttU8Xfg,2123
156
159
  netgen/include/sparsecholesky.hpp,sha256=hOzFoXMEelAdJROF1q4zkYv0yfZgSDhjwaYvRRmiMcE,9201
157
160
  netgen/include/sparsematrix.hpp,sha256=vyk1ViL0oXSiPZX4FfrFgy8whefffUrTmSlTS60SbrU,33744
158
161
  netgen/include/sparsematrix_dyn.hpp,sha256=RSxxEAg6Y82DDt7S46Hw_KCxvQBPvEoBvH8j-H5plz4,2792
159
- netgen/include/sparsematrix_impl.hpp,sha256=C2yLlIx3QPXCreg5GLBy2mV8E-1DUD1S8m3jzbWzlWQ,28732
162
+ netgen/include/sparsematrix_impl.hpp,sha256=Y7uMOMhksi3-7xGmievBI1V8QFlvgzQiGhAcapCzM9I,30261
160
163
  netgen/include/special_matrix.hpp,sha256=2BdxqD7aNfKGsyXjW5rmJAhRfSPro36VaSH4__RYMJE,16904
161
164
  netgen/include/specialelement.hpp,sha256=ovP0KuLWkBRnoc72hfzGgrrigzNQBdJexVAgSUj63vg,3351
162
165
  netgen/include/statushandler.hpp,sha256=IJPw19bARTth8D8wc6kHTBkxE4o3QTWB-cGDGz1Q2oE,679
163
166
  netgen/include/stringops.hpp,sha256=vN_DL7f2M5e9dLpZOHIVDXzwoSovbqtuqClZdYMVDrA,274
164
167
  netgen/include/superluinverse.hpp,sha256=A5YmUv_5R0qAzcD4zIxpUPAB6HqLcXuFU6J91Ygmnio,3301
165
- netgen/include/symbolicintegrator.hpp,sha256=tk8SwRT2swPiafO1JevZskjFVwvAxbGd0HTGPJjx5oo,36868
168
+ netgen/include/symbolicintegrator.hpp,sha256=LreQR0qRXW4V6VFG-Ihkw2YhTzj89CxQ27RpqfZxedc,36882
166
169
  netgen/include/symmetricmatrix.hpp,sha256=M79mq0z70ohLFoi8cxPAxxlqD3RjFZAkbCrHwQrhvY8,2954
167
170
  netgen/include/tangentialfacetfe.hpp,sha256=iEP_cU3nBtVUnH67dvzeMqIS-JM6SeILhB738YX9Spg,7491
168
- netgen/include/tangentialfacetfespace.hpp,sha256=DoijcYOUEG8Tud_RqYOsmOZlpsQ2swx0XTLgI6eGGG4,3198
171
+ netgen/include/tangentialfacetfespace.hpp,sha256=Ot0m9OA3ps0xh7AWiLUK-yeZ40ogeFx7zY6dGWQuTPc,2808
169
172
  netgen/include/tensor.hpp,sha256=nzrF84BknvEixYfMyN-RdaWVlBIXJkYw82kpjmfyqCE,12535
170
173
  netgen/include/tensorcoefficient.hpp,sha256=eA-SVbv_N89PnBLAEf-O--8SwicgiCwRPbx_NHQp-fw,17522
171
174
  netgen/include/tensorproductintegrator.hpp,sha256=Sfo_YsCL_TZnbqR2gBWcFLDr7DOlmSHAUJu-mCeYrI0,4643
@@ -185,11 +188,11 @@ netgen/include/voxelcoefficientfunction.hpp,sha256=zPlatX_nf2ODK2X979wvpm1HXHEzn
185
188
  netgen/include/vtkoutput.hpp,sha256=GwPaFtOVY27_1hKwSqpNHV4ppOk3CVsLdMpocm27odQ,6628
186
189
  netgen/include/vvector.hpp,sha256=vpnwWlNWsEJB26ve8cKADbUMGVBTTVCFvrBC4r_LDDQ,4785
187
190
  netgen/include/webgui.hpp,sha256=xm1S5KHockrzf_R4zHzQ9fzwfQ4H5aZaZm9ItCaR41s,2199
188
- netgen/lib/libngsolve.lib,sha256=NyQso40noaNdGKAII1SxjaB0ksz6KltH6Ul2ze2-C1Y,13475284
191
+ netgen/lib/libngsolve.lib,sha256=j_NAN6gL6LE9VguJzPSt19Hk4_8HJWMEBUDjkPCbsnI,13493084
189
192
  ngsolve/TensorProductTools.py,sha256=jD4LtJdEiLt2dDsU6STMXb10yrau_i20gatwGlqbiFQ,8562
190
193
  ngsolve/__console.py,sha256=QLnfw1ONU9eVPQZ_LjzY-7b_gfZpRRRdI7imHR1lJR8,2983
191
194
  ngsolve/__expr.py,sha256=ZAtv94PVtAdvWWKFIvQGJC55aIEY6ajo-l5Hp-1V-6s,4396
192
- ngsolve/__init__.py,sha256=QbbkhTshcN0JuHMEm2C07j_vjb5FA2k0A24qV8zMAS0,5579
195
+ ngsolve/__init__.py,sha256=_pRJLhaBNqv2q1vigj9p-2YqRbiROROrnl3iVM9G2ow,5620
193
196
  ngsolve/_scikit_build_core_dependencies.py,sha256=usioLq44m3uusEH205dW0czyzGmzy87PZgizZKUoPs0,765
194
197
  ngsolve/bvp.py,sha256=STQCDhEphVgEK3hfWGJyVkS1vi_ubTTKHq7fnuR-POo,2065
195
198
  ngsolve/directsolvers.py,sha256=lVfEluGDFd_u6Y-vyQ08VjHA02xQuklIQ91hMopj-40,1021
@@ -200,20 +203,21 @@ ngsolve/meshes.py,sha256=nz95LP1EEIVAEJ0jyQGqq0E-62uuy2tvIRgqIrEqDHQ,27534
200
203
  ngsolve/ngs2petsc.py,sha256=PLAkvu4H-ZEXd0-bM2v0OJX7gga-OJ9d-NB7g322-wQ,12809
201
204
  ngsolve/ngscxx.py,sha256=r9TV49w0MKIxE6fgJYO4FNv-5wcM9eAFYIG9GspUy_A,1335
202
205
  ngsolve/ngslib.lib,sha256=_HzV4t-JUpCMSs1rNu4Jjtmr69v0FQUaOatAn17WF4A,1716
203
- ngsolve/ngslib.pyd,sha256=2Y8lp-rqmkXZexUF9MLfo6c0OExf5Y3SXCgW0f_c4t8,121344
206
+ ngsolve/ngslib.pyd,sha256=-nXlHDpUbgNXHbd-f8HMf4_ubwITbjeYYyMMZJFAOCs,121344
204
207
  ngsolve/nonlinearsolvers.py,sha256=nKd-SVJseTWztHZPEPKsbv0mLwQjFILZtOh7Ggft0xs,8419
205
208
  ngsolve/preconditioners.py,sha256=2To9cGdhZscFRKrIb6NfjKLBXoIfkemnhryaXrdgNC8,218
209
+ ngsolve/solve_implementation.py,sha256=djtTbzhY_CE_7kIh9NLKoeieUu7JJxJ6nqXf6UH9VG0,4524
206
210
  ngsolve/solvers.py,sha256=Vbm5RfIJ83nMtQ1pYJL0uBBuys4-mcY6b63MNkyiqxU,311
207
211
  ngsolve/timestepping.py,sha256=SuKsFS7cDXRixKWdMMIWW4flet12HLeqWTBC0DFhPwg,8535
208
212
  ngsolve/timing.py,sha256=j_Plbbh51pS9QwMq93hyvFDSrbywmdKZ6Z6OOZmZoe4,4093
209
213
  ngsolve/utils.py,sha256=jg6smLuKF6G9Rvg-EXjyYwjFJGyyiqSRknevdjp-9J4,4724
210
214
  ngsolve/webgui.py,sha256=MG9bzYvfZYodiC5-DR-9auveCzKX3d13AGOgKANne-A,24902
211
- ngsolve/cmake/NGSolveConfig.cmake,sha256=0VbwizgyQ5TTx2VswV926RUvpFKeSeleXbSoroQ_Yd4,5288
215
+ ngsolve/cmake/NGSolveConfig.cmake,sha256=XR2dTehqBlk0_grKYitmOy3f7L2aoUmXk4FmZUl1TSM,5168
212
216
  ngsolve/cmake/ngsolve-targets-release.cmake,sha256=knQjCmz6J-x_Egg5DosY5hU_CZdZlSQxQ4Za7pS07fA,907
213
- ngsolve/cmake/ngsolve-targets.cmake,sha256=WQc4JP_HZieGLKmRGtV1hCO7QAJJvLO7VwU7NhPQRW0,5969
217
+ ngsolve/cmake/ngsolve-targets.cmake,sha256=tOxsq7rtpqkGWlR3EuNBtND9icST3yjHS4aCU7iK9hs,6179
214
218
  ngsolve/config/__init__.py,sha256=IjGKWBHvRx572Z6m-5z0q82xuQaWlBABy1whwy2Uxak,23
215
219
  ngsolve/config/__main__.py,sha256=anI_XpgrpEnVnMyrFiH3Yon_tpQZkehnqRTNC02NiBI,93
216
- ngsolve/config/config.py,sha256=KkzGDchh8qJLt1niBySWrMW1N9uMFgf_QNLpkd9lKY0,2521
220
+ ngsolve/config/config.py,sha256=tWarR5jiorPcKdlOySZT90D10fQqisZq2G9KE3Hf18c,2521
217
221
  ngsolve/demos/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
218
222
  ngsolve/demos/TensorProduct/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
219
223
  ngsolve/demos/TensorProduct/tp_dg_1d_1d.py,sha256=3Q9ntmVJGIKQ-JLdGWgECR_kDjTG8FPVCSiTJkxyi40,2188
@@ -245,37 +249,37 @@ ngsolve/demos/mpi/mpi_cmagnet.py,sha256=59TuQvIIGoDStyJneH47NG131nppBoQpZQ9rfvG_
245
249
  ngsolve/demos/mpi/mpi_navierstokes.py,sha256=ieAWMDd9LoH99L14iBgF_YmX_xk7gltZ9MruTFN6xAY,3028
246
250
  ngsolve/demos/mpi/mpi_poisson.py,sha256=_-H0HFqlwlpasiVD9OQjUvJbWJcQ34-4y-va1WOSOzE,2557
247
251
  ngsolve/demos/mpi/mpi_timeDG.py,sha256=FUOh_1dzOGUU-uAsD4iyz0RVT382jMiMiuYkZjarhAE,1963
248
- ngsolve-6.2.2502.data/data/Scripts/ngsolve.tcl,sha256=8KBOXZKYU_qx8785PIjdmVjcUbCxR5aYrod0BZ4UgGc,21637
249
- ngsolve-6.2.2502.data/data/share/ngsolve/beam.geo,sha256=HTv0A6IUoVuavifolhGKY6U44z0hni07Htonqe6rw_A,404
250
- ngsolve-6.2.2502.data/data/share/ngsolve/beam.vol,sha256=QZbM9JE4rBs5nVXaw7ZAbDf60yXbX19bm1OnOScF57M,13834
251
- ngsolve-6.2.2502.data/data/share/ngsolve/chip.in2d,sha256=561AjEIPnlzMZHIzep5lRjocQDm8w7o7IDna5u8s9JQ,592
252
- ngsolve-6.2.2502.data/data/share/ngsolve/chip.vol,sha256=gkEmBWlQh8BkSFNTf-XISfmuGzHXDKANV4Uoww_BwJI,28511
253
- ngsolve-6.2.2502.data/data/share/ngsolve/coil.geo,sha256=ylB2OiWEZztFXPx99qTNRJKmZFIDPEezEgQt4EPtZRA,376
254
- ngsolve-6.2.2502.data/data/share/ngsolve/coil.vol,sha256=t8cWP_YX38FMw0S-7vEVUOcSH0VK6DlaqVWG_zmBo-4,147284
255
- ngsolve-6.2.2502.data/data/share/ngsolve/coilshield.geo,sha256=Sq8w7i22WQ0viaiM3bU_63lZGFWp8JgyDqs3RdjeTe0,629
256
- ngsolve-6.2.2502.data/data/share/ngsolve/coilshield.vol,sha256=JiZOM9A529-hikvv1kyLwffTRpeatLtaVTNcu42o1fo,165576
257
- ngsolve-6.2.2502.data/data/share/ngsolve/cube.geo,sha256=Wd9AnPdoQgjQ-JK6zmoXjsNxPR9B8ED4pdHVwmRoe1M,405
258
- ngsolve-6.2.2502.data/data/share/ngsolve/cube.vol,sha256=RS8bay_KlF6IZM0QDDr7_dGaFLqoxszQU_w8TYutMKY,92127
259
- ngsolve-6.2.2502.data/data/share/ngsolve/d10_DGdoubleglazing.pde,sha256=lK3sXmK74eFEMk8F6hwFHe_tBYnOdRq3F-RbzKpDK0c,1354
260
- ngsolve-6.2.2502.data/data/share/ngsolve/d11_chip_nitsche.pde,sha256=VuEQtkZaIJA9yuvjG_jcx1UB9UtAaZSoeJYFHcHeYxk,1141
261
- ngsolve-6.2.2502.data/data/share/ngsolve/d1_square.pde,sha256=24ZZ0nlbr5LKl_mPyeZZMSkiCBiBk1fzNElo3yITX2A,1072
262
- ngsolve-6.2.2502.data/data/share/ngsolve/d2_chip.pde,sha256=yGIbzuTdCEjdoC9Ig_hbcy5qz69_wxgPZeYmhY1rN7k,985
263
- ngsolve-6.2.2502.data/data/share/ngsolve/d3_helmholtz.pde,sha256=gWqQTh1M9NiKGohlu5JxDJuvRz-T28WlNSVbwmMvM-0,590
264
- ngsolve-6.2.2502.data/data/share/ngsolve/d4_cube.pde,sha256=6kL43ehAh1PdwnFlLjadg325bFjpz02p2PpAOxlDFuc,1079
265
- ngsolve-6.2.2502.data/data/share/ngsolve/d5_beam.pde,sha256=VQt9WbqAVWObFH9Jy1YieE9WHnVZ_hnsKVTz6ysEBxI,2059
266
- ngsolve-6.2.2502.data/data/share/ngsolve/d6_shaft.pde,sha256=y10nLFA2-GwEwnAs5R-8wppRq-09vYJ_C9LJ3DSvlS0,1974
267
- ngsolve-6.2.2502.data/data/share/ngsolve/d7_coil.pde,sha256=KFkqtZiPD4LQsGnghwwdq1qmpWf0T5xQR4HwbRL9ZZA,1250
268
- ngsolve-6.2.2502.data/data/share/ngsolve/d8_coilshield.pde,sha256=9XG0TcgZ7mComh_pVntnuzDldEx5PD-C7gqK05PTWus,1190
269
- ngsolve-6.2.2502.data/data/share/ngsolve/d9_hybridDG.pde,sha256=vYschVRu5vC91YpyVZFCBFuno-ZlOcRznPD-OvJTLtQ,1551
270
- ngsolve-6.2.2502.data/data/share/ngsolve/doubleglazing.in2d,sha256=lDCukUh9iTpkiH-qJAVdeAlMpiYF0AibAA6g3jOeWDY,533
271
- ngsolve-6.2.2502.data/data/share/ngsolve/doubleglazing.vol,sha256=IUOhUrZi8WMnvrIJe--A8cYPN6mscslA8_4yxvKShb0,35724
272
- ngsolve-6.2.2502.data/data/share/ngsolve/piezo2d40round4.vol.gz,sha256=RuxM0vtYljoAImOH6U6avt0LmWaUbGNao37n8p_Yd1w,496477
273
- ngsolve-6.2.2502.data/data/share/ngsolve/shaft.geo,sha256=Y3OVQlWjgICe2Dwz6-Qs8r0tLanjwtWP0xFx5AwNRJk,2507
274
- ngsolve-6.2.2502.data/data/share/ngsolve/shaft.vol,sha256=IqViJ4hJKk3Uf66PkVJ-kHpBQ_ZpkigRuh5g1Po4euY,274741
275
- ngsolve-6.2.2502.data/data/share/ngsolve/square.in2d,sha256=5dewiEjTsRFiNkBlmaTjBAZejq55TTlusp8ALfTMc2M,209
276
- ngsolve-6.2.2502.data/data/share/ngsolve/square.vol,sha256=tWdPeQ52deUNgWOsWKhqgNVsJKhkJmEAVp5-xjhzEwg,9311
277
- ngsolve-6.2.2502.dist-info/LICENSE,sha256=iFoD9UsVeWEjb0aEPnmXKr_NaJC2y7NovH7KMo_5WhI,26934
278
- ngsolve-6.2.2502.dist-info/METADATA,sha256=p9HMKc12-0TmLTZ9yv4tBBUz7TxzrFO7Mvsj3iAPPuo,216
279
- ngsolve-6.2.2502.dist-info/WHEEL,sha256=grXnj_hjz9AcJWnDGoMAyy0X5GgALMAtIvNbRMBzgmk,96
280
- ngsolve-6.2.2502.dist-info/top_level.txt,sha256=1llU44DxNIP85uPT4RChsIuV3h2d0_5j0Ui_Df5vV8E,15
281
- ngsolve-6.2.2502.dist-info/RECORD,,
252
+ ngsolve-6.2.2504.data/data/Scripts/ngsolve.tcl,sha256=8KBOXZKYU_qx8785PIjdmVjcUbCxR5aYrod0BZ4UgGc,21637
253
+ ngsolve-6.2.2504.data/data/share/ngsolve/beam.geo,sha256=HTv0A6IUoVuavifolhGKY6U44z0hni07Htonqe6rw_A,404
254
+ ngsolve-6.2.2504.data/data/share/ngsolve/beam.vol,sha256=QZbM9JE4rBs5nVXaw7ZAbDf60yXbX19bm1OnOScF57M,13834
255
+ ngsolve-6.2.2504.data/data/share/ngsolve/chip.in2d,sha256=561AjEIPnlzMZHIzep5lRjocQDm8w7o7IDna5u8s9JQ,592
256
+ ngsolve-6.2.2504.data/data/share/ngsolve/chip.vol,sha256=gkEmBWlQh8BkSFNTf-XISfmuGzHXDKANV4Uoww_BwJI,28511
257
+ ngsolve-6.2.2504.data/data/share/ngsolve/coil.geo,sha256=ylB2OiWEZztFXPx99qTNRJKmZFIDPEezEgQt4EPtZRA,376
258
+ ngsolve-6.2.2504.data/data/share/ngsolve/coil.vol,sha256=t8cWP_YX38FMw0S-7vEVUOcSH0VK6DlaqVWG_zmBo-4,147284
259
+ ngsolve-6.2.2504.data/data/share/ngsolve/coilshield.geo,sha256=Sq8w7i22WQ0viaiM3bU_63lZGFWp8JgyDqs3RdjeTe0,629
260
+ ngsolve-6.2.2504.data/data/share/ngsolve/coilshield.vol,sha256=JiZOM9A529-hikvv1kyLwffTRpeatLtaVTNcu42o1fo,165576
261
+ ngsolve-6.2.2504.data/data/share/ngsolve/cube.geo,sha256=Wd9AnPdoQgjQ-JK6zmoXjsNxPR9B8ED4pdHVwmRoe1M,405
262
+ ngsolve-6.2.2504.data/data/share/ngsolve/cube.vol,sha256=RS8bay_KlF6IZM0QDDr7_dGaFLqoxszQU_w8TYutMKY,92127
263
+ ngsolve-6.2.2504.data/data/share/ngsolve/d10_DGdoubleglazing.pde,sha256=lK3sXmK74eFEMk8F6hwFHe_tBYnOdRq3F-RbzKpDK0c,1354
264
+ ngsolve-6.2.2504.data/data/share/ngsolve/d11_chip_nitsche.pde,sha256=VuEQtkZaIJA9yuvjG_jcx1UB9UtAaZSoeJYFHcHeYxk,1141
265
+ ngsolve-6.2.2504.data/data/share/ngsolve/d1_square.pde,sha256=24ZZ0nlbr5LKl_mPyeZZMSkiCBiBk1fzNElo3yITX2A,1072
266
+ ngsolve-6.2.2504.data/data/share/ngsolve/d2_chip.pde,sha256=yGIbzuTdCEjdoC9Ig_hbcy5qz69_wxgPZeYmhY1rN7k,985
267
+ ngsolve-6.2.2504.data/data/share/ngsolve/d3_helmholtz.pde,sha256=gWqQTh1M9NiKGohlu5JxDJuvRz-T28WlNSVbwmMvM-0,590
268
+ ngsolve-6.2.2504.data/data/share/ngsolve/d4_cube.pde,sha256=6kL43ehAh1PdwnFlLjadg325bFjpz02p2PpAOxlDFuc,1079
269
+ ngsolve-6.2.2504.data/data/share/ngsolve/d5_beam.pde,sha256=VQt9WbqAVWObFH9Jy1YieE9WHnVZ_hnsKVTz6ysEBxI,2059
270
+ ngsolve-6.2.2504.data/data/share/ngsolve/d6_shaft.pde,sha256=y10nLFA2-GwEwnAs5R-8wppRq-09vYJ_C9LJ3DSvlS0,1974
271
+ ngsolve-6.2.2504.data/data/share/ngsolve/d7_coil.pde,sha256=KFkqtZiPD4LQsGnghwwdq1qmpWf0T5xQR4HwbRL9ZZA,1250
272
+ ngsolve-6.2.2504.data/data/share/ngsolve/d8_coilshield.pde,sha256=9XG0TcgZ7mComh_pVntnuzDldEx5PD-C7gqK05PTWus,1190
273
+ ngsolve-6.2.2504.data/data/share/ngsolve/d9_hybridDG.pde,sha256=vYschVRu5vC91YpyVZFCBFuno-ZlOcRznPD-OvJTLtQ,1551
274
+ ngsolve-6.2.2504.data/data/share/ngsolve/doubleglazing.in2d,sha256=lDCukUh9iTpkiH-qJAVdeAlMpiYF0AibAA6g3jOeWDY,533
275
+ ngsolve-6.2.2504.data/data/share/ngsolve/doubleglazing.vol,sha256=IUOhUrZi8WMnvrIJe--A8cYPN6mscslA8_4yxvKShb0,35724
276
+ ngsolve-6.2.2504.data/data/share/ngsolve/piezo2d40round4.vol.gz,sha256=RuxM0vtYljoAImOH6U6avt0LmWaUbGNao37n8p_Yd1w,496477
277
+ ngsolve-6.2.2504.data/data/share/ngsolve/shaft.geo,sha256=Y3OVQlWjgICe2Dwz6-Qs8r0tLanjwtWP0xFx5AwNRJk,2507
278
+ ngsolve-6.2.2504.data/data/share/ngsolve/shaft.vol,sha256=IqViJ4hJKk3Uf66PkVJ-kHpBQ_ZpkigRuh5g1Po4euY,274741
279
+ ngsolve-6.2.2504.data/data/share/ngsolve/square.in2d,sha256=5dewiEjTsRFiNkBlmaTjBAZejq55TTlusp8ALfTMc2M,209
280
+ ngsolve-6.2.2504.data/data/share/ngsolve/square.vol,sha256=tWdPeQ52deUNgWOsWKhqgNVsJKhkJmEAVp5-xjhzEwg,9311
281
+ ngsolve-6.2.2504.dist-info/LICENSE,sha256=iFoD9UsVeWEjb0aEPnmXKr_NaJC2y7NovH7KMo_5WhI,26934
282
+ ngsolve-6.2.2504.dist-info/METADATA,sha256=jO-_-_IHboNKtNsV4rKYbKGoIOFHLET36xpRuOopdKU,204
283
+ ngsolve-6.2.2504.dist-info/WHEEL,sha256=grXnj_hjz9AcJWnDGoMAyy0X5GgALMAtIvNbRMBzgmk,96
284
+ ngsolve-6.2.2504.dist-info/top_level.txt,sha256=1llU44DxNIP85uPT4RChsIuV3h2d0_5j0Ui_Df5vV8E,15
285
+ ngsolve-6.2.2504.dist-info/RECORD,,