docstr: ivy.Container special method variant of ivy.pinv. This method simply
  wraps the function, and so the docstring for ivy.pinv also applies to
  this method with minimal changes.
  
  Parameters
  ----------
  x
      input array having shape ``(..., M, N)`` and whose innermost two
      dimensions form``MxN`` matrices. Should have a floating-point
      data type.
  rtol
      relative tolerance for small singular values approximately less
      than or equal to ``rtol * largest_singular_value`` are set to zero.
  out
      optional output array, for writing the result to.
      It must have a shape that the inputs broadcast to.
  
  Returns
  -------
  ret
      an array containing the pseudo-inverses. The returned array must have a
      floating-point data type determined by :ref:`type-promotion` and
      must have shape ``(..., N, M)`` (i.e., must have the same shape as
      ``x``, except the innermost two dimensions must be transposed).
  
  Examples
  --------
  >>> x = ivy.Container(a= ivy.array([[1., 2.], [3., 4.]]))
  >>> y = ivy.Container.static_pinv(x)
  >>> print(y)
  {
      a: ivy.array([[-2., 1.],
                    [1.5, -0.5]])
  }
  
  >>> x = ivy.Container(a=ivy.array([[1., 2.], [3., 4.]]))
  >>> out = ivy.Container(a=ivy.zeros((2, 2)))
  >>> ivy.Container.static_pinv(x, rtol=1e-1, out=out)
  >>> print(out)
  {
      a: ivy.array([[0.0426, 0.0964],
                    [0.0605, 0.1368]])
  }
code: def _static_pinv(
      x: Union[ivy.Array, ivy.NativeArray, ivy.Container],
      /,
      *,
      rtol: Optional[Union[float, Tuple[float], ivy.Container]] = None,
      out: Optional[ivy.Container] = None,
  ) -> ivy.Container:
      """ivy.Container special method variant of ivy.pinv. This method simply
      wraps the function, and so the docstring for ivy.pinv also applies to
      this method with minimal changes.
  
      Parameters
      ----------
      x
          input array having shape ``(..., M, N)`` and whose innermost two
          dimensions form``MxN`` matrices. Should have a floating-point
          data type.
      rtol
          relative tolerance for small singular values approximately less
          than or equal to ``rtol * largest_singular_value`` are set to zero.
      out
          optional output array, for writing the result to.
          It must have a shape that the inputs broadcast to.
  
      Returns
      -------
      ret
          an array containing the pseudo-inverses. The returned array must have a
          floating-point data type determined by :ref:`type-promotion` and
          must have shape ``(..., N, M)`` (i.e., must have the same shape as
          ``x``, except the innermost two dimensions must be transposed).
  
      Examples
      --------
      >>> x = ivy.Container(a= ivy.array([[1., 2.], [3., 4.]]))
      >>> y = ivy.Container.static_pinv(x)
      >>> print(y)
      {
          a: ivy.array([[-2., 1.],
                        [1.5, -0.5]])
      }
  
      >>> x = ivy.Container(a=ivy.array([[1., 2.], [3., 4.]]))
      >>> out = ivy.Container(a=ivy.zeros((2, 2)))
      >>> ivy.Container.static_pinv(x, rtol=1e-1, out=out)
      >>> print(out)
      {
          a: ivy.array([[0.0426, 0.0964],
                        [0.0605, 0.1368]])
      }
      """
      return ContainerBase.cont_multi_map_in_function(
          "pinv",
          x,
          rtol=rtol,
          out=out,
      )
  
imports: from typing import Union, Optional, Tuple, Literal, List, Dict, Sequence
  from ivy.data_classes.container.base import ContainerBase
  import ivy
label_desc: Use image node_id 21 for calling the _ContainerWithLinearAlgebra obj's underlying member method code with example usage: obj._static_pinv() and returns: ContainerBase