docstr: ivy.Container instance method variant of ivy.dct. This method simply
  wraps the function, and so the docstring for ivy.dct also applies to
  this method with minimal changes.
  
  Parameters
  ----------
  self
      Container with the input signals.
  type
      The type of the dct. Must be 1, 2, 3 or 4.
  n
      The length of the transform. If n is less than the input signal length,
      then x is truncated, if n is larger then x is zero-padded.
  norm
      The type of normalization to be applied. Must be either None or "ortho".
  out
      optional output container, for writing the result to.
  
  Returns
  -------
  ret
      The transformed input.
  
  Examples
  --------
  >>> x = ivy.Container(a=ivy.array([8, 16, 24, 32, 40, 48, 56, 64]),
  ...                   b=ivy.array([1,  2,  3,  4,  5,  6,  7,  8]))
  >>> x.dct(type=2, norm='ortho')
  {
      a: ivy.array([102., -51.5, 0., -5.39, 0., -1.61, 0.,
                  -0.406]),
      b: ivy.array([12.7, -6.44, 0., -0.673, 0., -0.201, 0.,
                  -0.0507])
  }
docstr_tok: ["ivy.Container","instance","method","variant","of","ivy.dct",".","This","method","simply","wraps","the","function",",","and","so","the","docstring","for","ivy.dct","also","applies","to","this","method","with","minimal","changes",".","Parameters","--","--","--","--","--","self","Container","with","the","input","signals",".","type","The","type","of","the","dct",".","Must","be","1",",","2",",","3","or","4.","n","The","length","of","the","transform",".","If","n","is","less","than","the","input","signal","length",",","then","x","is","truncated",",","if","n","is","larger","then","x","is","zero-padded",".","norm","The","type","of","normalization","to","be","applied",".","Must","be","either","None","or","``","ortho","''",".","out","optional","output","container",",","for","writing","the","result","to",".","Returns","--","--","--","-","ret","The","transformed","input",".","Examples","--","--","--","--",">",">",">","x","=","ivy.Container","(","a=ivy.array","(","[","8",",","16",",","24",",","32",",","40",",","48",",","56",",","64","]",")",",","...","b=ivy.array","(","[","1",",","2",",","3",",","4",",","5",",","6",",","7",",","8","]",")",")",">",">",">","x.dct","(","type=2",",","norm='ortho","'",")","{","a",":","ivy.array","(","[","102.",",","-51.5",",","0.",",","-5.39",",","0.",",","-1.61",",","0.",",","-0.406","]",")",",","b",":","ivy.array","(","[","12.7",",","-6.44",",","0.",",","-0.673",",","0.",",","-0.201",",","0.",",","-0.0507","]",")","}"]
code: def dct(
      self: ivy.Container,
      /,
      *,
      type: Union[Literal[1, 2, 3, 4], ivy.Container] = 2,
      n: Optional[Union[int, ivy.Container]] = None,
      axis: Union[int, ivy.Container] = -1,
      norm: Optional[Union[Literal["ortho"], ivy.Container]] = None,
      out: Optional[ivy.Container] = None,
  ) -> ivy.Container:
      """ivy.Container instance method variant of ivy.dct. This method simply
      wraps the function, and so the docstring for ivy.dct also applies to
      this method with minimal changes.
  
      Parameters
      ----------
      self
          Container with the input signals.
      type
          The type of the dct. Must be 1, 2, 3 or 4.
      n
          The length of the transform. If n is less than the input signal length,
          then x is truncated, if n is larger then x is zero-padded.
      norm
          The type of normalization to be applied. Must be either None or "ortho".
      out
          optional output container, for writing the result to.
  
      Returns
      -------
      ret
          The transformed input.
  
      Examples
      --------
      >>> x = ivy.Container(a=ivy.array([8, 16, 24, 32, 40, 48, 56, 64]),
      ...                   b=ivy.array([1,  2,  3,  4,  5,  6,  7,  8]))
      >>> x.dct(type=2, norm='ortho')
      {
          a: ivy.array([102., -51.5, 0., -5.39, 0., -1.61, 0.,
                      -0.406]),
          b: ivy.array([12.7, -6.44, 0., -0.673, 0., -0.201, 0.,
                      -0.0507])
      }
      """
      return self.static_dct(
          self,
          type=type,
          n=n,
          axis=axis,
          norm=norm,
          out=out,
      )
  
imports: from typing import Optional, Union, List, Dict, Tuple, Literal, Sequence, Callable
  import ivy
  from ivy.data_classes.container.base import ContainerBase
label_desc: Use image node_id 14 for calling the _ContainerWithLayersExperimental obj's underlying member method code with example usage: obj.dct() and returns: self