U
    e»{j,  ã                   @   sf   d dl Zd dlZd dlmZmZ d dlmZ d dlm	Z	 dd„ Z
ej ddd	„ d
d	„ g¡dd„ ƒZdS )é    N)ÚconvolveÚconvolve_fft)ÚGaussian2DKernel)ÚNDDatac                  C   s¢   t  d¡} d| d< t| ƒ}tdƒ}t||ƒ}t jd d…d d…f \}}|d t  d|d d |d d   ¡ }t jj||dd	� t	||ƒ}t jj||dd	� d S )
N©é   r   é   ©é   r
   r   g      à¿r
   é   g�íµ ÷Æ°>)Zatol)
ÚnpÚzerosr   r   r   ZmgridÚexpZtestingZassert_allcloser   )ÚarrZnddÚtest_kernelÚresultÚxÚyÚexpectedZresultf© r   úm/var/www/html/bwave/python/venv/lib/python3.8/site-packages/astropy/convolution/tests/test_convolve_nddata.pyÚtest_basic_nddata   s    

*
r   Úconvfuncc                  G   s   t | dddœŽS ©NZinterpolateT)Znan_treatmentZnormalize_kernel)r   ©Úargsr   r   r   Ú<lambda>   s     ÿr   c                  G   s   t | dddœŽS r   )r   r   r   r   r   r   "   s     ÿc                 C   sò   t  d¡}d |d<  |d<  |d< |d< d|d< t|ƒ}|d	k }d
|d< t||d�}| ¡ }t j|d< t|ƒ}tdƒ}| ||ƒ}| ||ƒ}	| ||ƒ}
t  |	|
¡s¦t‚t  ||
¡r¶t‚t  ||	¡rÆt‚t  t  	|j
¡¡t  t  	|j
¡¡ksît‚d S )Nr   gš™™™™™É?)é   r
   )é   r
   )r
   r   )r
   r   g      ø?r	   r   T)Úmaskr   )r   r   r   ÚcopyÚnanr   ZallcloseÚAssertionErrorÚsumÚisnanÚdata)r   r   Zndd_baser   Zndd_maskZarrnanZndd_nanr   Zresult_baseZ
result_nanZresult_maskr   r   r   Útest_masked_nddata   s$    
 



r&   )Únumpyr   ZpytestZastropy.convolution.convolver   r   Zastropy.convolution.kernelsr   Zastropy.nddatar   r   ÚmarkZparametrizer&   r   r   r   r   Ú<module>   s   üþ