docstr: ivy.Array instance method variant of ivy.ifft. This method simply
  wraps the function, and so the docstring for ivy.ifft also applies to
  this method with minimal changes.
  
  Parameters
  ----------
  self
      Input volume *[...,d_in,...]*,
      where d_in indicates the dimension that needs IFFT.
  dim
      The dimension along which to take the one dimensional IFFT.
  norm
      Optional argument, "backward", "ortho" or "forward". Defaults to be
      "backward".
      "backward" indicates no normalization.
      "ortho" indicates normalization by 1/sqrt(n).
      "forward" indicates normalization by 1/n.
  n
      Optional argument indicating the sequence length, if given, the input
      would be padded with zero or truncated to length n before performing IFFT.
      Should be a integer greater than 1.
  out
      Optional output array, for writing the result to. It must have a shape that
      the inputs broadcast to.
  
  Returns
  -------
  ret
      Array containing the transformed input.
  
  Examples
  --------
  >>> a = ivy.array((np.exp(2j * np.pi * np.arange(8) / 8)))
  >>> a.ifft(0)
  ivy.array([-4.30636606e-17+1.43029718e-18j,  0.00000000e+00+1.53080850e-17j,
              1.43029718e-18+1.53080850e-17j,  0.00000000e+00+9.58689626e-18j,
              1.24474906e-17+2.91858728e-17j,  0.00000000e+00+1.53080850e-17j,
              2.91858728e-17+1.53080850e-17j,  1.00000000e+00-1.01435406e-16j])
docstr_tok: ["ivy.Array","instance","method","variant","of","ivy.ifft",".","This","method","simply","wraps","the","function",",","and","so","the","docstring","for","ivy.ifft","also","applies","to","this","method","with","minimal","changes",".","Parameters","--","--","--","--","--","self","Input","volume","*","[","...",",","d_in",",","...","]","*",",","where","d_in","indicates","the","dimension","that","needs","IFFT",".","dim","The","dimension","along","which","to","take","the","one","dimensional","IFFT",".","norm","Optional","argument",",","``","backward","''",",","``","ortho","''","or","``","forward","''",".","Defaults","to","be","``","backward","''",".","``","backward","''","indicates","no","normalization",".","``","ortho","''","indicates","normalization","by","1\/sqrt","(","n",")",".","``","forward","''","indicates","normalization","by","1\/n",".","n","Optional","argument","indicating","the","sequence","length",",","if","given",",","the","input","would","be","padded","with","zero","or","truncated","to","length","n","before","performing","IFFT",".","Should","be","a","integer","greater","than","1.","out","Optional","output","array",",","for","writing","the","result","to",".","It","must","have","a","shape","that","the","inputs","broadcast","to",".","Returns","--","--","--","-","ret","Array","containing","the","transformed","input",".","Examples","--","--","--","--",">",">",">","a","=","ivy.array","(","(","np.exp","(","2j","*","np.pi","*","np.arange","(","8",")","\/","8",")",")",")",">",">",">","a.ifft","(","0",")","ivy.array","(","[","-4.30636606e-17+1.43029718e-18j",",","0.00000000e+00+1.53080850e-17j",",","1.43029718e-18+1.53080850e-17j",",","0.00000000e+00+9.58689626e-18j",",","1.24474906e-17+2.91858728e-17j",",","0.00000000e+00+1.53080850e-17j",",","2.91858728e-17+1.53080850e-17j",",","1.00000000e+00-1.01435406e-16j","]",")"]
code: def ifft(
      self: ivy.Array,
      dim: int,
      *,
      norm: str = "backward",
      n: Optional[Union[int, Tuple[int]]] = None,
      out: Optional[ivy.Array] = None,
  ) -> ivy.Array:
      """ivy.Array instance method variant of ivy.ifft. This method simply
      wraps the function, and so the docstring for ivy.ifft also applies to
      this method with minimal changes.
  
      Parameters
      ----------
      self
          Input volume *[...,d_in,...]*,
          where d_in indicates the dimension that needs IFFT.
      dim
          The dimension along which to take the one dimensional IFFT.
      norm
          Optional argument, "backward", "ortho" or "forward". Defaults to be
          "backward".
          "backward" indicates no normalization.
          "ortho" indicates normalization by 1/sqrt(n).
          "forward" indicates normalization by 1/n.
      n
          Optional argument indicating the sequence length, if given, the input
          would be padded with zero or truncated to length n before performing IFFT.
          Should be a integer greater than 1.
      out
          Optional output array, for writing the result to. It must have a shape that
          the inputs broadcast to.
  
      Returns
      -------
      ret
          Array containing the transformed input.
  
      Examples
      --------
      >>> a = ivy.array((np.exp(2j * np.pi * np.arange(8) / 8)))
      >>> a.ifft(0)
      ivy.array([-4.30636606e-17+1.43029718e-18j,  0.00000000e+00+1.53080850e-17j,
                  1.43029718e-18+1.53080850e-17j,  0.00000000e+00+9.58689626e-18j,
                  1.24474906e-17+2.91858728e-17j,  0.00000000e+00+1.53080850e-17j,
                  2.91858728e-17+1.53080850e-17j,  1.00000000e+00-1.01435406e-16j])
      """
      return ivy.ifft(
          self._data,
          dim,
          norm=norm,
          n=n,
          out=out,
      )
  
imports: import abc
  from typing import Optional, Union, Tuple, List, Literal, Sequence, Callable
  import ivy
label_desc: Use image node_id 10 for calling the _ArrayWithLayersExperimental obj's underlying member method code with example usage: obj.ifft(dim) and returns: ivy