ngsolve 6.2.2506.post38.dev0__cp313-cp313-macosx_10_15_universal2.whl → 6.2.2506.post60.dev0__cp313-cp313-macosx_10_15_universal2.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 (65) hide show
  1. netgen/include/bdbequations.hpp +33 -0
  2. netgen/include/diffopwithfactor.hpp +123 -0
  3. netgen/include/expr.hpp +32 -1
  4. netgen/include/kernels.hpp +183 -74
  5. netgen/include/l2hofe.hpp +1 -0
  6. netgen/include/mptools.hpp +49 -39
  7. netgen/include/thdivfe_impl.hpp +1 -1
  8. netgen/include/vector.hpp +7 -2
  9. netgen/libngbla.dylib +0 -0
  10. netgen/libngcomp.dylib +0 -0
  11. netgen/libngfem.dylib +0 -0
  12. netgen/libngla.dylib +0 -0
  13. netgen/libngsbem.dylib +0 -0
  14. netgen/libngstd.dylib +0 -0
  15. ngsolve/__init__.pyi +3 -3
  16. ngsolve/cmake/NGSolveConfig.cmake +1 -1
  17. ngsolve/config/__init__.pyi +6 -6
  18. ngsolve/config/config.py +5 -5
  19. ngsolve/config/config.pyi +6 -6
  20. ngsolve/directsolvers.pyi +1 -1
  21. ngsolve/krylovspace.pyi +3 -3
  22. ngsolve/nonlinearsolvers.pyi +1 -1
  23. ngsolve/solve_implementation.py +10 -1
  24. ngsolve/solve_implementation.pyi +4 -4
  25. ngsolve/timestepping.pyi +3 -3
  26. ngsolve/timing.pyi +1 -1
  27. ngsolve/utils.pyi +1 -1
  28. {ngsolve-6.2.2506.post38.dev0.dist-info → ngsolve-6.2.2506.post60.dev0.dist-info}/METADATA +1 -1
  29. {ngsolve-6.2.2506.post38.dev0.dist-info → ngsolve-6.2.2506.post60.dev0.dist-info}/RECORD +65 -64
  30. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/Netgen.icns +0 -0
  31. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/bin/ngscxx +0 -0
  32. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/bin/ngsld +0 -0
  33. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/bin/ngsolve.tcl +0 -0
  34. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/bin/ngspy +0 -0
  35. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/beam.geo +0 -0
  36. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/beam.vol +0 -0
  37. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/chip.in2d +0 -0
  38. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/chip.vol +0 -0
  39. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/coil.geo +0 -0
  40. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/coil.vol +0 -0
  41. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/coilshield.geo +0 -0
  42. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/coilshield.vol +0 -0
  43. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/cube.geo +0 -0
  44. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/cube.vol +0 -0
  45. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d10_DGdoubleglazing.pde +0 -0
  46. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d11_chip_nitsche.pde +0 -0
  47. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d1_square.pde +0 -0
  48. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d2_chip.pde +0 -0
  49. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d3_helmholtz.pde +0 -0
  50. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d4_cube.pde +0 -0
  51. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d5_beam.pde +0 -0
  52. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d6_shaft.pde +0 -0
  53. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d7_coil.pde +0 -0
  54. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d8_coilshield.pde +0 -0
  55. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/d9_hybridDG.pde +0 -0
  56. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/doubleglazing.in2d +0 -0
  57. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/doubleglazing.vol +0 -0
  58. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/piezo2d40round4.vol.gz +0 -0
  59. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/shaft.geo +0 -0
  60. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/shaft.vol +0 -0
  61. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/square.in2d +0 -0
  62. {ngsolve-6.2.2506.post38.dev0.data → ngsolve-6.2.2506.post60.dev0.data}/data/share/ngsolve/square.vol +0 -0
  63. {ngsolve-6.2.2506.post38.dev0.dist-info → ngsolve-6.2.2506.post60.dev0.dist-info}/LICENSE +0 -0
  64. {ngsolve-6.2.2506.post38.dev0.dist-info → ngsolve-6.2.2506.post60.dev0.dist-info}/WHEEL +0 -0
  65. {ngsolve-6.2.2506.post38.dev0.dist-info → ngsolve-6.2.2506.post60.dev0.dist-info}/top_level.txt +0 -0
