ngsolve 6.2.2506.post73.dev0__cp313-cp313-macosx_10_15_universal2.whl → 6.2.2506.post85.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 (72) hide show
  1. netgen/include/sparsefactorization_interface.hpp +153 -0
  2. netgen/include/statushandler.hpp +8 -8
  3. netgen/libngbla.dylib +0 -0
  4. netgen/libngcomp.dylib +0 -0
  5. netgen/libngfem.dylib +0 -0
  6. netgen/libngla.dylib +0 -0
  7. netgen/libngsbem.dylib +0 -0
  8. netgen/libngsolve.dylib +0 -0
  9. netgen/libngstd.dylib +0 -0
  10. ngsolve/__init__.pyi +59 -59
  11. ngsolve/bla.pyi +150 -95
  12. ngsolve/cmake/NGSolveConfig.cmake +5 -5
  13. ngsolve/cmake/ngsolve-targets.cmake +15 -8
  14. ngsolve/comp/__init__.pyi +386 -102
  15. ngsolve/comp/pml.pyi +4 -1
  16. ngsolve/config/__init__.pyi +6 -6
  17. ngsolve/config/config.py +5 -5
  18. ngsolve/config/config.pyi +6 -6
  19. ngsolve/directsolvers.py +9 -21
  20. ngsolve/directsolvers.pyi +7 -10
  21. ngsolve/eigenvalues.pyi +4 -4
  22. ngsolve/fem.pyi +194 -110
  23. ngsolve/krylovspace.pyi +12 -12
  24. ngsolve/la.pyi +267 -88
  25. ngsolve/ngslib.so +0 -0
  26. ngsolve/ngstd.pyi +23 -4
  27. ngsolve/nonlinearsolvers.pyi +3 -3
  28. ngsolve/solve.pyi +7 -6
  29. ngsolve/solve_implementation.pyi +2 -2
  30. ngsolve/solvers/cudss.py +74 -0
  31. ngsolve/timestepping.pyi +3 -3
  32. ngsolve/timing.pyi +1 -1
  33. ngsolve/utils.pyi +71 -71
  34. {ngsolve-6.2.2506.post73.dev0.dist-info → ngsolve-6.2.2506.post85.dev0.dist-info}/METADATA +2 -2
  35. {ngsolve-6.2.2506.post73.dev0.dist-info → ngsolve-6.2.2506.post85.dev0.dist-info}/RECORD +72 -70
  36. /ngsolve/{solvers.py → solvers/__init__.py} +0 -0
  37. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/Netgen.icns +0 -0
  38. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/bin/ngscxx +0 -0
  39. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/bin/ngsld +0 -0
  40. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/bin/ngsolve.tcl +0 -0
  41. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/bin/ngspy +0 -0
  42. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/beam.geo +0 -0
  43. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/beam.vol +0 -0
  44. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/chip.in2d +0 -0
  45. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/chip.vol +0 -0
  46. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/coil.geo +0 -0
  47. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/coil.vol +0 -0
  48. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/coilshield.geo +0 -0
  49. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/coilshield.vol +0 -0
  50. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/cube.geo +0 -0
  51. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/cube.vol +0 -0
  52. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d10_DGdoubleglazing.pde +0 -0
  53. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d11_chip_nitsche.pde +0 -0
  54. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d1_square.pde +0 -0
  55. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d2_chip.pde +0 -0
  56. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d3_helmholtz.pde +0 -0
  57. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d4_cube.pde +0 -0
  58. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d5_beam.pde +0 -0
  59. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d6_shaft.pde +0 -0
  60. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d7_coil.pde +0 -0
  61. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d8_coilshield.pde +0 -0
  62. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/d9_hybridDG.pde +0 -0
  63. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/doubleglazing.in2d +0 -0
  64. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/doubleglazing.vol +0 -0
  65. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/piezo2d40round4.vol.gz +0 -0
  66. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/shaft.geo +0 -0
  67. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/shaft.vol +0 -0
  68. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/square.in2d +0 -0
  69. {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post85.dev0.data}/data/share/ngsolve/square.vol +0 -0
  70. {ngsolve-6.2.2506.post73.dev0.dist-info → ngsolve-6.2.2506.post85.dev0.dist-info}/LICENSE +0 -0
  71. {ngsolve-6.2.2506.post73.dev0.dist-info → ngsolve-6.2.2506.post85.dev0.dist-info}/WHEEL +0 -0
  72. {ngsolve-6.2.2506.post73.dev0.dist-info → ngsolve-6.2.2506.post85.dev0.dist-info}/top_level.txt +0 -0
ngsolve/la.pyi CHANGED
@@ -2,13 +2,18 @@
2
2
  pybind la
3
3
  """
4
4
  from __future__ import annotations
5
+ import collections.abc
5
6
  import ngsolve.bla
6
7
  import ngsolve.ngstd
7
8
  import numpy
9
+ import numpy.typing
8
10
  import pyngcore.pyngcore
9
11
  import typing
10
- __all__ = ['ArnoldiSolver', 'BaseMatrix', 'BaseSparseMatrix', 'BaseVector', 'BlockMatrix', 'BlockSmoother', 'BlockVector', 'CGSolver', 'ChebyshevIteration', 'ConstEBEMatrix', 'CreateParallelVector', 'CreateVVector', 'CumulationOperator', 'DiagonalMatrix', 'DoArchive', 'DofRange', 'DynamicVectorExpression', 'EigenValues_Preconditioner', 'Embedding', 'EmbeddingTranspose', 'FETI_Jump', 'GMRESSolver', 'GetAvailableSolvers', 'IdentityMatrix', 'InnerProduct', 'KrylovSpaceSolver', 'LoggingMatrix', 'MultiVector', 'MultiVectorExpr', 'PARALLEL_STATUS', 'ParallelDofs', 'ParallelMatrix', 'PermutationMatrix', 'ProductMatrix', 'Projector', 'QMRSolver', 'QMRSolverC', 'QMRSolverD', 'Real2ComplexMatrix', 'S_BaseMatrixC', 'S_BaseMatrixD', 'ScaleMatrix', 'Smoother', 'SparseCholesky_c', 'SparseCholesky_d', 'SparseFactorization', 'SparseMatrixDynamic', 'SparseMatrixN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE', 'SparseMatrixN5ngbla3MatILi2ELi2EdEE', 'SparseMatrixN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE', 'SparseMatrixN5ngbla3MatILi3ELi3EdEE', 'SparseMatrixNSt3__17complexIdEE', 'SparseMatrixSymmetricN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE', 'SparseMatrixSymmetricN5ngbla3MatILi2ELi2EdEE', 'SparseMatrixSymmetricN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE', 'SparseMatrixSymmetricN5ngbla3MatILi3ELi3EdEE', 'SparseMatrixSymmetricNSt3__17complexIdEE', 'SparseMatrixSymmetricd', 'SparseMatrixVariableBlocks', 'SparseMatrixd', 'SumMatrix', 'SymmetricBlockGaussSeidelPreconditioner', 'SymmetricGaussSeidelPreconditioner', 'TransposeMatrix']
12
+ __all__ = ['ArnoldiSolver', 'BaseMatrix', 'BaseSparseMatrix', 'BaseVector', 'BlockMatrix', 'BlockSmoother', 'BlockVector', 'CGSolver', 'ChebyshevIteration', 'ConstEBEMatrix', 'CreateParallelVector', 'CreateVVector', 'CumulationOperator', 'DiagonalMatrix', 'DoArchive', 'DofRange', 'DynamicVectorExpression', 'EigenValues_Preconditioner', 'Embedding', 'EmbeddingTranspose', 'FETI_Jump', 'GMRESSolver', 'GetAvailableSolvers', 'IdentityMatrix', 'InnerProduct', 'KrylovSpaceSolver', 'LoggingMatrix', 'MultiVector', 'MultiVectorExpr', 'PARALLEL_STATUS', 'ParallelDofs', 'ParallelMatrix', 'PermutationMatrix', 'ProductMatrix', 'Projector', 'QMRSolver', 'QMRSolverC', 'QMRSolverD', 'Real2ComplexMatrix', 'RegisterInverseType', 'S_BaseMatrixC', 'S_BaseMatrixD', 'ScaleMatrix', 'Smoother', 'SparseCholesky_c', 'SparseCholesky_d', 'SparseFactorization', 'SparseFactorizationInterface', 'SparseMatrixDynamic', 'SparseMatrixN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE', 'SparseMatrixN5ngbla3MatILi2ELi2EdEE', 'SparseMatrixN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE', 'SparseMatrixN5ngbla3MatILi3ELi3EdEE', 'SparseMatrixNSt3__17complexIdEE', 'SparseMatrixSymmetricN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE', 'SparseMatrixSymmetricN5ngbla3MatILi2ELi2EdEE', 'SparseMatrixSymmetricN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE', 'SparseMatrixSymmetricN5ngbla3MatILi3ELi3EdEE', 'SparseMatrixSymmetricNSt3__17complexIdEE', 'SparseMatrixSymmetricd', 'SparseMatrixVariableBlocks', 'SparseMatrixd', 'SumMatrix', 'SymmetricBlockGaussSeidelPreconditioner', 'SymmetricGaussSeidelPreconditioner', 'TransposeMatrix']
11
13
  class BaseMatrix:
14
+ @staticmethod
15
+ def _pybind11_conduit_v1_(*args, **kwargs):
16
+ ...
12
17
  def AsVector(self) -> BaseVector:
13
18
  """
