ngsolve 6.2.2504.post44.dev0__cp313-cp313-win_amd64.whl → 6.2.2505.post17.dev0__cp313-cp313-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 (45) hide show
  1. netgen/include/fespace.hpp +4 -2
  2. netgen/include/h1amg.hpp +24 -1
  3. netgen/include/hdivhofespace.hpp +2 -0
  4. netgen/include/mptools.hpp +63 -13
  5. netgen/include/ngblas.hpp +102 -4
  6. netgen/include/sparsematrix_dyn.hpp +2 -2
  7. netgen/lib/libngsolve.lib +0 -0
  8. netgen/libngsolve.dll +0 -0
  9. ngsolve/cmake/NGSolveConfig.cmake +5 -5
  10. ngsolve/config/config.py +6 -6
  11. ngsolve/ngslib.pyd +0 -0
  12. {ngsolve-6.2.2504.post44.dev0.dist-info → ngsolve-6.2.2505.post17.dev0.dist-info}/METADATA +2 -2
  13. {ngsolve-6.2.2504.post44.dev0.dist-info → ngsolve-6.2.2505.post17.dev0.dist-info}/RECORD +45 -45
  14. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/Scripts/ngsolve.tcl +0 -0
  15. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/beam.geo +0 -0
  16. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/beam.vol +0 -0
  17. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/chip.in2d +0 -0
  18. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/chip.vol +0 -0
  19. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/coil.geo +0 -0
  20. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/coil.vol +0 -0
  21. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/coilshield.geo +0 -0
  22. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/coilshield.vol +0 -0
  23. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/cube.geo +0 -0
  24. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/cube.vol +0 -0
  25. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d10_DGdoubleglazing.pde +0 -0
  26. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d11_chip_nitsche.pde +0 -0
  27. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d1_square.pde +0 -0
  28. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d2_chip.pde +0 -0
  29. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d3_helmholtz.pde +0 -0
  30. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d4_cube.pde +0 -0
  31. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d5_beam.pde +0 -0
  32. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d6_shaft.pde +0 -0
  33. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d7_coil.pde +0 -0
  34. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d8_coilshield.pde +0 -0
  35. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/d9_hybridDG.pde +0 -0
  36. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/doubleglazing.in2d +0 -0
  37. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/doubleglazing.vol +0 -0
  38. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/piezo2d40round4.vol.gz +0 -0
  39. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/shaft.geo +0 -0
  40. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/shaft.vol +0 -0
  41. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/square.in2d +0 -0
  42. {ngsolve-6.2.2504.post44.dev0.data → ngsolve-6.2.2505.post17.dev0.data}/data/share/ngsolve/square.vol +0 -0
  43. {ngsolve-6.2.2504.post44.dev0.dist-info → ngsolve-6.2.2505.post17.dev0.dist-info}/WHEEL +0 -0
  44. {ngsolve-6.2.2504.post44.dev0.dist-info → ngsolve-6.2.2505.post17.dev0.dist-info}/licenses/LICENSE +0 -0
  45. {ngsolve-6.2.2504.post44.dev0.dist-info → ngsolve-6.2.2505.post17.dev0.dist-info}/top_level.txt +0 -0
@@ -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/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
@@ -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
 
@@ -877,6 +877,34 @@ namespace ngsbem
877
877
  class NGS_DLL_HEADER RegularMLMultiPole
878
878
  {
879
879
  static Array<size_t> nodes_on_level;
880
+
881
+
882
+ struct RecordingRS
883
+ {
884
+ const MultiPole<MPSingular,elem_type> * mpS;
885
+ MultiPole<MPRegular,elem_type> * mpR;
886
+ Vec<3> dist;
887
+ double len, theta, phi;
888
+ public:
889
+ RecordingRS() = default;
890
+ RecordingRS (const MultiPole<MPSingular,elem_type> * ampS,
891
+ MultiPole<MPRegular,elem_type> * ampR,
892
+ Vec<3> adist)
893
+ : mpS(ampS), mpR(ampR), dist(adist)
894
+ {
895
+ len = L2Norm(dist);
896
+ if (len < 1e-30)
897
+ theta = 0;
898
+ else
899
+ theta = acos (dist(2) / len);
900
+
901
+ if (sqr(dist(0))+sqr(dist(1)) < 1e-30)
902
+ phi = 0;
903
+ else
904
+ phi = atan2(dist(1), dist(0));
905
+ }
906
+ };
907
+
880
908
 
881
909
  struct Node
882
910
  {
@@ -912,8 +940,9 @@ namespace ngsbem
912
940
  childs[i] = make_unique<Node> (cc, r/2, level+1, mp.Kappa());
913
941
  }
914
942
  }
915
-
916
- void AddSingularNode (const typename SingularMLMultiPole<elem_type>::Node & singnode, bool allow_refine)
943
+
944
+ void AddSingularNode (const typename SingularMLMultiPole<elem_type>::Node & singnode, bool allow_refine,
945
+ Array<RecordingRS> * recording)
917
946
  {
918
947
  if (mp.SH().Order() < 0) return;
919
948
  if (singnode.mp.SH().Order() < 0) return;
@@ -936,12 +965,15 @@ namespace ngsbem
936
965
  singnode.childs[0]->mp.Order() < singnode.mp.Order())
937
966
  {
938
967
  for (auto & child : singnode.childs)
939
- AddSingularNode (*child, allow_refine);
968
+ AddSingularNode (*child, allow_refine, recording);
940
969
  return;
941
970
  }
942
971
 
943
972
  // static Timer t("mptool transform Helmholtz-criterion"); RegionTimer r(t);
944
- singnode.mp.TransformAdd(mp, dist);
973
+ if (recording)
974
+ *recording += RecordingRS(&singnode.mp, &mp, dist);
975
+ else
976
+ singnode.mp.TransformAdd(mp, dist);
945
977
  return;
946
978
  }
947
979
 
@@ -960,21 +992,21 @@ namespace ngsbem
960
992
  CreateChilds();
961
993
 
962
994
  for (auto & ch : childs)
