ngsolve 6.2.2506.post60.dev0__cp313-cp313-macosx_10_15_universal2.whl → 6.2.2506.post74.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 (70) hide show
  1. netgen/include/kernels.hpp +40 -40
  2. netgen/include/mp_coefficient.hpp +2 -2
  3. netgen/include/mptools.hpp +45 -26
  4. netgen/include/preconditioner.hpp +2 -2
  5. netgen/libngbla.dylib +0 -0
  6. netgen/libngcomp.dylib +0 -0
  7. netgen/libngfem.dylib +0 -0
  8. netgen/libngla.dylib +0 -0
  9. netgen/libngsbem.dylib +0 -0
  10. netgen/libngsolve.dylib +0 -0
  11. netgen/libngstd.dylib +0 -0
  12. ngsolve/__init__.pyi +58 -58
  13. ngsolve/bla.pyi +150 -94
  14. ngsolve/cmake/NGSolveConfig.cmake +1 -1
  15. ngsolve/comp/__init__.pyi +387 -103
  16. ngsolve/comp/pml.pyi +4 -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/eigenvalues.pyi +4 -4
  22. ngsolve/fem.pyi +194 -110
  23. ngsolve/krylovspace.pyi +11 -11
  24. ngsolve/la.pyi +250 -87
  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 +3 -3
  30. ngsolve/timestepping.pyi +3 -3
  31. ngsolve/timing.pyi +1 -1
  32. ngsolve/utils.pyi +70 -70
  33. {ngsolve-6.2.2506.post60.dev0.dist-info → ngsolve-6.2.2506.post74.dev0.dist-info}/METADATA +2 -2
  34. {ngsolve-6.2.2506.post60.dev0.dist-info → ngsolve-6.2.2506.post74.dev0.dist-info}/RECORD +70 -70
  35. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/Netgen.icns +0 -0
  36. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/bin/ngscxx +0 -0
  37. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/bin/ngsld +0 -0
  38. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/bin/ngsolve.tcl +0 -0
  39. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/bin/ngspy +0 -0
  40. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/beam.geo +0 -0
  41. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/beam.vol +0 -0
  42. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/chip.in2d +0 -0
  43. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/chip.vol +0 -0
  44. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/coil.geo +0 -0
  45. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/coil.vol +0 -0
  46. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/coilshield.geo +0 -0
  47. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/coilshield.vol +0 -0
  48. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/cube.geo +0 -0
  49. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/cube.vol +0 -0
  50. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d10_DGdoubleglazing.pde +0 -0
  51. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d11_chip_nitsche.pde +0 -0
  52. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d1_square.pde +0 -0
  53. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d2_chip.pde +0 -0
  54. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d3_helmholtz.pde +0 -0
  55. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d4_cube.pde +0 -0
  56. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d5_beam.pde +0 -0
  57. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d6_shaft.pde +0 -0
  58. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d7_coil.pde +0 -0
  59. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d8_coilshield.pde +0 -0
  60. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d9_hybridDG.pde +0 -0
  61. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/doubleglazing.in2d +0 -0
  62. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/doubleglazing.vol +0 -0
  63. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/piezo2d40round4.vol.gz +0 -0
  64. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/shaft.geo +0 -0
  65. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/shaft.vol +0 -0
  66. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/square.in2d +0 -0
  67. {ngsolve-6.2.2506.post60.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/square.vol +0 -0
  68. {ngsolve-6.2.2506.post60.dev0.dist-info → ngsolve-6.2.2506.post74.dev0.dist-info}/LICENSE +0 -0
  69. {ngsolve-6.2.2506.post60.dev0.dist-info → ngsolve-6.2.2506.post74.dev0.dist-info}/WHEEL +0 -0
  70. {ngsolve-6.2.2506.post60.dev0.dist-info → ngsolve-6.2.2506.post74.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
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', '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']
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,45 @@ 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
  """
848
965
  class SparseMatrixDynamic(BaseMatrix):
966
+ @staticmethod
967
+ def _pybind11_conduit_v1_(*args, **kwargs):
968
+ ...
849
969
  def __init__(self, arg0: BaseMatrix) -> None:
850
970
  ...
851
971
  class SparseMatrixN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE(BaseSparseMatrix):
@@ -856,7 +976,10 @@ class SparseMatrixN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE(BaseSparseMatrix):
856
976
  def CreateFromCOO(*args, **kwargs) -> ...:
857
977
  ...
858
978
  @staticmethod
859
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
979
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
980
+ ...
981
+ @staticmethod
982
+ def _pybind11_conduit_v1_(*args, **kwargs):
860
983
  ...
861
984
  def COO(self) -> typing.Any:
862
985
  ...
@@ -894,7 +1017,10 @@ class SparseMatrixN5ngbla3MatILi2ELi2EdEE(BaseSparseMatrix):
894
1017
  def CreateFromCOO(*args, **kwargs) -> ...:
895
1018
  ...
896
1019
  @staticmethod
897
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
1020
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
1021
+ ...
1022
+ @staticmethod
1023
+ def _pybind11_conduit_v1_(*args, **kwargs):
898
1024
  ...
899
1025
  def COO(self) -> typing.Any:
900
1026
  ...
@@ -932,7 +1058,10 @@ class SparseMatrixN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE(BaseSparseMatrix):
932
1058
  def CreateFromCOO(*args, **kwargs) -> ...:
933
1059
  ...
934
1060
  @staticmethod
935
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
1061
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
1062
+ ...
1063
+ @staticmethod
1064
+ def _pybind11_conduit_v1_(*args, **kwargs):
936
1065
  ...
937
1066
  def COO(self) -> typing.Any:
938
1067
  ...
@@ -970,7 +1099,10 @@ class SparseMatrixN5ngbla3MatILi3ELi3EdEE(BaseSparseMatrix):
970
1099
  def CreateFromCOO(*args, **kwargs) -> ...:
971
1100
  ...
972
1101
  @staticmethod
973
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
1102
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
1103
+ ...
1104
+ @staticmethod
1105
+ def _pybind11_conduit_v1_(*args, **kwargs):
974
1106
  ...
975
1107
  def COO(self) -> typing.Any:
976
1108
  ...
@@ -1008,7 +1140,10 @@ class SparseMatrixNSt3__17complexIdEE(BaseSparseMatrix):
1008
1140
  def CreateFromCOO(*args, **kwargs) -> ...:
1009
1141
  ...
1010
1142
  @staticmethod
1011
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
1143
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
1144
+ ...
1145
+ @staticmethod
1146
+ def _pybind11_conduit_v1_(*args, **kwargs):
1012
1147
  ...
1013
1148
  def COO(self) -> typing.Any:
1014
1149
  ...
@@ -1039,18 +1174,33 @@ class SparseMatrixNSt3__17complexIdEE(BaseSparseMatrix):
1039
1174
  def entrysizes(self) -> tuple[int, int]:
1040
1175
  ...
1041
1176
  class SparseMatrixSymmetricN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE(SparseMatrixN5ngbla3MatILi2ELi2ENSt3__17complexIdEEEE):
1042
- pass
1177
+ @staticmethod
1178
+ def _pybind11_conduit_v1_(*args, **kwargs):
1179
+ ...
1043
1180
  class SparseMatrixSymmetricN5ngbla3MatILi2ELi2EdEE(SparseMatrixN5ngbla3MatILi2ELi2EdEE):
1044
- pass
1181
+ @staticmethod
1182
+ def _pybind11_conduit_v1_(*args, **kwargs):
1183
+ ...
1045
1184
  class SparseMatrixSymmetricN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE(SparseMatrixN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE):
1046
- pass
1185
+ @staticmethod
1186
+ def _pybind11_conduit_v1_(*args, **kwargs):
1187
+ ...
1047
1188
  class SparseMatrixSymmetricN5ngbla3MatILi3ELi3EdEE(SparseMatrixN5ngbla3MatILi3ELi3EdEE):
1048
- pass
1189
+ @staticmethod
1190
+ def _pybind11_conduit_v1_(*args, **kwargs):
1191
+ ...
1049
1192
  class SparseMatrixSymmetricNSt3__17complexIdEE(SparseMatrixNSt3__17complexIdEE):
1050
- pass
1193
+ @staticmethod
1194
+ def _pybind11_conduit_v1_(*args, **kwargs):
1195
+ ...
1051
1196
  class SparseMatrixSymmetricd(SparseMatrixd):
1052
- pass
1197
+ @staticmethod
1198
+ def _pybind11_conduit_v1_(*args, **kwargs):
1199
+ ...
1053
1200
  class SparseMatrixVariableBlocks(BaseMatrix):
1201
+ @staticmethod
1202
+ def _pybind11_conduit_v1_(*args, **kwargs):
1203
+ ...
1054
1204
  def __init__(self, arg0: BaseMatrix) -> None:
1055
1205
  ...
1056
1206
  class SparseMatrixd(BaseSparseMatrix):
@@ -1058,10 +1208,13 @@ class SparseMatrixd(BaseSparseMatrix):
1058
1208
  a sparse matrix in CSR storage
1059
1209
  """
1060
1210
  @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) -> ...:
1211
+ 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
1212
  ...
1063
1213
  @staticmethod
1064
- def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: int, w: int) -> SparseMatrixd:
1214
+ def CreateFromElmat(col_ind: list, row_ind: list, matrices: list, h: typing.SupportsInt, w: typing.SupportsInt) -> SparseMatrixd:
1215
+ ...
1216
+ @staticmethod
1217
+ def _pybind11_conduit_v1_(*args, **kwargs):
1065
1218
  ...
