T3Frame.allclose#

t3toolbox.frame_variations_format.T3Frame.allclose(other, rtol=1e-09, atol=0.0)#
def allclose(self, other: 'T3Frame', rtol: float = 1e-9, atol: float = 0.0) -> NDArray:  # bool array, stack_shape

True (per stack element) if other represents the same base point as self (gauge-invariant).

Compares the represented base points, not the cores: ||self.to_t3() - other.to_t3()|| <= atol + rtol * ||other.to_t3()|| in the dense Frobenius norm (via TuckerTensorTrain.norm(), no densification), per stack element (reduce with .all() for a single verdict). Invariant to the orthogonal/gauge representation – two different orthogonal bases for the same point compare equal.

Parameters:
  • other (T3Frame)

  • rtol (float)

  • atol (float)

Return type:

NDArray