class_docstr: A Riemannian metric on the Hilbert sphere (functions of norm 1).
class_docstr_tok: ["A","Riemannian","metric","on","the","Hilbert","sphere","(","functions","of","norm","1",")","."]
docstr: Compute the Riemannian exponential of a tangent vector.
  
  Parameters
  ----------
  tangent_vec : array-like, shape=[..., n_samples]
      Tangent vector at a base point.
  base_point : array-like, shape=[..., n_samples]
      Point on the hypersphere.
  
  Returns
  -------
  exp : array-like, shape=[..., n_samples]
      Point on the hypersphere equal to the Riemannian exponential
      of tangent_vec at the base point.
docstr_tok: ["Compute","the","Riemannian","exponential","of","a","tangent","vector",".","Parameters","--","--","--","--","--","tangent_vec",":","array-like",",","shape=","[","...",",","n_samples","]","Tangent","vector","at","a","base","point",".","base_point",":","array-like",",","shape=","[","...",",","n_samples","]","Point","on","the","hypersphere",".","Returns","--","--","--","-","exp",":","array-like",",","shape=","[","...",",","n_samples","]","Point","on","the","hypersphere","equal","to","the","Riemannian","exponential","of","tangent_vec","at","the","base","point","."]
code: def exp(self, tangent_vec, base_point):
      """Compute the Riemannian exponential of a tangent vector.
  
      Parameters
      ----------
      tangent_vec : array-like, shape=[..., n_samples]
          Tangent vector at a base point.
      base_point : array-like, shape=[..., n_samples]
          Point on the hypersphere.
  
      Returns
      -------
      exp : array-like, shape=[..., n_samples]
          Point on the hypersphere equal to the Riemannian exponential
          of tangent_vec at the base point.
      """
      proj_tangent_vec = self._space._sinf.to_tangent(
          tangent_vec, base_point
      )
      norm = self._space._sinf.metric.norm(proj_tangent_vec)
  
      norm = gs.clip(norm, -gs.pi, gs.pi)
      coef_1 = utils.taylor_exp_even_func(
          norm, utils.cos_close_0, order=4
      )
      coef_2 = utils.taylor_exp_even_func(
          norm, utils.sinc_close_0, order=4
      )
      exp = gs.einsum("...,...j->...j", coef_1, base_point) + gs.einsum(
          "...,...j->...j", coef_2, proj_tangent_vec
      )
  
      return exp
  
file_path: geomstats/geomstats/geometry/functions.py
imports: import math
  import geomstats.algebra_utils
  import geomstats.backend
  from geomstats.geometry.manifold import Manifold
  from geomstats.geometry.riemannian_metric import RiemannianMetric
label_desc: Use image node_id 2 for calling the HilbertSphereMetric obj's underlying member method code with example usage: obj.exp(tangent_vec, base_point) and returns: exp