963
- ch -> AddSingularNode (singnode, allow_refine);
995
+ ch -> AddSingularNode (singnode, allow_refine, recording);
964
996
  }
965
997
  else
966
998
  {
967
- if (total_targets < 1000)
999
+ if (total_targets < 1000 || recording)
968
1000
  {
969
1001
  for (auto & ch : childs)
970
1002
  if (ch)
971
- ch -> AddSingularNode (singnode, allow_refine);
1003
+ ch -> AddSingularNode (singnode, allow_refine, recording);
972
1004
  }
973
1005
  else
974
1006
  ParallelFor (8, [&] (int nr)
975
1007
  {
976
1008
  if (childs[nr])
977
- childs[nr] -> AddSingularNode (singnode, allow_refine);
1009
+ childs[nr] -> AddSingularNode (singnode, allow_refine, recording);
978
1010
  });
979
1011
 
980
1012
  if (targets.Size())
@@ -984,7 +1016,7 @@ namespace ngsbem
984
1016
  else
985
1017
  {
986
1018
  for (auto & childsing : singnode.childs)
987
- AddSingularNode (*childsing, allow_refine);
1019
+ AddSingularNode (*childsing, allow_refine, recording);
988
1020
  }
989
1021
  }
990
1022
 
@@ -1158,8 +1190,8 @@ namespace ngsbem
1158
1190
  nodes_on_level = 0;
1159
1191
  nodes_on_level[0] = 1;
1160
1192
  {
1161
- static Timer t("mptool compute regular MLMP"); RegionTimer rg(t);
1162
- root.AddSingularNode(singmp->root, true);
1193
+ static Timer t("mptool compute regular MLMP"); RegionTimer rg(t);
1194
+ root.AddSingularNode(singmp->root, true, nullptr);
1163
1195
  // cout << "norm after S->R conversion: " << root.Norm() << endl;
1164
1196
  }
1165
1197
 
@@ -1200,9 +1232,27 @@ namespace ngsbem
1200
1232
 
1201
1233
  root.CalcTotalTargets();
1202
1234
  root.RemoveEmptyTrees();
1203
-
1204
- root.AddSingularNode(singmp->root, false);
1205
1235
 
1236
+
1237
+ root.AddSingularNode(singmp->root, false, nullptr);
1238
+ /*
1239
+ Array<RecordingRS> recording;
1240
+ root.AddSingularNode(singmp->root, false, &recording);
1241
+ // cout << "recorded: " << recording.Size() << endl;
1242
+ QuickSort (recording, [] (auto & a, auto & b)
1243
+ {
1244
+ if (a.len < (1-1e-8) * b.len) return true;
1245
+ if (a.len > (1+1e-8) * b.len) return false;
1246
+ return a.theta < b.theta;
1247
+ });
1248
+ for (auto & record : recording)
1249
+ {
1250
+ record.mpS->TransformAdd(*record.mpR, record.dist);
1251
+ // *testout << record.len << ", " << record.theta << ", " << record.phi << endl;
1252
+ }
1253
+ */
1254
+
1255
+
1206
1256
  /*
1207
1257
  int maxlevel = 0;
1208
1258
  for (auto [i,num] : Enumerate(RegularMLMultiPole::nodes_on_level))
netgen/include/ngblas.hpp CHANGED
@@ -584,12 +584,31 @@ namespace ngbla
584
584
  }
585
585
  }
586
586
 
587
- template <typename TM, typename TVX, typename TVY>
588
- extern void TestFunc (TM m, TVX x, TVY y);
589
-
587
+ // template <typename TM, typename TVX, typename TVY>
588
+ // extern void TestFunc (TM m, TVX x, TVY y);
589
+
590
+
591
+ template <typename TS, typename T> constexpr bool IsVec = false;
592
+ template <typename TS, int S> constexpr bool IsVec<TS, Vec<S,TS>> = true;
593
+
590
594
  template <bool ADD, bool POS, typename TM, ORDERING ORD, typename TX, typename TY>
591
595
  INLINE void NgGEMV (BareSliceMatrix<TM,ORD> a, FlatVector<const TX> x, FlatVector<TY> y)
592
596
  {
597
+ if constexpr (std::is_same<TM,double>() && std::is_same<TX,TY>() && IsVec<Complex,TX>)
598
+ {
599
+ FlatMatrix<double> mx(x.Size(), sizeof(TX)/sizeof(double), (double*)(void*)x.Addr(0));
600
+ FlatMatrix<double> my(y.Size(), sizeof(TX)/sizeof(double), (double*)(void*)y.Addr(0));
601
+ NgGEMM<ADD,POS> (a.AddSize(y.Size(), x.Size()),make_SliceMatrix(mx), make_SliceMatrix(my));
602
+ return;
603
+ }
604
+ if constexpr (std::is_same<TM,Complex>() && std::is_same<TX,TY>() && IsVec<Complex,TX>)
605
+ {
606
+ FlatMatrix<Complex> mx(x.Size(), sizeof(TX)/sizeof(Complex), &const_cast<Complex&>(*(x.Data()->Data())));
607
+ FlatMatrix<Complex> my(y.Size(), sizeof(TX)/sizeof(Complex), y.Data()->Data());
608
+ NgGEMM<ADD,POS> (a.AddSize(y.Size(), x.Size()),make_SliceMatrix(mx), make_SliceMatrix(my));
609
+ return;
610
+ }
611
+
593
612
  if (!ADD)
594
613
  {
595
614
  if (!POS)
@@ -635,6 +654,16 @@ namespace ngbla
635
654
  extern NGS_DLL_HEADER
636
655
  void NgGEMV (double s, BareSliceMatrix<double,ord> a, SliceVector<double> x, SliceVector<double> y) NETGEN_NOEXCEPT;
637
656
  */
657
+
658
+
659
+
660
+
661
+
662
+
663
+
664
+ /* *********************** GEMV - SliceVector **************************** */
665
+
666
+
638
667
 
639
668
  template <bool ADD, ORDERING ord>
640
669
  extern NGS_DLL_HEADER
