code: def test_burkardt_4(self):
      # This example is due to Moler and Van Loan.
      # The example will cause problems for the series summation approach,
      # as well as for diagonal Pade approximations.
      A = np.array(
          [
              [-49, 24],
              [-64, 31],
          ],
          dtype=float,
      )
      U = np.array([[3, 1], [4, 2]], dtype=float)
      V = np.array([[1, -1 / 2], [-2, 3 / 2]], dtype=float)
      w = np.array([-17, -1], dtype=float)
      desired = np.dot(U * np.exp(w), V)
      actual = expm(A)
      assert_allclose(actual, desired)
  
imports: import math
  import numpy
  from numpy import array, eye, exp, random
  from numpy.linalg import matrix_power
  from numpy.testing import assert_allclose, assert_, assert_array_almost_equal, assert_equal, assert_array_almost_equal_nulp, suppress_warnings
  from scipy.sparse import csc_matrix, SparseEfficiencyWarning
  from scipy.sparse.construct import eye
  from scipy.sparse.linalg.matfuncs import expm, _expm, ProductOperator, MatrixPowerOperator, _onenorm_matrix_power_nnm
  from scipy.sparse.sputils import matrix
  from scipy.linalg import logm
  from scipy.special import factorial, binom
  import scipy.sparse
  import scipy.sparse.linalg
label_desc: Use image node_id 17 for calling the TestExpM obj's underlying member method code with example usage: obj.test_burkardt_4() without return types