403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.217.85
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1074145052 ( 1074145052)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/scipy/linalg/tests/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/scipy/linalg/tests/__pycache__/test_blas.cpython-311.pyc
�

d�c����dZddlZddlZddlZddlmZmZmZm	Z	m
Z
ddlmZddlm
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZddlmZmZddlm Z!m"Z"m#Z#m$Z$	ddlm%Z&n
#e'$rdZ&YnwxYwe
egZ(eegZ)e(e)zZ*d	�Z+d
�Z,Gd�d��Z-Gd
�d��Z.Gd�d��Z/Gd�d��Z0d d�Z1Gd�d��Z2Gd�d��Z3Gd�d��Z4Gd�d��Z5Gd�d��Z6d�Z7dS)!zw
Build linalg:
  python setup.py build
Run tests if scipy is installed:
  python -c 'import scipy;scipy.linalg.test()'
�N)�assert_equal�assert_almost_equal�assert_�assert_array_almost_equal�assert_allclose)�raises)�float32�float64�	complex64�
complex128�arange�triu�tril�zeros�tril_indices�ones�mod�diag�append�eye�nonzero)�rand�seed)�_fblas�get_blas_funcs�toeplitz�solve)�_cblasc	�~�tdtjdtjd���tjdtjd���f��\}}}t|jd��t|jd��t�*t|jd��t|jd��td��}t|jd	��td
tj���}t|jd��td
d���}t|jd��td
tj	���}t|jd��td
tjdtj
���tjdtj���f��}t|jd��dS)N)�axpyr r ��r"�F)�dtype�order�C�z�cblas�rotg�d�gemm�r$�cr )r�np�emptyrrr�typecoder(�module_name�longcomplexr
)�f1�f2�f3s   �>/usr/lib/python3/dist-packages/scipy/linalg/tests/test_blas.py�test_get_blas_funcsr7$s��� � �	��&���C�	8�	8�	8�	��&��
�S�	9�	9�	9�	;�
�
�J�B��B����c�"�"�"����c�"�"�"����R�^�W�-�-�-��R�^�W�-�-�-�
��	�	�B����c�"�"�"�
��b�l�	3�	3�	3�B����c�"�"�"�	��c�	*�	*�	*�B����c�"�"�"�
��b�n�	5�	5�	5�B����c�"�"�"�
����&��
�;�;�;���&���=�=�=�?�
�
�B����c�"�"�"�"�"�c���tdtj���\}}|jdksJ�|jdksJ�tdtj���\}}}||usJ�||usJ�dS)N)�nrm2�dotr,r-)r;�dotc�dotu)rr.rr0r
)�f�g�hs   r6�test_get_blas_funcs_aliasrAKsy���/���>�>�>�D�A�q��:�������:�������4�B�J�G�G�G�G�A�q�!���6�6�6�6���6�6�6�6�6�6r8c��eZdZd�ZdS)�TestCBLAS1Simplec��dD]@}tt|dzd��}|��t|gd�gd�d���gd����AdD]@}tt|dzd��}|��t|gd	�gd�d���gd
����AdS�N�sdr ��r"�)r"���rI���a)��	��cz)rH�@rI)rNy�$@rP)�getattrr(r��self�pr>s   r6�	test_axpyzTestCBLAS1Simple.test_axpyX�����	2�	2�A���q��x��.�.�A��y��%�a�a�	�	�	�:�:�:��&C�&C�&C�&0�j�j�
2�
2�
2�
2��	6�	6�A���q��x��.�.�A��y��%�a�a�
�
�
�J�J�J�!�&D�&D�&D�&4�n�n�
6�
6�
6�
6�		6�	6r8N)�__name__�
__module__�__qualname__rW�r8r6rCrCVs#������6�6�6�6�6r8rCc�J�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�ZdS)�TestFBLAS1Simplec��dD]@}tt|dzd��}|��t|gd�gd�d���gd����AdD]@}tt|dzd��}|��t|gd	�gd�d���gd
����AdSrE�rS�fblasrrTs   r6rWzTestFBLAS1Simple.test_axpyirXr8c��dD]@}tt|dzd��}|��t|gd�dgdz��gd����AdD]@}tt|dzd��}|��t|gd�dgdz��gd����AdS)NrF�copy)rI�rK�rIrQ)rI�@y@@r`rTs   r6�	test_copyzTestFBLAS1Simple.test_copyws����	F�	F�A���q��x��.�.�A��y��%�a�a�	�	�	�A�3�q�5�&9�&9�9�9�9�E�E�E�E��	N�	N�A���q��x��.�.�A��y��%�a�a�
�
�
��s�1�u�&=�&=�}�}�}�M�M�M�M�		N�	Nr8c��dD]9}tt|dzd��}|��t|gd���d���:dD]9}tt|dzd��}|��t|gd���d���:dS)NrF�asum�rI���rK�)�sc�dz��@rk�@���rSrarrTs   r6�	test_asumzTestFBLAS1Simple.test_asum�s����	3�	3�A���q��x��.�.�A��y�����*�*�*�
�
�r�2�2�2�2��	7�	7�A���q��x��.�.�A��y�����.�.�.� 1� 1�2�6�6�6�6�		7�	7r8c��dD]<}tt|dzd��}|��t|gd�gd���d���=dS)NrFr;rj)r"rKrH���rsrTs   r6�test_dotzTestFBLAS1Simple.test_dot�s_���	>�	>�A���q��w��-�-�A��y�����*�*�*�i�i�i� 8� 8�"�=�=�=�=�		>�	>r8c��dD]<}tt|dzd��}|��t|gd�gd���d���=dS)NrQr=ro�r"rIrHy"�@rsrTs   r6�test_complex_dotuz"TestFBLAS1Simple.test_complex_dotu�sc���	E�	E�A���q��x��.�.�A��y�����.�.�.�)�)�)� <� <�e�D�D�D�D�		E�	Er8c��dD]<}tt|dzd��}|��t|gd�gd���d���=dS)NrQr<ro�r"rprHy@,�rsrTs   r6�test_complex_dotcz"TestFBLAS1Simple.test_complex_dotc�sc���	F�	F�A���q��x��.�.�A��y�����.�.�.�*�*�*� =� =�u�E�E�E�E�		F�	Fr8c�>�dD]K}tt|dzd��}|��t|gd���tjd�����LdD]K}tt|dzd��}|��t|gd���tjd�����LdS)NrFr:rj�2)r-r'rmrnro)rSrar�math�sqrtrTs   r6�	test_nrm2zTestFBLAS1Simple.test_nrm2�s����	>�	>�A���q��x��.�.�A��y�����*�*�*�
�
�t�y��}�}�=�=�=�=�'�	B�	B�A���q��x��.�.�A��y�����.�.�.� 1� 1�4�9�R�=�=�A�A�A�A�		B�	Br8c��dD]<}tt|dzd��}|��t|dgd���gd����=dD]<}tt|dzd��}|��t|dgd���gd	����=d
D]<}tt|dzd��}|��t|dgd���gd����=dS)
NrF�scalr"rj)�i�����
rQrpro)rvy�(�y(@"@)�cs�zdrI)y"@i�y"@(�r`rTs   r6�	test_scalzTestFBLAS1Simple.test_scal�s���	E�	E�A���q��x��.�.�A��y��%�a�a��:�:�:�&6�&6����D�D�D�D��	P�	P�A���q��x��.�.�A��y��%�a�a��N�N�N�&;�&;�=N�=N�=N�O�O�O�O��	N�	N�A���q��x��.�.�A��y��%�a�a��>�>�>�&:�&:�<L�<L�<L�M�M�M�M�		N�	Nr8c�f�dD]U}tt|dzd��}|��gd�gd�}}|||��\}}t||��t||���VdD]U}tt|dzd��}|��gd�gd�}}|||��\}}t||��t||���VdS)NrF�swapry)���rIrNrQr|)r�rIy@�r`)rUrVr>�x�y�x1�y1s       r6�	test_swapzTestFBLAS1Simple.test_swap�s����	-�	-�A���q��x��.�.�A��y���9�9�j�j�j�q�A��Q�q�!�W�W�F�B��%�b�!�,�,�,�%�b�!�,�,�,�,��	-�	-�A���q��x��.�.�A��y���:�:�}�}�}�q�A��Q�q�!�W�W�F�B��%�b�!�,�,�,�%�b�!�,�,�,�,�	-�	-r8c���dD]8}ttd|zdz��}t|gd���d���9dD]8}ttd|zdz��}t|gd���d���9dS)NrF�i�amax)r�rdrIrHrQ)���y@@r�)rSrarrTs   r6�	test_amaxzTestFBLAS1Simple.test_amax�s����	+�	+�A���s�1�u�V�|�,�,�A����:�:�:����*�*�*�*��	.�	.�A���s�1�u�V�|�,�,�A����=�=�=�)�)�1�-�-�-�-�	.�	.r8N)
rYrZr[rWrgrtrwrzr}r�r�r�r�r\r8r6r^r^gs�������6�6�6�
N�
N�
N�
7�
7�
7�>�>�>�E�E�E�F�F�F�
B�
B�
B�N�N�N�"-�-�-�$.�.�.�.�.r8r^c�n�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�ZdS)�TestFBLAS2Simplec
��dD]_}tt|dzd��}|��t|ddggdg��dg��t|ddggdgddg��dg���`dD]_}tt|dzd��}|��t|d	d
ggdg��dg��t|d	d
ggdgddg��d
g���`dS)NrF�gemvrIrk����rK���rQrprq�H�B��@�H�5�r`rTs   r6�	test_gemvzTestFBLAS2Simple.test_gemv�s���	H�	H�A���q��x��.�.�A��y��%�a�a��Q�C�5�2�$�&7�&7�#��?�?�?�%�a�a��Q�C�5�2�$��A�3�&?�&?�#��G�G�G�G��	1�	1�A���q��x��.�.�A��y��%�a�a��d�V�H�r�d�&;�&;�g�Y�G�G�G�%�a�a��d�V�H�r�d�A��t�&D�&D�'.�i�
1�
1�
1�
1�	1�	1r8c��dD]�}tt|dzd��}|��t|dddgddg��ddgddgg��t|dgd	�ddg��ddgd
dgdd
gg��t|dddgddgddgddgg���ddgdd
gg����dD]k}tt|dzd��}|��t|dddgddg��ddgddgg��t|dgd�ddg��ddgd
dgdd
gg���ldD]p}dD]k}tt||zd��}|��t|dddgddg��ddgddgg��t|dgd�ddg��ddgd
dgdd
gg���l�qdS)NrF�gerrHr"rIrdr�rerGrl�rP�rLrOrQ�geru��?rprfr�)r�rRrp)r��gercr`)rUrVr>�names    r6�test_gerzTestFBLAS2Simple.test_ger�s����		P�		P�A���q��w��-�-�A��y��%�a�a��A�q�6�A�q�6�&:�&:�a��V�a��V�<L�M�M�M�%�a�a��9�9�9�q�!�f�&=�&=�()�1�v��B�x�"�b��&B�
D�
D�
D�
&�a�a��A�q�6�A�q�6�,-�q�6�A�q�6�*:�'<�'<�'<�?@�!�f�q�"�g�=N�
P�
P�
P�
P��	D�	D�A���q��x��.�.�A��y��%�a�a��B��7�Q��F�&;�&;�(*�B�x�!�Q��&8�
:�
:�
:�%�a�a��L�L�L�2�r�(�&C�&C�()�1�v��B�x�"�b��&B�
D�
D�
D�
D��	H�	H�A�'�
H�
H���E�1�T�6�4�0�0���9��)�!�!�A��A�w��A��*?�*?�,.��8�a��V�*<�>�>�>�)�!�!�A�|�|�|�b�"�X�*F�*F�,-�q�6�B��8�b�"�X�*F�H�H�H�H�

H�	H�	Hr8c�|�tjddd���}tj|dd�tjf|z��}tj|ddd�tjf|ddd�z��}tjdddd	�
��}tjddd����d��}tj|dd�tjf|z��}tj|ddd�tjf|ddd�z��}tj|dd�tjf|���z��}tj|ddd�tjf|ddd����z��}	tjtjd
��|tjd
��f�	��}
tdddg��D�]�\}}tt|dzd��}
|
��"t|
d|��||���t|
d|d���|j|���t|
d|ddd
���||���t|
d|ddd
���||���tjd|dkrdndd��}|
d||d���}t|||���|
d||���}t||u��t|d |z|���t!t"|
d|d�!��t!t"|
d|d�"��t!t"|
d|d�"��t!t"|
d|d�#��t!t"|
d|d�#��t!t"|
d|d���t!t"|
d|tjd$dd��������td%ddg��D�]�\}}tt|dzd��}
|
��"t|
d|��||���t|
d|d���|j|���t|
d|
d dd
���||���t|
d|
d&dd
���||���tjd|d'krdndd��}|
d||d���}t|||���|
d||���}t||u��t|d |z|���t!t"|
d|d�!��t!t"|
d|d�"��t!t"|
d|d�"��t!t"|
d|d�#��t!t"|
d|d�#��t!t"|
d|d���t!t"|
d|tjd$dd��������td%ddg��D�]�\}}tt|d(zd��}
|
��"t|
d|��||���t|
d|d���|j���|���t|
d|
d dd
���||���t|
d|
d&dd
���|	|���tjd|d'krdndd��}|
d||d���}t|||���|
d||���}t||u��t|d |z|���t!t"|
d|d�!��t!t"|
d|d�"��t!t"|
d|d�"��t!t"|
d|d�#��t!t"|
d|d�#��t!t"|
d|d���t!t"|
d|tjd$dd��������dS))NrHrKr*r,rJr�!@�F��endpointrO�DrdrF�H�����z>�+����=�syr��?��rtolT��lowerr")�incx�offx�nr��rdrd�sr>r#�rM�overwrite_a�@rLrI�r��r��r�r!rQ���r-�her)r.r
r�newaxis�linspace�view�conj�c_r�ravel�ziprSrar�Tr�
assert_raises�	Exception)rUr��resx�resx_reverser�r'�resz�resz_reverse�rehz�rehz_reverse�wrVr�r>rM�bs                r6�test_syr_herzTestFBLAS2Simple.test_syr_hers0���I�a��#�&�&�&���w�q����B�J��'�!�+�,�,���w�q���2��r�z�!1�2�Q�t�t��t�W�<�=�=���K��3��U�3�3�3���I�a��#�&�&�&�+�+�C�0�0���w�q����B�J��'�!�+�,�,���w�q���2��r�z�!1�2�Q�t�t��t�W�<�=�=���w�q����B�J��'�!�&�&�(�(�2�3�3���w�q���2��r�z�!1�2�Q�t�t��t�W�\�\�^�^�C�D�D���E�"�(�1�+�+�q�"�(�1�+�+�-�.�4�4�6�6���4�$���/�/�	N�	N�G�A�t���q��w��-�-�A��y���A�A�c�1�I�I�t�$�7�7�7�7��A�A�c�1�D�1�1�1�4�6��E�E�E�E��A�A�c�1�1�1��:�:�:�D�t�L�L�L�L��A�A�c�1�2�A��;�;�;�(�t�
5�
5�
5�
5�����S�����c�3�?�?�A���#�q�A�4�0�0�0�A��A�t�$�/�/�/�/���#�q�A����A��A�Q�J�����A�q��v�D�1�1�1�1��)�Q��Q�Q�7�7�7�7��)�Q��Q�Q�7�7�7�7��)�Q��Q�R�8�8�8�8��)�Q��Q�"�5�5�5�5��)�Q��Q�!�4�4�4�4��)�Q��Q�a�8�8�8�8��)�Q��Q�"�(�6�3��2L�2L�M�M�M�M�M��4�$���/�/�	N�	N�G�A�t���q��w��-�-�A��y���A�A�c�1�I�I�t�$�7�7�7�7��A�A�c�1�D�1�1�1�4�6��E�E�E�E��A�A�c�1�1�1��:�:�:�D�t�L�L�L�L��A�A�c�1�2�A��;�;�;�(�t�
5�
5�
5�
5�����S�����c�3�?�?�A���#�q�A�4�0�0�0�A��A�t�$�/�/�/�/���#�q�A����A��A�Q�J�����A�q��v�D�1�1�1�1��)�Q��Q�Q�7�7�7�7��)�Q��Q�Q�7�7�7�7��)�Q��Q�R�8�8�8�8��)�Q��Q�"�5�5�5�5��)�Q��Q�!�4�4�4�4��)�Q��Q�a�8�8�8�8��)�Q��Q�"�(�6�3��2L�2L�M�M�M�M�M��4�$���/�/�	N�	N�G�A�t���q��w��-�-�A��y���A�A�c�1�I�I�t�$�7�7�7�7��A�A�c�1�D�1�1�1�4�6�;�;�=�=�t�L�L�L�L��A�A�c�1�1�1��:�:�:�D�t�L�L�L�L��A�A�c�1�2�A��;�;�;�(�t�
5�
5�
5�
5�����S�����c�3�?�?�A���#�q�A�4�0�0�0�A��A�t�$�/�/�/�/���#�q�A����A��A�Q�J�����A�q��v�D�1�1�1�1��)�Q��Q�Q�7�7�7�7��)�Q��Q�Q�7�7�7�7��)�Q��Q�R�8�8�8�8��)�Q��Q�"�5�5�5�5��)�Q��Q�!�4�4�4�4��)�Q��Q�a�8�8�8�8��)�Q��Q�"�(�6�3��2L�2L�M�M�M�M�M�3	N�	Nr8c
��tjddd���}tjddd���}tj|dd�tjf|z|dd�tjf|zz��}tj|ddd�tjf|ddd�z|ddd�tjf|ddd�zz��}tjddd	d
���}tdd
dg��D�]�\}}t
t|dzd��}|��"t|d||��||���t|d||d���|dd�dd�f|���t|d||d���|j	|���t|d||dddd���||���t|d||ddddd���|dd�dd�f|���t|d||dddd���||���tj
d|dkrdndd��}	|d|||	d���}
t|	||���|d |||	�!��}
t|	|
u��t|
d|z|���tt|d||d�"��tt|d||d�#��tt|d||d�#��tt|d||d�$��tt|d||d�%��tt|d||d�%��tt|d||d���tt|d||d���tt|d||d���tt|d||tj
d&dd���!�����dS)'NrHrKr*r,rOrJrr�r�Fr�rFr�r��syr2r�r�rIr�Tr�r"r��r�r��incy�offy�r�r�r�r�r�r�r�r�r>r#r�r�rLr�r��r��r�r!)r.r
rr�r�r�rSrarr�rrr�r�)rUr�r��resxy�
resxy_reverse�qrVr�r>rMr�s           r6�	test_syr2zTestFBLAS2Simple.test_syr2ns&���I�a��#�&�&�&���I�a��#�&�&�&�����!�!�!�R�Z�-�(�1�,�q����B�J��/?�!�/C�C�D�D�����$�$�B�$��
�"2� 3�a���"��g� =�"#�D�D�b�D�"�*�$4�"5��$�$�B�$��"?�!@�A�A�
�
�K��3��U�3�3�3���4�$���/�/�"	8�"	8�G�A�t���q��x��.�.�A��y���A�A�c�1�a�L�L�%�d�;�;�;�;��A�A�c�1�a�1�-�-�-�u�R�a�R��!��V�}�4�H�H�H�H��A�A�c�1�a�t�4�4�4�e�g�D�I�I�I�I��A�A�c�1�a�a�a�a�b�I�I�I�!��
.�
.�
.�
.��A�A�c�1�a�a�a�a�b�A�N�N�N�!�"�1�"�b�q�b�&�M��
6�
6�
6�
6�
�A�A�c�1�a�b�q�r��K�K�K�)��
6�
6�
6�
6�����S�����c�3�?�?�A���#�q�!�q�d�3�3�3�A��A�u�4�0�0�0�0���#�q�!�q�!�!�!�A��A�Q�J�����A�q��w�T�2�2�2�2��)�Q��Q���:�:�:�:��)�Q��Q���:�:�:�:��)�Q��Q���;�;�;�;��)�Q��Q���:�:�:�:��)�Q��Q���:�:�:�:��)�Q��Q���;�;�;�;��)�Q��Q��R�8�8�8�8��)�Q��Q��Q�7�7�7�7��)�Q��Q���;�;�;�;��)�Q��Q���H�V�S�#�6�6�
8�
8�
8�
8�
8�C"	8�"	8r8c
�	�tjddd����d��}tjddd����d��}|dd�tjf|���z|dd�tjf|���zz}tj|��}|ddd�tjf|ddd����z}||ddd�tjf|ddd����zz
}tj|��}tjtjd��|tjd��f���}tjtjd��|tjd��f���}td	d
dg��D�]�\}}tt|dzd��}	|	��"t|	d
||��||���t|	d
||d���|dd�dd�f|���t|	d
||d���|j
���|���t|	d
||dddd���||���t|	d
||ddddd���|dd�dd�f|���t|	d
||dddd���||���tjd|dkrdndd��}
|	d
|||
d���}t|
||���|	d|||
���}t|
|u��t|d|z|���tt |	d
||d���tt |	d
||d���tt |	d
||d ���tt |	d
||d�!��tt |	d
||d�"��tt |	d
||d �"��tt |	d
||d ���tt |	d
||d���tt |	d
||d#���tt |	d
||tjd$dd��������dS)%NrHrOr*r,r�r�rJrdrQr�r��her2r�r�rIr�Tr�r�r�r�r�r-r#r�r�rLrr�rKr�r�r�r�r"r!)r.r
r�r�r�rr�rr�r�rSrarr�rr�r�)rUr�r�r�r��u�vrVr�r>rMr�s            r6�	test_her2zTestFBLAS2Simple.test_her2�s����I�a��#�&�&�&�+�+�C�0�0���I�a��3�'�'�'�,�,�S�1�1���!�!�!�R�Z�-� �1�6�6�8�8�+�a����2�:�
�.>������.I�I���������$�$�B�$��
�*�+�a���"��g�l�l�n�n�<�
���4�4�R�4���+�,�q���2��w�|�|�~�~�=�=�
���
�.�.�
��E�"�(�1�+�+�q�"�(�1�+�+�-�.�4�4�6�6���E�"�(�1�+�+�q�"�(�1�+�+�-�.�4�4�6�6���4�$���/�/�#	8�#	8�G�A�t���q��x��.�.�A��y���A�A�c�1�a�L�L�%�d�;�;�;�;��A�A�c�1�a�1�-�-�-�u�R�a�R��!��V�}�4�H�H�H�H��A�A�c�1�a�t�4�4�4�e�g�l�l�n�n�!%�
'�
'�
'�
'�
�A�A�c�1�a�a�a�a�a�H�H�H�!��
.�
.�
.�
.��A�A�c�1�a�a�a�a�a�1�M�M�M�!�"�1�"�b�q�b�&�M��
6�
6�
6�
6�
�A�A�c�1�a�b�q�r��J�J�J�)��
6�
6�
6�
6�����S�����c�3�?�?�A���#�q�!�q�d�3�3�3�A��A�u�4�0�0�0�0���#�q�!�q�!�!�!�A��A�Q�J�����A�q��w�T�2�2�2�2��)�Q��Q���:�:�:�:��)�Q��Q���:�:�:�:��)�Q��Q���;�;�;�;��)�Q��Q���:�:�:�:��)�Q��Q���:�:�:�:��)�Q��Q���;�;�;�;��)�Q��Q��R�8�8�8�8��)�Q��Q��Q�7�7�7�7��)�Q��Q���;�;�;�;��)�Q��Q���H�V�S�#�6�6�
8�
8�
8�
8�
8�E#	8�#	8r8c��td��tt��D�]�\}}d}d}d}d}tt	t|dz��t
||z
dz
����t	t|dz��t
||z
dz
������}|�|��}t
||zdz|f|���}|d|ddd�f<|d|ddd	�f<|d
|ddd�f<|d|d
dd�f<t|���|��}	t|���|��}
|d
��|d��}}td|���\}
|
|||||||	|
|��	�	}||�	|	��z||
zz}t||�����dS)N��rNrKrHr"r,)rr)rrHr�)rr"r)rHrrIrdr�)�gbmv)	�mr��ku�kl�alpharMr�r��beta)r�	enumerate�DTYPESrrrr�astyperr;r)rU�indr$r�r�r�r��A�Abr�r�r�r��funcr��y2s                r6�	test_gbmvzTestFBLAS2Simple.test_gbmv�s����T�
�
�
�#�F�+�+�	.�	.�J�C���A��A��B��B����R��T�
�
�E�!�B�$�q�&�M�M�:�:���R��T�
�
�E�!�B�$�q�&�M�M�:�:�<�<�A�������A���2��a���|�5�1�1�1�B��$��B�q�"�1�"�u�I��4��B�q�!�A�#�v�J��4��B�q�!�A�#�v�J��$��B�q�"�1�"�u�I��Q�����u�%�%�A��Q�����u�%�%�A��%��(�(�E�E�"�I�I�4�E�"�9�E�:�:�:�E�D����Q�2�"�E�R��Q�T�+�+�+�B�����q���!�D�1�H�,�B�%�b�"�-�-�-�-�3	.�	.r8c	��td��tt��D�]�\}}d}d}t||f|���}t|dz|f|���}t	|��|t|��t|��f<t
d|dz��D]E}t	||z
��}||t||z
��t||��f<||d|z
|d�f<�F|�|��}|dkr
||jzn||�	��jz}t|��|ddd�f<t	|���|��}	t	|���|��}
|d��|d��}}|dkrtd	|���\}
ntd
|���\}
|
||||	|
|���}||�|	��z||
zz}t||�����dS)Nr�r�r"r,rHrJ��?rI)�hbmv)�sbmv)�kr�rMr�r�r�)rr�r�rrr
�ranger�r�r�rrr;r)rUr�r$r�r�r�r��ind2�tempr�r�r�r�r�r�r�s                r6�test_sbmv_hbmvzTestFBLAS2Simple.test_sbmv_hbmv�s���T�
�
�
�#�F�+�+�	.�	.�J�C���A��A��q�!�f�E�*�*�*�A���!��Q�x�u�-�-�-�B�'+�1�g�g�A�f�Q�i�i�����"�#��a��1��
�
�
*�
*���A�d�F�|�|��59��&��4��.�.�&��q�/�/�1�2�%)��2�d�7�D�E�E�>�"�"�������A���7�7��A�C����A�F�F�H�H�J��A��Q���B�r�1�1�1�u�I��Q�����u�%�%�A��Q�����u�%�%�A��%��+�+�u�u�Q�x�x�4�E��Q�w�w�&�y��>�>�>����&�y��>�>�>�������"��Q�T�B�B�B�B�����q���!�D�1�H�,�B�%�b�"�-�-�-�-�3	.�	.r8c
���td��tttz��D�]=\}}d}t	||���|��}|dkr|t	||��dzz
}|�|��}|dkr
||jzn||���jz}t|��\}}|||f}t	|���|��}t	|���|��}	td|z���|��}
td|z���|��}|d��|d��}
}|dkrtd|�	��\}ntd
|�	��\}||||||	|
���}||�|��z|
|	zz}t||��||dz
||
|
||dd||��
�
}||dd
�dd
�fz�|
ddd���|
|ddd�zz}t|ddd�|��t|d|d����?dS)Nr�rIrHr�rdr"r�)�hpmvr,)�spmv)r�r��apr�r�r�)
r�r�r�r�r�rr�r�r�r�rJ)rr�r��COMPLEX_DTYPESrr�r�r�rr
rrr;rr)rUr�r$r�r�r-�r�Apr�r��xlong�ylongr�r�r�r�r�s                 r6�test_spmv_hpmvzTestFBLAS2Simple.test_spmv_hpmvso���T�
�
�
�#�F�>�$9�:�:�	1�	1�J�C���A��Q��
�
�!�!�%�(�(�A��Q�w�w��T�!�Q�Z�Z��]�"��������A���7�7��A�C����A�F�F�H�H�J��A���?�?�D�A�q��1�a�4��B��Q�����u�%�%�A��Q�����u�%�%�A��1�Q�3�K�K�&�&�u�-�-�E���1��I�I�$�$�U�+�+�E��%��+�+�u�u�Q�x�x�4�E��Q�w�w�&�y��>�>�>����&�y��>�>�>�������2��a�d�C�C�C�B�����q���!�D�1�H�,�B�%�b�"�-�-�-����!��5�t�u��"��1�1�1�6�6�6�B��!�C�R�C��"��H�+�%�*�*�5���A��;�7�7�$��q�t�!�t��:L�L�B�%�b���A��h��3�3�3���1��u�Q�x�0�0�0�0�9	1�	1r8c�,�td��tttz��D�]�\}}d}t	||���|��}|dkr|t	||��dzz
}|�|��}|dkr
||jzn||���jz}t|��\}}|||f}t	|���|��}ttzt|d��d��}	|dkrUtd|���\}
|	|dd�df�|ddd�f�����z|z}nBtd	|���\}
|	|dd�df�|ddd�f��z|z}|
||	||�
��}td|���}
||
||f<|dkr|���n||
||f<t|
|�����dS)Nr�rIrHr�rdg@)�hprr,)�spr)r�r�rr��rIrI)rr�r�rrr�r�r�rrrr;rr)rUr�r$r�r�r-rr	r�r�r�r�r��y1fs              r6�test_spr_hprzTestFBLAS2Simple.test_spr_hpr's
���T�
�
�
�#�F�>�$9�:�:�	/�	/�J�C���A��Q��
�
�!�!�%�(�(�A��Q�w�w��T�!�Q�Z�Z��]�"��������A���7�7��A�C����A�F�F�H�H�J��A���?�?�D�A�q��1�a�4��B��Q�����u�%�%�A��N�*�C��Q�K�K�8��=�=�E��Q�w�w�&�x�u�=�=�=����Q�q�q�q�$�w�Z�^�^�A�d�A�A�A�g�J�O�O�,=�,=�>�>�>��B���&�x�u�=�=�=����Q�q�q�q�$�w�Z�^�^�A�d�A�A�A�g�J�7�7�7�!�;������2��3�3�3�B���e�,�,�,�C��C��1��I�%(�1�W�W����	�	�	�"�C��1��I�%�c�2�.�.�.�.�/	/�	/r8c�(�td��tt��D�]�\}}d}t||���|��}|dkr|t||��dzz
}|�|��}|dkr
||jzn||���jz}t|��\}}|||f}t|���|��}t|���|��}	|d��}
|dkrtd|���\}ntd|���\}|
���|dd�df�	|	ddd�f�����z}||z|���jz}
|||
||	|�	��}td
|���}||||f<|gd����|gd�gd
�f<t||
�����dS)Nr�rIrHr�r")�hpr2r,)�spr2)r�r�r�r�rr)rHrIrd)rHr"r")rrrH)rr�r�rr�r�r�rrr;rr)rUr�r$r�r�r-rr	r�r�r�r�r�r�r�rs                r6�test_spr2_hpr2zTestFBLAS2Simple.test_spr2_hpr2Bs����T�
�
�
�#�F�+�+�	/�	/�J�C���A��Q��
�
�!�!�%�(�(�A��Q�w�w��T�!�Q�Z�Z��]�"��������A���7�7��A�C����A�F�F�H�H�J��A���?�?�D�A�q��1�a�4��B��Q�����u�%�%�A��Q�����u�%�%�A��E�!�H�H�E��Q�w�w�&�y��>�>�>����&�y��>�>�>����
�
���q����D��z�~�~�a��a�a�a��j�o�o�.?�.?�@�@�@�A��Q��������#�B�����!�q�R�8�8�8�B���e�,�,�,�C��C��1��I�(*�9�9�9�
�(:�(:�(<�(<�C�	�	�	�9�9�9�$�%�%�c�2�.�.�.�.�1	/�	/r8c���td��tt��D�]R\}}d}d}t|���|��}t||f|���}t
|dz��D]7}t||z
��|t||z
��t||��f<�8|dkrR|t|��xxdt|dz|z||dzzdzz
���|��zz
cc<t|dz|f|���}t
|dz��D]}	t||	���||	dz
|	d�f<�td	|���\}
|
|||�
��}|�|��}t||��|
|||d���}|d��|t|��t|��f<|�|��}t||��|
|||dd���}|j
�|��}t||��|
|||dd���}|���j
�|��}t||����TdS)
Nr�r�rIr,rHr�r"�r�)�tbmv�r�rMr��r�rMr�r�r�rMr�r�trans)rr�r�rr�rr�r
rrrr;rr�r��
rUr�r$r�r�r�r��supr��rowr�r�r�s
             r6�	test_tbmvzTestFBLAS2Simple.test_tbmv^s����T�
