Пример #1
0
inline void tbsv( const Order, const UpLo, const Trans, const Diag,
        const int n, const int k, const double* a, const int lda, double* x,
        const int incx ) {
    BOOST_STATIC_ASSERT( (is_same<Order, tag::column_major>::value) );
    cublasDtbsv( blas_option< UpLo >::value, blas_option< Trans >::value,
            blas_option< Diag >::value, n, k, a, lda, x, incx );
}
Пример #2
0
void d_tbsv(SEXP ruplo, SEXP rtrans, SEXP rdiag, SEXP rk, SEXP ra, SEXP rlda,
	SEXP rx, SEXP rincx)
{
	char
		uplo = getSymLoc(ruplo),
		trans = getTranspose(rtrans),
		diag = getUnitTri(rdiag);
	double
		* a, * x;
	int
		rowsa, colsa, lda = asInteger(rlda),
		k = asInteger(rk),
		nx, incx = asInteger(rincx);

	unpackVector(rx, &nx, &x);
	unpackMatrix(ra, &rowsa, &colsa, &a);

	cublasDtbsv(uplo, trans, diag, rowsa, k, a, lda, x, incx);
	checkCublasError("d_tbsv");
}