14
19
  Interprets the matrix values as a vector
@@ -50,25 +55,25 @@ class BaseMatrix:
50
55
  def Mult(self, x: BaseVector, y: BaseVector) -> None:
51
56
  ...
52
57
  @typing.overload
53
- def MultAdd(self, value: float, x: BaseVector, y: BaseVector) -> None:
58
+ def MultAdd(self, value: typing.SupportsFloat, x: BaseVector, y: BaseVector) -> None:
54
59
  ...
55
60
  @typing.overload
56
61
  def MultAdd(self, value: complex, x: BaseVector, y: BaseVector) -> None:
57
62
  ...
58
63
  @typing.overload
59
- def MultScale(self, value: float, x: BaseVector, y: BaseVector) -> None:
64
+ def MultScale(self, value: typing.SupportsFloat, x: BaseVector, y: BaseVector) -> None:
60
65
  ...
61
66
  @typing.overload
62
67
  def MultScale(self, value: complex, x: BaseVector, y: BaseVector) -> None:
63
68
  ...
64
69
  @typing.overload
65
- def MultTrans(self, value: float, x: BaseVector, y: BaseVector) -> None:
70
+ def MultTrans(self, value: typing.SupportsFloat, x: BaseVector, y: BaseVector) -> None:
66
71
  ...
67
72
  @typing.overload
68
73
  def MultTrans(self, value: complex, x: BaseVector, y: BaseVector) -> None:
69
74
  ...
70
75
  @typing.overload
71
- def MultTransAdd(self, value: float, x: BaseVector, y: BaseVector) -> None:
76
+ def MultTransAdd(self, value: typing.SupportsFloat, x: BaseVector, y: BaseVector) -> None:
72
77
  ...
73
78
  @typing.overload
74
79
  def MultTransAdd(self, value: complex, x: BaseVector, y: BaseVector) -> None:
@@ -108,10 +113,10 @@ class BaseMatrix:
108
113
  ...
109
114
  def __neg__(self) -> BaseMatrix:
110
115
  ...
111
- def __radd__(self, arg0: int) -> BaseMatrix:
116
+ def __radd__(self, arg0: typing.SupportsInt) -> BaseMatrix:
112
117
  ...
113
118
  @typing.overload
114
- def __rmul__(self, value: float) -> BaseMatrix:
119
+ def __rmul__(self, value: typing.SupportsFloat) -> BaseMatrix:
115
120
  ...
116
121
  @typing.overload
117
122
  def __rmul__(self, value: complex) -> BaseMatrix:
@@ -120,7 +125,7 @@ class BaseMatrix:
120
125
  ...
121
126
  def __sub__(self, mat: BaseMatrix) -> BaseMatrix:
122
127
  ...
123
- def __timing__(self, runs: int = 10) -> float:
128
+ def __timing__(self, runs: typing.SupportsInt = 10) -> float:
124
129
  ...
125
130
  def matvec(self, arg0: BaseVector) -> BaseVector:
126
131
  ...
@@ -170,13 +175,19 @@ class BaseSparseMatrix(BaseMatrix):
170
175
  """
171
176
  sparse matrix of any type
172
177
  """
178
+ @staticmethod
179
+ def _pybind11_conduit_v1_(*args, **kwargs):
180
+ ...
173
181
  def CreateBlockSmoother(self, blocks: typing.Any, parallel: bool = False, GS: bool = False) -> typing.Any:
174
182
  ...
175
183
  def CreateSmoother(self, freedofs: pyngcore.pyngcore.BitArray = None, GS: bool = False) -> typing.Any:
176
184
  ...
177
- def DeleteZeroElements(self, arg0: float) -> BaseMatrix:
185
+ def DeleteZeroElements(self, arg0: typing.SupportsFloat) -> BaseMatrix:
178
186
  ...
179
187
  class BaseVector:
188
+ @staticmethod
189
+ def _pybind11_conduit_v1_(*args, **kwargs):
190
+ ...
180
191
  def Add(self, vec: BaseVector, value: typing.Any) -> None:
181
192
  ...
182
193
  def Assign(self, vec: BaseVector, value: typing.Any) -> None:
@@ -193,7 +204,7 @@ class BaseVector:
193
204
  """
194
205
  creates a new vector of same type, contents is undefined if copy is false
195
206
  """
196
- def CreateVectors(self, num: int) -> list[BaseVector]:
207
+ def CreateVectors(self, num: typing.SupportsInt) -> list[BaseVector]:
197
208
  """
198
209
  creates a num new vector of same type, contents is undefined
199
210
  """
@@ -213,15 +224,15 @@ class BaseVector:
213
224
  """
214
225
  Calculate Norm
215
226
  """
216
- def Range(self, from: int, to: int) -> BaseVector:
227
+ def Range(self, from: typing.SupportsInt, to: typing.SupportsInt) -> BaseVector:
217
228
  """
218
229
  Return values from given range
219
230
  """
220
- def Reshape(self, width: int) -> ngsolve.bla.FlatMatrixD:
231
+ def Reshape(self, width: typing.SupportsInt) -> ngsolve.bla.FlatMatrixD:
221
232
  ...
