FLA_Trsmsx_external.c File Reference

(r)


Functions

FLA_Error FLA_Trsmsx_external (FLA_Side side, FLA_Uplo uplo, FLA_Trans transa, FLA_Diag diag, FLA_Obj alpha, FLA_Obj A, FLA_Obj B, FLA_Obj beta, FLA_Obj C)
void FLA_F2C() fla_trsmsx_external_f (F_INT *side, F_INT *uplo, F_INT *transa, F_INT *diag, F_INT *alpha, F_INT *A, F_INT *B, F_INT *beta, F_INT *C, F_INT *IERROR)

Function Documentation

FLA_Error FLA_Trsmsx_external ( FLA_Side  side,
FLA_Uplo  uplo,
FLA_Trans  transa,
FLA_Diag  diag,
FLA_Obj  alpha,
FLA_Obj  A,
FLA_Obj  B,
FLA_Obj  beta,
FLA_Obj  C 
)

References FLA_Axpy_external(), FLA_Check_error_level(), FLA_Copy_external(), FLA_Obj_create_conf_to(), FLA_Obj_free(), FLA_ONE, FLA_Scal_external(), FLA_Trsm_external(), and FLA_Trsmsx_check().

Referenced by fla_trsmsx_external_f().

00036 {
00037   FLA_Obj B_copy;
00038 
00039   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING ) 
00040     FLA_Trsmsx_check( side, uplo, transa, diag, alpha, A, B, beta, C );
00041 
00042   FLA_Obj_create_conf_to( FLA_NO_TRANSPOSE, B, &B_copy );
00043 
00044   FLA_Copy_external( B, B_copy );
00045 
00046   FLA_Trsm_external( side, uplo, transa, diag, FLA_ONE, A, B_copy );
00047 
00048   FLA_Scal_external( beta, C );
00049 
00050   FLA_Axpy_external( alpha, B_copy, C );
00051 
00052   FLA_Obj_free( &B_copy );
00053 
00054   return FLA_SUCCESS;
00055 }

void FLA_F2C() fla_trsmsx_external_f ( F_INT *  side,
F_INT *  uplo,
F_INT *  transa,
F_INT *  diag,
F_INT *  alpha,
F_INT *  A,
F_INT *  B,
F_INT *  beta,
F_INT *  C,
F_INT *  IERROR 
)

References FLA_Trsmsx_external().

00059 {
00060   *IERROR = FLA_Trsmsx_external( *( ( FLA_Side  * ) side   ),
00061                                  *( ( FLA_Uplo  * ) uplo   ), 
00062                                  *( ( FLA_Trans * ) transa ),
00063                                  *( ( FLA_Diag  * ) diag   ),
00064                                  *( ( FLA_Obj   * ) alpha  ),
00065                                  *( ( FLA_Obj   * ) A      ),
00066                                  *( ( FLA_Obj   * ) B      ),
00067                                  *( ( FLA_Obj   * ) beta   ),
00068                                  *( ( FLA_Obj   * ) C      ) );
00069 }


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