@@ -884,26 +884,30 @@ namespace ngsbem
884
884
  return sum;
885
885
  }
886
886
 
887
- {
888
- // static Timer t("fmm direct eval"); RegionTimer reg(t);
889
- // t.AddFlops (charges.Size());
890
887
  if (simd_charges.Size())
891
888
  {
892
889
  // static Timer t("mptool singmp, evaluate, simd charges"); RegionTimer r(t);
890
+ // t.AddFlops (charges.Size());
893
891
 
894
892
  simd_entry_type vsum{0.0};
895
893
  if (mp.Kappa() < 1e-12)
896
894
  {
897
895
  for (auto [x,c] : simd_charges)
898
896
  {
897
+ auto rho = L2Norm(p-x);
898
+ auto kernel = 1/(4*M_PI)/rho;
899
+ kernel = If(rho > 0.0, kernel, SIMD<double,FMM_SW>(0.0));
900
+ vsum += kernel * c;
901
+
902
+ /*
899
903
  auto rho2 = L2Norm2(p-x);
900
904
  auto kernel = (1/(4*M_PI)) * rsqrt(rho2);
901
905
  kernel = If(rho2 > 0.0, kernel, SIMD<double,FMM_SW>(0.0));
902
906
  vsum += kernel * c;
907
+ */
903
908
  }
904
909
  }
905
- else
906
- if (mp.Kappa() < 1e-8)
910
+ else if (mp.Kappa() < 1e-8)
907
911
  for (auto [x,c] : simd_charges)
908
912
  {
909
913
  auto rho = L2Norm(p-x);
@@ -920,7 +924,7 @@ namespace ngsbem
920
924
  kernel = If(rho > 0.0, kernel, SIMD<Complex,FMM_SW>(0.0));
921
925
  vsum += kernel * c;
922
926
  }
923
-
927
+
924
928
  sum += HSum(vsum);
925
929
  }
926
930
  else
@@ -936,41 +940,40 @@ namespace ngsbem
936
940
  if (double rho = L2Norm(p-x); rho > 0)
937
941
  sum += (1/(4*M_PI))*exp(Complex(0,rho*mp.Kappa())) / rho * c;
938
942
  }
939
- }
940
943
 
941
944
  if (simd_dipoles.Size())
942
- {
943
- // static Timer t("mptool singmp, evaluate, simd dipoles"); RegionTimer r(t);
944
-
945
- simd_entry_type vsum{0.0};
946
- for (auto [x,d,c] : simd_dipoles)
947
945
  {
948
- auto rho = L2Norm(p-x);
949
- auto drhodp = (1.0/rho) * (p-x);
950
- auto [si,co] = sincos(rho*mp.Kappa());
951
- auto dGdrho = (1/(4*M_PI))*SIMD<Complex,FMM_SW>(co,si) *
952
- (-1.0/(rho*rho) + SIMD<Complex,FMM_SW>(0, mp.Kappa())/rho);
953
- auto kernel = dGdrho * InnerProduct(drhodp, d);
954
- kernel = If(rho > 0.0, kernel, SIMD<Complex,FMM_SW>(0.0));
955
- vsum += kernel * c;
946
+ // static Timer t("mptool singmp, evaluate, simd dipoles"); RegionTimer r(t);
947
+
948
+ simd_entry_type vsum{0.0};
949
+ for (auto [x,d,c] : simd_dipoles)
950
+ {
951
+ auto rho = L2Norm(p-x);
952
+ auto drhodp = (1.0/rho) * (p-x);
953
+ auto [si,co] = sincos(rho*mp.Kappa());
954
+ auto dGdrho = (1/(4*M_PI))*SIMD<Complex,FMM_SW>(co,si) *
955
+ (-1.0/(rho*rho) + SIMD<Complex,FMM_SW>(0, mp.Kappa())/rho);
956
+ auto kernel = dGdrho * InnerProduct(drhodp, d);
957
+ kernel = If(rho > 0.0, kernel, SIMD<Complex,FMM_SW>(0.0));
958
+ vsum += kernel * c;
959
+ }
960
+ sum += HSum(vsum);
956
961
  }
957
- sum += HSum(vsum);
958
- }
959
962
  else
