class_docstr: Mixin test for Matern type kernels.
  
  Subclasses must specify _kernel_type and _numpy_kernel.
code: def testGradsofGradsAtIdenticalInputsNotNaN(self):
      x = tf.constant(np.arange(2 * 5, dtype=np.float32).reshape(2, 5))
      p = tf.convert_to_tensor([1.0, 0.1], dtype=tf.float32)
  
      def f(p):
          k = self._kernel_type(amplitude=p[0])
          y = p[1] * x
          return tf.reduce_mean(k.matrix(y, y))
  
      def _grad_f(p):
          return tf.math.reduce_mean(
              gradient.value_and_gradient(f, p)[1]
          )
  
      grad_of_grad = gradient.value_and_gradient(_grad_f, p)[1]
      self.assertAllFinite(grad_of_grad)
  
imports: from absl.testing import parameterized
  import numpy
  import scipy.special
  import tensorflow.compat.v2
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
  from tensorflow_probability.python.math.psd_kernels import matern
label_desc: Use image node_id 9 for calling the _MaternTestCase obj's underlying member method code with example usage: obj.testGradsofGradsAtIdenticalInputsNotNaN() and returns: tf, tf