code: public boolean valueEquals(NDArrayDoubles other, double tolerance) {
      if (!Arrays.equals(dimensions, other.dimensions)) return false;
      if (dimensions.length != other.dimensions.length) return false;
      for (int i = 0; i < dimensions.length; i++) {
        if (Math.abs(dimensions[i] - other.dimensions[i]) > tolerance) return false;
      }
      return true;
    }
docs: Does a deep comparison, using equality with tolerance checks against the vector table of values.
  
  @param other     the factor to compare to
  @param tolerance the tolerance to accept in differences
  @return whether the two factors are within tolerance of one another