960
- {
961
- for (auto [x,d,c] : dipoles)
962
- if (double rho = L2Norm(p-x); rho > 0)
963
963
  {
964
- Vec<3> drhodp = 1.0/rho * (p-x);
965
- Complex dGdrho = (1/(4*M_PI))*exp(Complex(0,rho*mp.Kappa())) *
966
- (Complex(0, mp.Kappa())/rho - 1.0/sqr(rho));
967
- sum += dGdrho * InnerProduct(drhodp, d) * c;
964
+ for (auto [x,d,c] : dipoles)
965
+ if (double rho = L2Norm(p-x); rho > 0)
966
+ {
967
+ Vec<3> drhodp = 1.0/rho * (p-x);
968
+ Complex dGdrho = (1/(4*M_PI))*exp(Complex(0,rho*mp.Kappa())) *
969
+ (Complex(0, mp.Kappa())/rho - 1.0/sqr(rho));
970
+ sum += dGdrho * InnerProduct(drhodp, d) * c;
971
+ }
968
972
  }
969
- }
970
-
971
-
972
-
973
- if (simd_chargedipoles.Size())
973
+
974
+
975
+
976
+ if (simd_chargedipoles.Size())
974
977
  {
975
978
  // static Timer t("mptool singmp, evaluate, simd chargedipoles"); RegionTimer r(t);
976
979
  // t.AddFlops (simd_chargedipoles.Size()*FMM_SW);
@@ -982,10 +985,10 @@ namespace ngsbem
982
985
  auto rhokappa = rho*mp.Kappa();
983
986
  auto invrho = If(rho>0.0, 1.0/rho, SIMD<double,FMM_SW>(0.0));
984
987
  auto [si,co] = sincos(rhokappa);
985
-
988
+
986
989
  auto kernelc = (1/(4*M_PI))*invrho*SIMD<Complex,FMM_SW>(co,si);
987
990
  vsum += kernelc * c;
988
-
991
+
989
992
  auto kernel =
990
993
  invrho*invrho * InnerProduct(p-x, d) *
991
994
  kernelc * SIMD<Complex,FMM_SW>(-1.0, rhokappa);
@@ -994,7 +997,7 @@ namespace ngsbem
994
997
  }
995
998
  sum += HSum(vsum);
996
999
  }
997
- else
1000
+ else
998
1001
  {
999
1002
  // static Timer t("mptool singmp, evaluate, chargedipoles"); RegionTimer r(t);
1000
1003
  // t.AddFlops (chargedipoles.Size());
@@ -1003,7 +1006,7 @@ namespace ngsbem
1003
1006
  if (double rho = L2Norm(p-x); rho > 0)
1004
1007
  {
1005
1008
  sum += (1/(4*M_PI))*exp(Complex(0,rho*mp.Kappa())) / rho * c;
1006
-
1009
+
1007
1010
  Vec<3> drhodp = 1.0/rho * (p-x);
1008
1011
  Complex dGdrho = (1/(4*M_PI))*exp(Complex(0,rho*mp.Kappa())) *
1009
1012
  (Complex(0, mp.Kappa())/rho - 1.0/sqr(rho));
@@ -1052,7 +1055,14 @@ namespace ngsbem
1052
1055
  }
1053
1056
 
1054
1057
  if (dipoles.Size())
1055
- throw Exception("EvaluateDeriv not implemented for dipoles in SingularMLExpansion");
1058
+ {
1059
+ static int cnt = 0;
1060
+ cnt++;
1061
+ if (cnt < 3)
1062
+ cout << "we know what we do - evaluateDeriv not implemented for dipoles in SingularMLExpansion" << endl;
1063
+ // return sum;
1064
+ // throw Exception("EvaluateDeriv not implemented for dipoles in SingularMLExpansion");
1065
+ }
1056
1066
  if (chargedipoles.Size())
1057
1067
  throw Exception("EvaluateDeriv not implemented for dipoles in SingularMLExpansion");
1058
1068
 
@@ -264,7 +264,7 @@ namespace ngfem
264
264
  T_CalcShape (GetTIPGrad<DIM>(mir[i].IP()),
265
265
  SBLambda ([divshapesi,invJ] (size_t j, THDiv2DivShape<DIM,SIMD<double>> val)
266
266
  {
267
- divshapesi(j) = invJ*val;
267
+ divshapesi(j) = invJ*val.Get();
268
268
  }));
269
269
  }