222
233
  def SetParallelStatus(self, stat: PARALLEL_STATUS) -> None:
223
234
  ...
224
- def SetRandom(self, seed: int | None = None) -> None:
235
+ def SetRandom(self, seed: typing.SupportsInt | None = None) -> None:
225
236
  ...
226
237
  def __add__(self, arg0: ...) -> ...:
227
238
  ...
@@ -230,7 +241,7 @@ class BaseVector:
230
241
  Return a buffer object that exposes the underlying memory of the object.
231
242
  """
232
243
  @typing.overload
233
- def __getitem__(self, ind: int) -> typing.Any:
244
+ def __getitem__(self, ind: typing.SupportsInt) -> typing.Any:
234
245
  """
235
246
  Return value at given position
236
247
  """
@@ -254,19 +265,19 @@ class BaseVector:
254
265
  def __iadd__(self, arg0: ...) -> BaseVector:
255
266
  ...
256
267
  @typing.overload
257
- def __imul__(self, value: float) -> BaseVector:
268
+ def __imul__(self, value: typing.SupportsFloat) -> BaseVector:
258
269
  ...
259
270
  @typing.overload
260
271
  def __imul__(self, value: complex) -> BaseVector:
261
272
  ...
262
273
  @typing.overload
263
- def __init__(self, size: int, complex: bool = False, entrysize: int = 1) -> None:
274
+ def __init__(self, size: typing.SupportsInt, complex: bool = False, entrysize: typing.SupportsInt = 1) -> None:
264
275
  ...
265
276
  @typing.overload
266
277
  def __init__(self, arg0: ...) -> None:
267
278
  ...
268
279
  @typing.overload
269
- def __init__(self, arg0: numpy.ndarray[numpy.float64]) -> None:
280
+ def __init__(self, arg0: typing.Annotated[numpy.typing.ArrayLike, numpy.float64]) -> None:
270
281
  ...
271
282
  @typing.overload
272
283
  def __isub__(self, vec: BaseVector) -> BaseVector:
@@ -275,7 +286,7 @@ class BaseVector:
275
286
  def __isub__(self, arg0: ...) -> BaseVector:
276
287
  ...
277
288
  @typing.overload
278
- def __itruediv__(self, value: float) -> BaseVector:
289
+ def __itruediv__(self, value: typing.SupportsFloat) -> BaseVector:
279
290
  ...
280
291
  @typing.overload
281
292
  def __itruediv__(self, value: complex) -> BaseVector:
@@ -291,23 +302,23 @@ class BaseVector:
291
302
  def __repr__(self) -> str:
292
303
  ...
293
304
  @typing.overload
294
- def __rmul__(self, arg0: float) -> ...:
305
+ def __rmul__(self, arg0: typing.SupportsFloat) -> ...:
295
306
  ...
296
307
  @typing.overload
297
308
  def __rmul__(self, arg0: complex) -> ...:
298
309
  ...
299
310
  @typing.overload
300
- def __setitem__(self, ind: int, value: float) -> None:
311
+ def __setitem__(self, ind: typing.SupportsInt, value: typing.SupportsFloat) -> None:
301
312
  """
302
313
  Set value at given position
303
314
  """
304
315
  @typing.overload
305
- def __setitem__(self, ind: int, value: complex) -> None:
316
+ def __setitem__(self, ind: typing.SupportsInt, value: complex) -> None:
306
317
  """
307
318
  Set value at given position
308
319
  """
309
320
  @typing.overload
310
- def __setitem__(self, inds: slice, value: float) -> None:
321
+ def __setitem__(self, inds: slice, value: typing.SupportsFloat) -> None:
311
322
  """
312
323
  Set value at given positions
313
324
  """
@@ -326,7 +337,7 @@ class BaseVector:
326
337
  def __setitem__(self, inds: DofRange, vec: ...) -> None:
327
338
  ...
328
339
  @typing.overload
329
- def __setitem__(self, range: ngsolve.ngstd.IntRange, value: float) -> None:
340
+ def __setitem__(self, range: ngsolve.ngstd.IntRange, value: typing.SupportsFloat) -> None:
330
341
  """
331
342
  Set value for range of indices
332
343
  """
@@ -339,16 +350,16 @@ class BaseVector:
339
350
  def __setitem__(self, range: ngsolve.ngstd.IntRange, vec: BaseVector) -> None:
340
351
  ...
341
352
  @typing.overload
342
- def __setitem__(self, ind: int, vec: ngsolve.bla.FlatVectorD) -> None:
353
+ def __setitem__(self, ind: typing.SupportsInt, vec: ngsolve.bla.FlatVectorD) -> None:
343
354
  ...
344
355
  @typing.overload
345
- def __setitem__(self, ind: int, vec: ngsolve.bla.FlatVectorC) -> None:
356
+ def __setitem__(self, ind: typing.SupportsInt, vec: ngsolve.bla.FlatVectorC) -> None:
346
357
  ...
347
358
  @typing.overload
348
359
  def __setitem__(self, arg0: pyngcore.pyngcore.BitArray, arg1: BaseVector) -> None:
349
360
  ...
350
361
  @typing.overload
351
- def __setitem__(self, arg0: pyngcore.pyngcore.BitArray, arg1: float) -> None:
362
+ def __setitem__(self, arg0: pyngcore.pyngcore.BitArray, arg1: typing.SupportsFloat) -> None:
352
363
  ...
353
364
  def __setstate__(self, arg0: tuple) -> None:
354
365
  ...
@@ -375,11 +386,14 @@ class BaseVector:
375
386
  def size(self) -> int:
376
387
  ...
377
388
  class BlockMatrix(BaseMatrix):
389
+ @staticmethod
390
+ def _pybind11_conduit_v1_(*args, **kwargs):
391
+ ...
378
392
  def __getitem__(self, inds: tuple) -> BaseMatrix:
379
393
  """
380
394
  Return value at given position
381
395
  """
382
- def __init__(self, mats: list[list[BaseMatrix]]) -> None:
396
+ def __init__(self, mats: collections.abc.Sequence[collections.abc.Sequence[BaseMatrix]]) -> None:
383
397
  """
384
398
  Make BlockMatrix with given array of matrices
385
399
  """
@@ -393,20 +407,26 @@ class BlockSmoother(BaseMatrix):
393
407
  """
394
408
  block Jacobi and block Gauss-Seidel smoothing
395
409
  """
396
- def Smooth(self, x: BaseVector, b: BaseVector, steps: int = 1) -> None:
410
+ @staticmethod
411
+ def _pybind11_conduit_v1_(*args, **kwargs):
412
+ ...
413
+ def Smooth(self, x: BaseVector, b: BaseVector, steps: typing.SupportsInt = 1) -> None:
397
414
  """
398
415
  performs steps block-Gauss-Seidel iterations for the linear system A x = b
399
416
  """
400
- def SmoothBack(self, x: BaseVector, b: BaseVector, steps: int = 1) -> None:
417
+ def SmoothBack(self, x: BaseVector, b: BaseVector, steps: typing.SupportsInt = 1) -> None:
401
418
  """
402
419
  performs steps block-Gauss-Seidel iterations for the linear system A x = b in reverse order
403
420
  """
404
421
  class BlockVector(BaseVector):
405
- def __getitem__(self, ind: int) -> BaseVector:
422
+ @staticmethod
423
+ def _pybind11_conduit_v1_(*args, **kwargs):
424
+ ...
425
+ def __getitem__(self, ind: typing.SupportsInt) -> BaseVector:
406
426
  """
