
    h                     J    S SK r S SKrS SKrS SKJr  S SKJr   " S S\5      rg)    N)Base)expectc                   <    \ rS rSr\SS j5       r\SS j5       rSrg)Gelu   Nc                  ^   [         R                  R                  SS/S/SS9n [        R                  " / SQ5      R                  [        R                  5      nSU-  S[        R                  " [        R                  " S	[        R                  -  5      US
[        R                  " US5      -  -   -  5      -   -  R                  [        R                  5      n[        X/U/SS9  [        R                  R                  SSS5      R                  [        R                  5      nSU-  S[        R                  " [        R                  " S	[        R                  -  5      US
[        R                  " US5      -  -   -  5      -   -  R                  [        R                  5      n[        X/U/SS9  g )Nr   xytanh)inputsoutputsapproximater            ?r      gHm?   test_gelu_tanh_1r   r   name      test_gelu_tanh_2)onnxhelper	make_nodenparrayastypefloat32r   sqrtpipowerr   randomrandnnoder	   r
   s      Z/var/www/fran/franai/venv/lib/python3.13/site-packages/onnx/backend/test/case/node/gelu.pyexport_gelu_tanhGelu.export_gelu_tanh   sX   {{$$C53%V % 
 HHZ ''

3 2772771ruu9-XA5N1NOPPR &
	 	

 	tC!3EFIIOOAq!$++BJJ7 2772771ruu9-XA5N1NOPPR &
	 	

 	tC!3EF    c                     [         R                  R                  SS/S/S9n [        R                  " / SQ5      R                  [        R                  5      nSU-  S[        R                  " [        R                  5      " U[        R                  " S5      -  5      -   -  R                  [        R                  5      n[        X/U/S	S
9  [        R                  R                  SSS5      R                  [        R                  5      nSU-  S[        R                  " [        R                  5      " U[        R                  " S5      -  5      -   -  R                  [        R                  5      n[        X/U/SS
9  g )Nr   r	   r
   )r   r   r   r   r   r   test_gelu_default_1r   r   r   r   test_gelu_default_2)r   r   r   r   r   r    r!   	vectorizematherfr"   r   r%   r&   r'   s      r)   export_gelu_defaultGelu.export_gelu_default'   s   {{$$VSEC5$IHHZ ''

31WBLL21rwwqz>BBCKKBJJWtC!3HIIIOOAq!$++BJJ71WBLL21rwwqz>BBCKKBJJWtC!3HIr,    )returnN)__name__
__module____qualname____firstlineno__staticmethodr*   r3   __static_attributes__r5   r,   r)   r   r      s,    G G. J Jr,   r   )	r1   numpyr   r   onnx.backend.test.case.baser   onnx.backend.test.case.noder   r   r5   r,   r)   <module>r@      s$   
    , .%J4 %Jr,   