提交 7e74bc31 authored 作者: Iban Harlouchet's avatar Iban Harlouchet

numpydoc for theano/sandbox/fourier.py

上级 0a7415d7
"""Provides Ops for FFT and DCT. """
Provides Ops for FFT and DCT.
""" """
import numpy import numpy
...@@ -23,18 +24,19 @@ grad_todo = GradTodo() ...@@ -23,18 +24,19 @@ grad_todo = GradTodo()
class FFT(Op): class FFT(Op):
"""Fast Fourier Transform """
Fast Fourier Transform.
.. TODO: .. TODO:
The current implementation just works for matrix inputs, and permits taking a 1D FFT over The current implementation just works for matrix inputs, and permits
either rows or columns. Add support for N-D FFTs as provided by either numpy or FFTW taking a 1D FFT over either rows or columns. Add support for N-D FFTs
directly. as provided by either numpy or FFTW directly.
.. TODO: .. TODO:
Give the C code that uses FFTW. Give the C code that uses FFTW.
.. TODO: .. TODO:
unit tests. Unit tests.
""" """
...@@ -42,7 +44,7 @@ class FFT(Op): ...@@ -42,7 +44,7 @@ class FFT(Op):
# don't return the plan object in the 'buf' output # don't return the plan object in the 'buf' output
half = False half = False
"""Only return the first half (positive-valued) of the frequency components""" """Only return the first half (positive-valued) of the frequency components."""
__props__ = ("half", "inverse") __props__ = ("half", "inverse")
def __init__(self, half=False, inverse=False): def __init__(self, half=False, inverse=False):
...@@ -50,7 +52,10 @@ class FFT(Op): ...@@ -50,7 +52,10 @@ class FFT(Op):
self.inverse = inverse self.inverse = inverse
def make_node(self, frames, n, axis): def make_node(self, frames, n, axis):
""" compute an n-point fft of frames along given axis """ """
Compute an n-point fft of frames along given axis.
"""
_frames = tensor.as_tensor(frames, ndim=2) _frames = tensor.as_tensor(frames, ndim=2)
_n = tensor.as_tensor(n, ndim=0) _n = tensor.as_tensor(n, ndim=0)
_axis = tensor.as_tensor(axis, ndim=0) _axis = tensor.as_tensor(axis, ndim=0)
...@@ -103,8 +108,8 @@ def dct_matrix(rows, cols, unitary=True): ...@@ -103,8 +108,8 @@ def dct_matrix(rows, cols, unitary=True):
""" """
Return a (rows x cols) matrix implementing a discrete cosine transform. Return a (rows x cols) matrix implementing a discrete cosine transform.
This algorithm is adapted from Dan Ellis' Rastmat This algorithm is adapted from Dan Ellis' Rastmat spec2cep.m, lines 15-20.
spec2cep.m, lines 15 - 20.
""" """
rval = numpy.zeros((rows, cols)) rval = numpy.zeros((rows, cols))
col_range = numpy.arange(cols) col_range = numpy.arange(cols)
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论