FLA_Axpyt_external.c File Reference

(r)


Functions

FLA_Error FLA_Axpyt_external (FLA_Trans trans, FLA_Obj alpha, FLA_Obj A, FLA_Obj B)
void FLA_F2C() fla_axpyt_external_f (F_INT *trans, F_INT *alpha, F_INT *A, F_INT *B, F_INT *IERROR)

Function Documentation

FLA_Error FLA_Axpyt_external ( FLA_Trans  trans,
FLA_Obj  alpha,
FLA_Obj  A,
FLA_Obj  B 
)

References FLA_Axpy_external(), FLA_Axpyt_check(), FLA_Check_error_level(), FLA_Copyt_external(), FLA_Obj_create_conf_to(), FLA_Obj_free(), and FLA_Obj_is_vector().

Referenced by FLA_Axpy_global_to_submatrix(), FLA_Axpy_submatrix_to_global(), FLA_Axpyt(), fla_axpyt_external_f(), and FLA_LQ_UT_Accum_T_blk_var1().

00036 {
00037   FLA_Obj   A_copy;
00038   FLA_Trans trans_real;
00039   FLA_Trans trans_conj;
00040 
00041   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING ) 
00042     FLA_Axpyt_check( trans, alpha, A, B );
00043 
00044   if ( FLA_Obj_is_vector( A ) )
00045   {
00046     trans_conj = FLA_TRANS_MAP_TO_NC( trans );
00047 
00048     FLA_Obj_create_conf_to( FLA_NO_TRANSPOSE, A, &A_copy );
00049 
00050     FLA_Copyt_external( trans_conj, A, A_copy );
00051 
00052     FLA_Axpy_external( alpha, A_copy, B );
00053 
00054     FLA_Obj_free( &A_copy );
00055   }
00056   else
00057   {
00058     trans_real = FLA_TRANS_MAP_TO_NT( trans );
00059 
00060     FLA_Obj_create_conf_to( trans_real, A, &A_copy );
00061 
00062     FLA_Copyt_external( trans, A, A_copy );
00063 
00064     FLA_Axpy_external( alpha, A_copy, B );
00065 
00066     FLA_Obj_free( &A_copy );
00067   }
00068 
00069   return FLA_SUCCESS;
00070 }

void FLA_F2C() fla_axpyt_external_f ( F_INT *  trans,
F_INT *  alpha,
F_INT *  A,
F_INT *  B,
F_INT *  IERROR 
)

References FLA_Axpyt_external().

00074 {
00075   *IERROR = FLA_Axpyt_external( *( ( FLA_Trans * ) trans ), 
00076                                 *( ( FLA_Obj   * ) alpha ), 
00077                                 *( ( FLA_Obj   * ) A     ), 
00078                                 *( ( FLA_Obj   * ) B     ) );
00079 }


Generated on Mon Jul 6 05:45:53 2009 for libflame by  doxygen 1.5.9