docs: def dot(self, vec):
          """Dot product with another vector"""
          if not isinstance(vec, self.__class__):
              raise TypeError('Dot product operand must be a vector')
          return np.dot(self, vec)