def transpose(A): """ Transpose a shapeable quantety Parameters ---------- A : p.Poly, f.frac, array_like Quantety of interest. Returns ------- Q : p.Poly, f.frac, array_like Same type as `A`. Examples -------- >>> P = cp.reshape(cp.prange(4), (2,2)) >>> print P [[1, q0], [q0^2, q0^3]] >>> print cp.transpose(P) [[1, q0^2], [q0, q0^3]] """ if isinstance(A, (int, long, float, np.ndarray)): return np.transpose(A) elif isinstance(A, f.frac): return f.transpose(A) elif isinstance(A, p.Poly): return p.transpose(A) raise NotImplementedError
def transpose(P): A = P.A.copy() if P.dtype==f.frac: for key in P.keys: A[key] = f.transpose(A[key]) else: for key in P.keys: A[key] = np.transpose(A[key]) return Poly(A, P.dim, P.shape[::-1], P.dtype)
def transpose(P): A = P.A.copy() if P.dtype == f.frac: for key in P.keys: A[key] = f.transpose(A[key]) else: for key in P.keys: A[key] = np.transpose(A[key]) return Poly(A, P.dim, P.shape[::-1], P.dtype)