1066
1219
  def COO(self) -> typing.Any:
1067
1220
  ...
@@ -1084,7 +1237,7 @@ class SparseMatrixd(BaseSparseMatrix):
1084
1237
  @typing.overload
1085
1238
  def __matmul__(self, mat: BaseMatrix) -> BaseMatrix:
1086
1239
  ...
1087
- def __setitem__(self, pos: tuple, value: float) -> None:
1240
+ def __setitem__(self, pos: tuple, value: typing.SupportsFloat) -> None:
1088
1241
  """
1089
1242
  Set value at given position
1090
1243
  """
@@ -1092,6 +1245,9 @@ class SparseMatrixd(BaseSparseMatrix):
1092
1245
  def entrysizes(self) -> tuple[int, int]:
1093
1246
  ...
1094
1247
  class SumMatrix(BaseMatrix):
1248
+ @staticmethod
1249
+ def _pybind11_conduit_v1_(*args, **kwargs):
1250
+ ...
1095
1251
  @property
1096
1252
  def matA(self) -> BaseMatrix:
1097
1253
  ...
@@ -1099,10 +1255,17 @@ class SumMatrix(BaseMatrix):
1099
1255
  def matB(self) -> BaseMatrix:
1100
1256
  ...
1101
1257
  class SymmetricBlockGaussSeidelPreconditioner(BaseMatrix):