@@ -714,7 +743,30 @@ namespace ngbla
714
743
  }
715
744
 
716
745
 
717
-
746
+
747
+
748
+ template <bool ADD, bool POS, typename TM, ORDERING ORD, typename TX, typename TY>
749
+ INLINE void NgGEMV (BareSliceMatrix<TM,ORD> a, SliceVector<TX> x, SliceVector<TY> y)
750
+ {
751
+ if constexpr (std::is_same<TM,double>() && std::is_same<TX,TY>() && IsVec<Complex,TX>)
752
+ {
753
+ constexpr int VS = sizeof(TX)/sizeof(double);
754
+ SliceMatrix<double> mx(x.Size(), VS, x.Dist()*VS, (double*)(void*)x.Addr(0));
755
+ SliceMatrix<double> my(y.Size(), VS, y.Dist()*VS, (double*)(void*)y.Addr(0));
756
+ NgGEMM<ADD,POS> (a.AddSize(y.Size(), x.Size()),make_SliceMatrix(mx), make_SliceMatrix(my));
757
+ return;
758
+ }
759
+ else if constexpr (std::is_same<TM,Complex>() && std::is_same<TX,TY>() && IsVec<Complex,TX>)
760
+ {
761
+ constexpr int VS = sizeof(TX)/sizeof(Complex);
762
+ SliceMatrix<Complex> mx(x.Size(), VS, x.Dist()*VS, &const_cast<Complex&>(*(x.Data()->Data())));
763
+ SliceMatrix<Complex> my(y.Size(), VS, y.Dist()*VS, y.Data()->Data());
764
+ NgGEMM<ADD,POS> (a.AddSize(y.Size(), x.Size()),make_SliceMatrix(mx), make_SliceMatrix(my));
765
+ return;
766
+ }
767
+ else
768
+ NgGEMV<ADD> (POS ? 1.0 : -1.0, a, x, y);
769
+ }
718
770
 
719
771
 
720
772
 
@@ -880,9 +932,14 @@ namespace ngbla
880
932
  FlatVector<const TB>(prod.View().B().Range(0,w)),
881
933
  FlatVector<T>(self.Spec().Range(0,h)));
882
934
  else
935
+ NgGEMV<ADD,POS> (make_BareSliceMatrix(prod.View().A()),
936
+ SliceVector<TB>(prod.View().B().Range(0,w)),
937
+ SliceVector<T>(self.Spec().Range(0,h)));
938
+ /*
883
939
  NgGEMV<ADD> (POS ? 1.0 : -1.0, make_BareSliceMatrix(prod.View().A()),
884
940
  SliceVector<TB>(prod.View().B().Range(0,w)),
885
941
  SliceVector<T>(self.Spec().Range(0,h)));
942
+ */
886
943
  return self.Spec();
887
944
  }
888
945
  };
@@ -1101,6 +1158,47 @@ namespace ngbla
1101
1158
 
1102
1159
 
1103
1160
 
1161
+ template <bool ADD, bool POS, ORDERING OA, ORDERING OB>
1162
+ extern NGS_DLL_HEADER void NgGEMMBare (size_t ah, size_t aw, size_t bw, BareSliceMatrix<Complex,OA> a, BareSliceMatrix<Complex,OB> b, BareSliceMatrix<Complex,RowMajor> c);
1163
+
1164
+
1165
+ template <bool ADD, bool POS, ORDERING OA, ORDERING OB>
1166
+ void NgGEMM (SliceMatrix<Complex,OA> a, SliceMatrix<Complex,OB> b, SliceMatrix<Complex,RowMajor> c)
1167
+ {
1168
+ size_t ah = a.Height();
1169
+ size_t aw = a.Width();
1170
+ size_t bw = b.Width();
1171
+ NgGEMMBare<ADD,POS>(ah, aw, bw, make_BareSliceMatrix(a), make_BareSliceMatrix(b), make_BareSliceMatrix(c));
1172
+ }
1173
+
1174
+ template <bool ADD, bool POS, ORDERING OA, ORDERING OB>
1175
+ void NgGEMM (SliceMatrix<Complex,OA> a, SliceMatrix<Complex,OB> b, SliceMatrix<Complex,ColMajor> c)
1176
+ {
1177
+ NgGEMM<ADD,POS> (Trans(b), Trans(a), Trans(c));
1178
+ }
1179
+
1180
+ template <typename OP, typename T, typename TA, typename TB>
1181
+ class assign_trait<OP, T, MultExpr<TA, TB>,
1182
+ enable_if_t<IsConvertibleToSliceMatrix<TA,Complex>() &&
1183
+ IsConvertibleToSliceMatrix<TB,Complex>() &&
1184
+ IsConvertibleToSliceMatrix<T,Complex>(), int>>
1185
+ {
1186
+ public:
1187
+ static inline T & Assign (MatExpr<T> & self, const Expr<MultExpr<TA, TB>> & prod)
1188
+ {
1189
+ constexpr bool ADD = std::is_same<OP,typename MatExpr<T>::AsAdd>::value || std::is_same<OP,typename MatExpr<T>::AsSub>::value;
1190
+ constexpr bool POS = std::is_same<OP,typename MatExpr<T>::As>::value || std::is_same<OP,typename MatExpr<T>::AsAdd>::value;
1191
+
1192
+ size_t n = CombinedSize(prod.View().A().Height(), self.Spec().Height());
1193
+ size_t m = CombinedSize(prod.View().B().Width(), self.Spec().Width());
1194
+ size_t k = CombinedSize(prod.View().A().Width(), prod.View().B().Height());
1195
+
1196
+ NgGEMM<ADD,POS> (make_BareSliceMatrix(prod.View().A()).AddSize(n,k).RemoveConst(),
1197
+ make_BareSliceMatrix(prod.View().B()).AddSize(k,m).RemoveConst(),
1198
+ make_BareSliceMatrix(self.Spec()).AddSize(n,m));
1199
+ return self.Spec();
1200
+ }
1201
+ };
1104
1202
 
1105
1203
 
1106
1204
 
