U
    rhD                     @  sP   d dl mZ d dlZd dlZd dlZd dlmZ d dlm	Z	 G dd deZ
dS )    )annotationsN)Base)expectc                   @  s0   e Zd ZeddddZeddddZdS )LRNNone)returnc                  C  s  d} d}d}d}t jjddgdg| |||d}tjd	d	d	d	tj}td
tj}t	|j
D ]p\}}}	}
t||td|tt|d d  td	|tt|d d  d |	|
f d ||||	|
f< qf||| | |  |  }t||g|gdd d S )Ng-C6*?g      ?g       @   r   xy)inputsoutputsalphabetabiassize   r   r   r   r   r         Ztest_lrnr   r   nameonnxhelperZ	make_nodenprandomZrandnZastypeZfloat32zerosZndindexshapesummaxintmathfloorminceilr   r   r   r   Znsizenoder	   Z
square_sumnchwr
    r+   C/tmp/pip-unpacked-wheel-xnis5xre/onnx/backend/test/case/node/lrn.pyexport   sB    	  z
LRN.exportc                  C  s  d} d}d}d}t jjddgdgdd}tjd	d	d	d	tj}td
tj}t	|j
D ]p\}}}	}
t||td|tt|d d  td	|tt|d d  d |	|
f d ||||	|
f< q`||| | |  |  }t||g|gdd d S )Ng-C6?g      ?g      ?r   r   r	   r
   )r   r   r   r   r   r   r   r   Ztest_lrn_defaultr   r   r%   r+   r+   r,   export_default0   s2      zLRN.export_defaultN)__name__
__module____qualname__staticmethodr-   r.   r+   r+   r+   r,   r      s   r   )
__future__r   r!   Znumpyr   r   Zonnx.backend.test.case.baser   Zonnx.backend.test.case.noder   r   r+   r+   r+   r,   <module>   s   