407
427
  Return block at given position
408
428
  """
409
- def __init__(self, vecs: list[BaseVector]) -> None:
429
+ def __init__(self, vecs: collections.abc.Sequence[BaseVector]) -> None:
410
430
  """
411
431
  Makes BlockVector by given array of vectors
412
432
  """
@@ -416,7 +436,10 @@ class BlockVector(BaseVector):
416
436
  number of blocks in BlockVector
417
437
  """
418
438
  class ConstEBEMatrix(BaseMatrix):
419
- def __init__(self, h: int, w: int, matrix: ngsolve.bla.MatrixD, col_ind: list, row_ind: list) -> None:
439
+ @staticmethod
440
+ def _pybind11_conduit_v1_(*args, **kwargs):
441
+ ...
442
+ def __init__(self, h: typing.SupportsInt, w: typing.SupportsInt, matrix: ngsolve.bla.MatrixD, col_ind: list, row_ind: list) -> None:
420
443
  ...
421
444
  @property
422
445
  def col_ind(self) -> ...:
@@ -428,14 +451,25 @@ class ConstEBEMatrix(BaseMatrix):
428
451
  def row_ind(self) -> ...:
429
452
  ...
430
453
  class CumulationOperator(BaseMatrix):
454
+ @staticmethod
455
+ def _pybind11_conduit_v1_(*args, **kwargs):
456
+ ...
431
457
  def __init__(self, arg0: ParallelDofs) -> None:
432
458
  ...
433
459
  class DiagonalMatrix(BaseMatrix):
460
+ @staticmethod
461
+ def _pybind11_conduit_v1_(*args, **kwargs):
462
+ ...
434
463
  def __init__(self, arg0: BaseVector) -> None:
435
464
  ...
436
465
  class DofRange(ngsolve.ngstd.IntRange):
437
- pass
466
+ @staticmethod
467
+ def _pybind11_conduit_v1_(*args, **kwargs):
468
+ ...
438
469
  class DynamicVectorExpression:
470
+ @staticmethod
471
+ def _pybind11_conduit_v1_(*args, **kwargs):
472
+ ...
439
473
  def CreateVector(self) -> BaseVector:
440
474
  """
441
475
  create vector
@@ -454,15 +488,15 @@ class DynamicVectorExpression:
454
488
  def __init__(self, arg0: BaseVector) -> None:
455
489
  ...
456
490
  @typing.overload
457
- def __init__(self, arg0: numpy.ndarray[numpy.float64]) -> None:
491
+ def __init__(self, arg0: typing.Annotated[numpy.typing.ArrayLike, numpy.float64]) -> None:
458
492
  ...
459
493
  @typing.overload
460
- def __init__(self, arg0: numpy.ndarray[numpy.complex128]) -> None:
494
+ def __init__(self, arg0: typing.Annotated[numpy.typing.ArrayLike, numpy.complex128]) -> None:
461
495
  ...
462
496
  def __neg__(self) -> DynamicVectorExpression:
463
497
  ...
464
498
  @typing.overload
465
- def __rmul__(self, arg0: float) -> DynamicVectorExpression:
499
+ def __rmul__(self, arg0: typing.SupportsFloat) -> DynamicVectorExpression:
466
500
  ...
467
501
  @typing.overload
468
502
  def __rmul__(self, arg0: complex) -> DynamicVectorExpression:
@@ -470,19 +504,28 @@ class DynamicVectorExpression:
470
504
  def __sub__(self, arg0: DynamicVectorExpression) -> DynamicVectorExpression:
471
505
  ...
472
506
  class Embedding(BaseMatrix):
473
- def __init__(self, height: int, range: ngsolve.ngstd.IntRange, complex: bool = False) -> None:
507
+ @staticmethod
508
+ def _pybind11_conduit_v1_(*args, **kwargs):
509
+ ...
510
+ def __init__(self, height: typing.SupportsInt, range: ngsolve.ngstd.IntRange, complex: bool = False) -> None:
474
511
  """
475
512
  Linear operator embedding a shorter vector into a longer vector
476
513
  """
477
514
  def __matmul__(self, mat: BaseMatrix) -> BaseMatrix:
478
515
  ...
479
516
  class EmbeddingTranspose(BaseMatrix):
517
+ @staticmethod
518
+ def _pybind11_conduit_v1_(*args, **kwargs):
519
+ ...
480
520
  def __rmatmul__(self, mat: BaseMatrix) -> BaseMatrix:
481
521
  ...
482
522
  class FETI_Jump(BaseMatrix):
483
523
  """
484
524
  B-matrix of the FETI-system
485
525
  """
526
+ @staticmethod
527
+ def _pybind11_conduit_v1_(*args, **kwargs):
528
+ ...
486
529
  @typing.overload
487
530
  def __init__(self, pardofs: ParallelDofs) -> None:
488
531
  ...
@@ -496,34 +539,56 @@ class FETI_Jump(BaseMatrix):
496
539
  def row_pardofs(self) -> ParallelDofs:
497
540
  ...
498
541
  class IdentityMatrix(BaseMatrix):
542
+ @staticmethod
543
+ def _pybind11_conduit_v1_(*args, **kwargs):
544
+ ...
499
545
  @typing.overload
500
546
  def __init__(self) -> None:
501
547
  ...
502
548
  @typing.overload
503
- def __init__(self, size: int, complex: bool = False) -> None:
549
+ def __init__(self, size: typing.SupportsInt, complex: bool = False) -> None:
504
550
  ...
505
551
  class KrylovSpaceSolver(BaseMatrix):
506
- maxsteps: int
507
- tol: float
552
+ @staticmethod
553
+ def _pybind11_conduit_v1_(*args, **kwargs):
554
+ ...
508
555
  def GetSteps(self) -> int:
509
556
  ...
510
- def SetAbsolutePrecision(self, arg0: float) -> None:
557
+ def SetAbsolutePrecision(self, arg0: typing.SupportsFloat) -> None:
558
+ ...
559
+ @property
560
+ def maxsteps(self) -> int:
561
+ ...
562
+ @maxsteps.setter
563
+ def maxsteps(self, arg1: typing.SupportsInt) -> None:
564
+ ...
565
+ @property
566
+ def tol(self) -> float:
567
+ ...
568
+ @tol.setter
569
+ def tol(self, arg1: typing.SupportsFloat) -> None:
511
570
  ...
512
571
  class LoggingMatrix(BaseMatrix):
572
+ @staticmethod
573
+ def _pybind11_conduit_v1_(*args, **kwargs):
574
+ ...
513
575
  def __init__(self, mat: BaseMatrix, label: str, logfile: str = 'stdout', comm: pyngcore.pyngcore.MPI_Comm | None = None) -> None:
514
576
  ...
515
577
  class MultiVector(MultiVectorExpr):
578
+ @staticmethod
579
+ def _pybind11_conduit_v1_(*args, **kwargs):
580
+ ...
516
581
  def Append(self, arg0: BaseVector) -> None:
517
582
  ...
518
- def AppendOrthogonalize(self, vec: BaseVector, ipmat: ... = None, parallel: bool = True, iterations: int = 2) -> typing.Any:
583
+ def AppendOrthogonalize(self, vec: BaseVector, ipmat: ... = None, parallel: bool = True, iterations: typing.SupportsInt = 2) -> typing.Any:
519
584
  """
