示例#1
0
lapack_int LAPACKE_stfsm( int matrix_layout, char transr, char side, char uplo,
                          char trans, char diag, lapack_int m, lapack_int n,
                          float alpha, const float* a, float* b,
                          lapack_int ldb )
{
    if( matrix_layout != LAPACK_COL_MAJOR && matrix_layout != LAPACK_ROW_MAJOR ) {
        LAPACKE_xerbla( "LAPACKE_stfsm", -1 );
        return -1;
    }
#ifndef LAPACK_DISABLE_NAN_CHECK
    if( LAPACKE_get_nancheck() ) {
        /* Optionally check input matrices for NaNs */
        if( IS_S_NONZERO(alpha) ) {
            if( LAPACKE_stf_nancheck( matrix_layout, transr, uplo, diag, n, a ) ) {
                return -10;
            }
        }
        if( LAPACKE_s_nancheck( 1, &alpha, 1 ) ) {
            return -9;
        }
        if( IS_S_NONZERO(alpha) ) {
            if( LAPACKE_sge_nancheck( matrix_layout, m, n, b, ldb ) ) {
                return -11;
            }
        }
    }
#endif
    return LAPACKE_stfsm_work( matrix_layout, transr, side, uplo, trans, diag, m,
                               n, alpha, a, b, ldb );
}
示例#2
0
lapack_int LAPACKE_stftri( int matrix_order, char transr, char uplo, char diag,
                           lapack_int n, float* a )
{
    if( matrix_order != LAPACK_COL_MAJOR && matrix_order != LAPACK_ROW_MAJOR ) {
        LAPACKE_xerbla( "LAPACKE_stftri", -1 );
        return -1;
    }
#ifndef LAPACK_DISABLE_NAN_CHECK
    /* Optionally check input matrices for NaNs */
    if( LAPACKE_stf_nancheck( matrix_order, transr, uplo, diag, n, a ) ) {
        return -6;
    }
#endif
    return LAPACKE_stftri_work( matrix_order, transr, uplo, diag, n, a );
}