�
�
�#�F�+�+�"	.�"	.�J�C���A��A��Q�����u�%�%�A��q�!�f�E�*�*�*�A��Q�q�S�z�z�
?�
?��37��#��;�;��&��3��-�-���Q���/�0�0��Q�w�w��'�!�*�*�
�
�
��d�A�a�C��7�A�q��s�G�Q�J�+?�&@�&@�&G�&G��&N�&N�!N�N�
�
�
���!��Q�x�u�-�-�-�B��Q�q�S�z�z�
2�
2��#'��S�>�>�>��C�4��6�3�4�4�<� � �"�9�E�:�:�:�E�D����R�1�%�%�%�B����q���B�%�b�"�-�-�-����R�1�1�-�-�-�B�&+�e�A�h�h�A�f�Q�i�i�����"�#����q���B�%�b�"�-�-�-����R�1�1�A�6�6�6�B��������B�%�b�"�-�-�-����R�1�1�A�6�6�6�B����������"�"�B�%�b�"�-�-�-�-�E"	.�"	.r8c���td��tt��D�]>\}}d}d}t|���|��}t||f|���}t
|dz��D]7}t||z
��|t||z
��t||��f<�8|dkrR|t|��xxdt|dz|z||dzzdzz
���|��zz
cc<t|dz|f|���}t
|dz��D]}	t||	���||	dz
|	d�f<�td	|���\}
|
|||�
��}t||��}t||��|
|||d���}|d��|t|��t|��f<t||��}t||��|
|||dd���}t|j
|��}t||��|
|||dd���}t|���j
|��}t||����@dS)
Nr�r�rIr,rHr�r"r)�tbsvrrr)rr�r�rr�rr�r
rrrrrr�r�rs
             r6�	test_tbsvzTestFBLAS2Simple.test_tbsv�s����T�
�
�
�#�F�+�+�"	.�"	.�J�C���A��A��Q�����u�%�%�A��q�!�f�E�*�*�*�A��Q�q�S�z�z�
?�
?��37��#��;�;��&��3��-�-���Q���/�0�0��Q�w�w��'�!�*�*�
�
�
��d�A�a�C��7�A�q��s�G�Q�J�+?�&@�&@�&G�&G��&N�&N�!N�N�
�
�
���!��Q�x�u�-�-�-�B��Q�q�S�z�z�
2�
2��#'��S�>�>�>��C�4��6�3�4�4�<� � �"�9�E�:�:�:�E�D����R�1�%�%�%�B��q�!���B�%�b�"�-�-�-����R�1�1�-�-�-�B�&+�e�A�h�h�A�f�Q�i�i�����"�#��q�!���B�%�b�"�-�-�-����R�1�1�A�6�6�6�B��q�s�A���B�%�b�"�-�-�-����R�1�1�A�6�6�6�B��q�v�v�x�x�z�1�%�%�B�%�b�"�-�-�-�-�E"	.�"	.r8c���td��tt��D�]�\}}d}t|���|��}|dkrtt||����n0tt||��t||��dzz��}t
|��\}}|||f}td|���\}	|	|||���}
|�|��}t|
|��|	|||d�	��}
|d��|t|��t|��f<|�|��}t|
|��|	|||dd�
��}
|j�|��}t|
|��|	|||dd�
��}
|���j�|��}t|
|�����dS)Nr�r�r"r�)�tpmvr,�r�rr�rH�r�rr�r�r�rr�rr)
rr�r�rr�rrrr;rr
r�r��rUr�r$r�r�r�r-rr	r�r�r�s            r6�	test_tpmvzTestFBLAS2Simple.test_tpmv�s����T�
�
�
�#�F�+�+�	.�	.�J�C���A��Q�����u�%�%�A�$'�!�G�G��T�!�Q�Z�Z� � � ��d�1�a�j�j��a����B��6N�1O�1O�A���?�?�D�A�q��1�a�4��B�"�9�E�:�:�:�E�D����b�A�&�&�&�B����q���B�%�b�"�-�-�-����b�A�A�.�.�.�B�&+�e�A�h�h�A�f�Q�i�i�����"�#����q���B�%�b�"�-�-�-����b�A�A�Q�7�7�7�B��������B�%�b�"�-�-�-����b�A�A�Q�7�7�7�B����������"�"�B�%�b�"�-�-�-�-�3	.�	.r8c���td��tt��D�]�\}}d}t|���|��}|dkrtt||����n0tt||��t||��dzz��}|t
|��z
}t|��\}}|||f}td|���\}	|	|||���}
t||��}t|
|��|	|||d�	��}
|d��|t|��t|��f<t||��}t|
|��|	|||dd�
��}
t|j|��}t|
|��|	|||dd�
��}
t|�
��j|��}t|
|�����dS)Nr�r�r"r�)�tpsvr,r'rHr(r))rr�r�rr�rrrrrrr
r�r�r*s            r6�	test_tpsvzTestFBLAS2Simple.test_tpsv�s����T�
�
�
�#�F�+�+�	.�	.�J�C���A��Q�����u�%�%�A�$'�!�G�G��T�!�Q�Z�Z� � � ��d�1�a�j�j��a����B��6N�1O�1O�A�
��Q���K�A���?�?�D�A�q��1�a�4��B�"�9�E�:�:�:�E�D����b�A�&�&�&�B��q�!���B�%�b�"�-�-�-����b�A�A�.�.�.�B�&+�e�A�h�h�A�f�Q�i�i�����"�#��q�!���B�%�b�"�-�-�-����b�A�A�Q�7�7�7�B��q�s�A���B�%�b�"�-�-�-����b�A�A�Q�7�7�7�B��q�v�v�x�x�z�1�%�%�B�%�b�"�-�-�-�-�5	.�	.r8c��td��tt��D�]�\}}d}t||��t	|��z�|��}td���|��}t
d|���\}|||���}t|���|��}t||��|||d���}|d��|t|��t|��f<t|���|��}t||��|||dd���}t|��j�|��}t||��|||dd	���}t|�����j�|��}t||�����dS)
Nr�rI)�trmvr,�rMr�rH�rMr�r�rMr�rrr")
rr�r�rrr�rrr;rr
r�r��	rUr�r$r�r�r�r�r�r�s	         r6�	test_trmvzTestFBLAS2Simple.test_trmv�s����T�
�
�
�#�F�+�+�	.�	.�J�C���A��a����C��F�F�"�*�*�5�1�1�A��Q�����u�%�%�A�"�9�E�:�:�:�E�D����Q����B��a�����Q���B�%�b�"�-�-�-����Q�Q�'�'�'�B�&+�e�A�h�h�A�f�Q�i�i�����"�#��a�����Q���B�%�b�"�-�-�-����Q�Q�a�0�0�0�B��a������q�!�!�B�%�b�"�-�-�-����Q�Q�a�0�0�0�B��a�������!�%�%�a�(�(�B�%�b�"�-�-�-�-�+	.�	.r8c��td��tt��D�]�\}}d}t||��t	|��z�|��}t|���|��}t
d|���\}|||���}tt|��|��}t||��|||d���}tt|��|��}t||��|||d���}|d��|t|��t|��f<tt|��|��}t||��|||dd�	��}tt|��j|��}t||��|||dd
�	��}tt|���
��j|��}t||�����dS)Nr��)�trsvr,r1rH)rMr�r�r2r3r")rr�r�rrr�rrrrrr
r�r�r4s	         r6�	test_trsvzTestFBLAS2Simple.test_trsv�s����T�
�
�
�#�F�+�+�	.�	.�J�C���A��a����C��F�F�"�*�*�5�1�1�A��Q�����u�%�%�A�"�9�E�:�:�:�E�D����Q����B��t�A�w�w��"�"�B�%�b�"�-�-�-����Q�a�(�(�(�B��t�A�w�w��"�"�B�%�b�"�-�-�-����Q�Q�'�'�'�B�&+�e�A�h�h�A�f�Q�i�i�����"�#��t�A�w�w��"�"�B�%�b�"�-�-�-����Q�Q�a�0�0�0�B��t�A�w�w�y�!�$�$�B�%�b�"�-�-�-����Q�Q�a�0�0�0�B��t�A�w�w�|�|�~�~�'��+�+�B�%�b�"�-�-�-�-�3	.�	.r8N)rYrZr[r�r�r�r�r�r�rrrrr!r$r+r.r5r9r\r8r6r�r��s������
1�
1�
1�H�H�H�@^N�^N�^N�@+8�+8�+8�Z08�08�08�d.�.�.�:.�.�.�:1�1�1�@/�/�/�6/�/�/�8$.�$.�$.�L$.�$.�$.�L.�.�.�:.�.�.�<.�.�.�2.�.�.�.�.r8r�c��eZdZd�ZdS)�TestFBLAS3Simplec
��dD]^}tt|dzd��}|��t|ddgdg��dgg��t|ddgdgddg��dg���_dD]^}tt|dzd��}|��t|d	d
gdg��dgg��t|d	d
gdgddg��d
g���_dS)NrFr+rIrkr�rKr�rQrprqr�r�r�r`rTs   r6�	test_gemmzTestFBLAS3Simple.test_gemms���	F�	F�A���q��x��.�.�A��y��%�a�a��A�3���o�o���w�?�?�?�%�a�a��A�3���a�!��&=�&=��u�E�E�E�E��	O�	O�A���q��x��.�.�A��y��%�a�a��T�F�R�D�&9�&9�W�I�;�G�G�G�%�a�a��T�F�R�D�!�b�T�&B�&B�W�I�N�N�N�N�	O�	Or8N)rYrZr[r=r\r8r6r;r;s(������O�O�O�O�Or8r;�sdzcc#�TK�|D]"}tt||zd��}|��|V��#dS)z;Just a helper: return a specified BLAS function w/typecode.N)rSra)r��psrVr>s    r6�	_get_funcrA-sG����
�����E�1�T�6�4�(�(���9�������	�r8c�&�eZdZd�Zd�Zd�Zd�ZdS)�
TestBLAS3Symmc���tjddgddgg��|_tjgd�gd�g��|_tjd��|_tjgd�gd�g��|_dS)	Nr�r��)r�rE�@)rE��r�)r"rI)r�rGg @)rFrEg"@)r.�arrayrMr�rr-�t�rUs r6�setup_methodzTestBLAS3Symm.setup_method8s�����B��8���8�%�&�&�����<�<�<�(�=�=�*�+�+������������=�=�=�'�<�<�)�*�*����r8c	��td��D]�}||j|j|jdd���}t	||j��||jj|jd|jdd���}t	||j��||j|jjd|jjdd���}t	||jj����dS)N�symmr��rMr�r-r�r�rH�rMr�r�r-r�r�)rMr��sider-r�r�)rArMr�r-rrIr��rUr>�ress   r6�	test_symmzTestBLAS3Symm.test_symmAs����6�"�"�		5�		5�A��!�d�f���$�&���D�D�D�C�%�c�4�6�2�2�2��!�d�f�h�$�&��T�V�2�B�O�O�O�C�%�c�4�6�2�2�2��!�d�f����q�D�F�H��2�'�'�'�C�%�c�4�6�8�4�4�4�4�		5�		5r8c	�~�ttdd��}|�$tt|fi|j|jddd���dSdS)N�dsymmrH)rMr�r�rP)rSrar�r�rMr��rUr>s  r6�test_summ_wrong_sidez"TestBLAS3Symm.test_summ_wrong_sideMsi���E�7�D�)�)���=��)�Q�
C�
C���T�V�45�q�+B�+B�
C�
C�
C�
C�
C��=r8c�(�ttdd��}|�w||j|j|jdd���}tj||j��sJ�||j|jd|jdd���}tj||j��rJ�dSdS)z�SYMM only considers the upper/lower part of A. Hence setting
        wrong value for `lower` (default is lower=0, meaning upper triangle)
        gives a wrong result.
        rUNr�rNrHrO)rSrarMr�r-r.�allcloserIrQs   r6�test_symm_wrong_uploz"TestBLAS3Symm.test_symm_wrong_uploUs���

�E�7�D�)�)���=��!�d�f���$�&���D�D�D�C��;�s�D�F�+�+�+�+�+��!�d�f���a�4�6��"�M�M�M�C��{�3���/�/�/�/�/��=�

0�/r8N)rYrZr[rKrSrWrZr\r8r6rCrC6sS������*�*�*�
5�
5�
5�C�C�C�0�0�0�0�0r8rCc� �eZdZd�Zd�Zd�ZdS)�
TestBLAS3Syrkc���tjddgddgddgg��|_tjgd�gd�gd�g��|_tjd	d
gd
dgg��|_dS)Nr�rE��r�rF)r�rEr�)rE�@��)r�r`�*@�@�@ra)r.rHrMrI�ttrJs r6rKzTestBLAS3Syrk.setup_methodds�����B��8���9���8�%�&�&�����<�<�<�(�=�=�)�>�>�+�,�,����(�R��H���I�'�(�(����r8c���td��D�]T}||jd���}ttj|��tj|j����||jdd���}ttj|��tj|j����tj|jj��}||jdd|���}ttj|��tj|j|z����||jdd���}ttj|��tj|j	������VdS)N�syrkr��rMr�rH)rMr�r�)rMr�r�r-)rMr�r)
rArMrr.rrIrr�shaperd�rUr>r-�c0s    r6�	test_syrkzTestBLAS3Syrk.test_syrkns-���6�"�"�	D�	D�A���D�F�"�%�%�%�A�%�b�g�a�j�j�"�'�$�&�/�/�B�B�B���D�F�"�A�.�.�.�A�%�b�g�a�j�j�"�'�$�&�/�/�B�B�B������&�&�B���D�F�"�2��4�4�4�A�%�b�g�a�j�j�"�'�$�&��)�2D�2D�E�E�E���D�F�"�A�.�.�.�A�%�b�g�a�j�j�"�'�$�'�2B�2B�C�C�C�C�	D�	Dr8c	��ttdd��}|�0tt|fi|jdtjd��d���dSdS)N�dsyrkr�)rKre)rMr�r-)rSrar�r�rMr.rrVs  r6�test_syrk_wrong_czTestBLAS3Syrk.test_syrk_wrong_c�sm���E�7�D�)�)���=��)�Q�
B�
B����02�����+A�+A�
B�
B�
B�
B�
B��=r8N)rYrZr[rKrkrnr\r8r6r\r\csI������(�(�(�
D�
D�
D�$B�B�B�B�Br8r\c� �eZdZd�Zd�Zd�ZdS)�TestBLAS3Syr2kc��tjddgddgddgg��|_tjddgddgddgg��|_tjgd�gd�gd	�g��|_tjddgdd
gg��|_dS)Nr�rEr^r�rFr)rErGrF)rGrErE)rFrErcr�)r.rHrMr�rIrdrJs r6rKzTestBLAS3Syr2k.setup_method�s�����B��8���9���8�%�&�&�����B��8���8��r�7�$�%�%�����=�=�=�(�=�=�'�<�<�)�*�*����(�R��H���G�%�&�&����r8c��td��D�]l}||j|jd���}tt	j|��t	j|j����||j|jdd���}tt	j|��t	j|j����t	j|jj	��}||j|jdd|���}tt	j|��t	j|j|z����||j|jdd���}tt	j|��t	j|j
������ndS)N�syr2kr��rMr�r�rH)rMr�r�r�)rMr�r�r�r-)rMr�r�r)rArMr�rr.rrIrrrhrdris    r6�
test_syr2kzTestBLAS3Syr2k.test_syr2k�s=���7�#�#�	D�	D�A���D�F�d�f�B�/�/�/�A�%�b�g�a�j�j�"�'�$�&�/�/�B�B�B���D�F�d�f�B�a�8�8�8�A�%�b�g�a�j�j�"�'�$�&�/�/�B�B�B������&�&�B���D�F�d�f�B�R�2�>�>�>�A�%�b�g�a�j�j�"�'�$�&��)�2D�2D�E�E�E���D�F�d�f�B�a�8�8�8�A�%�b�g�a�j�j�"�'�$�'�2B�2B�C�C�C�C�	D�	Dr8c
��ttdd��}|�6tt|fi|j|jdt
jd��d���dSdS)N�dsyr2kr�)r7re)rMr�r�r-)rSrar�r�rMr�r.rrVs  r6�test_syr2k_wrong_cz!TestBLAS3Syr2k.test_syr2k_wrong_c�su���E�8�T�*�*���=��)�Q�
D�
D���04��46�02���0A�0A�+C�+C�
D�
D�
D�
D�
D��=r8N)rYrZr[rKrurxr\r8r6rprp�sI������&�&�&�
D�
D�
D� D�D�D�D�Dr8rpc�<�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	S)
�TestSyHez2Quick and simple tests for (zc)-symm, syrk, syr2k.c�D�tjddgddgg��|_dS)NrEy��r�)r.rH�sigma_yrJs r6rKzTestSyHe.setup_method�s+���x�"�d��"%�r��!,�-�-����r8c���tdd��D]P}||j|jd���}ttj|��tjddg�����QdS)NrM�zcr�rtrHrJ�rAr|rr.rrrQs   r6�test_symm_zczTestSyHe.test_symm_zc�sl���6�4�(�(�	F�	F�A��!�d�l�d�l�"�=�=�=�C�%�b�g�c�l�l�B�G�Q��G�4D�4D�E�E�E�E�	F�	Fr8c���tdd��D]P}||j|jd���}ttj|��tjddg�����QdS)N�hemmr~r�rtrHrrQs   r6�test_hemm_zczTestSyHe.test_hemm_zc�sj���6�4�(�(�	E�	E�A��!�d�l�d�l�"�=�=�=�C�%�b�g�c�l�l�B�G�Q��F�O�O�D�D�D�D�	E�	Er8c��tdd��D]J}||jd���}ttj|��tjddg�����KdS)Nrfr~r�rgrJrrQs   r6�test_syrk_zrzTestSyHe.test_syrk_zr�sh���6�4�(�(�	G�	G�A��!�d�l�"�-�-�-�C�%�b�g�c�l�l�B�G�R��H�4E�4E�F�F�F�F�	G�	Gr8c��tdd��D]J}||jd���}ttj|��tjddg�����KdS)N�herkr~r�rgrHrrQs   r6�test_herk_zrzTestSyHe.test_herk_zr�sf���6�4�(�(�	E�	E�A��!�d�l�"�-�-�-�C�%�b�g�c�l�l�B�G�Q��F�O�O�D�D�D�D�	E�	Er8c	���tdd��D]S}||j|jd���}ttj|��dtjddg��z���TdS)Nrsr~r�rtr�rJrrQs   r6�
test_syr2k_zrzTestSyHe.test_syr2k_zr�sq���7�D�)�)�	J�	J�A��!�d�l�d�l�"�=�=�=�C�%�b�g�c�l�l�B�r�w��B�x�7H�7H�4H�I�I�I�I�	J�	Jr8c	���tdd��D]S}||j|jd���}ttj|��dtjddg��z���TdS)N�her2kr~r�rtr�rHrrQs   r6�
test_her2k_zrzTestSyHe.test_her2k_zr�so���7�D�)�)�	H�	H�A��!�d�l�d�l�"�=�=�=�C�%�b�g�c�l�l�B�r�w��1�v���4F�G�G�G�G�	H�	Hr8N)rYrZr[�__doc__rKr�r�r�r�r�r�r\r8r6rzrz�s�������<�<�-�-�-�F�F�F�E�E�E�G�G�G�
E�E�E�
J�J�J�
H�H�H�H�Hr8rzc�r�eZdZdZd�Zej�de��d���Z	d�Z
d�Zd�ZdS)	�TestTRMMz!Quick and simple tests for dtrmm.c�$�tjddgddgg��|_tjgd�gd�g��|_tjgd�gd�gd�gd	�gd
���|_tjdd
gddgddgddgddggd
���|_dS)Nr�r�r^�rFr_rG�rbrcr^)rHrHr"rI)rrHrdrK)rrrHr�)rrrrHr>)r%rHrdr"rKrIr�rNrerOr�)r.rHrMr��a2�b2rJs r6rKzTestTRMM.setup_method�s�����B��:���9�&�'�'�����=�=�=�(�=�=�*�+�+����(�L�L�L�(�L�L�(�L�L�(�L�L�*�25�6�6�6����(�Q��F�Q��F�Q��F�Q��F�Q��G�D�!$�&�&�&����r8�dtype_c	��td|���}tt|d|j|j��|d|j�|��|j�|��d���}|jjd}t||j|jd|�d|�fzddtj	|��j
z���dS)	N�trmmr,r�rH)rPrE�d)r��atol)rr�r�r�r�r�rhrr.�finfo�eps)rUr�r�rRr�s     r6�	test_sidezTestTRMM.test_side�s����f�F�3�3�3���i��s�D�G�T�W�=�=�=��d�3�����v�.�.�����v�0F�0F�������G�M�!�����T�W�t�w�r��r�2�A�2�v��6�R� ���&�!1�!1�!5�5�	7�	7�	7�	7�	7�	7r8c��ttdd��}|�C|d|j|j��}t	jgd�gd�g��}t
||��dSdS)N�dtrmmr�)rag0@g�r��rSrarMr�r.rHr�rUr>�result�expecteds    r6�test_abzTestTRMM.test_ab�so���E�7�D�)�)���=��Q�r�4�6�4�6�*�*�F��x����!.���!0�1�1�H�%�f�h�7�7�7�7�7��=r8c��ttdd��}|�E|d|j|jd���}t	jgd�gd�g��}t
||��dSdS)Nr�r�Tr�r�)rGr^rEr�r�s    r6�
test_ab_lowerzTestTRMM.test_ab_lower�st���E�7�D�)�)���=��Q�r�4�6�4�6��6�6�6�F��x����!/���!1�2�2�H�%�f�h�7�7�7�7�7�	�=r8c�.�ttdd��}|��dD]v}|j���}|d|j||���}t|jjduotj	||��du��t||j���wtj|j�����}|d|j|d���}t|jjduotj	||��du��t||��dSdS)Nr�)TFr�)�overwrite_bFT)
rSrar�rcrMr�flags�f_contiguousr.�may_share_memoryr�asfortranarrayr)rUr>�overwr�bcopyr�s     r6�test_b_overwriteszTestTRMM.test_b_overwritess/��
�E�7�D�)�)���=�'�
,�
,������
�
����2�t�v�u�&�A�A�A�����0�E�9�D��+�E�6�:�:�e�C�E�E�E��U�D�F�+�+�+�+��%�d�f�k�k�m�m�4�4�E��Q�r�4�6�5�d�;�;�;�F��E�K�,��4�?��'��v�6�6�$�>�
@�
@�
@�%�e�V�4�4�4�4�4��=r8N)
rYrZr[r�rK�pytest�mark�parametrizer�r�r�r�r�r\r8r6r�r��s�������+�+�&�&�&��[���X�v�.�.�7�7�/�.�7�8�8�8�8�8�8�5�5�5�5�5r8r�c	��td��tt��D�]�\}}tj|��jdz}t
d|���\}tdd���|��}tdd���|��}|d��}tt||||��tt|||j|��d}d	}|d
��}|dkrt||��n#t||��t||��dzzt|��z}|�|��}t|��}	t|��}
t||���|��}t||���|��}||||�
��}
t|j|
j��t#|	||z��}t%|
||���||||d���}
t#|	j||z��}t%|
||���||||d���}
t#|	���j||z��}t%|
||���||||d���}
|d��|	t)|��t)|��f<t#|	||z��}t%|
||���||||dd���}
t#|	���j||���jz��}t%|
|���j|���||||ddd���}
|d��|
t)|��t)|��f<t#|
���j||���jz��}t%|
|���j|������dS)Nr�i�)�trsmr,rdrKrHrerNg�r"r�)r�rMr�)r�)r�rMr��trans_a)r�rMr�r)r�rMr�rrP)r�rMr�rrPr�)rr�r�r.r�r�rrr�r�r�r�rrrrrhrrr�r
)r�r$�tolr�r��Br�r�r��Au�Al�B1�B2r��x2s               r6�	test_trsmr�s�����J�J�J���'�'�.3�.3�
��U��h�u�o�o�!�$�&���y��6�6�6���
��A�J�J���e�$�$����A�J�J���e�$�$����a�����i��u�a��3�3�3��i��u�a�c�1�5�5�5�
��
����d������7�7�T�!�Q�Z�Z�Z��Q��
�
�T�!�Q�Z�Z��]�(B�c�!�f�f�L��
�H�H�U�O�O��
�!�W�W��
�!�W�W��
�!�Q�Z�Z�
�
�u�
%�
%��
�!�Q�Z�Z�
�
�u�
%�
%��
�T���b�
)�
)�
)���R�X�r�x�(�(�(�
�2�u�R�x�
 �
 ����B�S�)�)�)�)�
�T���b�!�
4�
4�
4��
�2�4��r��
"�
"����B�S�)�)�)�)�
�T���b�!�
4�
4�
4��
�2�7�7�9�9�;��b��
)�
)����B�S�)�)�)�)�
�T���b�q�
1�
1�
1��#(�5��8�8��6�!�9�9�f�Q�i�i�� �
�2�u�R�x�
 �
 ����B�S�)�)�)�)�
�T���b�q�q�
9�
9�
9��
�2�7�7�9�9�;��b�g�g�i�i�k� 1�
2�
2����B�G�G�I�I�K�c�2�2�2�2�
�T���b�q�q��
B�
B�
B��#(�5��8�8��6�!�9�9�f�Q�i�i�� �
�2�7�7�9�9�;��b�g�g�i�i�k� 1�
2�
2����B�G�G�I�I�K�c�2�2�2�2�2�].3�.3r8)r>)8�	__usage__r�r��numpyr.�
numpy.testingrrrrrrr�r	r
rrr
rrrrrrrrrr�numpy.randomrr�scipy.linalgrrarrrrr(�ImportError�REAL_DTYPESrr�r7rArCr^r�r;rArCr\rprzr�r�r\r8r6�<module>r�s���

�	�����
�
�
�
�����G�G�G�G�G�G�G�G�G�G�G�G�G�G�*�*�*�*�*�*�����������������������������������$�#�#�#�#�#�#�#�I�I�I�I�I�I�I�I�I�I�I�I��,�,�,�,�,�,�,�������E�E�E������� ���Z�(��	�~�	%��$#�$#�$#�N���6�6�6�6�6�6�6�6�"r.�r.�r.�r.�r.�r.�r.�r.�l|.�|.�|.�|.�|.�|.�|.�|.�~O�O�O�O�O�O�O�O�"����*0�*0�*0�*0�*0�*0�*0�*0�Z!B�!B�!B�!B�!B�!B�!B�!B�J$D�$D�$D�$D�$D�$D�$D�$D�P%H�%H�%H�%H�%H�%H�%H�%H�P=5�=5�=5�=5�=5�=5�=5�=5�@03�03�03�03�03s�A!�!A+�*A+

Youez - 2016 - github.com/yon3zu
LinuXploit