class_docstr: Class for the metric of the n-dimensional hyperbolic space.
  
  Class for the metric of the n-dimensional hyperbolic space
  as embedded in the Poincaré half space model.
docstr: Compute the Riemannian exponential.
  
  Parameters
  ----------
  tangent_vec : array-like, shape=[...,n]
      Tangent vector at the base point in the Poincare half space.
  base_point : array-like, shape=[...,n]
      Point in the Poincare half space.
  
  Returns
  -------
  end_point : array-like, shape=[...,n]
      Point in the Poincare half space, reached by the geodesic
      starting from `base_point` with initial velocity `tangent_vec`
docstr_tok: ["Compute","the","Riemannian","exponential",".","Parameters","--","--","--","--","--","tangent_vec",":","array-like",",","shape=","[","...",",","n","]","Tangent","vector","at","the","base","point","in","the","Poincare","half","space",".","base_point",":","array-like",",","shape=","[","...",",","n","]","Point","in","the","Poincare","half","space",".","Returns","--","--","--","-","end_point",":","array-like",",","shape=","[","...",",","n","]","Point","in","the","Poincare","half","space",",","reached","by","the","geodesic","starting","from","`","base_point","`","with","initial","velocity","`","tangent_vec","`"]
code: def exp(self, tangent_vec, base_point):
      """Compute the Riemannian exponential.
  
      Parameters
      ----------
      tangent_vec : array-like, shape=[...,n]
          Tangent vector at the base point in the Poincare half space.
      base_point : array-like, shape=[...,n]
          Point in the Poincare half space.
  
      Returns
      -------
      end_point : array-like, shape=[...,n]
          Point in the Poincare half space, reached by the geodesic
          starting from `base_point` with initial velocity `tangent_vec`
      """
      base_point_ball = (
          self._poincare_ball.half_space_to_ball_coordinates(base_point)
      )
      tangent_vec_ball = self._poincare_ball.half_space_to_ball_tangent(
          tangent_vec, base_point
      )
      end_point_ball = self._poincare_ball.metric.exp(
          tangent_vec_ball, base_point_ball
      )
      return self._poincare_ball.ball_to_half_space_coordinates(
          end_point_ball
      )
  
imports: import math
  import geomstats.backend
  from geomstats.geometry._hyperbolic import _Hyperbolic
  from geomstats.geometry.base import VectorSpaceOpenSet
  from geomstats.geometry.euclidean import Euclidean
  from geomstats.geometry.poincare_ball import PoincareBall
  from geomstats.geometry.riemannian_metric import RiemannianMetric
  from geomstats.vectorization import repeat_out
label_desc: Use image node_id 3 for calling the PoincareHalfSpaceMetric obj's underlying member method code with example usage: obj.exp(tangent_vec, base_point) and returns: self