Я реализую класс Matrix Product State, который является некоторой специальной схемой разложения тензоров в python / numpy для быстрого прототипирования алгоритма.
Я не думаю, что такая вещь уже существует, и я хочу сделать это сам, чтобы получить правильное понимание схемы.
Что я хочу иметь, так это то, что если я сохраню заданный тензор T в этом формате как T_mps, я получу доступ к восстановленным элементам с помощью T_mps [[i0, i1, ..., iL]]. Это достигается методом getitem (self, key) и отлично работает.
Теперь я хочу использовать numpy.allclose (T, mps_T) для проверки правильности моего разложения.
Но когда я делаю это, я получаю ошибку типа для своего собственного типа:
TypeError: функция не поддерживается для этих типов и не может безопасно привести к поддерживаемым типам
Я посмотрел документацию на allclose и там сказано, что функция работает для объектов типа «массив». Теперь, что это за концепция типа «массив» и где я могу найти ее спецификацию?
Может быть, мне лучше реализовать свой собственный метод allclose? Но это было бы что-то вроде изобретения колеса, не так ли?
Ценю любую помощь
Заранее спасибо