520
585
  assumes that existing vectors are orthogonal, and orthogonalize new vector against existing vectors
521
586
  """
522
- def Expand(self, arg0: int) -> None:
587
+ def Expand(self, arg0: typing.SupportsInt) -> None:
523
588
  """
524
589
  deprecated, use Extend instead
525
590
  """
526
- def Extend(self, arg0: int) -> None:
591
+ def Extend(self, arg0: typing.SupportsInt) -> None:
527
592
  ...
528
593
  @typing.overload
529
594
  def InnerProduct(self, other: MultiVector, conjugate: bool = True) -> typing.Any:
@@ -539,13 +604,13 @@ class MultiVector(MultiVectorExpr):
539
604
  Orthogonalize vectors by modified Gram-Schmidt, returns R-factor of QR decomposition (only ipmat version, for the moment)
540
605
  """
541
606
  @typing.overload
542
- def Replace(self, ind: int, v2: BaseVector) -> None:
607
+ def Replace(self, ind: typing.SupportsInt, v2: BaseVector) -> None:
543
608
  ...
544
609
  @typing.overload
545
- def Replace(self, inds: list[int], mv2: MultiVector) -> None:
610
+ def Replace(self, inds: collections.abc.Sequence[typing.SupportsInt], mv2: MultiVector) -> None:
546
611
  ...
547
612
  @typing.overload
548
- def __getitem__(self, arg0: int) -> BaseVector:
613
+ def __getitem__(self, arg0: typing.SupportsInt) -> BaseVector:
549
614
  ...
550
615
  @typing.overload
551
616
  def __getitem__(self, arg0: slice) -> MultiVector:
@@ -559,10 +624,10 @@ class MultiVector(MultiVectorExpr):
559
624
  def __getstate__(self) -> tuple:
560
625
  ...
561
626
  @typing.overload
562
- def __init__(self, arg0: BaseVector, arg1: int) -> None:
627
+ def __init__(self, arg0: BaseVector, arg1: typing.SupportsInt) -> None:
563
628
  ...
564
629
  @typing.overload
565
- def __init__(self, arg0: int, arg1: int, arg2: bool) -> None:
630
+ def __init__(self, arg0: typing.SupportsInt, arg1: typing.SupportsInt, arg2: bool) -> None:
566
631
  ...
567
632
  def __len__(self) -> int:
568
633
  ...
@@ -579,13 +644,13 @@ class MultiVector(MultiVectorExpr):
579
644
  def __mul__(self, arg0: ngsolve.bla.MatrixC) -> MultiVectorExpr:
580
645
  ...
581
646
  @typing.overload
582
- def __setitem__(self, arg0: int, arg1: ...) -> None:
647
+ def __setitem__(self, arg0: typing.SupportsInt, arg1: ...) -> None:
583
648
  ...
584
649
  @typing.overload
585
- def __setitem__(self, arg0: int, arg1: float) -> None:
650
+ def __setitem__(self, arg0: typing.SupportsInt, arg1: typing.SupportsFloat) -> None:
586
651
  ...
587
652
  @typing.overload
588
- def __setitem__(self, arg0: int, arg1: complex) -> None:
653
+ def __setitem__(self, arg0: typing.SupportsInt, arg1: complex) -> None:
589
654
  ...
590
655
  @typing.overload
591
656
  def __setitem__(self, arg0: slice, arg1: MultiVector) -> None:
@@ -594,10 +659,10 @@ class MultiVector(MultiVectorExpr):
594
659
  def __setitem__(self, arg0: slice, arg1: MultiVectorExpr) -> None:
595
660
  ...
596
661
  @typing.overload
597
- def __setitem__(self, arg0: list[int], arg1: MultiVector) -> None:
662
+ def __setitem__(self, arg0: collections.abc.Sequence[typing.SupportsInt], arg1: MultiVector) -> None:
598
663
  ...
599
664
  @typing.overload
600
- def __setitem__(self, arg0: list[int], arg1: MultiVectorExpr) -> None:
665
+ def __setitem__(self, arg0: collections.abc.Sequence[typing.SupportsInt], arg1: MultiVectorExpr) -> None:
601
666
  ...
602
667
  def __setstate__(self, arg0: tuple) -> None:
603
668
  ...
@@ -608,6 +673,9 @@ class MultiVector(MultiVectorExpr):
608
673
  def data(self, arg1: MultiVectorExpr) -> None:
609
674
  ...
610
675
  class MultiVectorExpr:
676
+ @staticmethod
677
+ def _pybind11_conduit_v1_(*args, **kwargs):
678
+ ...
611
679
  def Evaluate(self) -> ...:
612
680
  ...
613
681
  def InnerProduct(self, arg0: typing.Any) -> typing.Any:
@@ -623,7 +691,7 @@ class MultiVectorExpr:
623
691
  def __neg__(self) -> MultiVectorExpr:
624
692
  ...
625
693
  @typing.overload
626
- def __rmul__(self, arg0: float) -> MultiVectorExpr:
694
+ def __rmul__(self, arg0: typing.SupportsFloat) -> MultiVectorExpr:
627
695
  ...
628
696
  @typing.overload
629
697
  def __rmul__(self, arg0: complex) -> MultiVectorExpr:
@@ -646,6 +714,9 @@ class PARALLEL_STATUS:
646
714
  DISTRIBUTED: typing.ClassVar[PARALLEL_STATUS] # value = <PARALLEL_STATUS.DISTRIBUTED: 0>
647
715
  NOT_PARALLEL: typing.ClassVar[PARALLEL_STATUS] # value = <PARALLEL_STATUS.NOT_PARALLEL: 2>
648
716
  __members__: typing.ClassVar[dict[str, PARALLEL_STATUS]] # value = {'DISTRIBUTED': <PARALLEL_STATUS.DISTRIBUTED: 0>, 'CUMULATED': <PARALLEL_STATUS.CUMULATED: 1>, 'NOT_PARALLEL': <PARALLEL_STATUS.NOT_PARALLEL: 2>}
717
+ @staticmethod
718
+ def _pybind11_conduit_v1_(*args, **kwargs):
719
+ ...
649
720
  def __eq__(self, other: typing.Any) -> bool:
650
721
  ...
651
722
  def __getstate__(self) -> int:
@@ -654,7 +725,7 @@ class PARALLEL_STATUS:
654
725
  ...
655
726
  def __index__(self) -> int:
656
727
  ...
657
- def __init__(self, value: int) -> None:
728
+ def __init__(self, value: typing.SupportsInt) -> None:
658
729
  ...
659
730
  def __int__(self) -> int:
660
731
  ...
@@ -662,7 +733,7 @@ class PARALLEL_STATUS:
662
733
  ...
663
734
  def __repr__(self) -> str:
664
735
  ...
665
- def __setstate__(self, state: int) -> None:
736
+ def __setstate__(self, state: typing.SupportsInt) -> None:
666
737
  ...
667
738
  def __str__(self) -> str:
668
739
  ...
@@ -673,7 +744,10 @@ class PARALLEL_STATUS:
673
744
  def value(self) -> int:
674
745
  ...
675
746
  class ParallelDofs:
