class_docstr: Pullback metric.
  
  Let :math:`f` be an immersion :math:`f: M \rightarrow N`
  of one manifold :math:`M` into the Riemannian manifold :math:`N`
  with metric :math:`g`.
  The pull-back metric :math:`f^*g` is defined on :math:`M` for a
  base point :math:`p` as:
  :math:`(f^*g)_p(u, v) = g_{f(p)}(df_p u , df_p v)
  \quad \forall u, v \in T_pM`
  
  Note
  ----
  The pull-back metric is currently only implemented for an
  immersion into the Euclidean space, i.e. for
  
  :math:`N=\mathbb{R}^n`.
class_docstr_tok: ["Pullback","metric",".","Let",":","math",":","`","f","`","be","an","immersion",":","math",":","`","f",":","M","\\rightarrow","N","`","of","one","manifold",":","math",":","`","M","`","into","the","Riemannian","manifold",":","math",":","`","N","`","with","metric",":","math",":","`","g","`",".","The","pull-back","metric",":","math",":","`","f^","*","g","`","is","defined","on",":","math",":","`","M","`","for","a","base","point",":","math",":","`","p","`","as",":",":","math",":","`","(","f^","*","g",")","_p","(","u",",","v",")","=","g_","{","f","(","p",")","}","(","df_p","u",",","df_p","v",")","\\quad","\\forall","u",",","v","\\in","T_pM","`","Note","--","--","The","pull-back","metric","is","currently","only","implemented","for","an","immersion","into","the","Euclidean","space",",","i.e",".","for",":","math",":","`","N=\\mathbb","{","R","}","^n","`","."]
docstr: Compute the mean curvature vector.
  
  The mean curvature vector is defined at base point :math:`p` by
  :math:`H_p^\alpha= \frac{1}{d} (f^{*}g)_{p}^{ij} (\partial_{i j}^2 f^\alpha(p)`
  :math:`-\Gamma_{i j}^k(p) \partial_k f^\alpha(p))`
  where :math:`f^{*}g` is the pullback of the metric :math:`g` by the
  immersion :math:`f`.
  
  Parameters
  ----------
  base_point : array-like, shape=[..., dim]
      Base point.
  
  Returns
  -------
  mean_curvature_vector : array-like, shape=[..., embedding_dim]
      Mean curvature vector.
docstr_tok: ["Compute","the","mean","curvature","vector",".","The","mean","curvature","vector","is","defined","at","base","point",":","math",":","`","p","`","by",":","math",":","`","H_p^\\alpha=","\\frac","{","1","}","{","d","}","(","f^","{","*","}","g",")","_","{","p","}","^","{","ij","}","(","\\partial_","{","i","j","}","^2","f^\\alpha","(","p",")","`",":","math",":","`","-\\Gamma_","{","i","j","}","^k","(","p",")","\\partial_k","f^\\alpha","(","p",")",")","`","where",":","math",":","`","f^","{","*","}","g","`","is","the","pullback","of","the","metric",":","math",":","`","g","`","by","the","immersion",":","math",":","`","f","`",".","Parameters","--","--","--","--","--","base_point",":","array-like",",","shape=","[","...",",","dim","]","Base","point",".","Returns","--","--","--","-","mean_curvature_vector",":","array-like",",","shape=","[","...",",","embedding_dim","]","Mean","curvature","vector","."]
code: def mean_curvature_vector(self, base_point):
      r"""Compute the mean curvature vector.
  
      The mean curvature vector is defined at base point :math:`p` by
      :math:`H_p^\alpha= \frac{1}{d} (f^{*}g)_{p}^{ij} (\partial_{i j}^2 f^\alpha(p)`
      :math:`-\Gamma_{i j}^k(p) \partial_k f^\alpha(p))`
      where :math:`f^{*}g` is the pullback of the metric :math:`g` by the
      immersion :math:`f`.
  
      Parameters
      ----------
      base_point : array-like, shape=[..., dim]
          Base point.
  
      Returns
      -------
      mean_curvature_vector : array-like, shape=[..., embedding_dim]
          Mean curvature vector.
      """
      second_fund_form = self.second_fundamental_form(base_point)
      cometric = self.cometric_matrix(base_point)
      return gs.einsum("...ij,...aij->...a", cometric, second_fund_form)
  
imports: import geomstats.backend
  from geomstats.geometry.riemannian_metric import RiemannianMetric
  from geomstats.numerics.geodesic import ExpODESolver, LogShootingSolver
  from geomstats.numerics.ivp import GSIVPIntegrator
  from geomstats.vectorization import check_is_batch
label_desc: Use image node_id 6 for calling the PullbackMetric obj's underlying member method code with example usage: obj.mean_curvature_vector(base_point) and returns: gs