Module ImportFrom alias alias alias Assign NameStore ListLoad Str Str Str Str Str Str Str Str Str Str Str Str Import alias Import alias identifier ImportFrom alias ImportFrom alias alias ImportFrom alias alias ImportFrom alias ImportFrom alias alias ImportFrom alias FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam defaults NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad NameLoad keyword NameLoad Assign NameStore Call NameLoad NameLoad keyword NameLoad If BoolOpOr CompareNotEq Call NameLoad AttributeLoad NameLoad attr Num CompareNotEq SubscriptLoad AttributeLoad NameLoad attr Index Num SubscriptLoad AttributeLoad NameLoad attr Index Num body Raise Call NameLoad Str If CompareNotEq SubscriptLoad AttributeLoad NameLoad attr Index Num SubscriptLoad AttributeLoad NameLoad attr Index Num body Raise Call NameLoad Str Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad If NameLoad body Expr Call NameLoad Str NameLoad Expr Call NameLoad Str NameLoad If NameLoad body Assign TupleStore NameStore Call NameLoad TupleLoad Str TupleLoad NameLoad NameLoad Assign TupleStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad keyword NameLoad keyword NameLoad keyword NameLoad orelse Assign TupleStore NameStore Call NameLoad TupleLoad Str TupleLoad NameLoad NameLoad Assign TupleStore NameStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad keyword NameLoad keyword NameLoad If CompareEq NameLoad Num body Return NameLoad If CompareGt NameLoad Num body Raise Call NameLoad Str Raise Call NameLoad BinOpMod Str UnaryOpUSub NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam defaults Num NameLoad NameLoad NameLoad NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad NameLoad keyword NameLoad Assign NameStore Call NameLoad NameLoad keyword NameLoad If BoolOpOr CompareNotEq Call NameLoad AttributeLoad NameLoad attr Num CompareNotEq SubscriptLoad AttributeLoad NameLoad attr Index Num SubscriptLoad AttributeLoad NameLoad attr Index Num body Raise Call NameLoad Str If CompareNotEq SubscriptLoad AttributeLoad NameLoad attr Index Num SubscriptLoad AttributeLoad NameLoad attr Index Num body Raise Call NameLoad Str Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad If NameLoad body Expr Call NameLoad Str NameLoad Assign NameStore Call AttributeLoad Dict Str Str Str Num Num Num attr NameLoad NameLoad Assign TupleStore NameStore Call NameLoad TupleLoad Str TupleLoad NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad keyword NameLoad keyword NameLoad keyword NameLoad keyword NameLoad If CompareEq NameLoad Num body Return NameLoad If CompareGt NameLoad Num body Raise Call NameLoad BinOpMod Str BinOpSub NameLoad Num Raise Call NameLoad BinOpMod Str UnaryOpUSub NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam NameParam defaults NameLoad NameLoad NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad NameLoad keyword NameLoad keyword NameLoad Assign NameStore Call NameLoad NameLoad keyword NameLoad keyword NameLoad If CompareNotEq SubscriptLoad AttributeLoad NameLoad attr Index Num SubscriptLoad AttributeLoad NameLoad attr Index Num body Raise Call NameLoad Str Assign TupleStore NameStore NameStore NameLoad If CompareNotEq BinOpAdd BinOpAdd NameLoad NameLoad Num SubscriptLoad AttributeLoad NameLoad attr Index Num body Raise Call NameLoad BinOpMod Str TupleLoad BinOpAdd BinOpAdd NameLoad NameLoad Num SubscriptLoad AttributeLoad NameLoad attr Index Num Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad If CompareEq SubscriptLoad AttributeLoad NameLoad attr Index Num Num body Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword NameLoad AugAssignDiv NameStore SubscriptLoad NameLoad Index TupleLoad Num Num Return NameLoad If CompareEqEq NameLoad NameLoad Num body Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad Assign TupleStore NameStore Call NameLoad TupleLoad Str TupleLoad NameLoad NameLoad Assign NameStore SubscriptLoad NameLoad ExtSlice Index Num Slice Num Assign NameStore SubscriptLoad NameLoad ExtSlice Index Num Slice Assign NameStore SubscriptLoad NameLoad ExtSlice Index Num Slice Num Assign TupleStore NameStore NameStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad orelse Assign TupleStore NameStore Call NameLoad TupleLoad Str TupleLoad NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr TupleLoad BinOpAdd BinOpAdd BinOpMult Num NameLoad NameLoad Num SubscriptLoad AttributeLoad NameLoad attr Index Num keyword AttributeLoad NameLoad attr Assign SubscriptStore NameLoad ExtSlice Slice NameLoad Slice NameLoad Assign TupleStore NameStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad keyword NameLoad keyword NameLoad If CompareEq NameLoad Num body Return NameLoad If CompareGt NameLoad Num body Raise Call NameLoad Str Raise Call NameLoad BinOpMod Str UnaryOpUSub NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam defaults NameLoad NameLoad NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad NameLoad keyword NameLoad Assign NameStore Call NameLoad NameLoad keyword NameLoad If CompareNotEq SubscriptLoad AttributeLoad NameLoad attr Index Num SubscriptLoad AttributeLoad NameLoad attr Index Num body Raise Call NameLoad Str Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad If CompareEq SubscriptLoad AttributeLoad NameLoad attr Index Num Num body Assign TupleStore NameStore Call NameLoad TupleLoad Str TupleLoad NameLoad NameLoad If NameLoad body Assign NameStore AttributeLoad SubscriptLoad NameLoad ExtSlice Index Num Slice attr Assign NameStore SubscriptLoad NameLoad ExtSlice Index Num Slice Num orelse Assign NameStore AttributeLoad SubscriptLoad NameLoad ExtSlice Index Num Slice attr Assign NameStore Call AttributeLoad SubscriptLoad NameLoad ExtSlice Index Num Slice Num attr Assign TupleStore NameStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad orelse Assign TupleStore NameStore Call NameLoad TupleLoad Str TupleLoad NameLoad NameLoad Assign TupleStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad keyword NameLoad keyword NameLoad keyword NameLoad If CompareGt NameLoad Num body Raise Call NameLoad BinOpMod Str NameLoad If CompareLt NameLoad Num body Raise Call NameLoad BinOpMod Str UnaryOpUSub NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad body Expr Str If Call NameLoad NameLoad NameLoad body Assign TupleStore NameStore NameStore NameLoad Assign NameStore Call AttributeLoad Call NameLoad NameLoad keyword NameLoad attr Assign NameStore Call AttributeLoad Call NameLoad NameLoad keyword NameLoad attr orelse Assign NameStore Call AttributeLoad Call NameLoad NameLoad keyword NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr TupleLoad SubscriptLoad NameLoad Slice Num Num Num NameLoad If CompareIs NameLoad NameLoad body Raise Call NameLoad Str If CompareNotEq SubscriptLoad AttributeLoad NameLoad attr Index Num BinOpSub BinOpMult Num SubscriptLoad AttributeLoad NameLoad attr Index Num Num body Raise Call NameLoad Str Assign NameStore Call NameLoad NameLoad If BoolOpOr Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr NameLoad body Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword AttributeLoad NameLoad attr keyword Str Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword AttributeLoad NameLoad attr orelse Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword AttributeLoad NameLoad attr keyword Str Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword AttributeLoad NameLoad attr If CompareEq AttributeLoad NameLoad attr Num body Assign TupleStore NameStore NameStore Call NameLoad NameLoad Call AttributeLoad NameLoad attr NameLoad orelse Assign NameStore AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr SubscriptLoad AttributeLoad NameLoad attr Index Num Num Assign NameStore Call AttributeLoad NameLoad attr GeneratorExp SubscriptLoad Call NameLoad NameLoad Call AttributeLoad NameLoad attr SubscriptLoad NameLoad ExtSlice Slice Index NameLoad Index Num comprehension NameStore Call NameLoad SubscriptLoad AttributeLoad NameLoad attr Index Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Assign NameStore NameLoad If CompareLt NameLoad Num body AugAssignAdd NameStore AttributeLoad NameLoad attr If CompareLtELt Num NameLoad AttributeLoad NameLoad attr body Return SubscriptLoad AttributeLoad NameLoad attr Index NameLoad Raise Call NameLoad BinOpMod Str TupleLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam NameParam defaults Str NameLoad Num Num Num body Expr Str Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call NameLoad Str NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call NameLoad Str NameLoad NameLoad If CompareNotEq NameLoad NameLoad body Raise Call NameLoad Str Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Call AttributeLoad NameLoad attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad If CompareIs NameLoad NameLoad body Assign NameStore BinOpMult BinOpMult Call AttributeLoad NameLoad attr keyword Num NameLoad AttributeLoad Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr attr If CompareNotEq AttributeLoad NameLoad attr TupleLoad body Assign AttributeStore NameLoad attr BinOpAdd AttributeLoad NameLoad attr TupleLoad Num orelse Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore CompareLtE NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad If NameLoad body If CompareEq NameLoad Str body Raise Call NameLoad Str orelse Assign SubscriptStore NameLoad Index NameLoad Num Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Call AttributeLoad NameLoad attr NameLoad NameLoad AttributeLoad NameLoad attr keyword Num Assign NameStore BinOpDiv NameLoad NameLoad If NameLoad body Assign NameStore BinOpBitAnd Call AttributeLoad NameLoad attr NameLoad keyword NameLoad NameLoad Assign SubscriptStore NameLoad Index NameLoad Num Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad keyword Num If UnaryOpNot BoolOpOr Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr NameLoad body Assign NameStore AttributeLoad NameLoad attr If CompareNotEq NameLoad Num body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Num NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad NameLoad keyword NameLoad If BoolOpOr CompareNotEq Call NameLoad AttributeLoad NameLoad attr Num CompareNotEq SubscriptLoad AttributeLoad NameLoad attr Index Num SubscriptLoad AttributeLoad NameLoad attr Index Num body Raise Call NameLoad Str Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore NameStore Call NameLoad TupleLoad Str Str Str TupleLoad NameLoad Assign TupleStore NameStore NameStore NameStore Call NameLoad NameLoad keyword NameLoad If CompareEq NameLoad Num body Assign NameStore Call NameLoad NameLoad SubscriptLoad AttributeLoad NameLoad attr Index Num Assign NameStore Call NameLoad BinOpMult Num NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad keyword NameLoad keyword Num If CompareGt NameLoad Num body Raise Call NameLoad Str If CompareLt NameLoad Num body Raise Call NameLoad BinOpMod Str UnaryOpUSub NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad NameLoad keyword NameLoad If BoolOpOr CompareNotEq Call NameLoad AttributeLoad NameLoad attr Num CompareNotEq SubscriptLoad AttributeLoad NameLoad attr Index Num SubscriptLoad AttributeLoad NameLoad attr Index Num body Raise Call NameLoad Str Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad Assign TupleStore NameStore Call NameLoad TupleLoad Str TupleLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad keyword NameLoad If CompareLt NameLoad Num body Raise Call NameLoad BinOpMod Str UnaryOpUSub NameLoad Return NameLoad decorator_list ClassDef bases NameLoad body Pass decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam NameParam defaults NameLoad NameLoad NameLoad NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad NameLoad keyword NameLoad Assign NameStore Call NameLoad NameLoad keyword NameLoad If CompareNotEq Call NameLoad AttributeLoad NameLoad attr Num body Raise Call NameLoad Str Assign TupleStore NameStore NameStore AttributeLoad NameLoad attr If CompareEq Call NameLoad AttributeLoad NameLoad attr Num body Assign NameStore SubscriptLoad AttributeLoad NameLoad attr Index Num orelse Assign NameStore Num If CompareNotEq NameLoad SubscriptLoad AttributeLoad NameLoad attr Index Num body Raise Call NameLoad Str Assign NameStore NameLoad If CompareIs NameLoad NameLoad body Assign NameStore AttributeLoad NameLoad attr If CompareNotIn NameLoad TupleLoad Str Str Str body Raise Call NameLoad BinOpMod Str NameLoad Assign TupleStore NameStore NameStore Call NameLoad TupleLoad NameLoad BinOpMod Str NameLoad TupleLoad NameLoad NameLoad Assign NameStore IfExp CompareEq AttributeLoad AttributeLoad NameLoad attr attr Str NameLoad NameLoad If CompareLt NameLoad NameLoad body If CompareEq Call NameLoad AttributeLoad NameLoad attr Num body Assign NameStore Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad keyword AttributeLoad NameLoad attr Assign SubscriptStore NameLoad ExtSlice Slice NameLoad Slice NameLoad orelse Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Slice NameLoad NameLoad Assign NameStore NameLoad Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad Assign NameStore BoolOpOr NameLoad Call NameLoad NameLoad NameLoad If CompareIs NameLoad NameLoad body Assign NameStore AttributeLoad Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr attr If CompareIn NameLoad TupleLoad Str Str body If CompareEq NameLoad Str body Assign NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore NameStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad keyword NameLoad keyword NameLoad orelse If CompareEq NameLoad Str body If NameLoad body Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad If CompareEq NameLoad Num body Assign NameStore Str If CompareIs NameLoad NameLoad body Assign AttributeStore NameLoad attr Str AugAssignAdd NameStore Str Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Return Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad keyword Str AugAssignAdd NameStore Str Raise Call NameLoad NameLoad Assign TupleStore NameStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad orelse Assign TupleStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad If CompareGt NameLoad Num body Raise Call NameLoad Str If CompareLt NameLoad Num body Raise Call NameLoad BinOpMod Str TupleLoad UnaryOpUSub NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr ListLoad keyword AttributeLoad NameLoad attr If CompareGt NameLoad NameLoad body Assign NameStore SubscriptLoad NameLoad Slice NameLoad If CompareEq NameLoad NameLoad body Assign NameStore Call AttributeLoad NameLoad attr BinOpPow Call AttributeLoad NameLoad attr SubscriptLoad NameLoad Slice NameLoad Num keyword Num Assign NameStore NameLoad Return TupleLoad NameLoad NameLoad NameLoad NameLoad orelse If CompareEq NameLoad Str body Assign NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr TupleLoad SubscriptLoad AttributeLoad NameLoad attr Index Num Num keyword AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad NameLoad If CompareLt NameLoad Num body Raise Call NameLoad BinOpMod Str UnaryOpUSub NameLoad If CompareGt NameLoad NameLoad body Assign NameStore SubscriptLoad NameLoad Slice NameLoad Assign NameStore NameLoad Return TupleLoad NameLoad Call AttributeLoad NameLoad attr ListLoad AttributeLoad NameLoad attr NameLoad NameLoad decorator_list Assign AttributeStore NameLoad attr Str FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam defaults NameLoad NameLoad NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad NameLoad keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr SubscriptLoad AttributeLoad NameLoad attr Index Num keyword AttributeLoad NameLoad attr If CompareIsNot NameLoad NameLoad body Assign NameStore NameLoad Assign TupleStore NameStore NameStore NameStore NameStore Call NameLoad NameLoad NameLoad keyword NameLoad keyword NameLoad If NameLoad body Return TupleLoad NameLoad NameLoad orelse Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam defaults NameLoad NameLoad NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad NameLoad keyword NameLoad Assign TupleStore NameStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad keyword NameLoad keyword NameLoad If CompareIsNot NameLoad NameLoad body Assign NameStore NameLoad If CompareIn NameLoad ListLoad NameLoad Num body Assign NameStore Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Assign NameStore Dict Str Str Num Num Assign NameStore BinOpMult SubscriptLoad NameLoad Index NameLoad AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr CompareGt NameLoad BinOpMult NameLoad Call AttributeLoad NameLoad attr NameLoad Assign NameStore SubscriptLoad NameLoad ExtSlice Slice Slice NameLoad AugAssignDiv NameStore SubscriptLoad NameLoad Slice NameLoad Assign NameStore Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr NameLoad SubscriptLoad NameLoad Slice NameLoad If NameLoad body Return TupleLoad NameLoad NameLoad orelse Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam defaults NameLoad NameLoad NameLoad NameLoad NameLoad body Expr Str Assign NameStore Call NameLoad NameLoad keyword NameLoad Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad keyword NameLoad keyword NameLoad If CompareIsNot NameLoad NameLoad body Assign NameStore NameLoad If CompareIn NameLoad ListLoad NameLoad Num body Assign NameStore Call AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Assign NameStore Dict Str Str Num Num Assign NameStore BinOpMult SubscriptLoad NameLoad Index NameLoad AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr Assign NameStore CompareGt Call NameLoad NameLoad BinOpMult NameLoad Call AttributeLoad NameLoad attr Call NameLoad NameLoad Assign NameStore BinOpDiv Num SubscriptLoad NameLoad Index NameLoad Assign NameStore SubscriptLoad NameLoad ExtSlice Slice Index NameLoad Assign NameStore Call AttributeLoad NameLoad attr BinOpMult NameLoad NameLoad AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr If NameLoad body Return TupleLoad NameLoad Call NameLoad NameLoad orelse Return NameLoad decorator_list
N/A __future__ division print_function absolute_import N/A __all__ N/A solve solve_triangular solveh_banded solve_banded solve_toeplitz solve_circulant inv det lstsq pinv pinv2 pinvh N/A warnings N/A numpy np flinalg get_flinalg_funcs lapack get_lapack_funcs _compute_lwork misc LinAlgError _datacopied decomp _asarray_validated N/A decomp decomp_svd _solve_toeplitz levinson solve N/A N/A a b sym_pos lower overwrite_a overwrite_b debug check_finite N/A False False False False False True N/A N/A 
    Solve the equation ``a x = b`` for ``x``.

    Parameters
    ----------
    a : (M, M) array_like
        A square matrix.
    b : (M,) or (M, N) array_like
        Right-hand side matrix in ``a x = b``.
    sym_pos : bool, optional
        Assume `a` is symmetric and positive definite.
    lower : bool, optional
        Use only data contained in the lower triangle of `a`, if `sym_pos` is
        true.  Default is to use upper triangle.
    overwrite_a : bool, optional
        Allow overwriting data in `a` (may enhance performance).
        Default is False.
    overwrite_b : bool, optional
        Allow overwriting data in `b` (may enhance performance).
        Default is False.
    check_finite : bool, optional
        Whether to check that the input matrices contain only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (crashes, non-termination) if the inputs do contain infinities or NaNs.

    Returns
    -------
    x : (M,) or (M, N) ndarray
        Solution to the system ``a x = b``.  Shape of the return matches the
        shape of `b`.

    Raises
    ------
    LinAlgError
        If `a` is singular.
    ValueError
        If `a` is not square

    Examples
    --------
    Given `a` and `b`, solve for `x`:

    >>> a = np.array([[3, 2, 0], [1, -1, 0], [0, 5, 1]])
    >>> b = np.array([2, 4, -1])
    >>> from scipy import linalg
    >>> x = linalg.solve(a, b)
    >>> x
    array([ 2., -2.,  9.])
    >>> np.dot(a, x) == b
    array([ True,  True,  True], dtype=bool)

     N/A a1 N/A _asarray_validated a check_finite check_finite N/A b1 N/A _asarray_validated b check_finite check_finite N/A N/A N/A N/A len N/A a1 shape 2 N/A N/A N/A a1 shape N/A 0 N/A N/A a1 shape N/A 1 N/A N/A N/A ValueError expected square matrix N/A N/A N/A N/A a1 shape N/A 0 N/A N/A b1 shape N/A 0 N/A N/A N/A ValueError incompatible dimensions N/A overwrite_a N/A overwrite_a N/A _datacopied a1 a N/A overwrite_b N/A overwrite_b N/A _datacopied b1 b N/A debug N/A N/A N/A print solve:overwrite_a= overwrite_a N/A N/A print solve:overwrite_b= overwrite_b N/A sym_pos N/A N/A N/A posv N/A get_lapack_funcs N/A posv N/A a1 b1 N/A N/A c x info N/A posv a1 b1 lower lower overwrite_a overwrite_a overwrite_b overwrite_b N/A N/A N/A gesv N/A get_lapack_funcs N/A gesv N/A a1 b1 N/A N/A lu piv x info N/A gesv a1 b1 overwrite_a overwrite_a overwrite_b overwrite_b N/A N/A info 0 N/A N/A x N/A N/A info 0 N/A N/A N/A LinAlgError singular matrix N/A N/A ValueError N/A illegal value in %d-th argument of internal gesv|posv N/A info N/A solve_triangular N/A N/A a b trans lower unit_diagonal overwrite_b debug check_finite N/A 0 False False False False True N/A N/A 
    Solve the equation `a x = b` for `x`, assuming a is a triangular matrix.

    Parameters
    ----------
    a : (M, M) array_like
        A triangular matrix
    b : (M,) or (M, N) array_like
        Right-hand side matrix in `a x = b`
    lower : bool, optional
        Use only data contained in the lower triangle of `a`.
        Default is to use upper triangle.
    trans : {0, 1, 2, 'N', 'T', 'C'}, optional
        Type of system to solve:

        ========  =========
        trans     system
        ========  =========
        0 or 'N'  a x  = b
        1 or 'T'  a^T x = b
        2 or 'C'  a^H x = b
        ========  =========
    unit_diagonal : bool, optional
        If True, diagonal elements of `a` are assumed to be 1 and
        will not be referenced.
    overwrite_b : bool, optional
        Allow overwriting data in `b` (may enhance performance)
    check_finite : bool, optional
        Whether to check that the input matrices contain only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (crashes, non-termination) if the inputs do contain infinities or NaNs.

    Returns
    -------
    x : (M,) or (M, N) ndarray
        Solution to the system `a x = b`.  Shape of return matches `b`.

    Raises
    ------
    LinAlgError
        If `a` is singular

    Notes
    -----
    .. versionadded:: 0.9.0

     N/A a1 N/A _asarray_validated a check_finite check_finite N/A b1 N/A _asarray_validated b check_finite check_finite N/A N/A N/A N/A len N/A a1 shape 2 N/A N/A N/A a1 shape N/A 0 N/A N/A a1 shape N/A 1 N/A N/A N/A ValueError expected square matrix N/A N/A N/A N/A a1 shape N/A 0 N/A N/A b1 shape N/A 0 N/A N/A N/A ValueError incompatible dimensions N/A overwrite_b N/A overwrite_b N/A _datacopied b1 b N/A debug N/A N/A N/A print solve:overwrite_b= overwrite_b N/A trans N/A N/A N/A N T C 0 1 2 get trans trans N/A N/A trtrs N/A get_lapack_funcs N/A trtrs N/A a1 b1 N/A N/A x info N/A trtrs a1 b1 overwrite_b overwrite_b lower lower trans trans unitdiag unit_diagonal N/A N/A info 0 N/A N/A x N/A N/A info 0 N/A N/A N/A LinAlgError N/A singular matrix: resolution failed at diagonal %d N/A info 1 N/A N/A ValueError N/A illegal value in %d-th argument of internal trtrs N/A info N/A solve_banded N/A N/A l_and_u ab b overwrite_ab overwrite_b debug check_finite N/A False False False True N/A N/A 
    Solve the equation a x = b for x, assuming a is banded matrix.

    The matrix a is stored in `ab` using the matrix diagonal ordered form::

        ab[u + i - j, j] == a[i,j]

    Example of `ab` (shape of a is (6,6), `u` =1, `l` =2)::

        *    a01  a12  a23  a34  a45
        a00  a11  a22  a33  a44  a55
        a10  a21  a32  a43  a54   *
        a20  a31  a42  a53   *    *

    Parameters
    ----------
    (l, u) : (integer, integer)
        Number of non-zero lower and upper diagonals
    ab : (`l` + `u` + 1, M) array_like
        Banded matrix
    b : (M,) or (M, K) array_like
        Right-hand side
    overwrite_ab : bool, optional
        Discard data in `ab` (may enhance performance)
    overwrite_b : bool, optional
        Discard data in `b` (may enhance performance)
    check_finite : bool, optional
        Whether to check that the input matrices contain only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (crashes, non-termination) if the inputs do contain infinities or NaNs.

    Returns
    -------
    x : (M,) or (M, K) ndarray
        The solution to the system a x = b.  Returned shape depends on the
        shape of `b`.

     N/A a1 N/A _asarray_validated ab check_finite check_finite as_inexact True N/A b1 N/A _asarray_validated b check_finite check_finite as_inexact True N/A N/A N/A N/A a1 shape N/A -1 N/A N/A b1 shape N/A 0 N/A N/A N/A ValueError shapes of ab and b are not compatible. N/A N/A l u l_and_u N/A N/A N/A N/A l u 1 N/A N/A a1 shape N/A 0 N/A N/A N/A ValueError N/A invalid values for the number of lower and upper diagonals: l+u+1 (%d) does not equal ab.shape[0] (%d) N/A N/A N/A l u 1 N/A N/A ab shape N/A 0 N/A overwrite_b N/A overwrite_b N/A _datacopied b1 b N/A N/A N/A N/A a1 shape N/A -1 1 N/A N/A b2 N/A N/A np array b1 copy overwrite_b N/A b2 N/A a1 N/A N/A 1 0 N/A b2 N/A N/A l u 1 N/A N/A overwrite_ab N/A overwrite_ab N/A _datacopied a1 ab N/A N/A gtsv N/A get_lapack_funcs N/A gtsv N/A a1 b1 N/A du N/A a1 N/A N/A 0 N/A 1 N/A d N/A a1 N/A N/A 1 N/A N/A dl N/A a1 N/A N/A 2 N/A -1 N/A N/A du2 d du x info N/A gtsv dl d du b1 overwrite_ab overwrite_ab overwrite_ab overwrite_b N/A N/A N/A gbsv N/A get_lapack_funcs N/A gbsv N/A a1 b1 N/A a2 N/A N/A np zeros N/A N/A N/A N/A 2 l u 1 N/A N/A a1 shape N/A 1 dtype N/A gbsv dtype N/A N/A a2 N/A N/A l N/A a1 N/A N/A lu piv x info N/A gbsv l u a2 b1 overwrite_ab True overwrite_b overwrite_b N/A N/A info 0 N/A N/A x N/A N/A info 0 N/A N/A N/A LinAlgError singular matrix N/A N/A ValueError N/A illegal value in %d-th argument of internal gbsv/gtsv N/A info N/A solveh_banded N/A N/A ab b overwrite_ab overwrite_b lower check_finite N/A False False False True N/A N/A 
    Solve equation a x = b. a is Hermitian positive-definite banded matrix.

    The matrix a is stored in `ab` either in lower diagonal or upper
    diagonal ordered form:

        ab[u + i - j, j] == a[i,j]        (if upper form; i <= j)
        ab[    i - j, j] == a[i,j]        (if lower form; i >= j)

    Example of `ab` (shape of a is (6, 6), `u` =2)::

        upper form:
        *   *   a02 a13 a24 a35
        *   a01 a12 a23 a34 a45
        a00 a11 a22 a33 a44 a55

        lower form:
        a00 a11 a22 a33 a44 a55
        a10 a21 a32 a43 a54 *
        a20 a31 a42 a53 *   *

    Cells marked with * are not used.

    Parameters
    ----------
    ab : (`u` + 1, M) array_like
        Banded matrix
    b : (M,) or (M, K) array_like
        Right-hand side
    overwrite_ab : bool, optional
        Discard data in `ab` (may enhance performance)
    overwrite_b : bool, optional
        Discard data in `b` (may enhance performance)
    lower : bool, optional
        Is the matrix in the lower form. (Default is upper form)
    check_finite : bool, optional
        Whether to check that the input matrices contain only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (crashes, non-termination) if the inputs do contain infinities or NaNs.

    Returns
    -------
    x : (M,) or (M, K) ndarray
        The solution to the system a x = b.  Shape of return matches shape
        of `b`.

     N/A a1 N/A _asarray_validated ab check_finite check_finite N/A b1 N/A _asarray_validated b check_finite check_finite N/A N/A N/A N/A a1 shape N/A -1 N/A N/A b1 shape N/A 0 N/A N/A N/A ValueError shapes of ab and b are not compatible. N/A overwrite_b N/A overwrite_b N/A _datacopied b1 b N/A overwrite_ab N/A overwrite_ab N/A _datacopied a1 ab N/A N/A N/A N/A a1 shape N/A 0 2 N/A N/A N/A ptsv N/A get_lapack_funcs N/A ptsv N/A a1 b1 N/A lower N/A N/A d N/A N/A a1 N/A N/A 0 N/A real N/A e N/A a1 N/A N/A 1 N/A -1 N/A N/A d N/A N/A a1 N/A N/A 1 N/A real N/A e N/A N/A N/A a1 N/A N/A 0 N/A 1 conj N/A N/A d du x info N/A ptsv d e b1 overwrite_ab overwrite_ab overwrite_b N/A N/A N/A pbsv N/A get_lapack_funcs N/A pbsv N/A a1 b1 N/A N/A c x info N/A pbsv a1 b1 lower lower overwrite_ab overwrite_ab overwrite_b overwrite_b N/A N/A info 0 N/A N/A N/A LinAlgError N/A %d-th leading minor not positive definite info N/A N/A info 0 N/A N/A N/A ValueError N/A illegal value in %d-th argument of internal pbsv N/A info N/A x N/A solve_toeplitz N/A N/A c_or_cr b check_finite N/A True N/A N/A Solve a Toeplitz system using Levinson Recursion

    The Toeplitz matrix has constant diagonals, with c as its first column
    and r as its first row.  If r is not given, ``r == conjugate(c)`` is
    assumed.

    Parameters
    ----------
    c_or_cr : array_like or tuple of (array_like, array_like)
        The vector ``c``, or a tuple of arrays (``c``, ``r``). Whatever the
        actual shape of ``c``, it will be converted to a 1-D array. If not
        supplied, ``r = conjugate(c)`` is assumed; in this case, if c[0] is
        real, the Toeplitz matrix is Hermitian. r[0] is ignored; the first row
        of the Toeplitz matrix is ``[c[0], r[1:]]``.  Whatever the actual shape
        of ``r``, it will be converted to a 1-D array.
    b : (M,) or (M, K) array_like
        Right-hand side in ``T x = b``.
    check_finite : bool, optional
        Whether to check that the input matrices contain only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (result entirely NaNs) if the inputs do contain infinities or NaNs.

    Returns
    -------
    x : (M,) or (M, K) ndarray
        The solution to the system ``T x = b``.  Shape of return matches shape
        of `b`.

    Notes
    -----
    The solution is computed using Levinson-Durbin recursion, which is faster
    than generic least-squares methods, but can be less numerically stable.
     N/A N/A isinstance c_or_cr tuple N/A N/A N/A c r c_or_cr N/A c N/A N/A N/A _asarray_validated c check_finite check_finite ravel N/A r N/A N/A N/A _asarray_validated r check_finite check_finite ravel N/A N/A c N/A N/A N/A _asarray_validated c_or_cr check_finite check_finite ravel N/A r N/A N/A c conjugate N/A vals N/A N/A np concatenate N/A N/A r N/A -1 0 -1 c N/A N/A b None N/A N/A N/A ValueError illegal value, `b` is a required argument N/A N/A N/A N/A vals shape N/A 0 N/A N/A 2 N/A N/A b shape N/A 0 1 N/A N/A N/A ValueError incompatible dimensions N/A b N/A _asarray_validated b N/A N/A N/A N/A np iscomplexobj vals N/A N/A np iscomplexobj b N/A N/A vals N/A N/A np asarray vals dtype N/A np complex128 order c N/A b N/A N/A np asarray b dtype N/A np complex128 N/A N/A vals N/A N/A np asarray vals dtype N/A np double order c N/A b N/A N/A np asarray b dtype N/A np double N/A N/A N/A b ndim 1 N/A N/A N/A x _ N/A levinson vals N/A N/A np ascontiguousarray b N/A N/A b_shape N/A b shape N/A b N/A N/A b reshape N/A N/A b shape N/A 0 -1 N/A x N/A N/A np column_stack N/A N/A N/A levinson vals N/A N/A np ascontiguousarray N/A b N/A N/A N/A i N/A 0 N/A i N/A range N/A N/A b shape N/A 1 N/A x N/A N/A x reshape b_shape N/A x N/A _get_axis_len N/A N/A aname a axis N/A N/A N/A ax axis N/A N/A ax 0 N/A N/A ax N/A a ndim N/A N/A 0 ax N/A a ndim N/A N/A N/A N/A a shape N/A ax N/A N/A ValueError N/A '%saxis' entry is out of bounds N/A aname N/A solve_circulant N/A N/A c b singular tol caxis baxis outaxis N/A raise None -1 0 0 N/A N/A Solve C x = b for x, where C is a circulant matrix.

    `C` is the circulant matrix associated with the vector `c`.

    The system is solved by doing division in Fourier space.  The
    calculation is::

        x = ifft(fft(b) / fft(c))

    where `fft` and `ifft` are the fast Fourier transform and its inverse,
    respectively.  For a large vector `c`, this is *much* faster than
    solving the system with the full circulant matrix.

    Parameters
    ----------
    c : array_like
        The coefficients of the circulant matrix.
    b : array_like
        Right-hand side matrix in ``a x = b``.
    singular : str, optional
        This argument controls how a near singular circulant matrix is
        handled.  If `singular` is "raise" and the circulant matrix is
        near singular, a `LinAlgError` is raised.  If `singular` is
        "lstsq", the least squares solution is returned.  Default is "raise".
    tol : float, optional
        If any eigenvalue of the circulant matrix has an absolute value
        that is less than or equal to `tol`, the matrix is considered to be
        near singular.  If not given, `tol` is set to::

            tol = abs_eigs.max() * abs_eigs.size * np.finfo(np.float64).eps

        where `abs_eigs` is the array of absolute values of the eigenvalues
        of the circulant matrix.
    caxis : int
        When `c` has dimension greater than 1, it is viewed as a collection
        of circulant vectors.  In this case, `caxis` is the axis of `c` that
        holds the vectors of circulant coefficients.
    baxis : int
        When `b` has dimension greater than 1, it is viewed as a collection
        of vectors.  In this case, `baxis` is the axis of `b` that holds the
        right-hand side vectors.
    outaxis : int
        When `c` or `b` are multidimensional, the value returned by
        `solve_circulant` is multidimensional.  In this case, `outaxis` is
        the axis of the result that holds the solution vectors.

    Returns
    -------
    x : ndarray
        Solution to the system ``C x = b``.

    Raises
    ------
    LinAlgError
        If the circulant matrix associated with `c` is near singular.

    See Also
    --------
    circulant

    Notes
    -----
    For a one-dimensional vector `c` with length `m`, and an array `b`
    with shape ``(m, ...)``,

        solve_circulant(c, b)

    returns the same result as

        solve(circulant(c), b)

    where `solve` and `circulant` are from `scipy.linalg`.

    .. versionadded:: 0.16.0

    Examples
    --------
    >>> from scipy.linalg import solve_circulant, solve, circulant, lstsq

    >>> c = np.array([2, 2, 4])
    >>> b = np.array([1, 2, 3])
    >>> solve_circulant(c, b)
    array([ 0.75, -0.25,  0.25])

    Compare that result to solving the system with `scipy.linalg.solve`:

    >>> solve(circulant(c), b)
    array([ 0.75, -0.25,  0.25])

    A singular example:

    >>> c = np.array([1, 1, 0, 0])
    >>> b = np.array([1, 2, 3, 4])

    Calling ``solve_circulant(c, b)`` will raise a `LinAlgError`.  For the
    least square solution, use the option ``singular='lstsq'``:

    >>> solve_circulant(c, b, singular='lstsq')
    array([ 0.25,  1.25,  2.25,  1.25])

    Compare to `scipy.linalg.lstsq`:

    >>> x, resid, rnk, s = lstsq(circulant(c), b)
    >>> x
    array([ 0.25,  1.25,  2.25,  1.25])

    A broadcasting example:

    Suppose we have the vectors of two circulant matrices stored in an array
    with shape (2, 5), and three `b` vectors stored in an array with shape
    (3, 5).  For example,

    >>> c = np.array([[1.5, 2, 3, 0, 0], [1, 1, 4, 3, 2]])
    >>> b = np.arange(15).reshape(-1, 5)

    We want to solve all combinations of circulant matrices and `b` vectors,
    with the result stored in an array with shape (2, 3, 5).  When we
    disregard the axes of `c` and `b` that hold the vectors of coefficients,
    the shapes of the collections are (2,) and (3,), respectively, which are
    not compatible for broadcasting.  To have a broadcast result with shape
    (2, 3), we add a trivial dimension to `c`: ``c[:, np.newaxis, :]`` has
    shape (2, 1, 5).  The last dimension holds the coefficients of the
    circulant matrices, so when we call `solve_circulant`, we can use the
    default ``caxis=-1``.  The coefficients of the `b` vectors are in the last
    dimension of the array `b`, so we use ``baxis=-1``.  If we use the
    default `outaxis`, the result will have shape (5, 2, 3), so we'll use
    ``outaxis=-1`` to put the solution vectors in the last dimension.

    >>> x = solve_circulant(c[:, np.newaxis, :], b, baxis=-1, outaxis=-1)
    >>> x.shape
    (2, 3, 5)
    >>> np.set_printoptions(precision=3)  # For compact output of numbers.
    >>> x
    array([[[-0.118,  0.22 ,  1.277, -0.142,  0.302],
            [ 0.651,  0.989,  2.046,  0.627,  1.072],
            [ 1.42 ,  1.758,  2.816,  1.396,  1.841]],
           [[ 0.401,  0.304,  0.694, -0.867,  0.377],
            [ 0.856,  0.758,  1.149, -0.412,  0.831],
            [ 1.31 ,  1.213,  1.603,  0.042,  1.286]]])

    Check by solving one pair of `c` and `b` vectors (cf. ``x[1, 1, :]``):

    >>> solve_circulant(c[1], b[1, :])
    array([ 0.856,  0.758,  1.149, -0.412,  0.831])

     N/A c N/A N/A np atleast_1d c N/A nc N/A _get_axis_len c c caxis N/A b N/A N/A np atleast_1d b N/A nb N/A _get_axis_len b b baxis N/A N/A nc nb N/A N/A N/A ValueError Incompatible c and b axis lengths N/A fc N/A N/A N/A np fft fft N/A N/A np rollaxis c caxis N/A c ndim axis -1 N/A abs_fc N/A N/A np abs fc N/A N/A tol None N/A N/A tol N/A N/A N/A N/A abs_fc max axis -1 nc N/A N/A N/A np finfo N/A np float64 eps N/A N/A N/A tol shape N/A N/A N/A N/A tol shape N/A N/A tol shape N/A 1 N/A N/A tol N/A N/A np atleast_1d tol N/A near_zeros N/A abs_fc tol N/A is_near_singular N/A N/A np any near_zeros N/A is_near_singular N/A N/A N/A singular raise N/A N/A N/A LinAlgError near singular circulant matrix. N/A N/A N/A fc N/A near_zeros 1 N/A fb N/A N/A N/A np fft fft N/A N/A np rollaxis b baxis N/A b ndim axis -1 N/A q N/A fb fc N/A is_near_singular N/A N/A mask N/A N/A N/A np ones_like b dtype bool near_zeros N/A N/A q N/A mask 0 N/A x N/A N/A N/A np fft ifft q axis -1 N/A N/A N/A N/A N/A np iscomplexobj c N/A N/A np iscomplexobj b N/A N/A x N/A x real N/A N/A outaxis -1 N/A N/A x N/A N/A np rollaxis x -1 outaxis N/A x N/A inv N/A N/A a overwrite_a check_finite N/A False True N/A N/A 
    Compute the inverse of a matrix.

    Parameters
    ----------
    a : array_like
        Square matrix to be inverted.
    overwrite_a : bool, optional
        Discard data in `a` (may improve performance). Default is False.
    check_finite : bool, optional
        Whether to check that the input matrix contains only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (crashes, non-termination) if the inputs do contain infinities or NaNs.

    Returns
    -------
    ainv : ndarray
        Inverse of the matrix `a`.

    Raises
    ------
    LinAlgError :
        If `a` is singular.
    ValueError :
        If `a` is not square, or not 2-dimensional.

    Examples
    --------
    >>> from scipy import linalg
    >>> a = np.array([[1., 2.], [3., 4.]])
    >>> linalg.inv(a)
    array([[-2. ,  1. ],
           [ 1.5, -0.5]])
    >>> np.dot(a, linalg.inv(a))
    array([[ 1.,  0.],
           [ 0.,  1.]])

     N/A a1 N/A _asarray_validated a check_finite check_finite N/A N/A N/A N/A len N/A a1 shape 2 N/A N/A N/A a1 shape N/A 0 N/A N/A a1 shape N/A 1 N/A N/A N/A ValueError expected square matrix N/A overwrite_a N/A overwrite_a N/A _datacopied a1 a N/A N/A getrf getri getri_lwork N/A get_lapack_funcs N/A getrf getri getri_lwork N/A a1 N/A N/A lu piv info N/A getrf a1 overwrite_a overwrite_a N/A N/A info 0 N/A N/A lwork N/A _compute_lwork getri_lwork N/A N/A a1 shape N/A 0 N/A lwork N/A int N/A 1.01 lwork N/A N/A inv_a info N/A getri lu piv lwork lwork overwrite_lu 1 N/A N/A info 0 N/A N/A N/A LinAlgError singular matrix N/A N/A info 0 N/A N/A N/A ValueError N/A illegal value in %d-th argument of internal getrf|getri N/A info N/A inv_a N/A det N/A N/A a overwrite_a check_finite N/A False True N/A N/A 
    Compute the determinant of a matrix

    The determinant of a square matrix is a value derived arithmetically
    from the coefficients of the matrix.

    The determinant for a 3x3 matrix, for example, is computed as follows::

        a    b    c
        d    e    f = A
        g    h    i

        det(A) = a*e*i + b*f*g + c*d*h - c*e*g - b*d*i - a*f*h

    Parameters
    ----------
    a : (M, M) array_like
        A square matrix.
    overwrite_a : bool, optional
        Allow overwriting data in a (may enhance performance).
    check_finite : bool, optional
        Whether to check that the input matrix contains only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (crashes, non-termination) if the inputs do contain infinities or NaNs.

    Returns
    -------
    det : float or complex
        Determinant of `a`.

    Notes
    -----
    The determinant is computed via LU factorization, LAPACK routine z/dgetrf.

    Examples
    --------
    >>> from scipy import linalg
    >>> a = np.array([[1,2,3], [4,5,6], [7,8,9]])
    >>> linalg.det(a)
    0.0
    >>> a = np.array([[0,2,3], [4,5,6], [7,8,9]])
    >>> linalg.det(a)
    3.0

     N/A a1 N/A _asarray_validated a check_finite check_finite N/A N/A N/A N/A len N/A a1 shape 2 N/A N/A N/A a1 shape N/A 0 N/A N/A a1 shape N/A 1 N/A N/A N/A ValueError expected square matrix N/A overwrite_a N/A overwrite_a N/A _datacopied a1 a N/A N/A fdet N/A get_flinalg_funcs N/A det N/A a1 N/A N/A a_det info N/A fdet a1 overwrite_a overwrite_a N/A N/A info 0 N/A N/A N/A ValueError N/A illegal value in %d-th argument of internal det.getrf N/A info N/A a_det N/A LstsqLapackError N/A LinAlgError N/A N/A N/A lstsq N/A N/A a b cond overwrite_a overwrite_b check_finite lapack_driver N/A None False False True None N/A N/A 
    Compute least-squares solution to equation Ax = b.

    Compute a vector x such that the 2-norm ``|b - A x|`` is minimized.

    Parameters
    ----------
    a : (M, N) array_like
        Left hand side matrix (2-D array).
    b : (M,) or (M, K) array_like
        Right hand side matrix or vector (1-D or 2-D array).
    cond : float, optional
        Cutoff for 'small' singular values; used to determine effective
        rank of a. Singular values smaller than
        ``rcond * largest_singular_value`` are considered zero.
    overwrite_a : bool, optional
        Discard data in `a` (may enhance performance). Default is False.
    overwrite_b : bool, optional
        Discard data in `b` (may enhance performance). Default is False.
    check_finite : bool, optional
        Whether to check that the input matrices contain only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (crashes, non-termination) if the inputs do contain infinities or NaNs.
    lapack_driver: str, optional
        Which LAPACK driver is used to solve the least-squares problem.
        Options are ``'gelsd'``, ``'gelsy'``, ``'gelss'``. Default
        (``'gelsd'``) is a good choice.  However, ``'gelsy'`` can be slightly
        faster on many problems.  ``'gelss'`` was used historically.  It is
        generally slow but uses less memory.

        .. versionadded:: 0.17.0

    Returns
    -------
    x : (N,) or (N, K) ndarray
        Least-squares solution.  Return shape matches shape of `b`.
    residues : () or (1,) or (K,) ndarray
        Sums of residues, squared 2-norm for each column in ``b - a x``.
        If rank of matrix a is ``< N`` or ``> M``, or ``'gelsy'`` is used,
        this is an empty array. If b was 1-D, this is an (1,) shape array,
        otherwise the shape is (K,).
    rank : int
        Effective rank of matrix `a`.
    s : (min(M,N),) ndarray or None
        Singular values of `a`. The condition number of a is
        ``abs(s[0] / s[-1])``. None is returned when ``'gelsy'`` is used.

    Raises
    ------
    LinAlgError :
        If computation does not converge.

    ValueError :
        When parameters are wrong.

    See Also
    --------
    optimize.nnls : linear least squares with non-negativity constraint

     N/A a1 N/A _asarray_validated a check_finite check_finite N/A b1 N/A _asarray_validated b check_finite check_finite N/A N/A N/A len N/A a1 shape 2 N/A N/A N/A ValueError expected matrix N/A N/A m n N/A a1 shape N/A N/A N/A len N/A b1 shape 2 N/A N/A nrhs N/A N/A b1 shape N/A 1 N/A N/A nrhs 1 N/A N/A m N/A N/A b1 shape N/A 0 N/A N/A N/A ValueError incompatible dimensions N/A driver lapack_driver N/A N/A driver None N/A N/A driver N/A lstsq default_lapack_driver N/A N/A driver N/A gelsd gelsy gelss N/A N/A N/A ValueError N/A LAPACK driver "%s" is not found driver N/A N/A lapack_func lapack_lwork N/A get_lapack_funcs N/A driver N/A %s_lwork driver N/A a1 b1 N/A real_data N/A N/A N/A N/A lapack_func dtype kind f True False N/A N/A m n N/A N/A N/A N/A len N/A b1 shape 2 N/A N/A b2 N/A N/A np zeros N/A n nrhs dtype N/A lapack_func dtype N/A N/A b2 N/A N/A m N/A b1 N/A N/A b2 N/A N/A np zeros n dtype N/A lapack_func dtype N/A N/A b2 N/A m b1 N/A b1 b2 N/A overwrite_a N/A overwrite_a N/A _datacopied a1 a N/A overwrite_b N/A overwrite_b N/A _datacopied b1 b N/A N/A cond None N/A N/A cond N/A N/A N/A np finfo N/A lapack_func dtype eps N/A N/A driver N/A gelss gelsd N/A N/A N/A driver gelss N/A N/A lwork N/A _compute_lwork lapack_lwork m n nrhs cond N/A N/A v x s rank work info N/A lapack_func a1 b1 cond lwork overwrite_a overwrite_a overwrite_b overwrite_b N/A N/A N/A driver gelsd N/A N/A real_data N/A N/A N/A lwork iwork N/A _compute_lwork lapack_lwork m n nrhs cond N/A N/A iwork 0 N/A N/A mesg internal gelsd driver lwork query error, required iwork dimension not returned. This is likely the result of LAPACK bug 0038, fixed in LAPACK 3.2.2 (released July 21, 2010).  N/A N/A lapack_driver None N/A N/A N/A lstsq default_lapack_driver gelss N/A mesg Falling back to 'gelss' driver. N/A N/A N/A warnings warn mesg RuntimeWarning N/A N/A lstsq a b cond overwrite_a overwrite_b check_finite lapack_driver gelss N/A mesg Use a different lapack_driver when calling lstsq or upgrade LAPACK. N/A N/A LstsqLapackError mesg N/A N/A x s rank info N/A lapack_func a1 b1 lwork iwork cond False False N/A N/A N/A lwork rwork iwork N/A _compute_lwork lapack_lwork m n nrhs cond N/A N/A x s rank info N/A lapack_func a1 b1 lwork rwork iwork cond False False N/A N/A info 0 N/A N/A N/A LinAlgError SVD did not converge in Linear Least Squares N/A N/A info 0 N/A N/A N/A ValueError N/A illegal value in %d-th argument of internal %s N/A N/A info lapack_driver N/A resids N/A N/A np asarray N/A dtype N/A x dtype N/A N/A m n N/A N/A x1 N/A x N/A n N/A N/A rank n N/A N/A resids N/A N/A np sum N/A N/A N/A np abs N/A x N/A n 2 axis 0 N/A x x1 N/A N/A x resids rank s N/A N/A N/A driver gelsy N/A N/A lwork N/A _compute_lwork lapack_lwork m n nrhs cond N/A jptv N/A N/A np zeros N/A N/A N/A a1 shape N/A 1 1 dtype N/A np int32 N/A N/A v x j rank info N/A lapack_func a1 b1 jptv cond lwork False False N/A N/A info 0 N/A N/A N/A ValueError N/A illegal value in %d-th argument of internal gelsy N/A info N/A N/A m n N/A N/A x1 N/A x N/A n N/A x x1 N/A N/A x N/A N/A np array N/A N/A x dtype rank None N/A N/A N/A lstsq default_lapack_driver gelsd pinv N/A N/A a cond rcond return_rank check_finite N/A None None False True N/A N/A 
    Compute the (Moore-Penrose) pseudo-inverse of a matrix.

    Calculate a generalized inverse of a matrix using a least-squares
    solver.

    Parameters
    ----------
    a : (M, N) array_like
        Matrix to be pseudo-inverted.
    cond, rcond : float, optional
        Cutoff for 'small' singular values in the least-squares solver.
        Singular values smaller than ``rcond * largest_singular_value``
        are considered zero.
    return_rank : bool, optional
        if True, return the effective rank of the matrix
    check_finite : bool, optional
        Whether to check that the input matrix contains only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (crashes, non-termination) if the inputs do contain infinities or NaNs.

    Returns
    -------
    B : (N, M) ndarray
        The pseudo-inverse of matrix `a`.
    rank : int
        The effective rank of the matrix.  Returned if return_rank == True

    Raises
    ------
    LinAlgError
        If computation does not converge.

    Examples
    --------
    >>> from scipy import linalg
    >>> a = np.random.randn(9, 6)
    >>> B = linalg.pinv(a)
    >>> np.allclose(a, np.dot(a, np.dot(B, a)))
    True
    >>> np.allclose(B, np.dot(B, np.dot(a, B)))
    True

     N/A a N/A _asarray_validated a check_finite check_finite N/A b N/A N/A np identity N/A N/A a shape N/A 0 dtype N/A a dtype N/A N/A rcond None N/A N/A cond rcond N/A N/A x resids rank s N/A lstsq a b cond cond check_finite False N/A return_rank N/A N/A N/A x rank N/A N/A x N/A pinv2 N/A N/A a cond rcond return_rank check_finite N/A None None False True N/A N/A 
    Compute the (Moore-Penrose) pseudo-inverse of a matrix.

    Calculate a generalized inverse of a matrix using its
    singular-value decomposition and including all 'large' singular
    values.

    Parameters
    ----------
    a : (M, N) array_like
        Matrix to be pseudo-inverted.
    cond, rcond : float or None
        Cutoff for 'small' singular values.
        Singular values smaller than ``rcond*largest_singular_value``
        are considered zero.
        If None or -1, suitable machine precision is used.
    return_rank : bool, optional
        if True, return the effective rank of the matrix
    check_finite : bool, optional
        Whether to check that the input matrix contains only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (crashes, non-termination) if the inputs do contain infinities or NaNs.

    Returns
    -------
    B : (N, M) ndarray
        The pseudo-inverse of matrix `a`.
    rank : int
        The effective rank of the matrix.  Returned if return_rank == True

    Raises
    ------
    LinAlgError
        If SVD computation does not converge.

    Examples
    --------
    >>> from scipy import linalg
    >>> a = np.random.randn(9, 6)
    >>> B = linalg.pinv2(a)
    >>> np.allclose(a, np.dot(a, np.dot(B, a)))
    True
    >>> np.allclose(B, np.dot(B, np.dot(a, B)))
    True

     N/A a N/A _asarray_validated a check_finite check_finite N/A N/A u s vh N/A N/A decomp_svd svd a full_matrices False check_finite False N/A N/A rcond None N/A N/A cond rcond N/A N/A cond N/A None -1 N/A N/A t N/A N/A N/A N/A u dtype char lower N/A factor N/A f d 1000.0 1000000.0 N/A cond N/A N/A factor N/A t N/A N/A N/A np finfo t eps N/A rank N/A N/A np sum N/A s N/A cond N/A N/A np max s N/A u N/A u N/A N/A N/A rank N/A u N/A s N/A rank N/A B N/A N/A np transpose N/A N/A np conjugate N/A N/A np dot u N/A vh N/A rank N/A return_rank N/A N/A N/A B rank N/A N/A B N/A pinvh N/A N/A a cond rcond lower return_rank check_finite N/A None None True False True N/A N/A 
    Compute the (Moore-Penrose) pseudo-inverse of a Hermitian matrix.

    Calculate a generalized inverse of a Hermitian or real symmetric matrix
    using its eigenvalue decomposition and including all eigenvalues with
    'large' absolute value.

    Parameters
    ----------
    a : (N, N) array_like
        Real symmetric or complex hermetian matrix to be pseudo-inverted
    cond, rcond : float or None
        Cutoff for 'small' eigenvalues.
        Singular values smaller than rcond * largest_eigenvalue are considered
        zero.

        If None or -1, suitable machine precision is used.
    lower : bool, optional
        Whether the pertinent array data is taken from the lower or upper
        triangle of a. (Default: lower)
    return_rank : bool, optional
        if True, return the effective rank of the matrix
    check_finite : bool, optional
        Whether to check that the input matrix contains only finite numbers.
        Disabling may give a performance gain, but may result in problems
        (crashes, non-termination) if the inputs do contain infinities or NaNs.

    Returns
    -------
    B : (N, N) ndarray
        The pseudo-inverse of matrix `a`.
    rank : int
        The effective rank of the matrix.  Returned if return_rank == True

    Raises
    ------
    LinAlgError
        If eigenvalue does not converge

    Examples
    --------
    >>> from scipy.linalg import pinvh
    >>> a = np.random.randn(9, 6)
    >>> a = np.dot(a, a.T)
    >>> B = pinvh(a)
    >>> np.allclose(a, np.dot(a, np.dot(B, a)))
    True
    >>> np.allclose(B, np.dot(B, np.dot(a, B)))
    True

     N/A a N/A _asarray_validated a check_finite check_finite N/A N/A s u N/A N/A decomp eigh a lower lower check_finite False N/A N/A rcond None N/A N/A cond rcond N/A N/A cond N/A None -1 N/A N/A t N/A N/A N/A N/A u dtype char lower N/A factor N/A f d 1000.0 1000000.0 N/A cond N/A N/A factor N/A t N/A N/A N/A np finfo t eps N/A above_cutoff N/A N/A abs s N/A cond N/A N/A np max N/A abs s N/A psigma_diag N/A 1.0 N/A s N/A above_cutoff N/A u N/A u N/A N/A N/A above_cutoff N/A B N/A N/A np dot N/A u psigma_diag N/A N/A N/A np conjugate u T N/A return_rank N/A N/A N/A B N/A len psigma_diag N/A N/A B N/A