676
- def Dof2Proc(self, dof: int) -> pyngcore.pyngcore.FlatArray_I_S:
747
+ @staticmethod
748
+ def _pybind11_conduit_v1_(*args, **kwargs):
749
+ ...
750
+ def Dof2Proc(self, dof: typing.SupportsInt) -> pyngcore.pyngcore.FlatArray_I_S:
677
751
  ...
678
752
  def EnumerateGlobally(self, freedofs: pyngcore.pyngcore.BitArray = None) -> tuple[typing.Any, typing.Any]:
679
753
  ...
@@ -681,7 +755,7 @@ class ParallelDofs:
681
755
  ...
682
756
  def MasterDofs(self) -> pyngcore.pyngcore.BitArray:
683
757
  ...
684
- def Proc2Dof(self, proc: int) -> pyngcore.pyngcore.FlatArray_I_S:
758
+ def Proc2Dof(self, proc: typing.SupportsInt) -> pyngcore.pyngcore.FlatArray_I_S:
685
759
  ...
686
760
  def SubSet(self, dofs: pyngcore.pyngcore.BitArray) -> ParallelDofs:
687
761
  ...
@@ -726,6 +800,9 @@ class ParallelMatrix(BaseMatrix):
726
800
  D2C: typing.ClassVar[ParallelMatrix.PARALLEL_OP] # value = <PARALLEL_OP.D2C: 1>
727
801
  D2D: typing.ClassVar[ParallelMatrix.PARALLEL_OP] # value = <PARALLEL_OP.D2D: 0>
728
802
  __members__: typing.ClassVar[dict[str, ParallelMatrix.PARALLEL_OP]] # value = {'C2C': <PARALLEL_OP.C2C: 3>, 'C2D': <PARALLEL_OP.C2D: 2>, 'D2C': <PARALLEL_OP.D2C: 1>, 'D2D': <PARALLEL_OP.D2D: 0>}
803
+ @staticmethod
804
+ def _pybind11_conduit_v1_(*args, **kwargs):
805
+ ...
729
806
  def __eq__(self, other: typing.Any) -> bool:
730
807
  ...
731
808
  def __getstate__(self) -> int:
@@ -734,7 +811,7 @@ class ParallelMatrix(BaseMatrix):
734
811
  ...
735
812
  def __index__(self) -> int:
736
813
  ...
737
- def __init__(self, value: int) -> None:
814
+ def __init__(self, value: typing.SupportsInt) -> None:
738
815
  ...
739
816
  def __int__(self) -> int:
740
817
  ...
@@ -742,7 +819,7 @@ class ParallelMatrix(BaseMatrix):
742
819
  ...
743
820
  def __repr__(self) -> str:
744
821
  ...
745
- def __setstate__(self, state: int) -> None:
822
+ def __setstate__(self, state: typing.SupportsInt) -> None:
746
823
  ...
747
824
  def __str__(self) -> str:
748
825
  ...
@@ -756,6 +833,9 @@ class ParallelMatrix(BaseMatrix):
756
833
  C2D: typing.ClassVar[ParallelMatrix.PARALLEL_OP] # value = <PARALLEL_OP.C2D: 2>
757
834
  D2C: typing.ClassVar[ParallelMatrix.PARALLEL_OP] # value = <PARALLEL_OP.D2C: 1>
758
835
  D2D: typing.ClassVar[ParallelMatrix.PARALLEL_OP] # value = <PARALLEL_OP.D2D: 0>
836
+ @staticmethod
837
+ def _pybind11_conduit_v1_(*args, **kwargs):
838
+ ...
759
839
  @typing.overload
760
840
  def __init__(self, mat: BaseMatrix, pardofs: ParallelDofs, op: ParallelMatrix.PARALLEL_OP = ...) -> None:
761
841
  ...
@@ -775,9 +855,15 @@ class ParallelMatrix(BaseMatrix):
775
855
  def row_pardofs(self) -> ParallelDofs:
776
856
  ...
777
857
  class PermutationMatrix(BaseMatrix):
778
- def __init__(self, w: int, ind: list[int]) -> None:
858
+ @staticmethod
859
+ def _pybind11_conduit_v1_(*args, **kwargs):
860
+ ...
861
+ def __init__(self, w: typing.SupportsInt, ind: collections.abc.Sequence[typing.SupportsInt]) -> None:
779
862
  ...
780
863
  class ProductMatrix(BaseMatrix):
864
+ @staticmethod
865
+ def _pybind11_conduit_v1_(*args, **kwargs):
866
+ ...
781
867
  @property
782
868
  def matA(self) -> BaseMatrix:
783
869
  ...
@@ -785,6 +871,9 @@ class ProductMatrix(BaseMatrix):
785
871
  def matB(self) -> BaseMatrix:
786
872
  ...
787
873
  class Projector(BaseMatrix):
874
+ @staticmethod
875
+ def _pybind11_conduit_v1_(*args, **kwargs):
876
+ ...
788
877
  @typing.overload
789
878
  def Project(self, arg0: BaseVector) -> BaseVector:
790
879
  """
@@ -800,21 +889,37 @@ class Projector(BaseMatrix):
800
889
  Linear operator projecting to true/false bits of BitArray mask, depending on argument range
801
890
  """
802
891
  class QMRSolverC(BaseMatrix):
803
- pass
892
+ @staticmethod
893
+ def _pybind11_conduit_v1_(*args, **kwargs):
894
+ ...
804
895
  class QMRSolverD(BaseMatrix):
805
- pass
896
+ @staticmethod
897
+ def _pybind11_conduit_v1_(*args, **kwargs):
898
+ ...
806
899
  class Real2ComplexMatrix(BaseMatrix):
900
+ @staticmethod
901
+ def _pybind11_conduit_v1_(*args, **kwargs):
902
+ ...
807
903
  def __init__(self, arg0: BaseMatrix) -> None:
808
904
  ...
809
905
  class S_BaseMatrixC(BaseMatrix):
810
906
  """
811
907
  base sparse matrix
812
908
  """
909
+ @staticmethod
910
+ def _pybind11_conduit_v1_(*args, **kwargs):
911
+ ...
813
912
  class S_BaseMatrixD(BaseMatrix):
814
913
  """
815
914
  base sparse matrix
816
915
  """
916
+ @staticmethod
917
+ def _pybind11_conduit_v1_(*args, **kwargs):
918
+ ...
817
919
  class ScaleMatrix(BaseMatrix):
920
+ @staticmethod
921
+ def _pybind11_conduit_v1_(*args, **kwargs):
922
+ ...
818
923
  @property
819
924
  def mat(self) -> BaseMatrix:
820
925
  ...
@@ -822,30 +927,59 @@ class Smoother(BaseMatrix):
822
927
  """
823
928
  Jacobi and Gauss-Seidel smoothing
824
929
  """
825
- def Smooth(self, x: BaseVector, b: BaseVector, steps: int = 1) -> None:
930
+ @staticmethod
931
+ def _pybind11_conduit_v1_(*args, **kwargs):
932
+ ...
933
+ def Smooth(self, x: BaseVector, b: BaseVector, steps: typing.SupportsInt = 1) -> None:
826
934
  """
827
935
  performs one step Gauss-Seidel iteration for the linear system A x = b
828
936
  """
