
    bIg                    :    d dl mZ d dlZd dlmZ  G d de      Zy)    )annotationsN)_CommonWindowc                      e Zd ZdZddZy)BlackmanWindowa3  Blankman windowing function.

    Returns :math:`\\omega_n = 0.42 - 0.5 \\cos \\left( \\frac{2\\pi n}{N-1} \\right) + 0.08 \\cos \\left( \\frac{4\\pi n}{N-1} \\right)`
    where *N* is the window length.

    See `blackman_window <https://pytorch.org/docs/stable/generated/torch.blackman_window.html>`_
    Nc                &   t        j                  |      |}}|dk(  r|dz
  }d}d}t         j                  }t        j                  ||dz  z  |z        dz  }	|	t        j                  ||dz  z  |z        |z  z  }	|	|z  }	| j	                  ||	|      S )Nr      gzG?g{Gz?   g         )nparangepicos_end)
selfsizeoutput_datatypeperiodicniN_1alphabetar   ys
             b/var/www/html/answerous/venv/lib/python3.12/site-packages/onnx/reference/ops/op_blackman_window.py_runzBlackmanWindow._run   s    ))D/4Cq='CUUFFB"q&MS()T2	RVVR26]c)*T11	U
yyq/22    )NN)__name__
__module____qualname____doc__r    r   r   r   r      s    
3r   r   )
__future__r   numpyr   $onnx.reference.ops._op_common_windowr   r   r    r   r   <module>r$      s    #  >3] 3r   