270
270
  }
netgen/include/vector.hpp CHANGED
@@ -978,8 +978,13 @@ namespace ngbla
978
978
  }
979
979
 
980
980
 
981
-
982
-
981
+ template <int S, typename T = double>
982
+ auto UnitVec(size_t i)
983
+ {
984
+ Vec<S,T> ei = T(0.0);
985
+ ei(i) = T(1.0);
986
+ return ei;
987
+ }
983
988
 
984
989
  template <class TV, class TSCAL> class Scalar2ElemVector
985
990
  {
netgen/libngbla.dylib CHANGED
Binary file
netgen/libngcomp.dylib CHANGED
Binary file
netgen/libngfem.dylib CHANGED
Binary file
netgen/libngla.dylib CHANGED
Binary file
netgen/libngsbem.dylib CHANGED
Binary file
netgen/libngstd.dylib CHANGED
Binary file
ngsolve/__init__.pyi CHANGED
@@ -44,8 +44,8 @@ from ngsolve.comp import HDiv
44
44
  from ngsolve.comp import HDivDiv
45
45
  from ngsolve.comp import HDivDivSurface
46
46
  from ngsolve.comp import HDivSurface
47
- from ngsolve.comp import Hidden
48
47
  from ngsolve.comp import Hidden as PrivateSpace
48
+ from ngsolve.comp import Hidden
49
49
  from ngsolve.comp import Integrate
50
50
  from ngsolve.comp import Interpolate
51
51
  from ngsolve.comp import L2
@@ -88,8 +88,8 @@ from ngsolve.fem import BSpline
88
88
  from ngsolve.fem import BlockBFI
89
89
  from ngsolve.fem import BlockLFI
90
90
  from ngsolve.fem import CacheCF
91
- from ngsolve.fem import CoefficientFunction as CF
92
91
  from ngsolve.fem import CoefficientFunction
92
+ from ngsolve.fem import CoefficientFunction as CF
93
93
  from ngsolve.fem import Cof
94
94
  from ngsolve.fem import CompoundBFI
95
95
  from ngsolve.fem import CompoundLFI
@@ -219,7 +219,7 @@ TET: fem.ET # value = <ET.TET: 20>
219
219
  TRIG: fem.ET # value = <ET.TRIG: 10>
220
220
  VERTEX: fem.NODE_TYPE # value = <NODE_TYPE.VERTEX: 0>
221
221
  VOL: comp.VorB # value = <VorB.VOL: 0>
222
- __version__: str = '6.2.2506-38-gc3cacfb0d'
222
+ __version__: str = '6.2.2506-60-g1d0a21976'
223
223
  ds: comp.DifferentialSymbol # value = <ngsolve.comp.DifferentialSymbol object>
224
224
  dx: comp.DifferentialSymbol # value = <ngsolve.comp.DifferentialSymbol object>
225
225
  ngsglobals: comp.GlobalVariables # value = <ngsolve.comp.GlobalVariables object>
@@ -1,4 +1,4 @@
1
- set(PACKAGE_VERSION "6.2.2506-38-gc3cacfb0d")
1
+ set(PACKAGE_VERSION "6.2.2506-60-g1d0a21976")
2
2
  find_package(Netgen CONFIG REQUIRED HINTS
3
3
  ${CMAKE_CURRENT_LIST_DIR}
4
4
  ${CMAKE_CURRENT_LIST_DIR}/..
@@ -24,14 +24,14 @@ NGSOLVE_INSTALL_DIR_INCLUDE: str = 'netgen/include'
24
24
  NGSOLVE_INSTALL_DIR_LIB: str = 'netgen'
25
25
  NGSOLVE_INSTALL_DIR_PYTHON: str = '.'
26
26
  NGSOLVE_INSTALL_DIR_RES: str = 'share'
27
- NGSOLVE_VERSION: str = '6.2.2506-38-gc3cacfb0d'
28
- NGSOLVE_VERSION_GIT: str = 'v6.2.2506-38-gc3cacfb0d'
29
- NGSOLVE_VERSION_HASH: str = 'gc3cacfb0d'
27
+ NGSOLVE_VERSION: str = '6.2.2506-60-g1d0a21976'
28
+ NGSOLVE_VERSION_GIT: str = 'v6.2.2506-60-g1d0a21976'
29
+ NGSOLVE_VERSION_HASH: str = 'g1d0a21976'
30
30
  NGSOLVE_VERSION_MAJOR: str = '6'
31
31
  NGSOLVE_VERSION_MINOR: str = '2'
32
32
  NGSOLVE_VERSION_PATCH: str = '2506'
33
- NGSOLVE_VERSION_PYTHON: str = '6.2.2506.post38.dev0'
34
- NGSOLVE_VERSION_TWEAK: str = '38'
33
+ NGSOLVE_VERSION_PYTHON: str = '6.2.2506.post60.dev0'
34
+ NGSOLVE_VERSION_TWEAK: str = '60'
35
35
  USE_CCACHE: bool = True
36
36
  USE_HYPRE: bool = False
37
37
  USE_LAPACK: bool = True
@@ -40,4 +40,4 @@ USE_MUMPS: bool = False
40
40
  USE_PARDISO: bool = False
41
41
  USE_UMFPACK: bool = True
42
42
  is_python_package: bool = True
43
- version: str = 'v6.2.2506-38-gc3cacfb0d'
43
+ version: str = 'v6.2.2506-60-g1d0a21976'
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.2506-38-gc3cacfb0d"
33
- NGSOLVE_VERSION_GIT = "v6.2.2506-38-gc3cacfb0d"
34
- NGSOLVE_VERSION_PYTHON = "6.2.2506.post38.dev0"
32
+ NGSOLVE_VERSION = "6.2.2506-60-g1d0a21976"
33
+ NGSOLVE_VERSION_GIT = "v6.2.2506-60-g1d0a21976"
34
+ NGSOLVE_VERSION_PYTHON = "6.2.2506.post60.dev0"
35
35
 
36
36
  NGSOLVE_VERSION_MAJOR = "6"
37
37
  NGSOLVE_VERSION_MINOR = "2"
38
- NGSOLVE_VERSION_TWEAK = "38"
38
+ NGSOLVE_VERSION_TWEAK = "60"
39
39
  NGSOLVE_VERSION_PATCH = "2506"
40
- NGSOLVE_VERSION_HASH = "gc3cacfb0d"
40
+ NGSOLVE_VERSION_HASH = "g1d0a21976"
41
41
 
42
42
  CMAKE_CXX_COMPILER = "/Library/Developer/CommandLineTools/usr/bin/c++"
43
43
  CMAKE_CUDA_COMPILER = ""
ngsolve/config/config.pyi CHANGED
@@ -26,14 +26,14 @@ NGSOLVE_INSTALL_DIR_INCLUDE: str = 'netgen/include'
26
26
  NGSOLVE_INSTALL_DIR_LIB: str = 'netgen'
27
27
  NGSOLVE_INSTALL_DIR_PYTHON: str = '.'
28
28
  NGSOLVE_INSTALL_DIR_RES: str = 'share'
29
- NGSOLVE_VERSION: str = '6.2.2506-38-gc3cacfb0d'
30
- NGSOLVE_VERSION_GIT: str = 'v6.2.2506-38-gc3cacfb0d'
31
- NGSOLVE_VERSION_HASH: str = 'gc3cacfb0d'
29
+ NGSOLVE_VERSION: str = '6.2.2506-60-g1d0a21976'
30
+ NGSOLVE_VERSION_GIT: str = 'v6.2.2506-60-g1d0a21976'
31
+ NGSOLVE_VERSION_HASH: str = 'g1d0a21976'
32
32
  NGSOLVE_VERSION_MAJOR: str = '6'
33
33
  NGSOLVE_VERSION_MINOR: str = '2'
34
34
  NGSOLVE_VERSION_PATCH: str = '2506'
35
- NGSOLVE_VERSION_PYTHON: str = '6.2.2506.post38.dev0'
36
- NGSOLVE_VERSION_TWEAK: str = '38'
35
+ NGSOLVE_VERSION_PYTHON: str = '6.2.2506.post60.dev0'
36
+ NGSOLVE_VERSION_TWEAK: str = '60'
37
37
  USE_CCACHE: bool = True
38
38
  USE_HYPRE: bool = False
39
39
  USE_LAPACK: bool = True
@@ -42,4 +42,4 @@ USE_MUMPS: bool = False
42
42
  USE_PARDISO: bool = False
43
43
  USE_UMFPACK: bool = True
44
44
  is_python_package: bool = True
45
- version: str = 'v6.2.2506-38-gc3cacfb0d'
45
+ version: str = 'v6.2.2506-60-g1d0a21976'
ngsolve/directsolvers.pyi CHANGED
@@ -9,7 +9,7 @@ import typing
9
9
  __all__ = ['BaseMatrix', 'BaseVector', 'BilinearForm', 'BitArray', 'SuperLU']
10
10
  class SuperLU(ngsolve.la.BaseMatrix):
11
11
  __firstlineno__: typing.ClassVar[int] = 3
12
- __static_attributes__: typing.ClassVar[tuple] = ('freedofs', 'lu', 'fd', 'a')
12
+ __static_attributes__: typing.ClassVar[tuple] = ('a', 'fd', 'freedofs', 'lu')
13
13
  def Mult(self, x: ngsolve.la.BaseVector, y: ngsolve.la.BaseVector):
14
14
  ...
15
15
  def Update(self):
ngsolve/krylovspace.pyi CHANGED
@@ -35,7 +35,7 @@ class CGSolver(LinearSolver):
35
35
  ...
36
36
  class GMResSolver(LinearSolver):
37
37
  __firstlineno__: typing.ClassVar[int] = 740
38
- __static_attributes__: typing.ClassVar[tuple] = ('restart', 'norm', 'iterations', 'innerproduct')
38
+ __static_attributes__: typing.ClassVar[tuple] = ('restart', 'iterations', 'innerproduct', 'norm')
39
39
  name: typing.ClassVar[str] = 'GMRes'
40
40
  def _SolveImpl(self, rhs: ngsolve.la.BaseVector, sol: ngsolve.la.BaseVector):
41
41
  ...
@@ -43,7 +43,7 @@ class GMResSolver(LinearSolver):
43
43
  ...
44
44
  class LinearSolver(ngsolve.la.BaseMatrix):
45
45
  __firstlineno__: typing.ClassVar[int] = 50
46
- __static_attributes__: typing.ClassVar[tuple] = ('pre', '_final_residual', 'fig', 'ress', 'iterations', 'tol', 'clear_output', 'plt', 'printrates', 'sol', 'residuals', 'display', 'ax', 'mat', 'maxiter', 'plotrates', 'its', 'callback_sol', 'callback', 'atol')
46
+ __static_attributes__: typing.ClassVar[tuple] = ('printrates', 'display', 'callback', 'iterations', 'atol', 'sol', 'maxiter', 'ax', 'plotrates', 'its', 'ress', 'plt', '_final_residual', 'fig', 'pre', 'mat', 'tol', 'callback_sol', 'residuals', 'clear_output')
47
47
  name: typing.ClassVar[str] = 'LinearSolver'
48
48
  @staticmethod
49
49
  def Solve(*args, **kwargs):
@@ -73,7 +73,7 @@ class MinResSolver(LinearSolver):
73
73
  ...
74
74
  class QMRSolver(LinearSolver):
75
75
  __firstlineno__: typing.ClassVar[int] = 295
76
- __static_attributes__: typing.ClassVar[tuple] = ('ep', 'pre2')
76
+ __static_attributes__: typing.ClassVar[tuple] = ('pre2', 'ep')
77
77
  name: typing.ClassVar[str] = 'QMR'
78
78
  def _SolveImpl(self, rhs: ngsolve.la.BaseVector, sol: ngsolve.la.BaseVector):
79
79
  ...
@@ -8,7 +8,7 @@ import typing
8
8
  __all__ = ['InnerProduct', 'Newton', 'NewtonMinimization', 'NewtonSolver', 'Norm', 'Projector', 'TimeFunction', 'sqrt']
9
9
  class NewtonSolver:
10
10
  __firstlineno__: typing.ClassVar[int] = 6
11
- __static_attributes__: typing.ClassVar[tuple] = ('freedofs', 'u', 'inv', 'lin_solver_args', 'inverse', 'lin_solver_cls', 'rhs', 'uh', 'w', 'r', 'a')
11
+ __static_attributes__: typing.ClassVar[tuple] = ('inverse', 'lin_solver_args', 'freedofs', 'w', 'uh', 'rhs', 'inv', 'lin_solver_cls', 'a', 'r', 'u')
12
12
  @staticmethod
13
13
  def Solve(*args, **kwargs):
14
14
  ...
@@ -58,7 +58,16 @@ class NonLinearApplication(Application):
58
58
  solver = NewtonSolver(self.a, self.gf, **solver_args)
59
59
  if dirichlet is not None:
60
60
  dirichlet_gf = GridFunction(self.gf.space)
61
- if isinstance(dirichlet, Dirichlet):
61
+ if isinstance(dirichlet, list):
62
+ for i in range(len(dirichlet)):
63
+ if dirichlet[i] is not None:
64
+ if isinstance(dirichlet[i], Dirichlet):
65
+ dirichlet_gf.components[i].Set(
66
+ dirichlet[i].cf, definedon=dirichlet[i].region
67
+ )
68
+ else:
69
+ dirichlet_gf.components[i].Set(dirichlet[i], BND)
70
+ elif isinstance(dirichlet, Dirichlet):
62
71
  dirichlet_gf.Set(dirichlet.cf, definedon=dirichlet.region)
63
72
  else:
64
73
  dirichlet_gf.Set(dirichlet, BND)
@@ -14,7 +14,7 @@ __all__ = ['Application', 'BND', 'BilinearForm', 'CoefficientFunction', 'Dirichl
14
14
  class Application:
15
15
  __firstlineno__: typing.ClassVar[int] = 21
16
16
  __hash__: typing.ClassVar[None] = None
17
- __static_attributes__: typing.ClassVar[tuple] = ('gf', 'a')
17
+ __static_attributes__: typing.ClassVar[tuple] = ('a', 'gf')
18
18
  def Solve(self, rhs, *args, dirichlet = None, pre = None, printrates: bool = False, **kwargs):
19
19
  ...
20
20
  def __eq__(self, other):
@@ -27,14 +27,14 @@ class Dirichlet:
27
27
  def __init__(self, cf, region):
28
28
  ...
29
29
  class Equation:
30
- __firstlineno__: typing.ClassVar[int] = 138
31
- __static_attributes__: typing.ClassVar[tuple] = ('rhs', 'lhs')
30
+ __firstlineno__: typing.ClassVar[int] = 147
31
+ __static_attributes__: typing.ClassVar[tuple] = ('lhs', 'rhs')
32
32
  def Solve(self, *args, **kwargs):
33
33
  ...
34
34
  def __init__(self, lhs, rhs):
35
35
  ...
36
36
  class LinearApplication(Application):
37
- __firstlineno__: typing.ClassVar[int] = 69
37
+ __firstlineno__: typing.ClassVar[int] = 78
38
38
  __static_attributes__: typing.ClassVar[tuple] = ('vec')
39
39
  def Assemble(self):
40
40
  ...
ngsolve/timestepping.pyi CHANGED
@@ -7,7 +7,7 @@ import typing
7
7
  __all__ = ['CrankNicolson', 'ImplicitEuler', 'Newmark', 'ngs']
8
8
  class CrankNicolson:
9
9
  __firstlineno__: typing.ClassVar[int] = 129
10
- __static_attributes__: typing.ClassVar[tuple] = ('_lin_solver_cls', 'bfmstar', '_lin_solver_args', 'dt', 'c', 'gfu_old', 'time')
10
+ __static_attributes__: typing.ClassVar[tuple] = ('bfmstar', '_lin_solver_cls', 'c', 'dt', 'gfu_old', '_lin_solver_args', 'time')
11
11
  def Integrate(self, u_start: ngsolve.comp.GridFunction, end_time: float, start_time: typing.Optional[float] = None, newton_args: typing.Optional[dict] = None, callback: typing.Optional[typing.Callable] = None):
12
12
  ...
13
13
  def Step(self, u: ngsolve.comp.GridFunction, dt: typing.Optional[float] = None, newton_args: typing.Optional[dict] = None):
@@ -16,7 +16,7 @@ class CrankNicolson:
16
16
  ...
17
17
  class ImplicitEuler:
18
18
  __firstlineno__: typing.ClassVar[int] = 5
19
- __static_attributes__: typing.ClassVar[tuple] = ('_lin_solver_cls', 'bfmstar', '_lin_solver_args', 'dt', 'c', 'gfu_old', 'time')
19
+ __static_attributes__: typing.ClassVar[tuple] = ('bfmstar', '_lin_solver_cls', 'c', 'dt', 'gfu_old', '_lin_solver_args', 'time')
20
20
  def Integrate(self, u_start: ngsolve.comp.GridFunction, end_time: float, start_time: typing.Optional[float] = None, newton_args: typing.Optional[dict] = None, callback: typing.Optional[typing.Callable] = None):
21
21
  ...
22
22
  def Step(self, u: ngsolve.comp.GridFunction, dt: typing.Optional[float] = None, newton_args: typing.Optional[dict] = None):
@@ -25,7 +25,7 @@ class ImplicitEuler:
25
25
  ...
26
26
  class Newmark:
27
27
  __firstlineno__: typing.ClassVar[int] = 58
28
- __static_attributes__: typing.ClassVar[tuple] = ('_lin_solver_cls', 'bfmstar', '_lin_solver_args', 'gfa_old', 'dt', 'gfv_old', 'gfu_old', 'c', 'time')
28
+ __static_attributes__: typing.ClassVar[tuple] = ('bfmstar', 'gfv_old', '_lin_solver_cls', 'c', 'dt', 'gfu_old', '_lin_solver_args', 'time', 'gfa_old')
29
29
  def Integrate(self, u: ngsolve.comp.GridFunction, end_time: float, v: typing.Optional[ngsolve.comp.GridFunction] = None, a: typing.Optional[ngsolve.comp.GridFunction] = None, start_time: typing.Optional[float] = None, newton_args: typing.Optional[dict] = None, callback: typing.Optional[typing.Callable] = None):
30
30
  ...
31
31
  def Step(self, u: ngsolve.comp.GridFunction, v: ngsolve.comp.GridFunction, a: ngsolve.comp.GridFunction, dt: typing.Optional[float] = None, newton_args: typing.Optional[dict] = None):
ngsolve/timing.pyi CHANGED
@@ -32,7 +32,7 @@ class Timing:
32
32
 
33
33
  """
34
34
  __firstlineno__: typing.ClassVar[int] = 5
35
- __static_attributes__: typing.ClassVar[tuple] = ('timings', 'name', 'timings_par')
35
+ __static_attributes__: typing.ClassVar[tuple] = ('name', 'timings', 'timings_par')
36
36
  def CompareTo(self, folder):
37
37
  """
38
38
 
ngsolve/utils.pyi CHANGED
@@ -48,8 +48,8 @@ from ngsolve.comp import HDiv
48
48
  from ngsolve.comp import HDivDiv
49
49
  from ngsolve.comp import HDivDivSurface
50
50
  from ngsolve.comp import HDivSurface
51
- from ngsolve.comp import Hidden
52
51
  from ngsolve.comp import Hidden as PrivateSpace
52
+ from ngsolve.comp import Hidden
53
53
  from ngsolve.comp import Integral
54
54
  from ngsolve.comp import Integrate
55
55
  from ngsolve.comp import IntegrationRuleSpace
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ngsolve
3
- Version: 6.2.2506.post38.dev0
3
+ Version: 6.2.2506.post60.dev0
4
4
  Summary: NGSolve
5
5
  Author: The NGSolve team
6
6
  License: LGPL2.1