class_docstr: Class for the manifold of geometric distributions.
  
  This is the parameter space of geometric distributions
  i.e. [0,1] segment.
docstr: Project a point in ambient space to the open set.
  
  Return a new point belonging to [0,1] segment within the given tolerance.
  
  Parameters
  ----------
  point : array-like, shape=[..., 1]
      Point in ambient space.
  atol : float
      Tolerance to evaluate the position with respect to [0,1] interval.
  
  Returns
  -------
  projected : array-like, shape=[..., 1]
      Projected point.
docstr_tok: ["Project","a","point","in","ambient","space","to","the","open","set",".","Return","a","new","point","belonging","to","[","0,1","]","segment","within","the","given","tolerance",".","Parameters","--","--","--","--","--","point",":","array-like",",","shape=","[","...",",","1","]","Point","in","ambient","space",".","atol",":","float","Tolerance","to","evaluate","the","position","with","respect","to","[","0,1","]","interval",".","Returns","--","--","--","-","projected",":","array-like",",","shape=","[","...",",","1","]","Projected","point","."]
code: def projection(self, point, atol=gs.atol):
      """Project a point in ambient space to the open set.
  
      Return a new point belonging to [0,1] segment within the given tolerance.
  
      Parameters
      ----------
      point : array-like, shape=[..., 1]
          Point in ambient space.
      atol : float
          Tolerance to evaluate the position with respect to [0,1] interval.
  
      Returns
      -------
      projected : array-like, shape=[..., 1]
          Projected point.
      """
      return gs.where(
          gs.logical_or(point < atol, point > 1 - atol),
          (1 - atol) * gs.cast(point > 1 - atol, point.dtype)
          + atol * gs.cast(point < atol, point.dtype),
          point,
      )
  
imports: from scipy.stats import geom
  import geomstats.backend
  from geomstats.geometry.base import VectorSpaceOpenSet
  from geomstats.geometry.euclidean import Euclidean
  from geomstats.geometry.riemannian_metric import RiemannianMetric
  from geomstats.information_geometry.base import InformationManifoldMixin, ScipyUnivariateRandomVariable
label_desc: Use image node_id 5 for calling the GeometricDistributions obj's underlying member method code with example usage: obj.projection(point, atol) and returns: gs