3
���h�% �
@ s� d dl Zd dlZd dlmZ d dlmZmZmZ d dl Z d dl
Z
dd� ZG dd� d�ZG dd � d �Z
ejjd
ejejejejg�ejjddd
g�ejjdejjejjejjejjejjejjg�dd� ���ZG dd� d�ZdS )� N)�random)�assert_array_equal�
assert_raises�assert_allclosec C sR t | �}dtj tj|�t|� }tj|�jdd�| }tj| tj|� dd�S )Ny @� )�axisy � ����)�len�np�piZarange�floatZreshape�sum�exp)�x�L�phase� r �?/tmp/pip-build-5_djhm0z/numpy/numpy/fft/tests/test_pocketfft.py�fft1 s r c @ s e Zd Zdd� ZdS )�TestFFTShiftc C s t ttjjdddgd� d S )Nr � � r )r �
ValueErrorr
�fft)�selfr r r �
test_fft_n s zTestFFTShift.test_fft_nN)�__name__�
__module__�__qualname__r r r r r r s r c @ s� e Zd Zdd� Zdd� Zejjdd*�dd � �Zd
d� Z dd
� Z
dd� Zdd� Zdd� Z
dd� Zdd� Zdd� Zdd� Zdd� Zdd� Zd d!� Zejjd"ejjejjejjejjg�d#d$� �Zd%d&� Zejjd'ejejejej g�d(d)� �Z!dS )+� TestFFT1Dc C s� d}t |�dt |� }t |�}xptd|�D ]b}ttjjtjj|d|� ��|d|� dd� ttjjtjj|d|� �|�|d|� dd� q,W d S )Ni y �?r r g�-���q=)�atol)r �ranger r
r �ifft�irfft�rfft)r �maxlenr Zxr�ir r r �
test_identity s &zTestFFT1D.test_identityc C sZ t d�dt d� }tt|�tjj|�dd� tt|�tjd� tjj|dd�dd� d S )N� y �?g���ư>)r �ortho)�norm)r r r r
r �sqrt)r r r r r �test_fft$ s zTestFFT1D.test_fftr* Nr) c C sh t d�dt d� }t|tjjtjj||d�|d�dd� tjtdd�� tjjg |d� W d Q R X d S )Nr( y �?)r* g���ư>)r z!Invalid number of FFT data points)�match)r r r
r r" |