code: def testZipfLogPmfMultidimensional_NonIntegerArgs(self):
      batch_size = 6
      power = tf.constant([[2.0, 4.0, 5.0]] * batch_size)
      power_v = [2.0, 4.0, 5.0]
      x = np.array([[2.0, 3.2, 4.3, 5.5, 6.9, 7.0]], dtype=np.float32).T
      floor_x = np.floor(x)
      ceil_x = np.ceil(x)
  
      dist = zipf.Zipf(power=power, validate_args=True)
      log_pmf = dist.log_prob(x)
      self.assertEqual((6, 3), log_pmf.shape)
      self.assertAllBetween(
          self.evaluate(log_pmf),
          stats.zipf.logpmf(ceil_x, power_v),
          stats.zipf.logpmf(floor_x, power_v),
      )
  
      pmf = dist.prob(x)
      self.assertEqual((6, 3), pmf.shape)
      self.assertAllBetween(
          self.evaluate(pmf),
          stats.zipf.pmf(ceil_x, power_v),
          stats.zipf.pmf(floor_x, power_v),
      )
  
imports: import numpy
  from scipy import stats
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import zipf
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 14 for calling the ZipfTest obj's underlying member method code with example usage: obj.testZipfLogPmfMultidimensional_NonIntegerArgs() without return types