Skip to content

Commit 8cca598

Browse files
committed
unittest: Simplify test_GeneralizedEigenSolver to reduce computation time
1 parent 681bfc5 commit 8cca598

File tree

1 file changed

+0
-76
lines changed

1 file changed

+0
-76
lines changed

unittest/python/test_GeneralizedEigenSolver.py

Lines changed: 0 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -8,27 +8,14 @@
88
B = rng.random((dim, dim))
99
B = (B + B.T) * 0.5 + np.diag(10.0 + rng.random(dim))
1010

11-
ges = eigenpy.GeneralizedEigenSolver()
12-
ges_size = eigenpy.GeneralizedEigenSolver(dim)
1311
ges_matrices = eigenpy.GeneralizedEigenSolver(A, B)
1412
assert ges_matrices.info() == eigenpy.ComputationInfo.Success
1513

16-
ges_with_vectors = eigenpy.GeneralizedEigenSolver(A, B, True)
17-
assert ges_with_vectors.info() == eigenpy.ComputationInfo.Success
18-
19-
ges_without_vectors = eigenpy.GeneralizedEigenSolver(A, B, False)
20-
assert ges_without_vectors.info() == eigenpy.ComputationInfo.Success
21-
2214
alphas = ges_matrices.alphas()
2315
betas = ges_matrices.betas()
2416
eigenvectors = ges_matrices.eigenvectors()
2517
eigenvalues = ges_matrices.eigenvalues()
2618

27-
assert alphas.shape == (dim,)
28-
assert betas.shape == (dim,)
29-
assert eigenvectors.shape == (dim, dim)
30-
assert eigenvalues.shape == (dim,)
31-
3219
for k in range(dim):
3320
v = eigenvectors[:, k]
3421
lambda_k = eigenvalues[k]
@@ -52,66 +39,3 @@
5239
if abs(betas[k]) > 1e-12:
5340
expected_eigenvalue = alphas[k] / betas[k]
5441
assert abs(eigenvalues[k] - expected_eigenvalue) < 1e-12
55-
56-
ges_compute = eigenpy.GeneralizedEigenSolver()
57-
result = ges_compute.compute(A, B, False)
58-
assert result.info() == eigenpy.ComputationInfo.Success
59-
alphas_only = ges_compute.alphas()
60-
betas_only = ges_compute.betas()
61-
eigenvalues_only = ges_compute.eigenvalues()
62-
63-
result_with_vectors = ges_compute.compute(A, B, True)
64-
assert result_with_vectors.info() == eigenpy.ComputationInfo.Success
65-
eigenvectors_computed = ges_compute.eigenvectors()
66-
67-
ges_default = eigenpy.GeneralizedEigenSolver()
68-
result_default = ges_default.compute(A, B)
69-
assert result_default.info() == eigenpy.ComputationInfo.Success
70-
71-
ges_iter = eigenpy.GeneralizedEigenSolver(A, B)
72-
ges_iter.setMaxIterations(100)
73-
ges_iter.setMaxIterations(200)
74-
75-
A1 = rng.random((dim, dim))
76-
B1 = rng.random((dim, dim))
77-
spdA = A.T @ A + A1.T @ A1
78-
spdB = B.T @ B + B1.T @ B1
79-
80-
ges_spd = eigenpy.GeneralizedEigenSolver(spdA, spdB)
81-
assert ges_spd.info() == eigenpy.ComputationInfo.Success
82-
83-
spd_eigenvalues = ges_spd.eigenvalues()
84-
max_imag = np.max(np.abs(spd_eigenvalues.imag))
85-
assert max_imag < 1e-10
86-
87-
ges1 = eigenpy.GeneralizedEigenSolver()
88-
ges2 = eigenpy.GeneralizedEigenSolver()
89-
id1 = ges1.id()
90-
id2 = ges2.id()
91-
assert id1 != id2
92-
assert id1 == ges1.id()
93-
assert id2 == ges2.id()
94-
95-
ges3 = eigenpy.GeneralizedEigenSolver(dim)
96-
ges4 = eigenpy.GeneralizedEigenSolver(dim)
97-
id3 = ges3.id()
98-
id4 = ges4.id()
99-
assert id3 != id4
100-
assert id3 == ges3.id()
101-
assert id4 == ges4.id()
102-
103-
ges5 = eigenpy.GeneralizedEigenSolver(A, B)
104-
ges6 = eigenpy.GeneralizedEigenSolver(A, B)
105-
id5 = ges5.id()
106-
id6 = ges6.id()
107-
assert id5 != id6
108-
assert id5 == ges5.id()
109-
assert id6 == ges6.id()
110-
111-
ges7 = eigenpy.GeneralizedEigenSolver(A, B, True)
112-
ges8 = eigenpy.GeneralizedEigenSolver(A, B, False)
113-
id7 = ges7.id()
114-
id8 = ges8.id()
115-
assert id7 != id8
116-
assert id7 == ges7.id()
117-
assert id8 == ges8.id()

0 commit comments

Comments
 (0)