829
- def SmoothBack(self, x: BaseVector, b: BaseVector, steps: int = 1) -> None:
937
+ def SmoothBack(self, x: BaseVector, b: BaseVector, steps: typing.SupportsInt = 1) -> None:
830
938
  """
831
939
  performs one step Gauss-Seidel iteration for the linear system A x = b in reverse order
832
940
  """
833
941
  class SparseCholesky_c(SparseFactorization):
942
+ @staticmethod
943
+ def _pybind11_conduit_v1_(*args, **kwargs):
944
+ ...
834
945
  def __getstate__(self) -> tuple:
835
946
  ...
836
947
  def __setstate__(self, arg0: tuple) -> None:
837
948
  ...
838
949
  class SparseCholesky_d(SparseFactorization):
950
+ @staticmethod
951
+ def _pybind11_conduit_v1_(*args, **kwargs):
952
+ ...
839
953
  def __getstate__(self) -> tuple:
840
954
  ...
841
955
  def __setstate__(self, arg0: tuple) -> None:
842
956
  ...
843
957
  class SparseFactorization(BaseMatrix):
958
+ @staticmethod
959
+ def _pybind11_conduit_v1_(*args, **kwargs):
960
+ ...
844
961
  def Smooth(self, arg0: BaseVector, arg1: BaseVector) -> None:
845
962
  """
846
963
  perform smoothing step (needs non-symmetric storage so symmetric sparse matrix)
847
964
  """
965
+ class SparseFactorizationInterface(BaseMatrix):
966
+ @staticmethod
967
+ def _pybind11_conduit_v1_(*args, **kwargs):
968
+ ...
969
+ def Analyze(self) -> None:
970
+ ...
971
+ def Factor(self) -> None:
972
+ ...
973
+ def GetInnerMatrix(self) -> BaseSparseMatrix:
974
+ ...
975
+ def Update(self) -> None:
976
+ ...
977
+ def __init__(self, mat: SparseMatrixd, freedofs: pyngcore.pyngcore.BitArray = None) -> None:
978
+ ...
848
979
  class SparseMatrixDynamic(BaseMatrix):
980
+ @staticmethod
981
+ def _pybind11_conduit_v1_(*args, **kwargs):
982
+ ...
849
983
  def __init__(self, arg0: BaseMatrix) -> None:
850
984
  ...
851
985
  class SparseMatrixN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE(BaseSparseMatrix):
@@ -856,7 +990,10 @@ class SparseMatrixN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE(BaseSparseMatrix):
856
990
  def CreateFromCOO(*args, **kwargs) -> ...:
857
991
  ...
858
992
  @staticmethod
859
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
993
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
994
+ ...
995
+ @staticmethod
996
+ def _pybind11_conduit_v1_(*args, **kwargs):
860
997
  ...
861
998
  def COO(self) -> typing.Any:
862
999
  ...
@@ -894,7 +1031,10 @@ class SparseMatrixN5ngbla3MatILi2ELi2EdEE(BaseSparseMatrix):
894
1031
  def CreateFromCOO(*args, **kwargs) -> ...:
895
1032
  ...
896
1033
  @staticmethod
897
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
1034
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
1035
+ ...
1036
+ @staticmethod
1037
+ def _pybind11_conduit_v1_(*args, **kwargs):
898
1038
  ...
899
1039
  def COO(self) -> typing.Any:
900
1040
  ...
@@ -932,7 +1072,10 @@ class SparseMatrixN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE(BaseSparseMatrix):
932
1072
  def CreateFromCOO(*args, **kwargs) -> ...:
933
1073
  ...
934
1074
  @staticmethod
935
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
1075
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
1076
+ ...
1077
+ @staticmethod
1078
+ def _pybind11_conduit_v1_(*args, **kwargs):
936
1079
  ...
937
1080
  def COO(self) -> typing.Any:
938
1081
  ...
@@ -970,7 +1113,10 @@ class SparseMatrixN5ngbla3MatILi3ELi3EdEE(BaseSparseMatrix):
970
1113
  def CreateFromCOO(*args, **kwargs) -> ...:
971
1114
  ...
972
1115
  @staticmethod
973
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
1116
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
1117
+ ...
1118
+ @staticmethod
1119
+ def _pybind11_conduit_v1_(*args, **kwargs):
974
1120
  ...
975
1121
  def COO(self) -> typing.Any:
976
1122
  ...
@@ -1008,7 +1154,10 @@ class SparseMatrixNSt3__17complexIdEE(BaseSparseMatrix):
1008
1154
  def CreateFromCOO(*args, **kwargs) -> ...:
1009
1155
  ...
1010
1156
  @staticmethod
1011
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
1157
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
1158
+ ...
1159
+ @staticmethod
1160
+ def _pybind11_conduit_v1_(*args, **kwargs):
1012
1161
  ...
1013
1162
  def COO(self) -> typing.Any:
1014
1163
  ...
@@ -1039,18 +1188,33 @@ class SparseMatrixNSt3__17complexIdEE(BaseSparseMatrix):
1039
1188
  def entrysizes(self) -> tuple[int, int]:
1040
1189
  ...
1041
1190
  class SparseMatrixSymmetricN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE(SparseMatrixN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE):
1042
- pass
1191
+ @staticmethod
1192
+ def _pybind11_conduit_v1_(*args, **kwargs):
1193
+ ...
1043
1194
  class SparseMatrixSymmetricN5ngbla3MatILi2ELi2EdEE(SparseMatrixN5ngbla3MatILi2ELi2EdEE):
1044
- pass
1195
+ @staticmethod
1196
+ def _pybind11_conduit_v1_(*args, **kwargs):
1197
+ ...
1045
1198
  class SparseMatrixSymmetricN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE(SparseMatrixN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE):
1046
- pass
1199
+ @staticmethod
1200
+ def _pybind11_conduit_v1_(*args, **kwargs):
1201
+ ...
1047
1202
  class SparseMatrixSymmetricN5ngbla3MatILi3ELi3EdEE(SparseMatrixN5ngbla3MatILi3ELi3EdEE):
1048
- pass
1203
+ @staticmethod
1204
+ def _pybind11_conduit_v1_(*args, **kwargs):
1205
+ ...
1049
1206
  class SparseMatrixSymmetricNSt3__17complexIdEE(SparseMatrixNSt3__17complexIdEE):
1050
- pass
1207
+ @staticmethod
1208
+ def _pybind11_conduit_v1_(*args, **kwargs):
1209
+ ...
1051
1210
  class SparseMatrixSymmetricd(SparseMatrixd):
1052
- pass
1211
+ @staticmethod
1212
+ def _pybind11_conduit_v1_(*args, **kwargs):
1213
+ ...
1053
1214
  class SparseMatrixVariableBlocks(BaseMatrix):
1215
+ @staticmethod
1216
+ def _pybind11_conduit_v1_(*args, **kwargs):
1217
+ ...
1054
1218
  def __init__(self, arg0: BaseMatrix) -> None:
1055
1219
  ...
1056
1220
  class SparseMatrixd(BaseSparseMatrix):
@@ -1058,10 +1222,13 @@ class SparseMatrixd(BaseSparseMatrix):
1058
1222
  a sparse matrix in CSR storage
