code: def testInverseGaussianLogPdf(self):
      batch_size = 6
      loc_v = 2.0
      concentration_v = 3.0
      x_v = [3.0, 3.1, 4.0, 5.0, 6.0, 7.0]
      dist = inverse_gaussian.InverseGaussian(
          self.make_tensor([loc_v] * batch_size),
          self.make_tensor([concentration_v] * batch_size),
          validate_args=True,
      )
  
      log_prob = dist.log_prob(self.make_tensor(x_v))
      if self.use_static_shape:
          self.assertEqual(log_prob.shape, (6,))
      self.assertAllClose(
          self.evaluate(log_prob),
          _scipy_invgauss(loc_v, concentration_v).logpdf(x_v),
      )
  
      pdf = dist.prob(self.make_tensor(x_v))
      if self.use_static_shape:
          self.assertEqual(pdf.shape, (6,))
      self.assertAllClose(
          self.evaluate(pdf),
          _scipy_invgauss(loc_v, concentration_v).pdf(x_v),
      )
  
imports: import numpy
  from scipy import misc
  from scipy import stats
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import inverse_gaussian
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 6 for calling the _InverseGaussianTest obj's underlying member method code with example usage: obj.testInverseGaussianLogPdf() without return types