class_docstr: A Fourier series field defined on a collocation grid.
class_docstr_tok: ["A","Fourier","series","field","defined","on","a","collocation","grid","."]
docstr: Same as `FourierSeries._freq_axis`, but last frequency axis is relative to a real FFT.
  Those frequency axis match with the ones of the rfftn function
docstr_tok: ["Same","as","`","FourierSeries._freq_axis","`",",","but","last","frequency","axis","is","relative","to","a","real","FFT",".","Those","frequency","axis","match","with","the","ones","of","the","rfftn","function"]
code: def _cut_freq_axis(self):
      r"""Same as `FourierSeries._freq_axis`, but last frequency axis is relative to a real FFT.
      Those frequency axis match with the ones of the rfftn function
      """
  
      def f(N, dx):
          return jnp.fft.fftfreq(N, dx) * 2 * jnp.pi
  
      k_axis = [
          f(n, delta) for n, delta in zip(self.domain.N, self.domain.dx)
      ]
      if not self.is_complex:
          k_axis[-1] = (
              jnp.fft.rfftfreq(self.domain.N[-1], self.domain.dx[-1])
              * 2
              * jnp.pi
          )
      return k_axis
  
imports: import warnings
  from typing import Callable, TypeVar
  import equinox
  from equinox import tree_equal
  from jax import eval_shape
  from jax import numpy
  from jax import vmap
  from jaxtyping import PyTree
  from jaxdf.core import Field
  from jaxdf.geometry import Domain
label_desc: Use image node_id 4 for calling the FourierSeries obj's underlying member method code with example usage: obj._cut_freq_axis() and returns: k_axis, unknown