@@ -50,9 +50,9 @@ namespace ngla
50
50
  virtual void MultAdd (double s, const BaseVector & x, BaseVector & y) const override;
51
51
 
52
52
  AutoVector CreateRowVector() const override
53
- { throw make_unique<VVector<TSCAL>> (VWidth()); }
53
+ { return make_unique<VVector<TSCAL>> (VWidth()); }
54
54
  AutoVector CreateColVector() const override
55
- { throw make_unique<VVector<TSCAL>> (VHeight()); }
55
+ { return make_unique<VVector<TSCAL>> (VHeight()); }
56
56
 
57
57
  virtual tuple<int,int> EntrySizes() const override { return { bh, bw }; }
58
58
  };
netgen/lib/libngsolve.lib CHANGED
Binary file
netgen/libngsolve.dll CHANGED
Binary file
@@ -1,4 +1,4 @@
1
- set(PACKAGE_VERSION "6.2.2504-44-g8fbbbc389")
1
+ set(PACKAGE_VERSION "6.2.2505-17-g2593d4c47")
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:/Python313/Include")
24
24
  set(NGSOLVE_PYTHON_LIBRARIES "C:/Python313/libs/python313.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.13/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.13/cmake-build/dependencies/src/project_tcl/generic")
27
27
  set(NGSOLVE_TCL_LIBRARY "C:/Python313/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.13/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.13/cmake-build/dependencies/src/project_tk/generic")
30
30
  set(NGSOLVE_TK_LIBRARY "C:/Python313/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.13/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.13/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.13/cmake-build/dependencies/zlib/include")
34
+ set(NGSOLVE_ZLIB_LIBRARIES "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/netgen/_skbuild/win-amd64-3.13/cmake-build/dependencies/zlib/lib/zlibstatic.lib")
35
35
 
36
36
  set(NGSOLVE_INTEL_MIC OFF)
37
37
  set(NGSOLVE_USE_CCACHE ON)
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.2504-44-g8fbbbc389"
33
- NGSOLVE_VERSION_GIT = "v6.2.2504-44-g8fbbbc389"
34
- NGSOLVE_VERSION_PYTHON = "6.2.2504.post44.dev0"
32
+ NGSOLVE_VERSION = "6.2.2505-17-g2593d4c47"
33
+ NGSOLVE_VERSION_GIT = "v6.2.2505-17-g2593d4c47"
34
+ NGSOLVE_VERSION_PYTHON = "6.2.2505.post17.dev0"
35
35
 
36
36
  NGSOLVE_VERSION_MAJOR = "6"
37
37
  NGSOLVE_VERSION_MINOR = "2"
38
- NGSOLVE_VERSION_TWEAK = "44"
39
- NGSOLVE_VERSION_PATCH = "2504"
40
- NGSOLVE_VERSION_HASH = "g8fbbbc389"
38
+ NGSOLVE_VERSION_TWEAK = "17"
39
+ NGSOLVE_VERSION_PATCH = "2505"
40
+ NGSOLVE_VERSION_HASH = "g2593d4c47"
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
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ngsolve
3
- Version: 6.2.2504.post44.dev0
3
+ Version: 6.2.2505.post17.dev0
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.2504.post13.dev0
8
+ Requires-Dist: netgen-mesher==6.2.2505.post3.dev0
9
9
  Requires-Dist: mkl
10
10
  Dynamic: author
11
11
  Dynamic: license
@@ -1,4 +1,4 @@
1
- netgen/libngsolve.dll,sha256=XJMpeM5APfpjxWaDmO_fAkz0-GYnz5c0I15wH1ZQE_0,35684352
1
+ netgen/libngsolve.dll,sha256=EeIEGocNqhXrqTeQ9s5Q0VOxyW6BYg7AT8NL6N6MpEI,35911680
2
2
  netgen/ngscxx.bat,sha256=lYKv3R_bPhoRmCSkSEJ6TxtW-K9qCUtY4cS9jlom66c,670
3
3
  netgen/ngsld.bat,sha256=YD1I1rK70K_YvLev7aYQMD9mCcwF55k1B_8pRWPpob0,428
4
4
  netgen/include/arnoldi.hpp,sha256=m39slyQUujB_9j3NDfTpEWyldC6Fw8natUpPuBkevLM,1492
@@ -50,12 +50,12 @@ netgen/include/facetsurffespace.hpp,sha256=qO4tLszTL3YHmWCsWZn9QKTW45GiIJ4UFnf5y
50
50
  netgen/include/fe_interfaces.hpp,sha256=gGLCSJtPBuOCQZuo2t0VGvXrRwNt0OOPLRag--qXfS8,854
51
51
  netgen/include/fem.hpp,sha256=DPZpvRbOezchnVcUGlOE5R6xKFvmAqUeRza4GC285rw,2181
52
52
  netgen/include/fesconvert.hpp,sha256=hbGst9rksfUJX3BguHcgiF62myv3D3a2zkbjv2Ccl4g,574
53
- netgen/include/fespace.hpp,sha256=fFarmWIll99eUN5y3Dedz3fOtDJGymkQ5cSDxfGXqUI,48503
53
+ netgen/include/fespace.hpp,sha256=9I_3KjDE6friF3Gd7GDwTyeZ6sDyIkckh8l_j6fO03k,48676
54
54
  netgen/include/finiteelement.hpp,sha256=ULds8D80WXlpVqgCppjHKrXhFuo-WewzIr3IalsIv8g,9431
55
55
  netgen/include/globalinterfacespace.hpp,sha256=atR009fWSlJpYjRI3OgMcvInOajz1W5egPLdfPAPFu8,2796
56
56
  netgen/include/globalspace.hpp,sha256=ZYni-ie6O2DD0N3u-fdmVfwygpV5lwJ3SOAnSSgWMNo,4079
57
57
  netgen/include/gridfunction.hpp,sha256=2cVEs1mGksX8KxaFaOzDRT8zVoec59ieT981g7Uej-c,18566
