class_docstr: Class for the n-dimensional hyperbolic space.
  
  Common class for the n-dimensional hyperbolic space regardless the
  representation being used. This class gathers the change of coordinate
  methods that are common to all representations.
  
  This class cannot be instantiated in itself, but a public class
  `Hyperbolic` is available, that returns the class that corresponds to the
  chosen representation: Hyperboloid, Poincare Ball or Poincare Half-space.
class_docstr_tok: ["Class","for","the","n-dimensional","hyperbolic","space",".","Common","class","for","the","n-dimensional","hyperbolic","space","regardless","the","representation","being","used",".","This","class","gathers","the","change","of","coordinate","methods","that","are","common","to","all","representations",".","This","class","can","not","be","instantiated","in","itself",",","but","a","public","class","`","Hyperbolic","`","is","available",",","that","returns","the","class","that","corresponds","to","the","chosen","representation",":","Hyperboloid",",","Poincare","Ball","or","Poincare","Half-space","."]
docstr: Sample over the hyperbolic space.
  
  Sample over the hyperbolic space. The sampling is performed by sampling from
  the uniform distribution with respect to the intrinsic co-ordinates. This is
  not uniform with respect to the volume measure. The function then transforms
  intrinsic samples into the selected co-ordinate system.
  
  Parameters
  ----------
  n_samples : int
      Number of samples.
      Optional, default: 1.
  bound: float
      Bound defining the hypersquare in which to sample.
      Optional, default: 1.
  
  Returns
  -------
  samples : array-like, shape=[..., dim + 1]
      Samples in hyperbolic space.
docstr_tok: ["Sample","over","the","hyperbolic","space",".","Sample","over","the","hyperbolic","space",".","The","sampling","is","performed","by","sampling","from","the","uniform","distribution","with","respect","to","the","intrinsic","co-ordinates",".","This","is","not","uniform","with","respect","to","the","volume","measure",".","The","function","then","transforms","intrinsic","samples","into","the","selected","co-ordinate","system",".","Parameters","--","--","--","--","--","n_samples",":","int","Number","of","samples",".","Optional",",","default",":","1.","bound",":","float","Bound","defining","the","hypersquare","in","which","to","sample",".","Optional",",","default",":","1",".","Returns","--","--","--","-","samples",":","array-like",",","shape=","[","...",",","dim","+","1","]","Samples","in","hyperbolic","space","."]
code: def random_point(self, n_samples=1, bound=1.0):
      """Sample over the hyperbolic space.
  
      Sample over the hyperbolic space. The sampling is performed by sampling from
      the uniform distribution with respect to the intrinsic co-ordinates. This is
      not uniform with respect to the volume measure. The function then transforms
      intrinsic samples into the selected co-ordinate system.
  
      Parameters
      ----------
      n_samples : int
          Number of samples.
          Optional, default: 1.
      bound: float
          Bound defining the hypersquare in which to sample.
          Optional, default: 1.
  
      Returns
      -------
      samples : array-like, shape=[..., dim + 1]
          Samples in hyperbolic space.
      """
      size = (n_samples, self.dim)
      samples = bound * 2.0 * (gs.random.rand(*size) - 0.5)
  
      samples = self.change_coordinates_system(
          samples, "intrinsic", self.default_coords_type
      )
  
      if n_samples == 1:
          return samples[0]
      return samples
  
file_path: geomstats/geomstats/geometry/_hyperbolic.py
imports: import geomstats.backend
  from geomstats.geometry.riemannian_metric import RiemannianMetric
label_desc: Use image node_id 14 for calling the _Hyperbolic obj's underlying member method code with example usage: obj.random_point(n_samples, bound) and returns: samples, samples