docstr: ivy.Container instance method variant of ivy.eigh. This method
  simply wraps the function, and so the docstring for ivy.eigh also
  applies to this method with minimal changes.
  
  Parameters
  ----------
  self : ivy.Container
      Ivy container having shape `(..., M, M)` and whose
      innermost two dimensions form square matrices.
      Should have a floating-point data type.
  UPLO : str, optional
      Specifies whether the upper or lower triangular part of the
      Hermitian matrix should be
      used for the eigenvalue decomposition. Default is 'L'.
  key_chains : Union[List[str], Dict[str, str]], optional
      The key-chains to apply or not apply the method to. Default is `None`.
  to_apply : bool, optional
      If True, the method will be applied to key_chains, otherwise key_chains
      will be skipped. Default is `True`.
  prune_unapplied : bool, optional
      Whether to prune key_chains for which the function was not applied.
      Default is `False`.
  map_sequences : bool, optional
      Whether to also map method to sequences (lists, tuples).
      Default is `False`.
  out : ivy.Container, optional
      Optional output container, for writing the result to.
      It must have a shape that the inputs broadcast to.
  
  Returns
  -------
  ivy.Container
      A container containing the computed eigenvalues.
      The returned array must have shape `(..., M)` and have the same
      data type as `self`.
  
  Examples
  --------
  With `ivy.Container` inputs:
  
  >>> x = ivy.Container(a=ivy.array([[[1.,2.],[2.,1.]]]),
  ...                   b=ivy.array([[[2.,4.],[4.,2.]]]))
  >>> y = x.eigh()
  >>> print(y)
  {
      a: ivy.array([[-1., 3.]]),
      b: ivy.array([[-2., 6.]])
  }
code: def eigh(
      self: ivy.Container,
      /,
      *,
      UPLO: Union[str, ivy.Container] = "L",
      key_chains: Optional[
          Union[List[str], Dict[str, str], ivy.Container]
      ] = None,
      to_apply: Union[bool, ivy.Container] = True,
      prune_unapplied: Union[bool, ivy.Container] = False,
      map_sequences: Union[bool, ivy.Container] = False,
      out: Optional[ivy.Container] = None,
  ) -> ivy.Container:
      """ivy.Container instance method variant of ivy.eigh. This method
      simply wraps the function, and so the docstring for ivy.eigh also
      applies to this method with minimal changes.
  
      Parameters
      ----------
      self : ivy.Container
          Ivy container having shape `(..., M, M)` and whose
          innermost two dimensions form square matrices.
          Should have a floating-point data type.
      UPLO : str, optional
          Specifies whether the upper or lower triangular part of the
          Hermitian matrix should be
          used for the eigenvalue decomposition. Default is 'L'.
      key_chains : Union[List[str], Dict[str, str]], optional
          The key-chains to apply or not apply the method to. Default is `None`.
      to_apply : bool, optional
          If True, the method will be applied to key_chains, otherwise key_chains
          will be skipped. Default is `True`.
      prune_unapplied : bool, optional
          Whether to prune key_chains for which the function was not applied.
          Default is `False`.
      map_sequences : bool, optional
          Whether to also map method to sequences (lists, tuples).
          Default is `False`.
      out : ivy.Container, optional
          Optional output container, for writing the result to.
          It must have a shape that the inputs broadcast to.
  
      Returns
      -------
      ivy.Container
          A container containing the computed eigenvalues.
          The returned array must have shape `(..., M)` and have the same
          data type as `self`.
  
      Examples
      --------
      With `ivy.Container` inputs:
  
      >>> x = ivy.Container(a=ivy.array([[[1.,2.],[2.,1.]]]),
      ...                   b=ivy.array([[[2.,4.],[4.,2.]]]))
      >>> y = x.eigh()
      >>> print(y)
      {
          a: ivy.array([[-1., 3.]]),
          b: ivy.array([[-2., 6.]])
      }
      """
      return self._static_eigh(
          self,
          UPLO=UPLO,
          key_chains=key_chains,
          to_apply=to_apply,
          prune_unapplied=prune_unapplied,
          map_sequences=map_sequences,
          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 14 for calling the _ContainerWithLinearAlgebra obj's underlying member method code with example usage: obj.eigh() and returns: self