Current File : //usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyc
�
E�`Qc@s�ddddgZddlZddljjZddlmZmZmZm	Z	m
Z
ddlmZdZ
ejd	d
kr�dfd��YZe�Zd
�Zn�egdZx$ed�D]Zee�ee<q�Wdje�ZgZx*eD]"Zee
kreje�nq�Wdje�Z[d�Zd�Zed�Zd�Zdejfd��YZd�Zeed�ZeZ dS(tmatrixtbmattmattasmatrixi����N(tconcatenatetisscalartbinary_reprtidentityt
asanyarray(t
issubdtypes0123456789.-+jeELiit
_NumCharTablecBseZd�ZRS(cCs$t|�tkrt|�SdSdS(N(tchrt	_numcharstNone(tselfti((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt__getitem__
s
(t__name__t
__module__R(((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR
scCst|jt��S(N(tevalt	translatet_table(tastr((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt_evalsitcCst|jtt��S(N(RRRt	_todelete(R((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR"sc
Cs�|jd�}g}d}x�|D]�}|jd�}g}x0|D](}|j�}|jtt|��qDW|dkr�t|�}	n!t|�|	kr�td��n|d7}|j|�q"W|S(Nt;it,sRows not the same size.i(tsplittextendtmapRtlent
ValueErrortappend(
tdatatrowstnewdatatcounttrowttrowtnewrowtcolttemptNcols((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt_convert_from_string%s 


cCst|d|dt�S(s
    Interpret the input as a matrix.

    Unlike `matrix`, `asmatrix` does not make a copy if the input is already
    a matrix or an ndarray.  Equivalent to ``matrix(data, copy=False)``.

    Parameters
    ----------
    data : array_like
        Input data.

    Returns
    -------
    mat : matrix
        `data` interpreted as a matrix.

    Examples
    --------
    >>> x = np.array([[1, 2], [3, 4]])

    >>> m = np.asmatrix(x)

    >>> x[0,0] = 5

    >>> m
    matrix([[5, 2],
            [3, 4]])

    tdtypetcopy(RtFalse(R"R-((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR7sc
Cs�t|�}t|j�dks;|jd|jdkrJtd��ntt|�t�sntd��nddlm	}|dkr�|j
�}t|jd�|(|S|dkr�||�}|d9}n|}|dkrx*t|d�D]}t
j||�}q�W|St|�}|dt|�}}}x8|||dd	krvt
j||�}|d7}q?W|}xZt|d|�D]E}	t
j||�}|||	dd
kr�t
j||�}q�q�W|S(s{
    Raise a square matrix to the (integer) power `n`.

    For positive integers `n`, the power is computed by repeated matrix
    squarings and matrix multiplications. If ``n == 0``, the identity matrix
    of the same shape as M is returned. If ``n < 0``, the inverse
    is computed and then raised to the ``abs(n)``.

    Parameters
    ----------
    M : ndarray or matrix object
        Matrix to be "powered."  Must be square, i.e. ``M.shape == (m, m)``,
        with `m` a positive integer.
    n : int
        The exponent can be any integer or long integer, positive,
        negative, or zero.

    Returns
    -------
    M**n : ndarray or matrix object
        The return value is the same shape and type as `M`;
        if the exponent is positive or zero then the type of the
        elements is the same as those of `M`. If the exponent is
        negative the elements are floating-point.

    Raises
    ------
    LinAlgError
        If the matrix is not numerically invertible.

    See Also
    --------
    matrix
        Provides an equivalent function as the exponentiation operator
        (``**``, not ``^``).

    Examples
    --------
    >>> from numpy import linalg as LA
    >>> i = np.array([[0, 1], [-1, 0]]) # matrix equiv. of the imaginary unit
    >>> LA.matrix_power(i, 3) # should = -i
    array([[ 0, -1],
           [ 1,  0]])
    >>> LA.matrix_power(np.matrix(i), 3) # matrix arg returns matrix
    matrix([[ 0, -1],
            [ 1,  0]])
    >>> LA.matrix_power(i, 0)
    array([[1, 0],
           [0, 1]])
    >>> LA.matrix_power(i, -3) # should = 1/(-i) = i, but w/ f.p. elements
    array([[ 0.,  1.],
           [-1.,  0.]])

    Somewhat more sophisticated example

    >>> q = np.zeros((4, 4))
    >>> q[0:2, 0:2] = -i
    >>> q[2:4, 2:4] = i
    >>> q # one of the three quarternion units not equal to 1
    array([[ 0., -1.,  0.,  0.],
           [ 1.,  0.,  0.,  0.],
           [ 0.,  0.,  0.,  1.],
           [ 0.,  0., -1.,  0.]])
    >>> LA.matrix_power(q, 2) # = -np.eye(4)
    array([[-1.,  0.,  0.,  0.],
           [ 0., -1.,  0.,  0.],
           [ 0.,  0., -1.,  0.],
           [ 0.,  0.,  0., -1.]])

    iiisinput must be a square arraysexponent must be an integeri����(tinvit0t1(RRtshapeR R	ttypetintt	TypeErrortnumpy.linalgR0R.RtrangetNtdotR(
tMtnR0tresultt_tbetatZtqtttk((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pytmatrix_powerWs:G/
cBs�eZdZdZd(ed�Zd�Zd�Zd�Z	d�Z
d�Zd�Zd	�Z
d
�Zd�Zd�Zd
�Zd�Zd�Zd(d(d(d�Zd(d(d(d�Zd(d(d(dd�Zd(d(d(dd�Zd(d(d(d�Zd(d(d�Zd(d(d�Zd(d(d�Zd(d(d�Zd(d(d�Zd(d(d�Zd(d(d�Zd�Z d�Z!d�Z"d �Z#d!�Z$e%e#d(d"d#�Z&e%e!d(d"d$�Z'e%e"d(d"d%�Z(e%e$d(d"d&�Z)e%e d(d"d'�Z*RS()s�
    matrix(data, dtype=None, copy=True)

    Returns a matrix from an array-like object, or from a string of data.
    A matrix is a specialized 2-D array that retains its 2-D nature
    through operations.  It has certain special operators, such as ``*``
    (matrix multiplication) and ``**`` (matrix power).

    Parameters
    ----------
    data : array_like or string
       If `data` is a string, it is interpreted as a matrix with commas
       or spaces separating columns, and semicolons separating rows.
    dtype : data-type
       Data-type of the output matrix.
    copy : bool
       If `data` is already an `ndarray`, then this flag determines
       whether the data is copied (the default), or whether a view is
       constructed.

    See Also
    --------
    array

    Examples
    --------
    >>> a = np.matrix('1 2; 3 4')
    >>> print a
    [[1 2]
     [3 4]]

    >>> np.matrix([[1, 2], [3, 4]])
    matrix([[1, 2],
            [3, 4]])

    g$@cCs�t|t�rQ|j}|dkr-|}n||krD|rD|S|j|�St|tj�r�|dkr{|j}ntj|�}|j|�}||jkr�|j|�S|r�|j�S|Snt|t	�r�t
|�}ntj|d|d|�}|j}|j
}	|dkr2td��n4|dkrGd	}	n|dkrfd|	df}	nt}
|dkr�|jjr�t}
n|
p�|jjs�|j�}ntjj||	|jd|d|
�}|S(
NR-R.ismatrix must be 2-dimensionaliitbuffertorder(ii(t
isinstanceRR-R
tastypeR9tndarraytviewR.tstrR,tarraytndimR3R R/tflagstfortrantTruet
contiguoust__new__(tsubtypeR"R-R.tdtype2tintypetnewtarrRMR3RFtret((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyRR�sJ		


					cCst|_t|t�r%|jr%dS|j}|dkr>dS|dkr�tg|jD]}|dkrW|^qW�}t|�}|dkr�||_dS|dkr�td��q�n	|j}|dkr�d|_n"|dkr�d|df|_ndS(Niisshape too large to be a matrix.i(ii(	R/t_getitemRGRRMttupleR3RR (RtobjRMtxtnewshape((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt__array_finalize__s(		.		cCs�t|_ztjj||�}Wdt|_Xt|tj�sE|S|jdkr\|dS|jdkr�|jd}yt	|�}Wn
d}nX|dkr�t
|d�r�|df|_q�d|f|_n|S(Nii((RPRYR9RIRR/RGRMR3RR(RtindextouttshR<((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR-s$	


cCsat|tjttf�r1tj|t|��St|�sMt|d�r]tj||�St	S(Nt__rmul__(
RGR9RItlistRZR:RRthasattrtNotImplemented(Rtother((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt__mul__Gs
cCstj||�S(N(R9R:(RRf((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyRbOscCs|||(|S(N((RRf((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt__imul__RscCs
t||�S(N(RD(RRf((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt__pow__VscCs|||(|S(N((RRf((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt__ipow__YscCstS(N(Re(RRf((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt__rpow__]scCsvt|j��jdd�}|j�}x<tdt|��D]%}||r@d||||<q@q@Wdj|�S(NRLRit s
(treprt	__array__treplacet
splitlinesR8Rtjoin(RtstlR((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt__repr__`s
cCst|j��S(N(RKRn(R((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt__str__jscCsJ|dkr|dS|dkr$|S|dkr:|j�Std��dS(s^A convenience function for operations that need to preserve axis
        orientation.
        iisunsupported axisN(ii(R
t	transposeR (Rtaxis((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt_alignms
cCs|dkr|dS|SdS(s�A convenience function for operations that want to collapse
        to a scalar like _align, but are using keepdims=True
        iN(ii(R
(RRw((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt	_collapsezscCs|j�j�S(s�
        Return the matrix as a (possibly nested) list.

        See `ndarray.tolist` for full documentation.

        See Also
        --------
        ndarray.tolist

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3,4))); x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> x.tolist()
        [[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10, 11]]

        (Rnttolist(R((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyRz�scCs(tjj||||dt�j|�S(s
        Returns the sum of the matrix elements, along the given axis.

        Refer to `numpy.sum` for full documentation.

        See Also
        --------
        numpy.sum

        Notes
        -----
        This is the same as `ndarray.sum`, except that where an `ndarray` would
        be returned, a `matrix` object is returned instead.

        Examples
        --------
        >>> x = np.matrix([[1, 2], [4, 3]])
        >>> x.sum()
        10
        >>> x.sum(axis=1)
        matrix([[3],
                [7]])
        >>> x.sum(axis=1, dtype='float')
        matrix([[ 3.],
                [ 7.]])
        >>> out = np.zeros((1, 2), dtype='float')
        >>> x.sum(axis=1, dtype='float', out=out)
        matrix([[ 3.],
                [ 7.]])

        tkeepdims(R9RItsumRPRy(RRwR-R`((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR|�s cCs(tjj||||dt�j|�S(s�
        Returns the average of the matrix elements along the given axis.

        Refer to `numpy.mean` for full documentation.

        See Also
        --------
        numpy.mean

        Notes
        -----
        Same as `ndarray.mean` except that, where that returns an `ndarray`,
        this returns a `matrix` object.

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3, 4)))
        >>> x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> x.mean()
        5.5
        >>> x.mean(0)
        matrix([[ 4.,  5.,  6.,  7.]])
        >>> x.mean(1)
        matrix([[ 1.5],
                [ 5.5],
                [ 9.5]])

        R{(R9RItmeanRPRy(RRwR-R`((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR}�s icCs+tjj|||||dt�j|�S(s?
        Return the standard deviation of the array elements along the given axis.

        Refer to `numpy.std` for full documentation.

        See Also
        --------
        numpy.std

        Notes
        -----
        This is the same as `ndarray.std`, except that where an `ndarray` would
        be returned, a `matrix` object is returned instead.

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3, 4)))
        >>> x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> x.std()
        3.4520525295346629
        >>> x.std(0)
        matrix([[ 3.26598632,  3.26598632,  3.26598632,  3.26598632]])
        >>> x.std(1)
        matrix([[ 1.11803399],
                [ 1.11803399],
                [ 1.11803399]])

        R{(R9RItstdRPRy(RRwR-R`tddof((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR~�s cCs+tjj|||||dt�j|�S(s*
        Returns the variance of the matrix elements, along the given axis.

        Refer to `numpy.var` for full documentation.

        See Also
        --------
        numpy.var

        Notes
        -----
        This is the same as `ndarray.var`, except that where an `ndarray` would
        be returned, a `matrix` object is returned instead.

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3, 4)))
        >>> x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> x.var()
        11.916666666666666
        >>> x.var(0)
        matrix([[ 10.66666667,  10.66666667,  10.66666667,  10.66666667]])
        >>> x.var(1)
        matrix([[ 1.25],
                [ 1.25],
                [ 1.25]])

        R{(R9RItvarRPRy(RRwR-R`R((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR�s cCs(tjj||||dt�j|�S(s�
        Return the product of the array elements over the given axis.

        Refer to `prod` for full documentation.

        See Also
        --------
        prod, ndarray.prod

        Notes
        -----
        Same as `ndarray.prod`, except, where that returns an `ndarray`, this
        returns a `matrix` object instead.

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3,4))); x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> x.prod()
        0
        >>> x.prod(0)
        matrix([[  0,  45, 120, 231]])
        >>> x.prod(1)
        matrix([[   0],
                [ 840],
                [7920]])

        R{(R9RItprodRPRy(RRwR-R`((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR�$scCs%tjj|||dt�j|�S(sE
        Test whether any array element along a given axis evaluates to True.

        Refer to `numpy.any` for full documentation.

        Parameters
        ----------
        axis: int, optional
            Axis along which logical OR is performed
        out: ndarray, optional
            Output to existing array instead of creating new one, must have
            same shape as expected output

        Returns
        -------
            any : bool, ndarray
                Returns a single bool if `axis` is ``None``; otherwise,
                returns `ndarray`

        R{(R9RItanyRPRy(RRwR`((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR�EscCs%tjj|||dt�j|�S(s�
        Test whether all matrix elements along a given axis evaluate to True.

        Parameters
        ----------
        See `numpy.all` for complete descriptions

        See Also
        --------
        numpy.all

        Notes
        -----
        This is the same as `ndarray.all`, but it returns a `matrix` object.

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3,4))); x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> y = x[0]; y
        matrix([[0, 1, 2, 3]])
        >>> (x == y)
        matrix([[ True,  True,  True,  True],
                [False, False, False, False],
                [False, False, False, False]], dtype=bool)
        >>> (x == y).all()
        False
        >>> (x == y).all(0)
        matrix([[False, False, False, False]], dtype=bool)
        >>> (x == y).all(1)
        matrix([[ True],
                [False],
                [False]], dtype=bool)

        R{(R9RItallRPRy(RRwR`((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR�\s&cCs%tjj|||dt�j|�S(s�
        Return the maximum value along an axis.

        Parameters
        ----------
        See `amax` for complete descriptions

        See Also
        --------
        amax, ndarray.max

        Notes
        -----
        This is the same as `ndarray.max`, but returns a `matrix` object
        where `ndarray.max` would return an ndarray.

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3,4))); x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> x.max()
        11
        >>> x.max(0)
        matrix([[ 8,  9, 10, 11]])
        >>> x.max(1)
        matrix([[ 3],
                [ 7],
                [11]])

        R{(R9RItmaxRPRy(RRwR`((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR��s!cCstjj|||�j|�S(s�
        Indices of the maximum values along an axis.

        Parameters
        ----------
        See `numpy.argmax` for complete descriptions

        See Also
        --------
        numpy.argmax

        Notes
        -----
        This is the same as `ndarray.argmax`, but returns a `matrix` object
        where `ndarray.argmax` would return an `ndarray`.

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3,4))); x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> x.argmax()
        11
        >>> x.argmax(0)
        matrix([[2, 2, 2, 2]])
        >>> x.argmax(1)
        matrix([[3],
                [3],
                [3]])

        (R9RItargmaxRx(RRwR`((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR��s!cCs%tjj|||dt�j|�S(s�
        Return the minimum value along an axis.

        Parameters
        ----------
        See `amin` for complete descriptions.

        See Also
        --------
        amin, ndarray.min

        Notes
        -----
        This is the same as `ndarray.min`, but returns a `matrix` object
        where `ndarray.min` would return an ndarray.

        Examples
        --------
        >>> x = -np.matrix(np.arange(12).reshape((3,4))); x
        matrix([[  0,  -1,  -2,  -3],
                [ -4,  -5,  -6,  -7],
                [ -8,  -9, -10, -11]])
        >>> x.min()
        -11
        >>> x.min(0)
        matrix([[ -8,  -9, -10, -11]])
        >>> x.min(1)
        matrix([[ -3],
                [ -7],
                [-11]])

        R{(R9RItminRPRy(RRwR`((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR��s!cCstjj|||�j|�S(s
        Return the indices of the minimum values along an axis.

        Parameters
        ----------
        See `numpy.argmin` for complete descriptions.

        See Also
        --------
        numpy.argmin

        Notes
        -----
        This is the same as `ndarray.argmin`, but returns a `matrix` object
        where `ndarray.argmin` would return an `ndarray`.

        Examples
        --------
        >>> x = -np.matrix(np.arange(12).reshape((3,4))); x
        matrix([[  0,  -1,  -2,  -3],
                [ -4,  -5,  -6,  -7],
                [ -8,  -9, -10, -11]])
        >>> x.argmin()
        11
        >>> x.argmin(0)
        matrix([[2, 2, 2, 2]])
        >>> x.argmin(1)
        matrix([[3],
                [3],
                [3]])

        (R9RItargminRx(RRwR`((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR��s!cCstjj|||�j|�S(s�
        Peak-to-peak (maximum - minimum) value along the given axis.

        Refer to `numpy.ptp` for full documentation.

        See Also
        --------
        numpy.ptp

        Notes
        -----
        Same as `ndarray.ptp`, except, where that would return an `ndarray` object,
        this returns a `matrix` object.

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3,4))); x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> x.ptp()
        11
        >>> x.ptp(0)
        matrix([[8, 8, 8, 8]])
        >>> x.ptp(1)
        matrix([[3],
                [3],
                [3]])

        (R9RItptpRx(RRwR`((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR�scCsN|j\}}||kr.ddlm}nddlm}t||��S(s=
        Returns the (multiplicative) inverse of invertible `self`.

        Parameters
        ----------
        None

        Returns
        -------
        ret : matrix object
            If `self` is non-singular, `ret` is such that ``ret * self`` ==
            ``self * ret`` == ``np.matrix(np.eye(self[0,:].size)`` all return
            ``True``.

        Raises
        ------
        numpy.linalg.LinAlgError: Singular matrix
            If `self` is singular.

        See Also
        --------
        linalg.inv

        Examples
        --------
        >>> m = np.matrix('[1, 2; 3, 4]'); m
        matrix([[1, 2],
                [3, 4]])
        >>> m.getI()
        matrix([[-2. ,  1. ],
                [ 1.5, -0.5]])
        >>> m.getI() * m
        matrix([[ 1.,  0.],
                [ 0.,  1.]])

        i����(R0(tpinv(R3t
numpy.dualR0R�R(RR;R9tfunc((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pytgetI1s
%cCs
|j�S(s1
        Return `self` as an `ndarray` object.

        Equivalent to ``np.asarray(self)``.

        Parameters
        ----------
        None

        Returns
        -------
        ret : ndarray
            `self` as an `ndarray`

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3,4))); x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> x.getA()
        array([[ 0,  1,  2,  3],
               [ 4,  5,  6,  7],
               [ 8,  9, 10, 11]])

        (Rn(R((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pytgetA]scCs|j�j�S(s
        Return `self` as a flattened `ndarray`.

        Equivalent to ``np.asarray(x).ravel()``

        Parameters
        ----------
        None

        Returns
        -------
        ret : ndarray
            `self`, 1-D, as an `ndarray`

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3,4))); x
        matrix([[ 0,  1,  2,  3],
                [ 4,  5,  6,  7],
                [ 8,  9, 10, 11]])
        >>> x.getA1()
        array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11])

        (Rntravel(R((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pytgetA1zscCs
|j�S(s@
        Returns the transpose of the matrix.

        Does *not* conjugate!  For the complex conjugate transpose, use `getH`.

        Parameters
        ----------
        None

        Returns
        -------
        ret : matrix object
            The (non-conjugated) transpose of the matrix.

        See Also
        --------
        transpose, getH

        Examples
        --------
        >>> m = np.matrix('[1, 2; 3, 4]')
        >>> m
        matrix([[1, 2],
                [3, 4]])
        >>> m.getT()
        matrix([[1, 3],
                [2, 4]])

        (Rv(R((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pytgetT�scCs6t|jjtj�r(|j�j�S|j�SdS(sF
        Returns the (complex) conjugate transpose of `self`.

        Equivalent to ``np.transpose(self)`` if `self` is real-valued.

        Parameters
        ----------
        None

        Returns
        -------
        ret : matrix object
            complex conjugate transpose of `self`

        Examples
        --------
        >>> x = np.matrix(np.arange(12).reshape((3,4)))
        >>> z = x - 1j*x; z
        matrix([[  0. +0.j,   1. -1.j,   2. -2.j,   3. -3.j],
                [  4. -4.j,   5. -5.j,   6. -6.j,   7. -7.j],
                [  8. -8.j,   9. -9.j,  10.-10.j,  11.-11.j]])
        >>> z.getH()
        matrix([[  0. +0.j,   4. +4.j,   8. +8.j],
                [  1. +1.j,   5. +5.j,   9. +9.j],
                [  2. +2.j,   6. +6.j,  10.+10.j],
                [  3. +3.j,   7. +7.j,  11.+11.j]])

        N(t
issubclassR-R4R9tcomplexfloatingRvt	conjugate(R((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pytgetH�stdocRvs
base arrays1-d base arrayshermitian (conjugate) transposetinverseN(+RRt__doc__t__array_priority__R
RPRRR^RRgRbRhRiRjRkRtRuRxRyRzR|R}R~R�R�R�R�R�R�R�R�R�R�R�R�R�R�tpropertytTtAtA1tHtI(((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR�sL$.									
		
		""""!(####!	,			 	"cCs|jd�}g}x�|D]�}|jd�}g}x!|D]}|j|j��q>W|}g}	x~|D]v}
|
j�}
y||
}WnFtk
r�y||
}Wq�tk
r�td|
f��q�XnX|	j|�qnW|jt|	dd��qWt|dd�S(NRRs%s not foundRwi����i(RRtstriptKeyErrorR!R(RKtgdicttldictR#trowtupR&R'R(R\tcoltupR)tthismat((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt_from_string�s*




cCst|t�ra|dkr?tj�j}|j}|j}n|}|}tt	|||��St|t
tf�r�g}xO|D]G}t|tj
�r�tt|dd��S|jt|dd��q�Wtt|dd��St|tj
�rt|�SdS(s
    Build a matrix object from a string, nested sequence, or array.

    Parameters
    ----------
    obj : str or array_like
        Input data.  Names of variables in the current scope may be
        referenced, even if `obj` is a string.

    Returns
    -------
    out : matrix
        Returns a matrix object, which is a specialized 2-D array.

    See Also
    --------
    matrix

    Examples
    --------
    >>> A = np.mat('1 1; 1 1')
    >>> B = np.mat('2 2; 2 2')
    >>> C = np.mat('3 4; 5 6')
    >>> D = np.mat('7 8; 9 0')

    All the following expressions construct the same block matrix:

    >>> np.bmat([[A, B], [C, D]])
    matrix([[1, 1, 2, 2],
            [1, 1, 2, 2],
            [3, 4, 7, 8],
            [5, 6, 9, 0]])
    >>> np.bmat(np.r_[np.c_[A, B], np.c_[C, D]])
    matrix([[1, 1, 2, 2],
            [1, 1, 2, 2],
            [3, 4, 7, 8],
            [5, 6, 9, 0]])
    >>> np.bmat('A,B; C,D')
    matrix([[1, 1, 2, 2],
            [1, 1, 2, 2],
            [3, 4, 7, 8],
            [5, 6, 9, 0]])

    Rwi����iN(RGRKR
tsyst	_getframetf_backt	f_globalstf_localsRR�RZRcR9RIRR!(R[R�R�tframet	glob_dicttloc_dicttarr_rowsR&((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyR�s"-	
(!t__all__R�tnumpy.core.numerictcoretnumericR9RRRRRtnumpy.core.numerictypesR	Rtversion_infoR
RRR
R8RCRRqRR!R,RRDRIRR�RR(((s?/usr/lib64/python2.7/site-packages/numpy/matrixlib/defmatrix.pyt<module>s<(	

		 	l���	E