Functions | |
FLA_Error | FLA_LU_nopiv_blk_external (FLA_Obj A) |
void FLA_F2C() | fla_lu_nopiv_blk_external_f (F_INT *A, F_INT *IERROR) |
References cgetnf(), dgetnf(), FLA_Check_error_level(), FLA_LU_nopiv_check(), FLA_Obj_datatype(), FLA_Obj_has_zero_dim(), FLA_Obj_ldim(), FLA_Obj_length(), FLA_Obj_width(), sgetnf(), and zgetnf().
Referenced by fla_lu_nopiv_blk_external_f().
00036 { 00037 FLA_Datatype datatype; 00038 int m_A, n_A, ldim_A; 00039 int info; 00040 00041 if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING ) 00042 FLA_LU_nopiv_check( A ); 00043 00044 if ( FLA_Obj_has_zero_dim( A ) ) return FLA_SUCCESS; 00045 00046 datatype = FLA_Obj_datatype( A ); 00047 00048 m_A = FLA_Obj_length( A ); 00049 n_A = FLA_Obj_width( A ); 00050 ldim_A = FLA_Obj_ldim( A ); 00051 00052 00053 switch( datatype ){ 00054 00055 case FLA_FLOAT: 00056 { 00057 float *buff_A = ( float * ) FLA_FLOAT_PTR( A ); 00058 00059 FLA_C2F( sgetnf )( &m_A, 00060 &n_A, 00061 buff_A, &ldim_A, 00062 &info ); 00063 00064 break; 00065 } 00066 00067 case FLA_DOUBLE: 00068 { 00069 double *buff_A = ( double * ) FLA_DOUBLE_PTR( A ); 00070 00071 FLA_C2F( dgetnf )( &m_A, 00072 &n_A, 00073 buff_A, &ldim_A, 00074 &info ); 00075 00076 break; 00077 } 00078 00079 case FLA_COMPLEX: 00080 { 00081 scomplex *buff_A = ( scomplex * ) FLA_COMPLEX_PTR( A ); 00082 00083 FLA_C2F( cgetnf )( &m_A, 00084 &n_A, 00085 buff_A, &ldim_A, 00086 &info ); 00087 00088 break; 00089 } 00090 00091 case FLA_DOUBLE_COMPLEX: 00092 { 00093 dcomplex *buff_A = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( A ); 00094 00095 FLA_C2F( zgetnf )( &m_A, 00096 &n_A, 00097 buff_A, &ldim_A, 00098 &info ); 00099 00100 break; 00101 } 00102 00103 } 00104 00105 return info; 00106 }
void FLA_F2C() fla_lu_nopiv_blk_external_f | ( | F_INT * | A, | |
F_INT * | IERROR | |||
) |
References FLA_LU_nopiv_blk_external().
00110 { 00111 *IERROR = FLA_LU_nopiv_blk_external( *( ( FLA_Obj * ) A ) ); 00112 }