1102
- pass
1258
+ @staticmethod
1259
+ def _pybind11_conduit_v1_(*args, **kwargs):
1260
+ ...
1103
1261
  class SymmetricGaussSeidelPreconditioner(BaseMatrix):
1104
- pass
1262
+ @staticmethod
1263
+ def _pybind11_conduit_v1_(*args, **kwargs):
1264
+ ...
1105
1265
  class TransposeMatrix(BaseMatrix):
1266
+ @staticmethod
1267
+ def _pybind11_conduit_v1_(*args, **kwargs):
1268
+ ...
1106
1269
  @property
1107
1270
  def mat(self) -> BaseMatrix:
1108
1271
  ...
@@ -1131,7 +1294,7 @@ def ArnoldiSolver(mata: BaseMatrix, matm: BaseMatrix, freedofs: pyngcore.pyngcor
1131
1294
  shift : object
1132
1295
  complex or real shift
1133
1296
  """
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:
1297
+ 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
1298
  """
1136
1299
  A CG Solver.
1137
1300
 
@@ -1155,20 +1318,20 @@ def CGSolver(mat: BaseMatrix, pre: BaseMatrix, complex: bool = False, printrates
1155
1318
  maxsteps : int
1156
1319
  input maximal steps. CGSolver stops after this steps.
1157
1320
  """
1158
- def ChebyshevIteration(mat: BaseMatrix = None, pre: BaseMatrix = None, steps: int = 3, lam_min: float = 1, lam_max: float = 1) -> BaseMatrix:
1321
+ def ChebyshevIteration(mat: BaseMatrix = None, pre: BaseMatrix = None, steps: typing.SupportsInt = 3, lam_min: typing.SupportsFloat = 1, lam_max: typing.SupportsFloat = 1) -> BaseMatrix:
1159
1322
  ...
1160
1323
  def CreateParallelVector(pardofs: ParallelDofs, status: PARALLEL_STATUS) -> ...:
1161
1324
  ...
1162
- def CreateVVector(size: int, complex: bool = False, entrysize: int = 1) -> ...:
1325
+ def CreateVVector(size: typing.SupportsInt, complex: bool = False, entrysize: typing.SupportsInt = 1) -> ...:
1163
1326
  ...
1164
1327
  def DoArchive(arg0: ngsolve.ngstd.Archive, arg1: BaseMatrix) -> ngsolve.ngstd.Archive:
1165
1328
  ...
1166
- def EigenValues_Preconditioner(mat: BaseMatrix, pre: BaseMatrix, tol: float = 1e-10) -> ngsolve.bla.VectorD:
1329
+ def EigenValues_Preconditioner(mat: BaseMatrix, pre: BaseMatrix, tol: typing.SupportsFloat = 1e-10) -> ngsolve.bla.VectorD:
1167
1330
  """
1168
1331
  Calculate eigenvalues of pre * mat, where pre and mat are positive definite matrices.
1169
1332
  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
1333
  """
1171
- def GMRESSolver(mat: BaseMatrix, pre: BaseMatrix, printrates: bool = True, precision: float = 1e-08, maxsteps: int = 200) -> KrylovSpaceSolver:
1334
+ def GMRESSolver(mat: BaseMatrix, pre: BaseMatrix, printrates: bool = True, precision: typing.SupportsFloat = 1e-08, maxsteps: typing.SupportsInt = 200) -> KrylovSpaceSolver:
1172
1335
  """
1173
1336
  A General Minimal Residuum (GMRES) Solver.
1174
1337
 
@@ -1195,7 +1358,7 @@ def InnerProduct(x: typing.Any, y: typing.Any, **kwargs) -> typing.Any:
1195
1358
  """
1196
1359
  Computes InnerProduct of given objects
1197
1360
  """
1198
- def QMRSolver(mat: BaseMatrix, pre: BaseMatrix, printrates: bool = True, precision: float = 1e-08, maxsteps: int = 200) -> KrylovSpaceSolver:
1361
+ def QMRSolver(mat: BaseMatrix, pre: BaseMatrix, printrates: bool = True, precision: typing.SupportsFloat = 1e-08, maxsteps: typing.SupportsInt = 200) -> KrylovSpaceSolver:
1199
1362
  """
1200
1363
  A Quasi Minimal Residuum (QMR) Solver.
1201
1364