Я пытаюсь увеличить охват моего теста, создав тестовый пример, который будет проверять условие if матрицы s в следующей программе.Я не знаю, какую матрицу я передаю функции np.linalg.svd
, чтобы получить конкретную s-матрицу для моего тестового примера.
Чтобы найти эту матрицу, я создал следующую программу и ожидал ее запуска до тех пор, пока не получу эту матрицу.Однако по какой-то причине он останавливается после нескольких выполнений, генерирующих ошибку. Превышена максимальная глубина рекурсии.Я не знаю, почему он так себя ведет.
Я запускаю его по python program.py
Пожалуйста, помогите
import numpy as np
import random
import pivot as p
def randomGenerator():
condition = True
while(condition):
matrices = np.random.rand(4, 4)
print(matrices)
u, s, v = np.linalg.svd(matrices, full_matrices=False)
Rank = 0
for i in range(len(s)):
if s[i] < 0.01:
s[i] = 0
print(s)
condition = False
else:
randomGenerator()
# Main #
randomGenerator()