58
- netgen/include/h1amg.hpp,sha256=sA50okLDMPtsPLvTiA2HIaljFrz2a3pQdOTGiGpMnFk,3103
58
+ netgen/include/h1amg.hpp,sha256=SUmbEi-DPl5NSdo2cXPl6eXasawAQ83QiSmRq2uUevM,3925
59
59
  netgen/include/h1hofe.hpp,sha256=qlGoYuCJkbV8ycE2Rmyv4Hpou6oBBtNkwvDP5Vny0_U,6032
60
60
  netgen/include/h1hofe_impl.hpp,sha256=ULMV2gH0XdgtFcEtxL1s2u7swkpDMxt6X04uEs1futI,36718
61
61
  netgen/include/h1hofefo.hpp,sha256=KD4U7ebOvgf3v_rCMjjIwDjF4OZy4VSsj6y7v8iN8pI,4613
@@ -83,7 +83,7 @@ netgen/include/hdivfes.hpp,sha256=C5-wSa-TggR1ZErkEXM0yLQSur1W6SDbjliSwNICeBc,22
83
83
  netgen/include/hdivhofe.hpp,sha256=QOxAIxUeV9C7LBgYG76dSuWoDDvh9M5d33feOthSsdg,14150
84
84
  netgen/include/hdivhofe_impl.hpp,sha256=ur6S6c8hd4z9snR9f7xFPX0N53Gl5QhtPNQuCglX9i8,38385
85
85
  netgen/include/hdivhofefo.hpp,sha256=MZD-lzKsPBb91a2rRJgckgTwhc3Af1nWJ4IJBSKqbHw,6619
86
- netgen/include/hdivhofespace.hpp,sha256=qXn1LEluYyttfIJa_9V5aNs7hFE7-dcdHKvm92t8CKI,5130
86
+ netgen/include/hdivhofespace.hpp,sha256=wVeiJklqGQUBFoHIE5zPQ1KWaPjQ29bXmvu7OZ0O8bg,5208
87
87
  netgen/include/hdivhosurfacefespace.hpp,sha256=i6OOPaln6u8KfZkGRQoe7LD3h_AD2ezrUz7PVh-vJ8Y,2949
88
88
  netgen/include/hdivlofe.hpp,sha256=493IKGNvocZS12_N4oz4Q_7xiaLzRELhp8vszOFmnXI,15376
89
89
  netgen/include/hidden.hpp,sha256=t_dOumFNhFSPbqVVEnH2N7J4kZjKIdBCzIgGAXa9YXg,2720
@@ -108,13 +108,13 @@ netgen/include/memusage.hpp,sha256=m_-fuupqepSve37WkRkoFHHyTtE9PdGnOVPIdQHlDiw,1
108
108
  netgen/include/meshaccess.hpp,sha256=RSkB9LhWTXRIU8AoVsu-TbksjpXjbNzJfWuKDJ6y5_Q,48492
109
109
  netgen/include/mgpre.hpp,sha256=5Zqt3pzrvm3EOfr84iU6rQx23LTkntUTd_s4_i6wEzI,5029
110
110
  netgen/include/mp_coefficient.hpp,sha256=TroJJa2ZrOfh8xaU2TY4m8raSaxvMU4pBXpxAeOZSt8,4876
111
- netgen/include/mptools.hpp,sha256=ZiykV7RaX07CpRK5fJRO-vCUGJs_iusPXNK6G8rmKt8,35737
111
+ netgen/include/mptools.hpp,sha256=S8jnsDUq-Ho6c9Q0T0sUShR71v5aQ873_OLeXJB0FWQ,37345
112
112
  netgen/include/multigrid.hpp,sha256=7YgJfeGTBnb-aFWHrbcVk3dos6XYU0iVCgiY8UvRopY,898
113
113
  netgen/include/multivector.hpp,sha256=5rkNSqyPhIXAb1lGKLcy908D9Uw9oqY4wpUXZEXbEPE,13082
114
114
  netgen/include/mumpsinverse.hpp,sha256=8YiUlQZMFVsJ0kuwaSphGZvxyEZJAZZApH8XahiTeEo,4249
115
115
  netgen/include/mycomplex.hpp,sha256=dj031oIJSDeCEB22UoP2FVv3FcNRsi6ssf_nTpHsVaw,8023
116
116
  netgen/include/ng_lapack.hpp,sha256=VFbQIzdfon96GEtyviYaqM8ul1tTiH3QyQM5U0Tviow,50069
117
- netgen/include/ngblas.hpp,sha256=ZwrjI7PqRMAr-Vg5CaswCMgVkxP6JjholA_E54zZd-g,43892
117
+ netgen/include/ngblas.hpp,sha256=wmiyQ_xHtLPAAVtcxV1egDLqWqKD3dTIgYzLXwP4WXw,48524
118
118
  netgen/include/ngs_defines.hpp,sha256=t7TFqQPQtm83a2NDH69TFOOtSQvFyJPbjaHXIP_XsxY,716
119
119
  netgen/include/ngs_stdcpp_include.hpp,sha256=GV74VWQLG5Z2unDAnjjGAWAheFg5ZtMH584pTGSjQAk,2657
120
120
  netgen/include/ngs_utils.hpp,sha256=yO0yJKC1q5BZP39tE2LabiG8pFV9mtNbrzE2b6g3-uU,3265
@@ -157,7 +157,7 @@ netgen/include/smoother.hpp,sha256=SoVZvhFynyPSIAe-x8EloVluIHUE0k78Dp3sQFu-Yfo,6
157
157
  netgen/include/solve.hpp,sha256=lzCGHU1QOj9VXG43Q8MzvDi48-BfVH_fG8R0ttU8Xfg,2123
158
158
  netgen/include/sparsecholesky.hpp,sha256=hOzFoXMEelAdJROF1q4zkYv0yfZgSDhjwaYvRRmiMcE,9201
159
159
  netgen/include/sparsematrix.hpp,sha256=vyk1ViL0oXSiPZX4FfrFgy8whefffUrTmSlTS60SbrU,33744
