KratosLinearSolversApplication 10.4.4__py3-none-any.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.
@@ -0,0 +1,16 @@
1
+ # KRATOS _ _ ____ _
2
+ # | | (_)_ __ ___ __ _ _ __/ ___| ___ | |_ _____ _ __ ___
3
+ # | | | | '_ \ / _ \/ _` | '__\___ \ / _ \| \ \ / / _ \ '__/ __|
4
+ # | |___| | | | | __/ (_| | | ___) | (_) | |\ V / __/ | \__ |
5
+ # |_____|_|_| |_|\___|\__,_|_| |____/ \___/|_| \_/ \___|_| |___/ Application
6
+ #
7
+ # Author: Thomas Oberbichler
8
+ #
9
+
10
+ # Application dependent names and paths
11
+ from KratosMultiphysics import _ImportApplication
12
+ from KratosLinearSolversApplication import *
13
+ application = KratosLinearSolversApplication()
14
+ application_name = "LinearSolversApplication"
15
+
16
+ _ImportApplication(application, application_name)
@@ -0,0 +1,500 @@
1
+ import KratosMultiphysics as Kratos
2
+ import KratosMultiphysics as Kratos
3
+ import typing
4
+ from typing import overload
5
+
6
+ class ComplexDenseColPivHouseholderQRSolver(ComplexDirectSolver):
7
+ @overload
8
+ def __init__(self) -> None:
9
+ """__init__(*args, **kwargs)
10
+ Overloaded function.
11
+
12
+ 1. __init__(self: KratosLinearSolversApplication.ComplexDenseColPivHouseholderQRSolver) -> None
13
+
14
+ 2. __init__(self: KratosLinearSolversApplication.ComplexDenseColPivHouseholderQRSolver, arg0: Kratos.Parameters) -> None
15
+ """
16
+ @overload
17
+ def __init__(self, arg0: Kratos.Parameters) -> None:
18
+ """__init__(*args, **kwargs)
19
+ Overloaded function.
20
+
21
+ 1. __init__(self: KratosLinearSolversApplication.ComplexDenseColPivHouseholderQRSolver) -> None
22
+
23
+ 2. __init__(self: KratosLinearSolversApplication.ComplexDenseColPivHouseholderQRSolver, arg0: Kratos.Parameters) -> None
24
+ """
25
+
26
+ class ComplexDenseHouseholderQRSolver(ComplexDirectSolver):
27
+ @overload
28
+ def __init__(self) -> None:
29
+ """__init__(*args, **kwargs)
30
+ Overloaded function.
31
+
32
+ 1. __init__(self: KratosLinearSolversApplication.ComplexDenseHouseholderQRSolver) -> None
33
+
34
+ 2. __init__(self: KratosLinearSolversApplication.ComplexDenseHouseholderQRSolver, arg0: Kratos.Parameters) -> None
35
+ """
36
+ @overload
37
+ def __init__(self, arg0: Kratos.Parameters) -> None:
38
+ """__init__(*args, **kwargs)
39
+ Overloaded function.
40
+
41
+ 1. __init__(self: KratosLinearSolversApplication.ComplexDenseHouseholderQRSolver) -> None
42
+
43
+ 2. __init__(self: KratosLinearSolversApplication.ComplexDenseHouseholderQRSolver, arg0: Kratos.Parameters) -> None
44
+ """
45
+
46
+ class ComplexDenseLinearSolver:
47
+ def __init__(self) -> None:
48
+ """__init__(self: KratosLinearSolversApplication.ComplexDenseLinearSolver) -> None"""
49
+ def Clear(self) -> None:
50
+ """Clear(self: KratosLinearSolversApplication.ComplexDenseLinearSolver) -> None"""
51
+ def Initialize(self, arg0: Kratos.ComplexMatrix, arg1: Kratos.ComplexVector, arg2: Kratos.ComplexVector) -> None:
52
+ """Initialize(self: KratosLinearSolversApplication.ComplexDenseLinearSolver, arg0: Kratos.ComplexMatrix, arg1: Kratos.ComplexVector, arg2: Kratos.ComplexVector) -> None"""
53
+ def Solve(self, arg0: Kratos.ComplexMatrix, arg1: Kratos.ComplexVector, arg2: Kratos.ComplexVector) -> bool:
54
+ """Solve(self: KratosLinearSolversApplication.ComplexDenseLinearSolver, arg0: Kratos.ComplexMatrix, arg1: Kratos.ComplexVector, arg2: Kratos.ComplexVector) -> bool"""
55
+
56
+ class ComplexDenseLinearSolverFactory:
57
+ def __init__(self) -> None:
58
+ """__init__(self: KratosLinearSolversApplication.ComplexDenseLinearSolverFactory) -> None"""
59
+ def Create(self, arg0: Kratos.Parameters) -> ComplexDenseLinearSolver:
60
+ """Create(self: KratosLinearSolversApplication.ComplexDenseLinearSolverFactory, arg0: Kratos.Parameters) -> KratosLinearSolversApplication.ComplexDenseLinearSolver"""
61
+ def Has(self, arg0: str) -> bool:
62
+ """Has(self: KratosLinearSolversApplication.ComplexDenseLinearSolverFactory, arg0: str) -> bool"""
63
+
64
+ class ComplexDensePartialPivLUSolver(ComplexDirectSolver):
65
+ @overload
66
+ def __init__(self) -> None:
67
+ """__init__(*args, **kwargs)
68
+ Overloaded function.
69
+
70
+ 1. __init__(self: KratosLinearSolversApplication.ComplexDensePartialPivLUSolver) -> None
71
+
72
+ 2. __init__(self: KratosLinearSolversApplication.ComplexDensePartialPivLUSolver, arg0: Kratos.Parameters) -> None
73
+ """
74
+ @overload
75
+ def __init__(self, arg0: Kratos.Parameters) -> None:
76
+ """__init__(*args, **kwargs)
77
+ Overloaded function.
78
+
79
+ 1. __init__(self: KratosLinearSolversApplication.ComplexDensePartialPivLUSolver) -> None
80
+
81
+ 2. __init__(self: KratosLinearSolversApplication.ComplexDensePartialPivLUSolver, arg0: Kratos.Parameters) -> None
82
+ """
83
+
84
+ class ComplexDirectSolver(ComplexDenseLinearSolver):
85
+ @overload
86
+ def __init__(self) -> None:
87
+ """__init__(*args, **kwargs)
88
+ Overloaded function.
89
+
90
+ 1. __init__(self: KratosLinearSolversApplication.ComplexDirectSolver) -> None
91
+
92
+ 2. __init__(self: KratosLinearSolversApplication.ComplexDirectSolver, arg0: Kratos.Parameters) -> None
93
+ """
94
+ @overload
95
+ def __init__(self, arg0: Kratos.Parameters) -> None:
96
+ """__init__(*args, **kwargs)
97
+ Overloaded function.
98
+
99
+ 1. __init__(self: KratosLinearSolversApplication.ComplexDirectSolver) -> None
100
+
101
+ 2. __init__(self: KratosLinearSolversApplication.ComplexDirectSolver, arg0: Kratos.Parameters) -> None
102
+ """
103
+
104
+ class ComplexSparseLUSolver(Kratos.ComplexDirectSolver):
105
+ @overload
106
+ def __init__(self) -> None:
107
+ """__init__(*args, **kwargs)
108
+ Overloaded function.
109
+
110
+ 1. __init__(self: KratosLinearSolversApplication.ComplexSparseLUSolver) -> None
111
+
112
+ 2. __init__(self: KratosLinearSolversApplication.ComplexSparseLUSolver, arg0: Kratos.Parameters) -> None
113
+ """
114
+ @overload
115
+ def __init__(self, arg0: Kratos.Parameters) -> None:
116
+ """__init__(*args, **kwargs)
117
+ Overloaded function.
118
+
119
+ 1. __init__(self: KratosLinearSolversApplication.ComplexSparseLUSolver) -> None
120
+
121
+ 2. __init__(self: KratosLinearSolversApplication.ComplexSparseLUSolver, arg0: Kratos.Parameters) -> None
122
+ """
123
+
124
+ class DenseColPivHouseholderQRSolver(DirectSolver):
125
+ @overload
126
+ def __init__(self) -> None:
127
+ """__init__(*args, **kwargs)
128
+ Overloaded function.
129
+
130
+ 1. __init__(self: KratosLinearSolversApplication.DenseColPivHouseholderQRSolver) -> None
131
+
132
+ 2. __init__(self: KratosLinearSolversApplication.DenseColPivHouseholderQRSolver, arg0: Kratos.Parameters) -> None
133
+ """
134
+ @overload
135
+ def __init__(self, arg0: Kratos.Parameters) -> None:
136
+ """__init__(*args, **kwargs)
137
+ Overloaded function.
138
+
139
+ 1. __init__(self: KratosLinearSolversApplication.DenseColPivHouseholderQRSolver) -> None
140
+
141
+ 2. __init__(self: KratosLinearSolversApplication.DenseColPivHouseholderQRSolver, arg0: Kratos.Parameters) -> None
142
+ """
143
+
144
+ class DenseEigenvalueSolver(DenseLinearSolver):
145
+ def __init__(self, arg0: Kratos.Parameters) -> None:
146
+ """__init__(self: KratosLinearSolversApplication.DenseEigenvalueSolver, arg0: Kratos.Parameters) -> None"""
147
+ def Solve(self, arg0: Kratos.Matrix, arg1: Kratos.Matrix, arg2: Kratos.Vector, arg3: Kratos.Matrix) -> None:
148
+ """Solve(self: KratosLinearSolversApplication.DenseEigenvalueSolver, arg0: Kratos.Matrix, arg1: Kratos.Matrix, arg2: Kratos.Vector, arg3: Kratos.Matrix) -> None"""
149
+
150
+ class DenseHouseholderQRSolver(DirectSolver):
151
+ @overload
152
+ def __init__(self) -> None:
153
+ """__init__(*args, **kwargs)
154
+ Overloaded function.
155
+
156
+ 1. __init__(self: KratosLinearSolversApplication.DenseHouseholderQRSolver) -> None
157
+
158
+ 2. __init__(self: KratosLinearSolversApplication.DenseHouseholderQRSolver, arg0: Kratos.Parameters) -> None
159
+ """
160
+ @overload
161
+ def __init__(self, arg0: Kratos.Parameters) -> None:
162
+ """__init__(*args, **kwargs)
163
+ Overloaded function.
164
+
165
+ 1. __init__(self: KratosLinearSolversApplication.DenseHouseholderQRSolver) -> None
166
+
167
+ 2. __init__(self: KratosLinearSolversApplication.DenseHouseholderQRSolver, arg0: Kratos.Parameters) -> None
168
+ """
169
+
170
+ class DenseLLTSolver(DirectSolver):
171
+ @overload
172
+ def __init__(self) -> None:
173
+ """__init__(*args, **kwargs)
174
+ Overloaded function.
175
+
176
+ 1. __init__(self: KratosLinearSolversApplication.DenseLLTSolver) -> None
177
+
178
+ 2. __init__(self: KratosLinearSolversApplication.DenseLLTSolver, arg0: Kratos.Parameters) -> None
179
+ """
180
+ @overload
181
+ def __init__(self, arg0: Kratos.Parameters) -> None:
182
+ """__init__(*args, **kwargs)
183
+ Overloaded function.
184
+
185
+ 1. __init__(self: KratosLinearSolversApplication.DenseLLTSolver) -> None
186
+
187
+ 2. __init__(self: KratosLinearSolversApplication.DenseLLTSolver, arg0: Kratos.Parameters) -> None
188
+ """
189
+
190
+ class DenseLinearSolver:
191
+ def __init__(self) -> None:
192
+ """__init__(self: KratosLinearSolversApplication.DenseLinearSolver) -> None"""
193
+ def Clear(self) -> None:
194
+ """Clear(self: KratosLinearSolversApplication.DenseLinearSolver) -> None"""
195
+ def Initialize(self, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Vector) -> None:
196
+ """Initialize(self: KratosLinearSolversApplication.DenseLinearSolver, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Vector) -> None"""
197
+ @overload
198
+ def Solve(self, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Vector) -> bool:
199
+ """Solve(*args, **kwargs)
200
+ Overloaded function.
201
+
202
+ 1. Solve(self: KratosLinearSolversApplication.DenseLinearSolver, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Vector) -> bool
203
+
204
+ 2. Solve(self: KratosLinearSolversApplication.DenseLinearSolver, arg0: Kratos.Matrix, arg1: Kratos.Matrix, arg2: Kratos.Matrix) -> bool
205
+ """
206
+ @overload
207
+ def Solve(self, arg0: Kratos.Matrix, arg1: Kratos.Matrix, arg2: Kratos.Matrix) -> bool:
208
+ """Solve(*args, **kwargs)
209
+ Overloaded function.
210
+
211
+ 1. Solve(self: KratosLinearSolversApplication.DenseLinearSolver, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Vector) -> bool
212
+
213
+ 2. Solve(self: KratosLinearSolversApplication.DenseLinearSolver, arg0: Kratos.Matrix, arg1: Kratos.Matrix, arg2: Kratos.Matrix) -> bool
214
+ """
215
+
216
+ class DenseLinearSolverFactory:
217
+ def __init__(self) -> None:
218
+ """__init__(self: KratosLinearSolversApplication.DenseLinearSolverFactory) -> None"""
219
+ def Create(self, arg0: Kratos.Parameters) -> DenseLinearSolver:
220
+ """Create(self: KratosLinearSolversApplication.DenseLinearSolverFactory, arg0: Kratos.Parameters) -> KratosLinearSolversApplication.DenseLinearSolver"""
221
+ def Has(self, arg0: str) -> bool:
222
+ """Has(self: KratosLinearSolversApplication.DenseLinearSolverFactory, arg0: str) -> bool"""
223
+
224
+ class DensePartialPivLUSolver(DirectSolver):
225
+ @overload
226
+ def __init__(self) -> None:
227
+ """__init__(*args, **kwargs)
228
+ Overloaded function.
229
+
230
+ 1. __init__(self: KratosLinearSolversApplication.DensePartialPivLUSolver) -> None
231
+
232
+ 2. __init__(self: KratosLinearSolversApplication.DensePartialPivLUSolver, arg0: Kratos.Parameters) -> None
233
+ """
234
+ @overload
235
+ def __init__(self, arg0: Kratos.Parameters) -> None:
236
+ """__init__(*args, **kwargs)
237
+ Overloaded function.
238
+
239
+ 1. __init__(self: KratosLinearSolversApplication.DensePartialPivLUSolver) -> None
240
+
241
+ 2. __init__(self: KratosLinearSolversApplication.DensePartialPivLUSolver, arg0: Kratos.Parameters) -> None
242
+ """
243
+
244
+ class DirectSolver(DenseLinearSolver):
245
+ @overload
246
+ def __init__(self) -> None:
247
+ """__init__(*args, **kwargs)
248
+ Overloaded function.
249
+
250
+ 1. __init__(self: KratosLinearSolversApplication.DirectSolver) -> None
251
+
252
+ 2. __init__(self: KratosLinearSolversApplication.DirectSolver, arg0: Kratos.Parameters) -> None
253
+ """
254
+ @overload
255
+ def __init__(self, arg0: Kratos.Parameters) -> None:
256
+ """__init__(*args, **kwargs)
257
+ Overloaded function.
258
+
259
+ 1. __init__(self: KratosLinearSolversApplication.DirectSolver) -> None
260
+
261
+ 2. __init__(self: KratosLinearSolversApplication.DirectSolver, arg0: Kratos.Parameters) -> None
262
+ """
263
+
264
+ class EigenDenseBDCSVD(Kratos.DenseSingularValueDecomposition):
265
+ def __init__(self) -> None:
266
+ """__init__(self: KratosLinearSolversApplication.EigenDenseBDCSVD) -> None"""
267
+ @overload
268
+ def Compute(self, arg0: Kratos.Matrix, arg1: Kratos.Parameters) -> None:
269
+ """Compute(*args, **kwargs)
270
+ Overloaded function.
271
+
272
+ 1. Compute(self: KratosLinearSolversApplication.EigenDenseBDCSVD, arg0: Kratos.Matrix, arg1: Kratos.Parameters) -> None
273
+
274
+ 2. Compute(self: KratosLinearSolversApplication.EigenDenseBDCSVD, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Matrix, arg3: Kratos.Matrix, arg4: Kratos.Parameters) -> None
275
+ """
276
+ @overload
277
+ def Compute(self, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Matrix, arg3: Kratos.Matrix, arg4: Kratos.Parameters) -> None:
278
+ """Compute(*args, **kwargs)
279
+ Overloaded function.
280
+
281
+ 1. Compute(self: KratosLinearSolversApplication.EigenDenseBDCSVD, arg0: Kratos.Matrix, arg1: Kratos.Parameters) -> None
282
+
283
+ 2. Compute(self: KratosLinearSolversApplication.EigenDenseBDCSVD, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Matrix, arg3: Kratos.Matrix, arg4: Kratos.Parameters) -> None
284
+ """
285
+ def MatrixU(self, arg0: Kratos.Matrix) -> None:
286
+ """MatrixU(self: KratosLinearSolversApplication.EigenDenseBDCSVD, arg0: Kratos.Matrix) -> None"""
287
+ def MatrixV(self, arg0: Kratos.Matrix) -> None:
288
+ """MatrixV(self: KratosLinearSolversApplication.EigenDenseBDCSVD, arg0: Kratos.Matrix) -> None"""
289
+ def NonZeroSingularValues(self) -> int:
290
+ """NonZeroSingularValues(self: KratosLinearSolversApplication.EigenDenseBDCSVD) -> int"""
291
+ def Rank(self) -> int:
292
+ """Rank(self: KratosLinearSolversApplication.EigenDenseBDCSVD) -> int"""
293
+ def SetThreshold(self, arg0: typing.SupportsFloat) -> None:
294
+ """SetThreshold(self: KratosLinearSolversApplication.EigenDenseBDCSVD, arg0: typing.SupportsFloat) -> None"""
295
+ def SingularValues(self, arg0: Kratos.Vector) -> None:
296
+ """SingularValues(self: KratosLinearSolversApplication.EigenDenseBDCSVD, arg0: Kratos.Vector) -> None"""
297
+
298
+ class EigenDenseColumnPivotingHouseholderQRDecomposition(Kratos.DenseQRDecompositionType):
299
+ def __init__(self) -> None:
300
+ """__init__(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition) -> None"""
301
+ @overload
302
+ def Compute(self, arg0: Kratos.Matrix) -> None:
303
+ """Compute(*args, **kwargs)
304
+ Overloaded function.
305
+
306
+ 1. Compute(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Matrix) -> None
307
+
308
+ 2. Compute(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Matrix, arg1: Kratos.Matrix, arg2: Kratos.Matrix) -> None
309
+ """
310
+ @overload
311
+ def Compute(self, arg0: Kratos.Matrix, arg1: Kratos.Matrix, arg2: Kratos.Matrix) -> None:
312
+ """Compute(*args, **kwargs)
313
+ Overloaded function.
314
+
315
+ 1. Compute(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Matrix) -> None
316
+
317
+ 2. Compute(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Matrix, arg1: Kratos.Matrix, arg2: Kratos.Matrix) -> None
318
+ """
319
+ def MatrixP(self, arg0: Kratos.Matrix) -> None:
320
+ """MatrixP(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Matrix) -> None"""
321
+ def MatrixQ(self, arg0: Kratos.Matrix) -> None:
322
+ """MatrixQ(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Matrix) -> None"""
323
+ def MatrixR(self, arg0: Kratos.Matrix) -> None:
324
+ """MatrixR(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Matrix) -> None"""
325
+ def Rank(self) -> int:
326
+ """Rank(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition) -> int"""
327
+ @overload
328
+ def Solve(self, arg0: Kratos.Matrix, arg1: Kratos.Matrix) -> None:
329
+ """Solve(*args, **kwargs)
330
+ Overloaded function.
331
+
332
+ 1. Solve(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Matrix, arg1: Kratos.Matrix) -> None
333
+
334
+ 2. Solve(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Vector, arg1: Kratos.Vector) -> None
335
+ """
336
+ @overload
337
+ def Solve(self, arg0: Kratos.Vector, arg1: Kratos.Vector) -> None:
338
+ """Solve(*args, **kwargs)
339
+ Overloaded function.
340
+
341
+ 1. Solve(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Matrix, arg1: Kratos.Matrix) -> None
342
+
343
+ 2. Solve(self: KratosLinearSolversApplication.EigenDenseColumnPivotingHouseholderQRDecomposition, arg0: Kratos.Vector, arg1: Kratos.Vector) -> None
344
+ """
345
+
346
+ class EigenDenseHouseholderQRDecomposition(Kratos.DenseQRDecompositionType):
347
+ def __init__(self) -> None:
348
+ """__init__(self: KratosLinearSolversApplication.EigenDenseHouseholderQRDecomposition) -> None"""
349
+ def Compute(self, arg0: Kratos.Matrix) -> None:
350
+ """Compute(self: KratosLinearSolversApplication.EigenDenseHouseholderQRDecomposition, arg0: Kratos.Matrix) -> None"""
351
+ def MatrixQ(self, arg0: Kratos.Matrix) -> None:
352
+ """MatrixQ(self: KratosLinearSolversApplication.EigenDenseHouseholderQRDecomposition, arg0: Kratos.Matrix) -> None"""
353
+ def MatrixR(self, arg0: Kratos.Matrix) -> None:
354
+ """MatrixR(self: KratosLinearSolversApplication.EigenDenseHouseholderQRDecomposition, arg0: Kratos.Matrix) -> None"""
355
+ @overload
356
+ def Solve(self, arg0: Kratos.Matrix, arg1: Kratos.Matrix) -> None:
357
+ """Solve(*args, **kwargs)
358
+ Overloaded function.
359
+
360
+ 1. Solve(self: KratosLinearSolversApplication.EigenDenseHouseholderQRDecomposition, arg0: Kratos.Matrix, arg1: Kratos.Matrix) -> None
361
+
362
+ 2. Solve(self: KratosLinearSolversApplication.EigenDenseHouseholderQRDecomposition, arg0: Kratos.Vector, arg1: Kratos.Vector) -> None
363
+ """
364
+ @overload
365
+ def Solve(self, arg0: Kratos.Vector, arg1: Kratos.Vector) -> None:
366
+ """Solve(*args, **kwargs)
367
+ Overloaded function.
368
+
369
+ 1. Solve(self: KratosLinearSolversApplication.EigenDenseHouseholderQRDecomposition, arg0: Kratos.Matrix, arg1: Kratos.Matrix) -> None
370
+
371
+ 2. Solve(self: KratosLinearSolversApplication.EigenDenseHouseholderQRDecomposition, arg0: Kratos.Vector, arg1: Kratos.Vector) -> None
372
+ """
373
+
374
+ class EigenDenseJacobiSVD(Kratos.DenseSingularValueDecomposition):
375
+ def __init__(self) -> None:
376
+ """__init__(self: KratosLinearSolversApplication.EigenDenseJacobiSVD) -> None"""
377
+ @overload
378
+ def Compute(self, arg0: Kratos.Matrix, arg1: Kratos.Parameters) -> None:
379
+ """Compute(*args, **kwargs)
380
+ Overloaded function.
381
+
382
+ 1. Compute(self: KratosLinearSolversApplication.EigenDenseJacobiSVD, arg0: Kratos.Matrix, arg1: Kratos.Parameters) -> None
383
+
384
+ 2. Compute(self: KratosLinearSolversApplication.EigenDenseJacobiSVD, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Matrix, arg3: Kratos.Matrix, arg4: Kratos.Parameters) -> None
385
+ """
386
+ @overload
387
+ def Compute(self, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Matrix, arg3: Kratos.Matrix, arg4: Kratos.Parameters) -> None:
388
+ """Compute(*args, **kwargs)
389
+ Overloaded function.
390
+
391
+ 1. Compute(self: KratosLinearSolversApplication.EigenDenseJacobiSVD, arg0: Kratos.Matrix, arg1: Kratos.Parameters) -> None
392
+
393
+ 2. Compute(self: KratosLinearSolversApplication.EigenDenseJacobiSVD, arg0: Kratos.Matrix, arg1: Kratos.Vector, arg2: Kratos.Matrix, arg3: Kratos.Matrix, arg4: Kratos.Parameters) -> None
394
+ """
395
+ def MatrixU(self, arg0: Kratos.Matrix) -> None:
396
+ """MatrixU(self: KratosLinearSolversApplication.EigenDenseJacobiSVD, arg0: Kratos.Matrix) -> None"""
397
+ def MatrixV(self, arg0: Kratos.Matrix) -> None:
398
+ """MatrixV(self: KratosLinearSolversApplication.EigenDenseJacobiSVD, arg0: Kratos.Matrix) -> None"""
399
+ def NonZeroSingularValues(self) -> int:
400
+ """NonZeroSingularValues(self: KratosLinearSolversApplication.EigenDenseJacobiSVD) -> int"""
401
+ def Rank(self) -> int:
402
+ """Rank(self: KratosLinearSolversApplication.EigenDenseJacobiSVD) -> int"""
403
+ def SetThreshold(self, arg0: typing.SupportsFloat) -> None:
404
+ """SetThreshold(self: KratosLinearSolversApplication.EigenDenseJacobiSVD, arg0: typing.SupportsFloat) -> None"""
405
+ def SingularValues(self, arg0: Kratos.Vector) -> None:
406
+ """SingularValues(self: KratosLinearSolversApplication.EigenDenseJacobiSVD, arg0: Kratos.Vector) -> None"""
407
+
408
+ class EigensystemSolver(Kratos.LinearSolver):
409
+ def __init__(self, arg0: Kratos.Parameters) -> None:
410
+ """__init__(self: KratosLinearSolversApplication.EigensystemSolver, arg0: Kratos.Parameters) -> None"""
411
+
412
+ class FEASTConditionNumberUtility:
413
+ def __init__(self, *args, **kwargs) -> None:
414
+ """Initialize self. See help(type(self)) for accurate signature."""
415
+ def GetConditionNumber(self) -> float:
416
+ """GetConditionNumber(self: Kratos.CompressedMatrix) -> float"""
417
+
418
+ class KratosLinearSolversApplication(Kratos.KratosApplication):
419
+ def __init__(self) -> None:
420
+ """__init__(self: KratosLinearSolversApplication.KratosLinearSolversApplication) -> None"""
421
+
422
+ class SparseCGSolver(Kratos.DirectSolver):
423
+ @overload
424
+ def __init__(self) -> None:
425
+ """__init__(*args, **kwargs)
426
+ Overloaded function.
427
+
428
+ 1. __init__(self: KratosLinearSolversApplication.SparseCGSolver) -> None
429
+
430
+ 2. __init__(self: KratosLinearSolversApplication.SparseCGSolver, arg0: Kratos.Parameters) -> None
431
+ """
432
+ @overload
433
+ def __init__(self, arg0: Kratos.Parameters) -> None:
434
+ """__init__(*args, **kwargs)
435
+ Overloaded function.
436
+
437
+ 1. __init__(self: KratosLinearSolversApplication.SparseCGSolver) -> None
438
+
439
+ 2. __init__(self: KratosLinearSolversApplication.SparseCGSolver, arg0: Kratos.Parameters) -> None
440
+ """
441
+
442
+ class SparseLUSolver(Kratos.DirectSolver):
443
+ @overload
444
+ def __init__(self) -> None:
445
+ """__init__(*args, **kwargs)
446
+ Overloaded function.
447
+
448
+ 1. __init__(self: KratosLinearSolversApplication.SparseLUSolver) -> None
449
+
450
+ 2. __init__(self: KratosLinearSolversApplication.SparseLUSolver, arg0: Kratos.Parameters) -> None
451
+ """
452
+ @overload
453
+ def __init__(self, arg0: Kratos.Parameters) -> None:
454
+ """__init__(*args, **kwargs)
455
+ Overloaded function.
456
+
457
+ 1. __init__(self: KratosLinearSolversApplication.SparseLUSolver) -> None
458
+
459
+ 2. __init__(self: KratosLinearSolversApplication.SparseLUSolver, arg0: Kratos.Parameters) -> None
460
+ """
461
+
462
+ class SparseQRSolver(Kratos.DirectSolver):
463
+ @overload
464
+ def __init__(self) -> None:
465
+ """__init__(*args, **kwargs)
466
+ Overloaded function.
467
+
468
+ 1. __init__(self: KratosLinearSolversApplication.SparseQRSolver) -> None
469
+
470
+ 2. __init__(self: KratosLinearSolversApplication.SparseQRSolver, arg0: Kratos.Parameters) -> None
471
+ """
472
+ @overload
473
+ def __init__(self, arg0: Kratos.Parameters) -> None:
474
+ """__init__(*args, **kwargs)
475
+ Overloaded function.
476
+
477
+ 1. __init__(self: KratosLinearSolversApplication.SparseQRSolver) -> None
478
+
479
+ 2. __init__(self: KratosLinearSolversApplication.SparseQRSolver, arg0: Kratos.Parameters) -> None
480
+ """
481
+
482
+ class SpectraSymGEigsShiftSolver(Kratos.LinearSolver):
483
+ def __init__(self, arg0: Kratos.Parameters) -> None:
484
+ """__init__(self: KratosLinearSolversApplication.SpectraSymGEigsShiftSolver, arg0: Kratos.Parameters) -> None"""
485
+
486
+ def HasFEAST() -> bool:
487
+ """HasFEAST() -> bool
488
+
489
+ Return true if Kratos was compiled with FEAST support. False otherwise.
490
+ """
491
+ def HasMKL() -> bool:
492
+ """HasMKL() -> bool
493
+
494
+ Return true if Kratos was compiled with MKL support. False otherwise.
495
+ """
496
+ def HasSuiteSparse() -> bool:
497
+ """HasSuiteSparse() -> bool
498
+
499
+ Return true if Kratos was compiled with SuiteSparse support. False otherwise.
500
+ """
@@ -0,0 +1,19 @@
1
+
2
+ import KratosMultiphysics as KM
3
+ import KratosMultiphysics.LinearSolversApplication as KratosSolvers
4
+
5
+ def ConstructSolver(configuration):
6
+ if not isinstance(configuration, KM.Parameters):
7
+ raise Exception("input is expected to be provided as a Kratos Parameters object")
8
+
9
+ solver_type = configuration["solver_type"].GetString()
10
+ if "Application." in solver_type: # the module in which the solver is implemented was specified
11
+ split_name = solver_type.split(".")
12
+ solver_type = split_name[1]
13
+
14
+ if KratosSolvers.ComplexDenseLinearSolverFactory().Has(solver_type):
15
+ KM.Logger.PrintInfo("Eigen-Linear-Solver-Factory", "Constructing a complex dense linear-solver")
16
+ return KratosSolvers.ComplexDenseLinearSolverFactory().Create(configuration)
17
+ else:
18
+ KM.Logger.PrintInfo("Eigen-Linear-Solver-Factory", "Constructing a dense linear-solver")
19
+ return KratosSolvers.DenseLinearSolverFactory().Create(configuration)
@@ -0,0 +1,258 @@
1
+ Metadata-Version: 2.5
2
+ Name: KratosLinearSolversApplication
3
+ Version: 10.4.4
4
+ Summary: KRATOS Multiphysics ("Kratos") is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
5
+ Author-email: Kratos Team <kratos@listas.cimne.upc.edu>
6
+ License: BSD-4-Clause
7
+ Classifier: Programming Language :: C++
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: Topic :: Scientific/Engineering
10
+ Requires-Python: >=3.8
11
+ Requires-Dist: kratosmultiphysics==10.4.4
12
+ Description-Content-Type: text/markdown
13
+
14
+ @anchor LinearSolversApplicationMainPage
15
+
16
+ # LinearSolversApplication
17
+
18
+ The *LinearSolversApplication* is a thin wrapper for the [Eigen linear algebra library](http://eigen.tuxfamily.org/index.php?title=Main_Page).
19
+
20
+ ## Direct sparse solvers
21
+
22
+ The application provides the following direct sparse solvers:
23
+
24
+ | Python class | solver_type | Matrix kind | Domain | Dependencies |
25
+ |--------------------------|------------------------|:-----------:|:--------:|:------------:|
26
+ | SparseLUSolver | `sparse_lu` | Square | Real | None |
27
+ | SparseQRSolver | `sparse_qr` | Rectangular | Real | None |
28
+ | SparseCGSolver | `sparse_cg` | SPD* | Real | None |
29
+ | PardisoLLTSolver | `pardiso_llt` | SPD* | Real | Intel® MKL |
30
+ | PardisoLDLTSolver | `pardiso_ldlt` | SPD* | Real | Intel® MKL |
31
+ | PardisoLUSolver | `pardiso_lu` | Square | Real | Intel® MKL |
32
+ | ComplexSparseLUSolver | `sparse_lu_complex` | Square | Complex | None |
33
+ | ComplexPardisoLLTSolver | `pardiso_llt_complex` | SPD* | Complex | Intel® MKL |
34
+ | ComplexPardisoLDLTSolver | `pardiso_ldlt_complex` | SPD* | Complex | Intel® MKL |
35
+ | ComplexPardisoLUSolver | `pardiso_lu_complex` | Square | Complex | Intel® MKL |
36
+ | CholmodSolver | `cholmod` | SPD* | Real | SuiteSparse |
37
+ | UmfPackSolver | `umfpack` | Square | Real | SuiteSparse |
38
+ | ComplexUmfPackSolver | `umfpack_complex` | Square | Complex | SuiteSparse |
39
+ | SPQRSolver | `spqr` | Rectangular | Real | SuiteSparse |
40
+ | ComplexSPQRSolver | `spqr_complex` | Rectangular | Complex | SuiteSparse |
41
+
42
+
43
+ *SPD = Symmetric Positive Definite
44
+
45
+ **Example**:
46
+
47
+ ```json
48
+ {
49
+ "solver_type": "eigen_sparse_lu"
50
+ }
51
+ ```
52
+
53
+ ## Direct dense solvers
54
+
55
+ The application provides the following direct solvers for dense systems of equations:
56
+
57
+ | Python class | solver_type | Matrix requirements | Domain | Dependencies |
58
+ | --------------------------------------- | -------------------------------------- | :-----------------: | :-----: | :----------: |
59
+ | DenseColPivHouseholderQRSolver** | `dense_col_piv_householder_qr` | None | Real | None |
60
+ | DenseHouseholderQRSolver** | `dense_householder_qr` | None | Real | None |
61
+ | DenseLLTSolver** | `dense_llt` | SPD* | Real | None |
62
+ | DensePartialPivLUSolver** | `dense_partial_piv_lu` | Invertible | Real | None |
63
+ | ComplexDenseColPivHouseholderQRSolver | `complex_dense_col_piv_householder_qr` | None | Complex | None |
64
+ | ComplexDenseHouseholderQRSolver | `complex_dense_householder_qr` | None | Complex | None |
65
+ | ComplexDensePartialPivLUSolver | `complex_dense_partial_piv_lu` | Invertible | Complex | None |
66
+
67
+ *SPD = Symmetric Positive Definite
68
+
69
+ **Can also be used to solve equation systems with multiple right hand sides.
70
+
71
+ ## Generalized eigensystem solvers
72
+
73
+ The application provides the following generalized eigensystem `Ax=λBx` solver for sparse matrices.
74
+
75
+ | Python class | solver_type | Matrix kind A | Matrix kind B | Domain | Dependencies |
76
+ |----------------------------------------|----------------------------|:-------------:|:-------------:|:--------:|:------------:|
77
+ | EigensystemSolver | `eigen_eigensystem` | Symmetric | SPD* | Real | None |
78
+ | SpectraSymGEigsShiftSolver | `spectra_sym_g_eigs_shift` | Symmetric | SPD* | Real | None |
79
+ | FEASTGeneralEigensystemSolver** | `feast` | General | General | Real | Intel® MKL |
80
+ | ComplexFEASTGeneralEigensystemSolver** | `feast_complex` | General | General | Complex | Intel® MKL |
81
+
82
+ *SPD = Symmetric Positive Definite
83
+ **A special version for symmetric matrices can be triggered in the solver settings.
84
+
85
+ `EigensystemSolver` and `SpectraSymGEigsShiftSolver` compute the smallest eigenvalues and corresponding eigenvectors of the system. MKL routines are used automatically if they are available.
86
+
87
+ `SpectraSymGEigsShiftSolver` interfaces a solver from the [Spectra library](https://spectralib.org/), and has a shift mode that can be used to compute the smallest eigenvalues > `shift`.
88
+
89
+ **Example:**
90
+
91
+ ```json
92
+ {
93
+ "solver_type": "spectra_sym_g_eigs_shift",
94
+ "number_of_eigenvalues": 3,
95
+ "max_iteration": 1000,
96
+ "echo_level": 1
97
+ }
98
+
99
+ ```
100
+ If the application is compiled with MKL, [FEAST 4.0](http://www.ecs.umass.edu/~polizzi/feast/) can be used to solve the generalized eigenvalue problem for real and complex systems (symmetric or unsymmetric). The cmake switch `USE_EIGEN_FEAST` must be set to `ON` with
101
+ ```batch
102
+ -DUSE_EIGEN_FEAST=ON \
103
+ ```
104
+
105
+ **Example:**
106
+ ```json
107
+ {
108
+ "solver_type": "feast",
109
+ "symmetric": true,
110
+ "number_of_eigenvalues": 3,
111
+ "search_lowest_eigenvalues": true,
112
+ "e_min" : 0.0,
113
+ "e_max" : 0.2
114
+ }
115
+ ```
116
+
117
+ ## Build instructions
118
+
119
+ 1. Set the required definitions for cmake
120
+
121
+ As any other app:
122
+
123
+ **Windows:** in `configure.bat`
124
+
125
+ ```batch
126
+ set KRATOS_APPLICATIONS=%KRATOS_APPLICATIONS%%KRATOS_APP_DIR%\LinearSolversApplication;
127
+ ```
128
+
129
+ **Linux:** in `configure.sh`
130
+
131
+ ```console
132
+ add_app ${KRATOS_APP_DIR}/LinearSolversApplication
133
+ ```
134
+
135
+ 2. Build Kratos
136
+
137
+ 3. Setup the `ProjectParameters.json`
138
+
139
+ ```json
140
+ "linear_solver_settings": {
141
+ "solver_type" : "LinearSolversApplication.sparse_lu"
142
+ }
143
+ ```
144
+
145
+ 4. Run the simulation
146
+
147
+ ## Enable MKL (optional)
148
+
149
+ In case you have installed [MKL](https://software.intel.com/en-us/mkl) (see below), you can also use the Pardiso solvers.
150
+
151
+ 1. Run the MKL setup script before building Kratos:
152
+
153
+ **Windows:**
154
+
155
+ ```batch
156
+ call "C:\Program Files (x86)\Intel\oneAPI\mkl\latest\env\vars.bat" intel64 lp64
157
+ ```
158
+
159
+ **Linux:**
160
+
161
+ ```console
162
+ source /opt/intel/oneapi/setvars.sh intel64
163
+ ```
164
+
165
+ 2. Add the following flag to CMake to your configure script:
166
+
167
+ **Windows:**
168
+
169
+ ```batch
170
+ -DUSE_EIGEN_MKL=ON ^
171
+ ```
172
+
173
+ **Linux:**
174
+
175
+ ```console
176
+ -DUSE_EIGEN_MKL=ON \
177
+ ```
178
+
179
+ 3. Build Kratos
180
+
181
+ 4. Usage:
182
+
183
+ **Windows:**
184
+
185
+ ```batch
186
+ call "C:\Program Files (x86)\Intel\oneAPI\mkl\latest\env\vars.bat" intel64 lp64
187
+ ```
188
+
189
+ **Linux:**
190
+
191
+ Set the environment before using MKL
192
+
193
+ ```console
194
+ source /opt/intel/oneapi/setvars.sh intel64
195
+ ```
196
+
197
+ ## Install MKL on Ubuntu with apt
198
+
199
+ Intel MKL can be installed with apt on Ubuntu. A guide can be found in [here](https://neelravi.com/post/intel-oneapi-install/).
200
+ For example to install the MKL 2022 version
201
+
202
+ ```console
203
+ sudo bash
204
+ # <type your user password when prompted. this will put you in a root shell>
205
+ # If they are not installed, you can install using the following command:
206
+ sudo apt update
207
+ sudo apt -y install cmake pkg-config build-essential
208
+ # use wget to fetch the Intel repository public key
209
+ wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
210
+ # add to your apt sources keyring so that archives signed with this key will be trusted.
211
+ sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
212
+ # remove the public key
213
+ rm GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
214
+ # Configure apt client to use Intel repository
215
+ sudo add-apt-repository "deb https://apt.repos.intel.com/oneapi all main"
216
+ # Install all MKL related dependencies. You can install full HPC with: sudo apt install intel-hpckit
217
+ sudo apt install intel-oneapi-mkl-devel
218
+ # Exit
219
+ exit
220
+ ```
221
+
222
+ To enable the MKL environment (needs to be done before build/run) use
223
+
224
+ ```console
225
+ source /opt/intel/oneapi/setvars.sh intel64
226
+ ```
227
+
228
+ ## Enable *SuiteSparse* (optional)
229
+
230
+ [*SuiteSparse*](https://github.com/DrTimothyAldenDavis/SuiteSparse) is a collection of open-source sparse matrix algorithms, including efficient implementations of various factorizations. *Kratos* currently provides wrappers for *CHOLMOD*, *UMFPACK*, and *SPQR*.
231
+
232
+ Install the *SuiteSparse* package on your system, and set the `USE_EIGEN_SUITESPARSE` flag in your *CMake* configuration to `ON`. One way of doing this is appending the list of arguments you pass to *CMake* in your configure script with:
233
+ ```bash
234
+ -DUSE_EIGEN_SUITESPARSE:BOOL=ON
235
+ ```
236
+
237
+ ### Installing *SuiteSparse*
238
+
239
+ - Arch Linux
240
+ - *SuiteSparse* is [available](https://archlinux.org/packages/extra/x86_64/suitesparse/) through your package manager.
241
+ - `sudo pacman -S suitesparse`
242
+
243
+ - Debian (and derivatives, including Ubuntu)
244
+ - *SuiteSparse* is [available](https://packages.debian.org/sid/libsuitesparse-dev) through your package manager.
245
+ - `sudo apt install libsuitesparse-dev`
246
+
247
+ - Fedora (and derivatives, including RHEL)
248
+ - *SuiteSparse* is [available](https://packages.fedoraproject.org/pkgs/suitesparse/suitesparse-devel/) through your package manager.
249
+ - `sudo dnf install suitesparse-devel`
250
+
251
+ - MacOS
252
+ - *SuiteSparse* is [available](https://formulae.brew.sh/formula/suite-sparse) on *Homebrew* for both Intel and Apple Silicon machines.
253
+ - `brew install suite-sparse`
254
+
255
+ - Windows
256
+ - *SuiteSparse* is available through [*vcpkg*](https://vcpkg.io/en/package/suitesparse) and [*MSYS2*](https://packages.msys2.org/packages/mingw-w64-x86_64-suitesparse) package managers.
257
+ - `vcpkg install suitesparse suitesparse-spqr suitesparse-umfpack` (remember to add to build script `-DCMAKE_TOOLCHAIN_FILE="vcpkg_path\vcpkg\scripts\buildsystems\vcpkg.cmake"`)
258
+ - `pacman -S mingw-w64-x86_64-suitesparse`
@@ -0,0 +1,12 @@
1
+ kratoslinearsolversapplication.dylibs/libstdc++.6.dylib,sha256=Kn8_f_ys0FOLn05ZpGsAtBoM6VALOnfpUYRKi442nIY,3403264
2
+ kratoslinearsolversapplication.dylibs/libKratosCore.dylib,sha256=9OwVDQfFlNUWom6rOAMLSio6pVToR4uStQbhuwEUcRA,63629792
3
+ kratoslinearsolversapplication.dylibs/libgcc_s.1.1.dylib,sha256=zOC119wyFvffgkh5OMkG335NfllPk96dq_L7NbVmczg,219232
4
+ kratoslinearsolversapplication.dylibs/libgomp.1.dylib,sha256=vdOYKNYj-jfBqKdeVfCj7kylvyKMVExHbXvHAqxQLQ8,438880
5
+ KratosMultiphysics/LinearSolversApplication/__init__.pyi,sha256=soCWCQyA9hR_dylqPdZycWxcAyJxz20pImw2bcui5LE,23734
6
+ KratosMultiphysics/LinearSolversApplication/__init__.py,sha256=ocNWOV6PkKUmatHCaM6Zn-tIM0IJ41CKXJ-8LDC1ub0,676
7
+ KratosMultiphysics/LinearSolversApplication/dense_linear_solver_factory.py,sha256=OC4F_vKzCSlEjUO5GfEOBoS4xIANerJdPZFbrDY_rQE,970
8
+ KratosMultiphysics/.libs/KratosLinearSolversApplication.cpython-314-darwin.so,sha256=aTw8mQTHWmgtU7mPwLOzWzBJZvihwKWe9rtoS4NQyGk,3819648
9
+ KratosMultiphysics/.libs/libKratosLinearSolversCore.dylib,sha256=cLutJE9MetI8OmKxM1tPOAE-7Ocd8ZNEmNpGq57gVsU,3377648
10
+ kratoslinearsolversapplication-10.4.4.dist-info/RECORD,,
11
+ kratoslinearsolversapplication-10.4.4.dist-info/WHEEL,sha256=QX0UaoWXQIAv8vp5R3do793urekDoJdJRoGCk8nXIBY,115
12
+ kratoslinearsolversapplication-10.4.4.dist-info/METADATA,sha256=t68UXeiKMY6LPXmpGZbNH11LAQ1o9XpZGUOvppVqcFI,10629
@@ -0,0 +1,6 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.32.4
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+ Generator: delocate 0.13.0
6
+
@@ -0,0 +1,4 @@
1
+ [diffend] Oversized file quarantined before diffing.
2
+ name: kratoslinearsolversapplication.dylibs/libKratosCore.dylib
3
+ size: 63629792 bytes
4
+ sha256: f4ec150d07c594d516a26eab38030b4a2a3aa554e8478b92b506e1bb01147110