docstr: Check parallel transported norm is preserved.
  
  This is for parallel transport defined by boundary value problem (bvp).
  
  Parameters
  ----------
  n_points : int
      Number of random points to generate.
  atol : float
      Absolute tolerance.
docstr_tok: ["Check","parallel","transported","norm","is","preserved",".","This","is","for","parallel","transport","defined","by","boundary","value","problem","(","bvp",")",".","Parameters","--","--","--","--","--","n_points",":","int","Number","of","random","points","to","generate",".","atol",":","float","Absolute","tolerance","."]
code: def test_parallel_transport_bvp_norm(self, n_points, atol):
      """Check parallel transported norm is preserved.
  
      This is for parallel transport defined by boundary value problem (bvp).
  
      Parameters
      ----------
      n_points : int
          Number of random points to generate.
      atol : float
          Absolute tolerance.
      """
      base_point = self.data_generator.random_point(n_points)
      end_point = self.data_generator.random_point(n_points)
      tangent_vec = self.data_generator.random_tangent_vec(base_point)
  
      transported = self.space.metric.parallel_transport(
          tangent_vec, base_point, end_point=end_point
      )
  
      self.assertAllClose(
          self.space.metric.norm(transported, end_point),
          self.space.metric.norm(tangent_vec, base_point),
          atol=atol,
      )
  
imports: import math
  import pytest
  import geomstats.backend
  from geomstats.geometry.spd_matrices import SPDMatrices
  from geomstats.test_cases.geometry.connection import ConnectionComparisonTestCase, ConnectionTestCase
  from geomstats.vectorization import get_batch_shape
label_desc: Use image node_id 33 for calling the RiemannianMetricTestCase obj's underlying member method code with example usage: obj.test_parallel_transport_bvp_norm(n_points, atol) without return types