File: t_IdentityMatrix_std.py

package info (click to toggle)
openturns 1.24-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 66,204 kB
  • sloc: cpp: 256,662; python: 63,381; ansic: 4,414; javascript: 406; sh: 180; xml: 164; yacc: 123; makefile: 98; lex: 55
file content (58 lines) | stat: -rwxr-xr-x 1,155 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#! /usr/bin/env python

import openturns as ot

ot.TESTPREAMBLE()

matrix1 = ot.IdentityMatrix(2)
print("matrix1 = ", repr(matrix1))

pt = ot.Point()
pt.add(5.0)
pt.add(0.0)
print("pt = ", repr(pt))

result = ot.Point()
result = matrix1.solveLinearSystem(pt)
print("result = ", repr(result))

determinant = matrix1.computeDeterminant()
print("determinant = %.6f" % determinant)

ev = ot.ScalarCollection(2)
ev = matrix1.computeEigenValues()
print("ev = ", repr(ev))

if matrix1.isPositiveDefinite():
    isSPD = "true"
else:
    isSPD = "false"
print("isSPD = ", isSPD)

matrix2 = matrix1.computeCholesky()
print("matrix2 = ", repr(matrix2))

det, sgn = matrix1.computeLogAbsoluteDeterminant()
print(det)
assert det == 0.0, "wrong det"

sv = matrix1.computeSingularValues()
print(sv)
assert sv == [1.0] * 2, "wrong sv"

ev, u, vT = matrix1.computeSVD()
print(ev, u, vT)
assert ev == [1.0] * 2, "wrong svd"

ev, v = matrix1.computeEV()
print(ev, v)
assert ev == [1.0] * 2, "wrong ev"

tr = matrix1.transpose()
print(tr)
assert tr == matrix1, "transpose"

cov = ot.CovarianceMatrix(2)
prod = matrix1 @ cov
print(prod)
assert prod == matrix1, "product /cov"