ngsolve 6.2.2505__cp39-cp39-win_amd64.whl → 6.2.2505.post70.dev0__cp39-cp39-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.
- netgen/include/bilinearform.hpp +1 -1
- netgen/include/diffop_impl.hpp +3 -1
- netgen/include/fespace.hpp +4 -2
- netgen/include/gridfunction.hpp +1 -1
- netgen/include/h1amg.hpp +24 -1
- netgen/include/hdivhofespace.hpp +2 -0
- netgen/include/mptools.hpp +599 -85
- netgen/include/ngblas.hpp +113 -4
- netgen/include/recursive_pol.hpp +63 -11
- netgen/include/sparsematrix_dyn.hpp +2 -2
- netgen/include/sparsematrix_impl.hpp +25 -0
- netgen/include/vector.hpp +13 -1
- netgen/lib/libngsolve.lib +0 -0
- netgen/libngsolve.dll +0 -0
- ngsolve/cmake/NGSolveConfig.cmake +5 -5
- ngsolve/config/config.py +5 -5
- ngsolve/ngslib.pyd +0 -0
- {ngsolve-6.2.2505.dist-info → ngsolve-6.2.2505.post70.dev0.dist-info}/METADATA +2 -2
- {ngsolve-6.2.2505.dist-info → ngsolve-6.2.2505.post70.dev0.dist-info}/RECORD +51 -51
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/Scripts/ngsolve.tcl +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/beam.geo +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/beam.vol +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/chip.in2d +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/chip.vol +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/coil.geo +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/coil.vol +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/coilshield.geo +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/coilshield.vol +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/cube.geo +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/cube.vol +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d10_DGdoubleglazing.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d11_chip_nitsche.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d1_square.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d2_chip.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d3_helmholtz.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d4_cube.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d5_beam.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d6_shaft.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d7_coil.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d8_coilshield.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/d9_hybridDG.pde +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/doubleglazing.in2d +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/doubleglazing.vol +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/piezo2d40round4.vol.gz +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/shaft.geo +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/shaft.vol +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/square.in2d +0 -0
- {ngsolve-6.2.2505.data → ngsolve-6.2.2505.post70.dev0.data}/data/share/ngsolve/square.vol +0 -0
- {ngsolve-6.2.2505.dist-info → ngsolve-6.2.2505.post70.dev0.dist-info}/LICENSE +0 -0
- {ngsolve-6.2.2505.dist-info → ngsolve-6.2.2505.post70.dev0.dist-info}/WHEEL +0 -0
- {ngsolve-6.2.2505.dist-info → ngsolve-6.2.2505.post70.dev0.dist-info}/top_level.txt +0 -0
netgen/include/bilinearform.hpp
CHANGED
netgen/include/diffop_impl.hpp
CHANGED
|
@@ -312,10 +312,12 @@ namespace ngfem
|
|
|
312
312
|
|
|
313
313
|
template <typename DIFFOP>
|
|
314
314
|
void T_DifferentialOperator<DIFFOP> ::
|
|
315
|
-
CalcTransformationMatrix (const BaseMappedIntegrationPoint &
|
|
315
|
+
CalcTransformationMatrix (const BaseMappedIntegrationPoint & bmip,
|
|
316
316
|
SliceMatrix<double> trans,
|
|
317
317
|
LocalHeap & lh) const
|
|
318
318
|
{
|
|
319
|
+
const MappedIntegrationPoint<DIM_ELEMENT,DIM_SPACE> & mip =
|
|
320
|
+
static_cast<const MappedIntegrationPoint<DIM_ELEMENT,DIM_SPACE>&> (bmip);
|
|
319
321
|
DIFFOP::CalcTransformationMatrix(mip, trans, lh);
|
|
320
322
|
}
|
|
321
323
|
|
netgen/include/fespace.hpp
CHANGED
|
@@ -448,7 +448,8 @@ ANY 1 1 1 1 | 15
|
|
|
448
448
|
virtual void GetDofNrs (NodeId ni, Array<DofId> & dnums) const;
|
|
449
449
|
BitArray GetDofs (const Region & reg) const;
|
|
450
450
|
Table<int> CreateDofTable (VorB vorb) const;
|
|
451
|
-
|
|
451
|
+
virtual void SelectDofs (const string & name, BitArray & dofs) const;
|
|
452
|
+
|
|
452
453
|
/// get coupling types of dofs
|
|
453
454
|
virtual void GetDofCouplingTypes (int elnr, Array<COUPLING_TYPE> & dnums) const;
|
|
454
455
|
|
|
@@ -1141,7 +1142,8 @@ ANY 1 1 1 1 | 15
|
|
|
1141
1142
|
void GetEdgeDofNrs (int ednr, Array<DofId> & dnums) const override;
|
|
1142
1143
|
void GetFaceDofNrs (int fanr, Array<DofId> & dnums) const override;
|
|
1143
1144
|
void GetInnerDofNrs (int elnr, Array<DofId> & dnums) const override;
|
|
1144
|
-
|
|
1145
|
+
void SelectDofs (const string & name, BitArray & dofs) const override;
|
|
1146
|
+
|
|
1145
1147
|
void SolveM(CoefficientFunction * rho, BaseVector & vec, Region * definedon,
|
|
1146
1148
|
LocalHeap & lh) const override;
|
|
1147
1149
|
void ApplyM(CoefficientFunction * rho, BaseVector & vec, Region * definedon,
|
netgen/include/gridfunction.hpp
CHANGED
|
@@ -166,7 +166,7 @@ namespace ngcomp
|
|
|
166
166
|
///
|
|
167
167
|
shared_ptr<FESpace> GetFESpace() const { return fespace; }
|
|
168
168
|
///
|
|
169
|
-
shared_ptr<MeshAccess> GetMeshAccess() const { return fespace->GetMeshAccess(); }
|
|
169
|
+
const shared_ptr<MeshAccess> & GetMeshAccess() const { return fespace->GetMeshAccess(); }
|
|
170
170
|
///
|
|
171
171
|
virtual string GetClassName () const
|
|
172
172
|
{
|
netgen/include/h1amg.hpp
CHANGED
|
@@ -9,6 +9,20 @@
|
|
|
9
9
|
namespace ngcomp
|
|
10
10
|
{
|
|
11
11
|
using namespace ngla;
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
struct H1AMG_Parameters
|
|
16
|
+
{
|
|
17
|
+
int verbose = 0;
|
|
18
|
+
int smoothing_steps = 3;
|
|
19
|
+
int coarsenings_per_level = 3; // number of binary coarsenings per level
|
|
20
|
+
bool block_smoother = true; // block or point smoother ?
|
|
21
|
+
bool use_smoothed_prolongation = true;
|
|
22
|
+
int max_coarse = 10;
|
|
23
|
+
int max_level = 20;
|
|
24
|
+
};
|
|
25
|
+
|
|
12
26
|
|
|
13
27
|
template <class SCAL>
|
|
14
28
|
class NGS_DLL_HEADER H1AMG_Matrix : public ngla::BaseMatrix
|
|
@@ -26,6 +40,7 @@ namespace ngcomp
|
|
|
26
40
|
ngcore::FlatArray<ngcore::IVec<2>> e2v,
|
|
27
41
|
ngcore::FlatArray<double> edge_weights,
|
|
28
42
|
ngcore::FlatArray<double> vertex_weights,
|
|
43
|
+
const H1AMG_Parameters & param,
|
|
29
44
|
size_t level);
|
|
30
45
|
|
|
31
46
|
virtual int VHeight() const override { return size; }
|
|
@@ -50,7 +65,9 @@ namespace ngcomp
|
|
|
50
65
|
|
|
51
66
|
ParallelHashTable<IVec<2>,double> edge_weights_ht;
|
|
52
67
|
ParallelHashTable<IVec<1>,double> vertex_weights_ht;
|
|
53
|
-
|
|
68
|
+
|
|
69
|
+
H1AMG_Parameters param;
|
|
70
|
+
|
|
54
71
|
public:
|
|
55
72
|
|
|
56
73
|
static shared_ptr<Preconditioner> CreateBF (shared_ptr<BilinearForm> bfa, const Flags & flags, const string & name)
|
|
@@ -71,6 +88,12 @@ namespace ngcomp
|
|
|
71
88
|
cout << IM(3) << "Create H1AMG" << endl;
|
|
72
89
|
else
|
|
73
90
|
cout << IM(3) << "Create H1AMG, complex" << endl;
|
|
91
|
+
|
|
92
|
+
param.verbose = int(flags.GetNumFlag("verbose", 0));
|
|
93
|
+
param.smoothing_steps = int(flags.GetNumFlag("smoothingsteps", 1));
|
|
94
|
+
param.use_smoothed_prolongation = flags.GetDefineFlagX("smoothedprolongation").IsMaybeTrue();
|
|
95
|
+
param.max_coarse = int(flags.GetNumFlag("maxcoarse", 10));
|
|
96
|
+
param.max_level = int(flags.GetNumFlag("maxlevel", 20));
|
|
74
97
|
}
|
|
75
98
|
|
|
76
99
|
virtual void InitLevel (shared_ptr<BitArray> _freedofs) override
|
netgen/include/hdivhofespace.hpp
CHANGED
|
@@ -143,6 +143,8 @@ namespace ngcomp
|
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
145
|
|
|
146
|
+
void SelectDofs (const string & name, BitArray & dofs) const override;
|
|
147
|
+
|
|
146
148
|
int GetFirstInnerDof(int elnr) const { return(first_inner_dof[elnr]);};
|
|
147
149
|
// virtual int LowOrderDof() const { if(discont) return(0); else return(1);}
|
|
148
150
|
|