class_docstr: Class for scalar products of Riemannian and pseudo-Riemannian metrics.
  
  This class multiplies the (0,2) metric tensor 'underlying_metric' by a scalar
  'scaling_factor'. Note that this does not scale distances by 'scaling_factor'. That
  would require multiplication by the square of the scalar.
  
  An object of this type can also be instantiated by the expression
  scaling_factor * underlying_metric.
  
  This class acts as a wrapper for the underlying Riemannian metric. All public
  attributes apart from 'underlying_metric' and 'scaling_factor' are loaded from the
  underlying metric at initialization and rescaled by the appropriate factor. Changes
  to the underlying metric at runtime will not affect the attributes of this object.
  
  One exception to this is when the 'underlying_metric' is itself of type
  ScalarProductMetric. In this case, rather than wrapping the wrapper, the
  'underlying_metric' of the first ScalarProductMetric object is wrapped a second
  time with a new 'scaling_factor'.
  
  Parameters
  ----------
  underlying_metric : RiemannianMetric
      The original metric of the manifold which is being scaled.
  scale : float
      The value by which to scale the metric. Note that this rescales the (0,2)
      metric tensor, so distances are rescaled by the square root of this.
docstr: Multiply the metric by a scalar.
  
  This method multiplies the (0,2) metric tensor by a scalar. Note that this does
  not scale distances by the scalar. That would require multiplication by the
  square of the scalar.
  
  Parameters
  ----------
  scalar : float
      The number by which to multiply the metric.
  
  Returns
  -------
  metric : ScalarProductMetric
      The metric multiplied by the scalar.
code: def __rmul__(self, scalar):
      """Multiply the metric by a scalar.
  
      This method multiplies the (0,2) metric tensor by a scalar. Note that this does
      not scale distances by the scalar. That would require multiplication by the
      square of the scalar.
  
      Parameters
      ----------
      scalar : float
          The number by which to multiply the metric.
  
      Returns
      -------
      metric : ScalarProductMetric
          The metric multiplied by the scalar.
      """
      return self * scalar
  
file_path: geomstats/geomstats/geometry/scalar_product_metric.py
imports: from functools import wraps
  import geomstats.backend
  import geomstats.errors
label_desc: Use image node_id 3 for calling the ScalarProductMetric obj's underlying member method code with example usage: obj.__rmul__(scalar) and returns: unknown