160
- netgen/include/sparsematrix_dyn.hpp,sha256=uZsxjlUtlN-dpVcCgKzeWuQeJSBgkEnbAjWbJzl2WS4,2744
160
+ netgen/include/sparsematrix_dyn.hpp,sha256=1azpAkASyjwRKiDZ_FVVyBPiLpiZocsW0S9bEMTjprI,2746
161
161
  netgen/include/sparsematrix_impl.hpp,sha256=a7fgpmcCEjeLB6XDAj-WPJZH5L3uoZgd8OI3luUCOSM,30568
162
162
  netgen/include/special_matrix.hpp,sha256=j_9NSuEudoEzX3hx6TAdSwOEka5MiQgqJ1lAOwno4ng,16989
163
163
  netgen/include/specialelement.hpp,sha256=ovP0KuLWkBRnoc72hfzGgrrigzNQBdJexVAgSUj63vg,3351
@@ -187,7 +187,7 @@ netgen/include/voxelcoefficientfunction.hpp,sha256=zPlatX_nf2ODK2X979wvpm1HXHEzn
187
187
  netgen/include/vtkoutput.hpp,sha256=GwPaFtOVY27_1hKwSqpNHV4ppOk3CVsLdMpocm27odQ,6628
188
188
  netgen/include/vvector.hpp,sha256=vpnwWlNWsEJB26ve8cKADbUMGVBTTVCFvrBC4r_LDDQ,4785
189
189
  netgen/include/webgui.hpp,sha256=xm1S5KHockrzf_R4zHzQ9fzwfQ4H5aZaZm9ItCaR41s,2199
190
- netgen/lib/libngsolve.lib,sha256=FxGKaGJMTQXKqh251GhuinXdkYrpgP0cFzyr9HyK3IM,13533946
190
+ netgen/lib/libngsolve.lib,sha256=vXsZpgvDMnt7LyG8Rk0errQE7ViWVwzDX6YDH1iaUhE,13692558
191
191
  ngsolve/TensorProductTools.py,sha256=jD4LtJdEiLt2dDsU6STMXb10yrau_i20gatwGlqbiFQ,8562
192
192
  ngsolve/__console.py,sha256=QLnfw1ONU9eVPQZ_LjzY-7b_gfZpRRRdI7imHR1lJR8,2983
193
193
  ngsolve/__expr.py,sha256=ZAtv94PVtAdvWWKFIvQGJC55aIEY6ajo-l5Hp-1V-6s,4396
@@ -202,7 +202,7 @@ ngsolve/meshes.py,sha256=nz95LP1EEIVAEJ0jyQGqq0E-62uuy2tvIRgqIrEqDHQ,27534
202
202
  ngsolve/ngs2petsc.py,sha256=PLAkvu4H-ZEXd0-bM2v0OJX7gga-OJ9d-NB7g322-wQ,12809
203
203
  ngsolve/ngscxx.py,sha256=r9TV49w0MKIxE6fgJYO4FNv-5wcM9eAFYIG9GspUy_A,1335
204
204
  ngsolve/ngslib.lib,sha256=PMhmZBaGh5nKKYoOl2fg3yeDwwLKpe7a5XttqXXc5xc,1716
205
- ngsolve/ngslib.pyd,sha256=6JouP13i4Rru82gTgsHH__ougyfdbdrmVAyKdKKadwk,123904
205
+ ngsolve/ngslib.pyd,sha256=QwYPSKTlGJ0Vcqi0QgPd-rif3SHxv0SF9k2ey2_eJCE,123904
206
206
  ngsolve/nonlinearsolvers.py,sha256=nKd-SVJseTWztHZPEPKsbv0mLwQjFILZtOh7Ggft0xs,8419
207
207
  ngsolve/preconditioners.py,sha256=vsbO1lQG-ibmk88AHsiizDZcBYsfHEL-13_E_l-tYuw,250
208
208
  ngsolve/solve_implementation.py,sha256=lrqwHbvoK-euEpsYVWBpWw28l3J7f6zZmE2qDnDeVZU,5026
@@ -211,12 +211,12 @@ ngsolve/timestepping.py,sha256=SuKsFS7cDXRixKWdMMIWW4flet12HLeqWTBC0DFhPwg,8535
211
211
  ngsolve/timing.py,sha256=j_Plbbh51pS9QwMq93hyvFDSrbywmdKZ6Z6OOZmZoe4,4093
212
212
  ngsolve/utils.py,sha256=jg6smLuKF6G9Rvg-EXjyYwjFJGyyiqSRknevdjp-9J4,4724
213
213
  ngsolve/webgui.py,sha256=HVJnfG96eGuO6ZRfqiWQlRaKbK_Yv5y0QbicfNFAf6A,24983
214
- ngsolve/cmake/NGSolveConfig.cmake,sha256=kVHMy6eYMkneEypveZJM_wgqv9yWYQ2i9P08LnlqbUU,5275
214
+ ngsolve/cmake/NGSolveConfig.cmake,sha256=0pmHxMn6GjRTVQKsX0g-aD9CX6aN_0v9-Nb58PcmtWE,5155
215
215
  ngsolve/cmake/ngsolve-targets-release.cmake,sha256=knQjCmz6J-x_Egg5DosY5hU_CZdZlSQxQ4Za7pS07fA,907
216
216
  ngsolve/cmake/ngsolve-targets.cmake,sha256=CDY3Uo0eZa6NGJVRTLZDkbgSrLqTnub8olMieARMi48,5905
217
217
  ngsolve/config/__init__.py,sha256=IjGKWBHvRx572Z6m-5z0q82xuQaWlBABy1whwy2Uxak,23
218
218
  ngsolve/config/__main__.py,sha256=anI_XpgrpEnVnMyrFiH3Yon_tpQZkehnqRTNC02NiBI,93
219
- ngsolve/config/config.py,sha256=BHTkf8p_8-m9yBXBzoxSggRPJJEwDpmUtBZV7cl4JWI,2549
219
+ ngsolve/config/config.py,sha256=R96jjABvJIV3Zd8X6DlnsDP32VwgXrmo47T7x9wH2LM,2549
220
220
  ngsolve/demos/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
