Files
zeekayandHanzo Dev f84fe1fd15 snapshot slice 1
Co-authored-by: Hanzo Dev <[email protected]>
2026-07-28 15:29:05 -07:00

46 lines
1.2 KiB
Python

# Copyright (c) ONNX Project Contributors
#
# SPDX-License-Identifier: Apache-2.0
from __future__ import annotations
import numpy as np
import onnx
from onnx.backend.test.case.base import Base
from onnx.backend.test.case.node import expect
class HannWindow(Base):
@staticmethod
def export() -> None:
# Test periodic window
node = onnx.helper.make_node(
"HannWindow",
inputs=["x"],
outputs=["y"],
)
size = np.int32(10)
a0 = 0.5
a1 = 0.5
y = a0 - a1 * np.cos(2 * np.pi * np.arange(0, size, 1, dtype=np.float32) / size)
expect(
node, inputs=[size], outputs=[y.astype(np.float32)], name="test_hannwindow"
)
# Test symmetric window
node = onnx.helper.make_node(
"HannWindow", inputs=["x"], outputs=["y"], periodic=0
)
size = np.int32(10)
a0 = 0.5
a1 = 0.5
y = a0 - a1 * np.cos(
2 * np.pi * np.arange(0, size, 1, dtype=np.float32) / (size - 1)
)
expect(
node,
inputs=[size],
outputs=[y.astype(np.float32)],
name="test_hannwindow_symmetric",
)