Beispiel #1
0
lapack_int LAPACKE_dsfrk( int matrix_layout, char transr, char uplo, char trans,
                          lapack_int n, lapack_int k, double alpha,
                          const double* a, lapack_int lda, double beta,
                          double* c )
{
    lapack_int ka, na;
    if( matrix_layout != LAPACK_COL_MAJOR && matrix_layout != LAPACK_ROW_MAJOR ) {
        LAPACKE_xerbla( "LAPACKE_dsfrk", -1 );
        return -1;
    }
#ifndef LAPACK_DISABLE_NAN_CHECK
    /* Optionally check input matrices for NaNs */
    ka = LAPACKE_lsame( trans, 'n' ) ? k : n;
    na = LAPACKE_lsame( trans, 'n' ) ? n : k;
    if( LAPACKE_dge_nancheck( matrix_layout, na, ka, a, lda ) ) {
        return -8;
    }
    if( LAPACKE_d_nancheck( 1, &alpha, 1 ) ) {
        return -7;
    }
    if( LAPACKE_d_nancheck( 1, &beta, 1 ) ) {
        return -10;
    }
    if( LAPACKE_dpf_nancheck( n, c ) ) {
        return -11;
    }
#endif
    return LAPACKE_dsfrk_work( matrix_layout, transr, uplo, trans, n, k, alpha,
                               a, lda, beta, c );
}
lapack_int LAPACKE_dtfttp( int matrix_layout, char transr, char uplo,
                           lapack_int n, const double* arf, double* ap )
{
    if( matrix_layout != LAPACK_COL_MAJOR && matrix_layout != LAPACK_ROW_MAJOR ) {
        LAPACKE_xerbla( "LAPACKE_dtfttp", -1 );
        return -1;
    }
#ifndef LAPACK_DISABLE_NAN_CHECK
    if( LAPACKE_get_nancheck() ) {
        /* Optionally check input matrices for NaNs */
        if( LAPACKE_dpf_nancheck( n, arf ) ) {
            return -5;
        }
    }
#endif
    return LAPACKE_dtfttp_work( matrix_layout, transr, uplo, n, arf, ap );
}
lapack_int LAPACKE_dpftrs( int matrix_layout, char transr, char uplo,
                           lapack_int n, lapack_int nrhs, const double* a,
                           double* b, lapack_int ldb )
{
    if( matrix_layout != LAPACK_COL_MAJOR && matrix_layout != LAPACK_ROW_MAJOR ) {
        LAPACKE_xerbla( "LAPACKE_dpftrs", -1 );
        return -1;
    }
#ifndef LAPACK_DISABLE_NAN_CHECK
    /* Optionally check input matrices for NaNs */
    if( LAPACKE_dpf_nancheck( n, a ) ) {
        return -6;
    }
    if( LAPACKE_dge_nancheck( matrix_layout, n, nrhs, b, ldb ) ) {
        return -7;
    }
#endif
    return LAPACKE_dpftrs_work( matrix_layout, transr, uplo, n, nrhs, a, b,
                                ldb );
}