§
    fŠtj;  ã                   ó°   — d Z g ZddlmZmZmZmZ ddlmZm	Z	m
Z
 i dd“dd“dd	“d
d“dd“dd“dd“dd“dd	“dd“dd	“dd“dd“dd“dd“dd“Zd„ Zd„ Zd„ ZdS )zrestructuredtext ené    )Ú
asanyarrayÚasarrayÚarrayÚzeros)ÚaslinearoperatorÚLinearOperatorÚIdentityOperator)Úfr
   r
   )r
   Údr   )r
   ÚFr   )r
   ÚDr   )r   r
   )r   r   )r   r   )r   r   )r   r
   )r   r   )r   r   )r   r   )r   r
   )r   r   )r   r   )r   r   c                 ó8   — | dvrd} |dvrd}t           | |f         S )NÚfdFDr   )Ú_coerce_rules)ÚxÚys     ú_/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/sparse/linalg/_isolve/utils.pyÚcoercer      s-   € Ø�€€ØˆØ�€€ØˆÝ˜˜1˜ÔÐó    c                 ó   — | S )N© )r   s    r   Úidr      s   € Ø€Hr   c                 ó`  — | }t          | ¦  «        } | j        d         | j        d         k    rt          d| j        f› �¦  «        ‚| j        d         }t          |¦  «        }|j        |dfk    s,|j        |fk    s t          d| j        › d|j        › d�¦  «        ‚|j        j        dvr|                     d¦  «        }t          | d	¦  «        r| j        j        }n|                      |¦  «        j        j        }t          ||j        j        ¦  «        }t          ||¬
¦  «        }|                     ¦   «         }|€Št          |d¦  «        r|j        }nt          }t          |d¦  «        r|j        }nt          }|t          u r%|t          u rt          | j        | j        ¬¦  «        }nLt!          | j        ||| j        ¬¦  «        }n.t          |¦  «        }| j        |j        k    rt          d¦  «        ‚|€t#          ||¬
¦  «        }	n£t%          |t&          ¦  «        r0|dk    r)|                     ¦   «         }
|                     |
¦  «        }	n^t+          ||¬
¦  «        }	|	j        |dfk    s,|	j        |fk    s t          d| j        › d|	j        › d�¦  «        ‚|	                     ¦   «         }	| ||	|fS )a.  Make a linear system Ax=b

    Parameters
    ----------
    A : LinearOperator
        sparse or dense matrix (or any valid input to aslinearoperator)
    M : {LinearOperator, Nones}
        preconditioner
        sparse or dense matrix (or any valid input to aslinearoperator)
    x0 : {array_like, str, None}
        initial guess to iterative method.
        ``x0 = 'Mb'`` means using the nonzero initial guess ``M @ b``.
        Default is `None`, which means using the zero initial guess.
    b : array_like
        right hand side

    Returns
    -------
    (A, M, x, b)
        A : LinearOperator
            matrix of the linear system
        M : LinearOperator
            preconditioner
        x : rank 1 ndarray
            initial guess
        b : rank 1 ndarray
            right hand side

    r   é   z&expected square matrix, but got shape=zshapes of A z and b z are incompatibler   r   Údtype)r   NÚpsolveÚrpsolve)Úshaper   )ÚmatvecÚrmatvecr   z/matrix and preconditioner have different shapesÚMbz and x0 )r   r   Ú
ValueErrorr   r   ÚcharÚastypeÚhasattrr   r   r   Úravelr   r   r   r	   r   r   Ú
isinstanceÚstrÚcopyr   )ÚAÚMÚx0ÚbÚA_ÚNÚxtyper   r   r   ÚbCopys              r   Úmake_systemr2      sÍ  € ð< 
€BÝ˜ÑÔ€Aà„wˆq„z�Q”W˜Q”ZÒÐÝÐNÀ1Ä7À*ÐNÐNÑOÔOÐOà	Œ�Œ
€Aå�1‰Œ€AàŒG˜˜!�uÒÐ ¤¨A¨4¢ Ýð (¨¬ð (ð (¸¼ð (ð (ð (ñ )ô )ð 	)ð 	„w„|˜6Ð!Ð!Ø�HŠH�S‰MŒMˆåˆq�ÑÔð 'Ø””ˆˆà—’˜‘”Ô!Ô&ˆÝ�5˜!œ'œ,Ñ'Ô'€Eå�˜ÐÑÔ€AØ	�Š‰	Œ	€Að 	€yÝ�2�hÑÔð 	Ø”YˆFˆFåˆFÝ�2�iÑ Ô ð 	Ø”jˆGˆGåˆGØ•Rˆ<ˆ<˜G¥r˜M˜MÝ  q¤w°a´gÐ>Ñ>Ô>ˆAˆAå˜qœw¨v¸wØ%&¤Wð.ñ .ô .ˆAˆAõ ˜QÑÔˆØŒ7�a”gÒÐÝÐNÑOÔOÐOð 
€zÝ�!˜5Ð!Ñ!Ô!ˆˆÝ	�B�Ñ	Ô	ð 	Ø�Š:ˆ:Ø—F’F‘H”HˆEØ—’˜‘”ˆAøå�"˜EÐ"Ñ"Ô"ˆØ”˜A˜q˜6Ò!Ð! Q¤W°°¢_ _Ýð >¨A¬Gð >ð >Ø#$¤7ð>ð >ð >ñ ?ô ?ð ?à�GŠG‰IŒIˆàˆa��Aˆ:Ðr   N)Ú__docformat__Ú__all__Únumpyr   r   r   r   Úscipy.sparse.linalg._interfacer   r   r	   r   r   r   r2   r   r   r   ú<module>r7      sU  ðØ%€à
€ð 4Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3ðð ð ð ð ð ð ð ð ð ð �˜3ð   	¨#ð  ¨y¸ð  Ø˜3ð Ø )¨#ð Ø/8¸ð à˜3ð à )¨#ð à/8¸ð ð ˜3ð ð !*¨#ð ð 09¸ð ð ˜3ð	 ð !*¨#ð	 ð 09¸ð	 ð
 ˜3ð €ðð ð ðð ð ðZð Zð Zð Zð Zr   