1059
1223
  """
1060
1224
  @staticmethod
1061
- def CreateFromCOO(indi: pyngcore.pyngcore.Array_I_S, indj: pyngcore.pyngcore.Array_I_S, values: pyngcore.pyngcore.Array_D_S, h: int, w: int) -> ...:
1225
+ def CreateFromCOO(indi: pyngcore.pyngcore.Array_I_S, indj: pyngcore.pyngcore.Array_I_S, values: pyngcore.pyngcore.Array_D_S, h: typing.SupportsInt, w: typing.SupportsInt) -> ...:
1062
1226
  ...
1063
1227
  @staticmethod
1064
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
1228
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
1229
+ ...
1230
+ @staticmethod
1231
+ def _pybind11_conduit_v1_(*args, **kwargs):
1065
1232
  ...
1066
1233
  def COO(self) -> typing.Any:
1067
1234
  ...
@@ -1084,7 +1251,7 @@ class SparseMatrixd(BaseSparseMatrix):
1084
1251
  @typing.overload
1085
1252
  def __matmul__(self, mat: BaseMatrix) -> BaseMatrix:
1086
1253
  ...
1087
- def __setitem__(self, pos: tuple, value: float) -> None:
1254
+ def __setitem__(self, pos: tuple, value: typing.SupportsFloat) -> None:
1088
1255
  """
1089
1256
  Set value at given position
1090
1257
  """
@@ -1092,6 +1259,9 @@ class SparseMatrixd(BaseSparseMatrix):
1092
1259
  def entrysizes(self) -> tuple[int, int]:
1093
1260
  ...
1094
1261
  class SumMatrix(BaseMatrix):
1262
+ @staticmethod
1263
+ def _pybind11_conduit_v1_(*args, **kwargs):
1264
+ ...
1095
1265
  @property
1096
1266
  def matA(self) -> BaseMatrix:
1097
1267
  ...
@@ -1099,10 +1269,17 @@ class SumMatrix(BaseMatrix):
1099
1269
  def matB(self) -> BaseMatrix:
1100
1270
  ...
1101
1271
  class SymmetricBlockGaussSeidelPreconditioner(BaseMatrix):
1102
- pass
1272
+ @staticmethod
1273
+ def _pybind11_conduit_v1_(*args, **kwargs):
1274
+ ...
1103
1275
  class SymmetricGaussSeidelPreconditioner(BaseMatrix):
1104
- pass
1276
+ @staticmethod
1277
+ def _pybind11_conduit_v1_(*args, **kwargs):
1278
+ ...
1105
1279
  class TransposeMatrix(BaseMatrix):
1280
+ @staticmethod
1281
+ def _pybind11_conduit_v1_(*args, **kwargs):
1282
+ ...
1106
1283
  @property
1107
1284
  def mat(self) -> BaseMatrix:
1108
1285
  ...
@@ -1131,7 +1308,7 @@ def ArnoldiSolver(mata: BaseMatrix, matm: BaseMatrix, freedofs: pyngcore.pyngcor
1131
1308
  shift : object
1132
1309
  complex or real shift
1133
1310
  """
1134
- def CGSolver(mat: BaseMatrix, pre: BaseMatrix, complex: bool = False, printrates: bool = True, precision: float = 1e-08, maxsteps: int = 200, conjugate: bool = False, maxiter: int | None = None) -> KrylovSpaceSolver:
1311
+ def CGSolver(mat: BaseMatrix, pre: BaseMatrix, complex: bool = False, printrates: bool = True, precision: typing.SupportsFloat = 1e-08, maxsteps: typing.SupportsInt = 200, conjugate: bool = False, maxiter: typing.SupportsInt | None = None) -> KrylovSpaceSolver:
1135
1312
  """
1136
1313
  A CG Solver.
1137
1314
 
@@ -1155,20 +1332,20 @@ def CGSolver(mat: BaseMatrix, pre: BaseMatrix, complex: bool = False, printrates
1155
1332
  maxsteps : int
1156
1333
  input maximal steps. CGSolver stops after this steps.
1157
1334
  """
1158
- def ChebyshevIteration(mat: BaseMatrix = None, pre: BaseMatrix = None, steps: int = 3, lam_min: float = 1, lam_max: float = 1) -> BaseMatrix:
1335
+ def ChebyshevIteration(mat: BaseMatrix = None, pre: BaseMatrix = None, steps: typing.SupportsInt = 3, lam_min: typing.SupportsFloat = 1, lam_max: typing.SupportsFloat = 1) -> BaseMatrix:
1159
1336
  ...
1160
1337
  def CreateParallelVector(pardofs: ParallelDofs, status: PARALLEL_STATUS) -> ...:
1161
1338
  ...
1162
- def CreateVVector(size: int, complex: bool = False, entrysize: int = 1) -> ...:
1339
+ def CreateVVector(size: typing.SupportsInt, complex: bool = False, entrysize: typing.SupportsInt = 1) -> ...:
1163
1340
  ...
1164
1341
  def DoArchive(arg0: ngsolve.ngstd.Archive, arg1: BaseMatrix) -> ngsolve.ngstd.Archive:
1165
1342
  ...
1166
- def EigenValues_Preconditioner(mat: BaseMatrix, pre: BaseMatrix, tol: float = 1e-10) -> ngsolve.bla.VectorD:
1343
+ def EigenValues_Preconditioner(mat: BaseMatrix, pre: BaseMatrix, tol: typing.SupportsFloat = 1e-10) -> ngsolve.bla.VectorD:
1167
1344
  """
1168
1345
  Calculate eigenvalues of pre * mat, where pre and mat are positive definite matrices.
1169
1346
  The typical usecase of this function is to calculate the condition number of a preconditioner.It uses the Lanczos algorithm and bisection for the tridiagonal matrix
1170
1347
  """
1171
- def GMRESSolver(mat: BaseMatrix, pre: BaseMatrix, printrates: bool = True, precision: float = 1e-08, maxsteps: int = 200) -> KrylovSpaceSolver:
1348
+ def GMRESSolver(mat: BaseMatrix, pre: BaseMatrix, printrates: bool = True, precision: typing.SupportsFloat = 1e-08, maxsteps: typing.SupportsInt = 200) -> KrylovSpaceSolver:
1172
1349
  """
1173
1350
  A General Minimal Residuum (GMRES) Solver.
1174
1351
 
@@ -1195,7 +1372,7 @@ def InnerProduct(x: typing.Any, y: typing.Any, **kwargs) -> typing.Any:
1195
1372
  """
1196
1373
  Computes InnerProduct of given objects
1197
1374
  """
1198
- def QMRSolver(mat: BaseMatrix, pre: BaseMatrix, printrates: bool = True, precision: float = 1e-08, maxsteps: int = 200) -> KrylovSpaceSolver:
1375
+ def QMRSolver(mat: BaseMatrix, pre: BaseMatrix, printrates: bool = True, precision: typing.SupportsFloat = 1e-08, maxsteps: typing.SupportsInt = 200) -> KrylovSpaceSolver:
1199
1376
  """
1200
1377
  A Quasi Minimal Residuum (QMR) Solver.
1201
1378
 
@@ -1216,3 +1393,5 @@ def QMRSolver(mat: BaseMatrix, pre: BaseMatrix, printrates: bool = True, precisi
1216
1393
  maxsteps : int
1217
1394
  input maximal steps. QMRSolver stops after this steps.
1218
1395
  """
1396
+ def RegisterInverseType(arg0: str, arg1: typing.Any) -> None:
1397
+ ...