
    \h                     B    S SK Jr  S SKJrJr  S SKJr   " S S\5      rg)    )Basic)adjoint	conjugate)
MatrixExprc                   `    \ rS rSrSrSrS r\S 5       r\S 5       r	S r
S rS	 rS
 rS rSrg)Adjoint   a  
The Hermitian adjoint of a matrix expression.

This is a symbolic object that simply stores its argument without
evaluating it. To actually compute the adjoint, use the ``adjoint()``
function.

Examples
========

>>> from sympy import MatrixSymbol, Adjoint, adjoint
>>> A = MatrixSymbol('A', 3, 5)
>>> B = MatrixSymbol('B', 5, 3)
>>> Adjoint(A*B)
Adjoint(A*B)
>>> adjoint(A*B)
Adjoint(B)*Adjoint(A)
>>> adjoint(A*B) == Adjoint(A*B)
False
>>> adjoint(A*B) == Adjoint(A*B).doit()
True
Tc                     U R                   nUR                  SS5      (       a0  [        U[        5      (       a  [	        UR
                  " S0 UD65      $ [	        U R                   5      $ )NdeepT )argget
isinstancer   r   doit)selfhintsr   s      Z/var/www/auris/envauris/lib/python3.13/site-packages/sympy/matrices/expressions/adjoint.pyr   Adjoint.doit   sN    hh99VT""z#u'='=388,e,--488$$    c                      U R                   S   $ )Nr   )argsr   s    r   r   Adjoint.arg&   s    yy|r   c                 :    U R                   R                  S S S2   $ )N)r   shaper   s    r   r   Adjoint.shape*   s    xx~~dd##r   c                 N    [        U R                  R                  " X!40 UD65      $ N)r   r   _entry)r   ijkwargss       r   r    Adjoint._entry.   s    8899r   c                     U R                   $ r   )r   r   s    r   _eval_adjointAdjoint._eval_adjoint1   s    xxr   c                 6    U R                   R                  5       $ r   )r   r   r   s    r   _eval_transposeAdjoint._eval_transpose4       xx!!##r   c                 6    U R                   R                  5       $ r   )r   	transposer   s    r   _eval_conjugateAdjoint._eval_conjugate7   r+   r   c                 D    SSK Jn  [        U" U R                  5      5      $ )Nr   )Trace) sympy.matrices.expressions.tracer1   r   r   )r   r1   s     r   _eval_traceAdjoint._eval_trace:   s    :txx))r   r   N)__name__
__module____qualname____firstlineno____doc__
is_Adjointr   propertyr   r   r    r&   r)   r.   r3   __static_attributes__r   r   r   r   r      sT    , J%   $ $:$$*r   r   N)
sympy.corer   sympy.functionsr   r   "sympy.matrices.expressions.matexprr   r   r   r   r   <module>r@      s     . 96*j 6*r   