code: def test_inner_product_from_vec_representation(
      self, tangent_vec_a, tangent_vec_b, expected, atol
  ):
      algebra = self.space.lie_algebra
      tangent_vec_a = algebra.matrix_representation(tangent_vec_a)
      tangent_vec_b = algebra.matrix_representation(tangent_vec_b)
  
      res = self.space.metric.inner_product(
          tangent_vec_a, tangent_vec_b
      )
      self.assertAllClose(res, expected, atol=atol)
  
imports: import random
  import pytest
  import geomstats.backend
  from geomstats.geometry.invariant_metric import BiInvariantMetric, _InvariantMetricMatrix, _InvariantMetricVector
  from geomstats.geometry.special_euclidean import SpecialEuclidean
  from geomstats.geometry.special_orthogonal import SpecialOrthogonal
  from geomstats.test.parametrizers import DataBasedParametrizer
  from geomstats.test.random import RandomDataGenerator
  from geomstats.test_cases.geometry.invariant_metric import BiInvariantMetricTestCase, InvariantMetricMatrixTestCase, InvariantMetricVectorTestCase
  from .data.invariant_metric import BiInvariantMetricMatrixTestData, BiInvariantMetricVectorsSOTestData, InvariantMetricMatrixSETestData, InvariantMetricMatrixSO3TestData, InvariantMetricMatrixSOTestData, InvariantMetricVectorTestData
label_desc: Use image node_id 7 for calling the TestInvariantMetricMatrixSO3 obj's underlying member method code with example usage: obj.test_inner_product_from_vec_representation(tangent_vec_a, tangent_vec_b, expected, atol) without return types