class_docstr: Class for Euclidean metrics.
  
  As a Riemannian metric, the Euclidean metric is:
  
  - flat: the inner-product is independent of the base point;
  - positive definite: it has signature (dimension, 0, 0),
    where dimension is the dimension of the Euclidean space.
class_docstr_tok: ["Class","for","Euclidean","metrics",".","As","a","Riemannian","metric",",","the","Euclidean","metric","is",":","-","flat",":","the","inner-product","is","independent","of","the","base","point",";","-","positive","definite",":","it","has","signature","(","dimension",",","0",",","0",")",",","where","dimension","is","the","dimension","of","the","Euclidean","space","."]
docstr: Inner product between two tangent vectors at a base point.
  
  Parameters
  ----------
  tangent_vec_a: array-like, shape=[..., dim]
      Tangent vector at base point.
  tangent_vec_b: array-like, shape=[..., dim]
      Tangent vector at base point.
  base_point: array-like, shape=[..., dim]
      Base point.
      Optional, default: None.
  
  Returns
  -------
  inner_product : array-like, shape=[...,]
      Inner-product.
docstr_tok: ["Inner","product","between","two","tangent","vectors","at","a","base","point",".","Parameters","--","--","--","--","--","tangent_vec_a",":","array-like",",","shape=","[","...",",","dim","]","Tangent","vector","at","base","point",".","tangent_vec_b",":","array-like",",","shape=","[","...",",","dim","]","Tangent","vector","at","base","point",".","base_point",":","array-like",",","shape=","[","...",",","dim","]","Base","point",".","Optional",",","default",":","None",".","Returns","--","--","--","-","inner_product",":","array-like",",","shape=","[","...",",","]","Inner-product","."]
code: def inner_product(
      self, tangent_vec_a, tangent_vec_b, base_point=None
  ):
      """Inner product between two tangent vectors at a base point.
  
      Parameters
      ----------
      tangent_vec_a: array-like, shape=[..., dim]
          Tangent vector at base point.
      tangent_vec_b: array-like, shape=[..., dim]
          Tangent vector at base point.
      base_point: array-like, shape=[..., dim]
          Base point.
          Optional, default: None.
  
      Returns
      -------
      inner_product : array-like, shape=[...,]
          Inner-product.
      """
      inner_product = gs.dot(tangent_vec_a, tangent_vec_b)
      return repeat_out(
          self._space.point_ndim,
          inner_product,
          tangent_vec_a,
          tangent_vec_b,
          base_point,
      )
  
file_path: geomstats/geomstats/geometry/euclidean.py
imports: import geomstats.backend
  from geomstats.geometry.base import VectorSpace
  from geomstats.geometry.riemannian_metric import RiemannianMetric
  from geomstats.vectorization import repeat_out
label_desc: Use image node_id 2 for calling the EuclideanMetric obj's underlying member method code with example usage: obj.inner_product(tangent_vec_a, tangent_vec_b, base_point) and returns: repeat_out