221
221
  ngsolve/demos/TensorProduct/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
222
222
  ngsolve/demos/TensorProduct/tp_dg_1d_1d.py,sha256=3Q9ntmVJGIKQ-JLdGWgECR_kDjTG8FPVCSiTJkxyi40,2188
@@ -248,37 +248,37 @@ ngsolve/demos/mpi/mpi_cmagnet.py,sha256=59TuQvIIGoDStyJneH47NG131nppBoQpZQ9rfvG_
248
248
  ngsolve/demos/mpi/mpi_navierstokes.py,sha256=ieAWMDd9LoH99L14iBgF_YmX_xk7gltZ9MruTFN6xAY,3028
249
249
  ngsolve/demos/mpi/mpi_poisson.py,sha256=_-H0HFqlwlpasiVD9OQjUvJbWJcQ34-4y-va1WOSOzE,2557
250
250
  ngsolve/demos/mpi/mpi_timeDG.py,sha256=FUOh_1dzOGUU-uAsD4iyz0RVT382jMiMiuYkZjarhAE,1963
251
- ngsolve-6.2.2504.post44.dev0.data/data/Scripts/ngsolve.tcl,sha256=8KBOXZKYU_qx8785PIjdmVjcUbCxR5aYrod0BZ4UgGc,21637
252
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/beam.geo,sha256=HTv0A6IUoVuavifolhGKY6U44z0hni07Htonqe6rw_A,404
253
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/beam.vol,sha256=QZbM9JE4rBs5nVXaw7ZAbDf60yXbX19bm1OnOScF57M,13834
254
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/chip.in2d,sha256=561AjEIPnlzMZHIzep5lRjocQDm8w7o7IDna5u8s9JQ,592
255
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/chip.vol,sha256=gkEmBWlQh8BkSFNTf-XISfmuGzHXDKANV4Uoww_BwJI,28511
256
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/coil.geo,sha256=ylB2OiWEZztFXPx99qTNRJKmZFIDPEezEgQt4EPtZRA,376
257
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/coil.vol,sha256=t8cWP_YX38FMw0S-7vEVUOcSH0VK6DlaqVWG_zmBo-4,147284
258
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/coilshield.geo,sha256=Sq8w7i22WQ0viaiM3bU_63lZGFWp8JgyDqs3RdjeTe0,629
259
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/coilshield.vol,sha256=JiZOM9A529-hikvv1kyLwffTRpeatLtaVTNcu42o1fo,165576
260
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/cube.geo,sha256=Wd9AnPdoQgjQ-JK6zmoXjsNxPR9B8ED4pdHVwmRoe1M,405
261
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/cube.vol,sha256=RS8bay_KlF6IZM0QDDr7_dGaFLqoxszQU_w8TYutMKY,92127
262
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d10_DGdoubleglazing.pde,sha256=lK3sXmK74eFEMk8F6hwFHe_tBYnOdRq3F-RbzKpDK0c,1354
263
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d11_chip_nitsche.pde,sha256=VuEQtkZaIJA9yuvjG_jcx1UB9UtAaZSoeJYFHcHeYxk,1141
264
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d1_square.pde,sha256=24ZZ0nlbr5LKl_mPyeZZMSkiCBiBk1fzNElo3yITX2A,1072
265
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d2_chip.pde,sha256=yGIbzuTdCEjdoC9Ig_hbcy5qz69_wxgPZeYmhY1rN7k,985
266
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d3_helmholtz.pde,sha256=gWqQTh1M9NiKGohlu5JxDJuvRz-T28WlNSVbwmMvM-0,590
267
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d4_cube.pde,sha256=6kL43ehAh1PdwnFlLjadg325bFjpz02p2PpAOxlDFuc,1079
268
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d5_beam.pde,sha256=VQt9WbqAVWObFH9Jy1YieE9WHnVZ_hnsKVTz6ysEBxI,2059
269
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d6_shaft.pde,sha256=y10nLFA2-GwEwnAs5R-8wppRq-09vYJ_C9LJ3DSvlS0,1974
270
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d7_coil.pde,sha256=KFkqtZiPD4LQsGnghwwdq1qmpWf0T5xQR4HwbRL9ZZA,1250
271
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d8_coilshield.pde,sha256=9XG0TcgZ7mComh_pVntnuzDldEx5PD-C7gqK05PTWus,1190
272
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/d9_hybridDG.pde,sha256=vYschVRu5vC91YpyVZFCBFuno-ZlOcRznPD-OvJTLtQ,1551
273
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/doubleglazing.in2d,sha256=lDCukUh9iTpkiH-qJAVdeAlMpiYF0AibAA6g3jOeWDY,533
274
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/doubleglazing.vol,sha256=IUOhUrZi8WMnvrIJe--A8cYPN6mscslA8_4yxvKShb0,35724
275
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/piezo2d40round4.vol.gz,sha256=RuxM0vtYljoAImOH6U6avt0LmWaUbGNao37n8p_Yd1w,496477
276
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/shaft.geo,sha256=Y3OVQlWjgICe2Dwz6-Qs8r0tLanjwtWP0xFx5AwNRJk,2507
277
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/shaft.vol,sha256=IqViJ4hJKk3Uf66PkVJ-kHpBQ_ZpkigRuh5g1Po4euY,274741
278
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/square.in2d,sha256=5dewiEjTsRFiNkBlmaTjBAZejq55TTlusp8ALfTMc2M,209
279
- ngsolve-6.2.2504.post44.dev0.data/data/share/ngsolve/square.vol,sha256=tWdPeQ52deUNgWOsWKhqgNVsJKhkJmEAVp5-xjhzEwg,9311
280
- ngsolve-6.2.2504.post44.dev0.dist-info/licenses/LICENSE,sha256=iFoD9UsVeWEjb0aEPnmXKr_NaJC2y7NovH7KMo_5WhI,26934
281
- ngsolve-6.2.2504.post44.dev0.dist-info/METADATA,sha256=0dw3_qRw0YGYyYZmFQxAlvCJ5H8OWecf_pGzu954bTM,326
282
- ngsolve-6.2.2504.post44.dev0.dist-info/WHEEL,sha256=4dU9bvlPw8d_96aXToRp7-Ml2sgZj7vbQmzTV5aNNOE,96
283
- ngsolve-6.2.2504.post44.dev0.dist-info/top_level.txt,sha256=1llU44DxNIP85uPT4RChsIuV3h2d0_5j0Ui_Df5vV8E,15
284
- ngsolve-6.2.2504.post44.dev0.dist-info/RECORD,,
251
+ ngsolve-6.2.2505.post17.dev0.data/data/Scripts/ngsolve.tcl,sha256=8KBOXZKYU_qx8785PIjdmVjcUbCxR5aYrod0BZ4UgGc,21637
252
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/beam.geo,sha256=HTv0A6IUoVuavifolhGKY6U44z0hni07Htonqe6rw_A,404
253
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/beam.vol,sha256=QZbM9JE4rBs5nVXaw7ZAbDf60yXbX19bm1OnOScF57M,13834
254
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/chip.in2d,sha256=561AjEIPnlzMZHIzep5lRjocQDm8w7o7IDna5u8s9JQ,592
255
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/chip.vol,sha256=gkEmBWlQh8BkSFNTf-XISfmuGzHXDKANV4Uoww_BwJI,28511
256
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/coil.geo,sha256=ylB2OiWEZztFXPx99qTNRJKmZFIDPEezEgQt4EPtZRA,376
257
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/coil.vol,sha256=t8cWP_YX38FMw0S-7vEVUOcSH0VK6DlaqVWG_zmBo-4,147284
258
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/coilshield.geo,sha256=Sq8w7i22WQ0viaiM3bU_63lZGFWp8JgyDqs3RdjeTe0,629
259
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/coilshield.vol,sha256=JiZOM9A529-hikvv1kyLwffTRpeatLtaVTNcu42o1fo,165576
260
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/cube.geo,sha256=Wd9AnPdoQgjQ-JK6zmoXjsNxPR9B8ED4pdHVwmRoe1M,405
261
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/cube.vol,sha256=RS8bay_KlF6IZM0QDDr7_dGaFLqoxszQU_w8TYutMKY,92127
262
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d10_DGdoubleglazing.pde,sha256=lK3sXmK74eFEMk8F6hwFHe_tBYnOdRq3F-RbzKpDK0c,1354
263
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d11_chip_nitsche.pde,sha256=VuEQtkZaIJA9yuvjG_jcx1UB9UtAaZSoeJYFHcHeYxk,1141
264
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d1_square.pde,sha256=24ZZ0nlbr5LKl_mPyeZZMSkiCBiBk1fzNElo3yITX2A,1072
265
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d2_chip.pde,sha256=yGIbzuTdCEjdoC9Ig_hbcy5qz69_wxgPZeYmhY1rN7k,985
266
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d3_helmholtz.pde,sha256=gWqQTh1M9NiKGohlu5JxDJuvRz-T28WlNSVbwmMvM-0,590
267
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d4_cube.pde,sha256=6kL43ehAh1PdwnFlLjadg325bFjpz02p2PpAOxlDFuc,1079
268
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d5_beam.pde,sha256=VQt9WbqAVWObFH9Jy1YieE9WHnVZ_hnsKVTz6ysEBxI,2059
269
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d6_shaft.pde,sha256=y10nLFA2-GwEwnAs5R-8wppRq-09vYJ_C9LJ3DSvlS0,1974
270
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d7_coil.pde,sha256=KFkqtZiPD4LQsGnghwwdq1qmpWf0T5xQR4HwbRL9ZZA,1250
271
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d8_coilshield.pde,sha256=9XG0TcgZ7mComh_pVntnuzDldEx5PD-C7gqK05PTWus,1190
272
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/d9_hybridDG.pde,sha256=vYschVRu5vC91YpyVZFCBFuno-ZlOcRznPD-OvJTLtQ,1551
273
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/doubleglazing.in2d,sha256=lDCukUh9iTpkiH-qJAVdeAlMpiYF0AibAA6g3jOeWDY,533
274
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/doubleglazing.vol,sha256=IUOhUrZi8WMnvrIJe--A8cYPN6mscslA8_4yxvKShb0,35724
275
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/piezo2d40round4.vol.gz,sha256=RuxM0vtYljoAImOH6U6avt0LmWaUbGNao37n8p_Yd1w,496477
276
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/shaft.geo,sha256=Y3OVQlWjgICe2Dwz6-Qs8r0tLanjwtWP0xFx5AwNRJk,2507
277
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/shaft.vol,sha256=IqViJ4hJKk3Uf66PkVJ-kHpBQ_ZpkigRuh5g1Po4euY,274741
278
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/square.in2d,sha256=5dewiEjTsRFiNkBlmaTjBAZejq55TTlusp8ALfTMc2M,209
279
+ ngsolve-6.2.2505.post17.dev0.data/data/share/ngsolve/square.vol,sha256=tWdPeQ52deUNgWOsWKhqgNVsJKhkJmEAVp5-xjhzEwg,9311
280
+ ngsolve-6.2.2505.post17.dev0.dist-info/licenses/LICENSE,sha256=iFoD9UsVeWEjb0aEPnmXKr_NaJC2y7NovH7KMo_5WhI,26934
281
+ ngsolve-6.2.2505.post17.dev0.dist-info/METADATA,sha256=bT-WODfOq8NHbXa5uUdnO1O_jfowhTB6LZCmGUEVu9U,325
282
+ ngsolve-6.2.2505.post17.dev0.dist-info/WHEEL,sha256=4dU9bvlPw8d_96aXToRp7-Ml2sgZj7vbQmzTV5aNNOE,96
283
+ ngsolve-6.2.2505.post17.dev0.dist-info/top_level.txt,sha256=1llU44DxNIP85uPT4RChsIuV3h2d0_5j0Ui_Df5vV8E,15
284
+ ngsolve-6.2.2505.post17.dev0.dist-info/RECORD,,