docstr: Tests handling inner_second_order_coeff.
  
  As in previous test, take the diffusion equation `v_{t} - v_{xx} = 0` and
  substitute `v = exp(x) u`, but this time keep exponent under the derivative:
  `u_{t} - exp(-x)[exp(x)u]_{xx} = 0`. Expect the same solution as in
  previous test.
docstr_tok: ["Tests","handling","inner_second_order_coeff",".","As","in","previous","test",",","take","the","diffusion","equation","`","v_","{","t","}","-","v_","{","xx","}","=","0","`","and","substitute","`","v","=","exp","(","x",")","u","`",",","but","this","time","keep","exponent","under","the","derivative",":","`","u_","{","t","}","-","exp","(","-x",")","[","exp","(","x",")","u","]","_","{","xx","}","=","0","`",".","Expect","the","same","solution","as","in","previous","test","."]
code: def testInnerSecondOrderCoeff(self):
      """Tests handling inner_second_order_coeff.
  
      As in previous test, take the diffusion equation `v_{t} - v_{xx} = 0` and
      substitute `v = exp(x) u`, but this time keep exponent under the derivative:
      `u_{t} - exp(-x)[exp(x)u]_{xx} = 0`. Expect the same solution as in
      previous test.
      """
      grid = grids.uniform_grid(
          minimums=[0], maximums=[1], sizes=[501], dtype=tf.float32
      )
      xs = grid[0]
  
      final_t = 0.1
      time_step = 0.001
  
      def second_order_coeff_fn(t, coord_grid):
          del t
          x = coord_grid[0]
          return [[-tf.math.exp(-x)]]
  
      def inner_second_order_coeff_fn(t, coord_grid):
          del t
          x = coord_grid[0]
          return [[tf.math.exp(x)]]
  
      initial = tf.math.exp(-xs) * _reference_pde_initial_cond(xs)
      expected = tf.math.exp(-xs) * _reference_pde_solution(xs, final_t)
  
      actual = fd_solvers.solve_forward(
          start_time=0,
          end_time=final_t,
          coord_grid=grid,
          values_grid=initial,
          time_step=time_step,
          second_order_coeff_fn=second_order_coeff_fn,
          inner_second_order_coeff_fn=inner_second_order_coeff_fn,
      )[0]
  
      self.assertAllClose(expected, actual, atol=1e-3, rtol=1e-3)
  
imports: import math
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  import tf_quant_finance
  from tensorflow.python.framework import test_util
label_desc: Use image node_id 15 for calling the ParabolicEquationStepperTest obj's underlying member method code with example usage: obj.testInnerSecondOrderCoeff() and returns: list, list