code: def test_noncentral_chi2_log_cdf_hard(self):
      dfs = np.array(
          [1.0, 1.0, 0.5, 3.7, 2.0, 10.0, 1000.0, 1e7, 1e2, 1e2]
      )
      ncs = np.array(
          [0.0, 10.0, 1.0, 2.0, 1000.0, 0.0, 100.0, 1e3, 1e6, 1e1]
      )
  
      df = tf.convert_to_tensor(dfs, dtype=tf.float64)
      nc = tf.convert_to_tensor(ncs, dtype=tf.float64)
  
      x = np.array(
          [
              0.1,
              12.0,
              2.5,
              5.5,
              1002.0,
              20.0,
              1100.0,
              1e7,
              1e6 + 1e2,
              1e3,
          ],
          dtype=np.float64,
      )
  
      nc_chi2 = noncentral_chi2.NoncentralChi2(df, nc)
  
      expected_log_cdf = stats.ncx2.logcdf(x, df=dfs, nc=ncs)
  
      log_cdf_fn = tf.function(nc_chi2.log_cdf, autograph=False)
      log_cdf = log_cdf_fn(x)
  
      self.assertEqual(log_cdf.shape, (10,))
      self.assertAllClose(self.evaluate(log_cdf), expected_log_cdf)
  
      cdf_fn = tf.function(nc_chi2.cdf, autograph=False)
      cdf = cdf_fn(x)
  
      self.assertEqual(cdf.shape, (10,))
      self.assertAllClose(self.evaluate(cdf), np.exp(expected_log_cdf))
  
imports: from absl.testing import parameterized
  import numpy
  from scipy import stats
  import tensorflow
  from tensorflow_probability.python.distributions import noncentral_chi2
  from tensorflow_probability.python.distributions.internal import statistical_testing
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 5 for calling the NoncentralChi2Test obj's underlying member method code with example usage: obj.test_noncentral_chi2_log_cdf_hard() without return types