libflame
12600
|
Functions | |
FLA_Error | FLA_Bsvd_check (FLA_Uplo uplo, FLA_Obj d, FLA_Obj e, FLA_Obj G, FLA_Obj H, FLA_Svd_type jobu, FLA_Obj U, FLA_Svd_type jobv, FLA_Obj V) |
FLA_Error FLA_Bsvd_check | ( | FLA_Uplo | uplo, |
FLA_Obj | d, | ||
FLA_Obj | e, | ||
FLA_Obj | G, | ||
FLA_Obj | H, | ||
FLA_Svd_type | jobu, | ||
FLA_Obj | U, | ||
FLA_Svd_type | jobv, | ||
FLA_Obj | V | ||
) |
References FLA_Check_complex_object(), FLA_Check_identical_object_datatype(), FLA_Check_identical_object_precision(), FLA_Check_nonconstant_object(), FLA_Check_object_length_equals(), FLA_Check_real_object(), FLA_Check_valid_svd_type(), FLA_Check_valid_uplo(), FLA_Check_vector_dim(), FLA_Obj_has_zero_dim(), and FLA_Obj_vector_dim().
Referenced by FLA_Bsvd(), and FLA_Bsvd_ext_check().
{ FLA_Error e_val = FLA_SUCCESS; dim_t m_d, m_e; e_val = FLA_Check_valid_uplo( uplo ); FLA_Check_error_code( e_val ); e_val = FLA_Check_real_object( d ); FLA_Check_error_code( e_val ); e_val = FLA_Check_nonconstant_object( d ); FLA_Check_error_code( e_val ); m_d = FLA_Obj_vector_dim( d ); m_e = ( m_d - 1 ); if ( m_e > 0 ) { e_val = FLA_Check_real_object( e ); FLA_Check_error_code( e_val ); e_val = FLA_Check_nonconstant_object( e ); FLA_Check_error_code( e_val ); e_val = FLA_Check_identical_object_datatype( d, e ); FLA_Check_error_code( e_val ); e_val = FLA_Check_vector_dim( e, m_e ); FLA_Check_error_code( e_val ); } if ( m_e > 0 ) { e_val = FLA_Check_complex_object( G ); FLA_Check_error_code( e_val ); e_val = FLA_Check_identical_object_precision( d, G ); FLA_Check_error_code( e_val ); e_val = FLA_Check_object_length_equals( G, m_e ); FLA_Check_error_code( e_val ); } if ( m_e > 0 ) { e_val = FLA_Check_complex_object( H ); FLA_Check_error_code( e_val ); e_val = FLA_Check_identical_object_precision( d, H ); FLA_Check_error_code( e_val ); e_val = FLA_Check_object_length_equals( H, m_e ); FLA_Check_error_code( e_val ); } FLA_Check_valid_svd_type( jobu ); FLA_Check_error_code( e_val ); FLA_Check_valid_svd_type( jobv ); FLA_Check_error_code( e_val ); if ( jobu != FLA_SVD_VECTORS_NONE && FLA_Obj_has_zero_dim( U ) == FALSE ) { FLA_Check_identical_object_precision( d, U ); FLA_Check_error_code( e_val ); } if ( jobv != FLA_SVD_VECTORS_NONE && FLA_Obj_has_zero_dim( V ) == FALSE ) { FLA_Check_identical_object_precision( d, V ); FLA_Check_error_code( e_val ); } return FLA_SUCCESS; }