U
    e»{j@
  ã                   @   s¤   d dl Zd dlZd dlmZ d dlmZmZ d dlm	Z	 ej
je	 dd�dd„ ƒZej
je	 dd�d	d
„ ƒZej
je	 dd�dd„ ƒZej
je	 dd�dd„ ƒZdS )é    N)Úconvolve_models_fft)ÚConst1DÚConst2D)Ú	HAS_SCIPYzrequires scipy)Úreasonc                  C   sž   t ƒ } t ƒ }t| |ddƒ}|jd ks(t‚|jd ks6t‚|dƒ}| ¡ t dg¡ ¡ ksZt‚|jd k	sht‚|jd k	svt‚| ¡  |jd ksŒt‚|jd ksšt‚d S )N©éÿÿÿÿé   ç{®Gáz„?r   g      ð?)	r   r   Ú_kwargsÚAssertionErrorZ_convolutionÚallÚnpÚarrayÚclear_cache)Úm1Úm2ÚmodelÚresults© r   úf/var/www/html/bwave/python/venv/lib/python3.8/site-packages/astropy/modeling/tests/test_convolution.pyÚtest_clear_cache   s    r   c                  C   sZ   t ƒ } t ƒ }t| |ddƒ}|dƒ}|jdks0t‚t ddd¡}||ƒ}|j|jksVt‚d S )Nr   r
   r   ©r	   r   r	   çš™™™™™¹?)r   r   Úshaper   r   Úarange)r   r   r   r   Úxr   r   r   Útest_input_shape_1d   s    r   c                  C   s´   t ƒ } t ƒ }t| |ddƒ}|ddƒ}|jdks2t‚t ddd¡}||dƒ}|j|jksZt‚|d|ƒ}|j|jkstt‚t ||¡}||Ž }|j|d jksœt‚|j|d jks°t‚d S )N©r   r   r
   r   r   r   r	   r   )r   r   r   r   r   r   Úmeshgrid)r   r   r   r   r   Úgridr   r   r   Útest_input_shape_2d-   s    


r!   c               	   C   s<  t ƒ } t ƒ }t| |ddƒ}t ddd¡}t ddd¡}t ||¡}t ||¡}t dg¡df| d¡kslt‚t |j|Ž d	 t 	|d	 |d gd
¡j
k¡sžt‚|j|Ž d |d	 jksºt‚t |j|Ž d	 t 	|d	 |d gd
¡j
k¡sìt‚|j|Ž d |d	 jk�s
t‚tjtdd�� | |d	 |d ¡ W 5 Q R X d S )Nr   r
   r   r	   r   éþÿÿÿé   r   r   )r#   r   zValues have differing shapes)Úmatch)r   r   r   r   r   r   Z_convolution_inputsr   r   ZreshapeÚTr   ÚpytestZraisesÚ
ValueError)r   r   r   r   ÚyZgrid0Zgrid1r   r   r   Útest__convolution_inputsC   s,    ÿÿÿÿr)   )Únumpyr   r&   Zastropy.convolutionr   Zastropy.modeling.modelsr   r   Z"astropy.utils.compat.optional_depsr   ÚmarkZskipifr   r   r!   r)   r   r   r   r   Ú<module>   s   


