code: def test_eigh_tridiagonal(
      *,
      args_packet,
      test_flags,
      backend_fw,
      fn_name,
      on_device,
  ):
      (
          dtype,
          alpha,
          beta,
          eigvals_only,
          select,
          select_range,
          tol,
      ) = args_packet
      test_flags.with_out = False
      results = helpers.test_function(
          test_flags=test_flags,
          backend_to_test=backend_fw,
          fn_name=fn_name,
          on_device=on_device,
          rtol_=1e-2,
          atol_=1e-2,
          input_dtypes=dtype,
          alpha=alpha[0],
          beta=beta[0],
          eigvals_only=eigvals_only,
          select=select,
          select_range=select_range,
          tol=tol,
          test_values=eigvals_only,
          return_flat_np_arrays=True,
      )
      if results is None:
          return
      ret_np_flat, ret_np_from_gt_flat = results
      reconstructed_np = None
      for i in range(len(ret_np_flat) // 2):
          eigenvalue = ret_np_flat[i]
          eigenvector = ret_np_flat[len(ret_np_flat) // 2 + i]
          if reconstructed_np is not None:
              reconstructed_np += eigenvalue * np.matmul(
                  eigenvector.reshape(1, -1), eigenvector.reshape(-1, 1)
              )
          else:
              reconstructed_np = eigenvalue * np.matmul(
                  eigenvector.reshape(1, -1), eigenvector.reshape(-1, 1)
              )
  
      reconstructed_from_np = None
      for i in range(len(ret_np_from_gt_flat) // 2):
          eigenvalue = ret_np_from_gt_flat[i]
          eigenvector = ret_np_from_gt_flat[len(ret_np_flat) // 2 + i]
          if reconstructed_from_np is not None:
              reconstructed_from_np += eigenvalue * np.matmul(
                  eigenvector.reshape(1, -1), eigenvector.reshape(-1, 1)
              )
          else:
              reconstructed_from_np = eigenvalue * np.matmul(
                  eigenvector.reshape(1, -1), eigenvector.reshape(-1, 1)
              )
      # value test
      helpers.assert_all_close(
          reconstructed_np,
          reconstructed_from_np,
          rtol=1e-1,
          atol=1e-2,
          backend=backend_fw,
          ground_truth_backend=test_flags.ground_truth_backend,
      )
  
imports: import math
  from hypothesis import strategies
  from hypothesis import assume
  import numpy
  import pytest
  import itertools
  import ivy_tests.test_ivy.helpers
  from ivy_tests.test_ivy.helpers import handle_test, BackendHandler
  import ivy
label_desc: Use image node_id 29 for calling a global function with example usage: test_eigh_tridiagonal() without return types