ngsolve 6.2.2506.post73.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.
- netgen/libngbla.dylib +0 -0
- netgen/libngcomp.dylib +0 -0
- netgen/libngfem.dylib +0 -0
- netgen/libngla.dylib +0 -0
- netgen/libngsbem.dylib +0 -0
- netgen/libngsolve.dylib +0 -0
- netgen/libngstd.dylib +0 -0
- ngsolve/__init__.pyi +59 -59
- ngsolve/bla.pyi +150 -95
- ngsolve/cmake/NGSolveConfig.cmake +5 -5
- ngsolve/comp/__init__.pyi +386 -102
- ngsolve/comp/pml.pyi +4 -1
- ngsolve/config/__init__.pyi +6 -6
- ngsolve/config/config.py +5 -5
- ngsolve/config/config.pyi +6 -6
- ngsolve/directsolvers.pyi +1 -1
- ngsolve/eigenvalues.pyi +4 -4
- ngsolve/fem.pyi +194 -110
- ngsolve/krylovspace.pyi +12 -12
- ngsolve/la.pyi +250 -87
- ngsolve/ngslib.so +0 -0
- ngsolve/ngstd.pyi +23 -4
- ngsolve/nonlinearsolvers.pyi +3 -3
- ngsolve/solve.pyi +7 -6
- ngsolve/solve_implementation.pyi +1 -1
- ngsolve/timestepping.pyi +3 -3
- ngsolve/timing.pyi +1 -1
- ngsolve/utils.pyi +71 -71
- {ngsolve-6.2.2506.post73.dev0.dist-info → ngsolve-6.2.2506.post74.dev0.dist-info}/METADATA +2 -2
- {ngsolve-6.2.2506.post73.dev0.dist-info → ngsolve-6.2.2506.post74.dev0.dist-info}/RECORD +66 -66
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/Netgen.icns +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/bin/ngscxx +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/bin/ngsld +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/bin/ngsolve.tcl +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/bin/ngspy +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/beam.geo +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/beam.vol +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/chip.in2d +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/chip.vol +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/coil.geo +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/coil.vol +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/coilshield.geo +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/coilshield.vol +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/cube.geo +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/cube.vol +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d10_DGdoubleglazing.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d11_chip_nitsche.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d1_square.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d2_chip.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d3_helmholtz.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d4_cube.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d5_beam.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d6_shaft.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d7_coil.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d8_coilshield.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/d9_hybridDG.pde +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/doubleglazing.in2d +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/doubleglazing.vol +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/piezo2d40round4.vol.gz +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/shaft.geo +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/shaft.vol +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/square.in2d +0 -0
- {ngsolve-6.2.2506.post73.dev0.data → ngsolve-6.2.2506.post74.dev0.data}/data/share/ngsolve/square.vol +0 -0
- {ngsolve-6.2.2506.post73.dev0.dist-info → ngsolve-6.2.2506.post74.dev0.dist-info}/LICENSE +0 -0
- {ngsolve-6.2.2506.post73.dev0.dist-info → ngsolve-6.2.2506.post74.dev0.dist-info}/WHEEL +0 -0
- {ngsolve-6.2.2506.post73.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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
116
|
+
def __radd__(self, arg0: typing.SupportsInt) -> BaseMatrix:
|
|
112
117
|
...
|
|
113
118
|
@typing.overload
|
|
114
|
-
def __rmul__(self, value:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
353
|
+
def __setitem__(self, ind: typing.SupportsInt, vec: ngsolve.bla.FlatVectorD) -> None:
|
|
343
354
|
...
|
|
344
355
|
@typing.overload
|
|
345
|
-
def __setitem__(self, ind:
|
|
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:
|
|
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:
|
|
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
|
-
|
|
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:
|
|
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
|
-
|
|
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:
|
|
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
|
-
|
|
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
|
-
|
|
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:
|
|
491
|
+
def __init__(self, arg0: typing.Annotated[numpy.typing.ArrayLike, numpy.float64]) -> None:
|
|
458
492
|
...
|
|
459
493
|
@typing.overload
|
|
460
|
-
def __init__(self, arg0:
|
|
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:
|
|
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
|
-
|
|
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:
|
|
549
|
+
def __init__(self, size: typing.SupportsInt, complex: bool = False) -> None:
|
|
504
550
|
...
|
|
505
551
|
class KrylovSpaceSolver(BaseMatrix):
|
|
506
|
-
|
|
507
|
-
|
|
552
|
+
@staticmethod
|
|
553
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
|
554
|
+
...
|
|
508
555
|
def GetSteps(self) -> int:
|
|
509
556
|
...
|
|
510
|
-
def SetAbsolutePrecision(self, arg0:
|
|
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:
|
|
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:
|
|
587
|
+
def Expand(self, arg0: typing.SupportsInt) -> None:
|
|
523
588
|
"""
|
|
524
589
|
deprecated, use Extend instead
|
|
525
590
|
"""
|
|
526
|
-
def Extend(self, arg0:
|
|
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:
|
|
607
|
+
def Replace(self, ind: typing.SupportsInt, v2: BaseVector) -> None:
|
|
543
608
|
...
|
|
544
609
|
@typing.overload
|
|
545
|
-
def Replace(self, inds:
|
|
610
|
+
def Replace(self, inds: collections.abc.Sequence[typing.SupportsInt], mv2: MultiVector) -> None:
|
|
546
611
|
...
|
|
547
612
|
@typing.overload
|
|
548
|
-
def __getitem__(self, arg0:
|
|
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:
|
|
627
|
+
def __init__(self, arg0: BaseVector, arg1: typing.SupportsInt) -> None:
|
|
563
628
|
...
|
|
564
629
|
@typing.overload
|
|
565
|
-
def __init__(self, arg0:
|
|
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:
|
|
647
|
+
def __setitem__(self, arg0: typing.SupportsInt, arg1: ...) -> None:
|
|
583
648
|
...
|
|
584
649
|
@typing.overload
|
|
585
|
-
def __setitem__(self, arg0:
|
|
650
|
+
def __setitem__(self, arg0: typing.SupportsInt, arg1: typing.SupportsFloat) -> None:
|
|
586
651
|
...
|
|
587
652
|
@typing.overload
|
|
588
|
-
def __setitem__(self, arg0:
|
|
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:
|
|
662
|
+
def __setitem__(self, arg0: collections.abc.Sequence[typing.SupportsInt], arg1: MultiVector) -> None:
|
|
598
663
|
...
|
|
599
664
|
@typing.overload
|
|
600
|
-
def __setitem__(self, arg0:
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
-
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
-
|
|
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
|
-
|
|
892
|
+
@staticmethod
|
|
893
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
|
894
|
+
...
|
|
804
895
|
class QMRSolverD(BaseMatrix):
|
|
805
|
-
|
|
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
|
-
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
-
|
|
1177
|
+
@staticmethod
|
|
1178
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
|
1179
|
+
...
|
|
1043
1180
|
class SparseMatrixSymmetricN5ngbla3MatILi2ELi2EdEE(SparseMatrixN5ngbla3MatILi2ELi2EdEE):
|
|
1044
|
-
|
|
1181
|
+
@staticmethod
|
|
1182
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
|
1183
|
+
...
|
|
1045
1184
|
class SparseMatrixSymmetricN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE(SparseMatrixN5ngbla3MatILi3ELi3ENSt3__17complexIdEEEE):
|
|
1046
|
-
|
|
1185
|
+
@staticmethod
|
|
1186
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
|
1187
|
+
...
|
|
1047
1188
|
class SparseMatrixSymmetricN5ngbla3MatILi3ELi3EdEE(SparseMatrixN5ngbla3MatILi3ELi3EdEE):
|
|
1048
|
-
|
|
1189
|
+
@staticmethod
|
|
1190
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
|
1191
|
+
...
|
|
1049
1192
|
class SparseMatrixSymmetricNSt3__17complexIdEE(SparseMatrixNSt3__17complexIdEE):
|
|
1050
|
-
|
|
1193
|
+
@staticmethod
|
|
1194
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
|
1195
|
+
...
|
|
1051
1196
|
class SparseMatrixSymmetricd(SparseMatrixd):
|
|
1052
|
-
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
-
|
|
1258
|
+
@staticmethod
|
|
1259
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
|
1260
|
+
...
|
|
1103
1261
|
class SymmetricGaussSeidelPreconditioner(BaseMatrix):
|
|
1104
|
-
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
|