libflame revision_anchor
Functions
FLA_Random_spd_matrix.c File Reference

(r)

Functions

FLA_Error FLA_Random_spd_matrix (FLA_Uplo uplo, FLA_Obj A)
 

Function Documentation

◆ FLA_Random_spd_matrix()

FLA_Error FLA_Random_spd_matrix ( FLA_Uplo  uplo,
FLA_Obj  A 
)
14{
15 FLA_Obj R;
16
19
20 // Create a temporary object R conformal to A.
22
23 // Randomize R to be an uplo-triangular matrix. Note that the diagonal of R
24 // needs to be positive to ensure that R * R' is SPD/HPD.
26
27 if ( uplo == FLA_LOWER_TRIANGULAR )
28 {
29 // A = R * R';
31 }
32 else // if ( uplo == FLA_UPPER_TRIANGULAR )
33 {
34 // A = R' * R;
36 }
37
38 // Free R.
39 FLA_Obj_free( &R );
40
41 return FLA_SUCCESS;
42}
FLA_Error FLA_Random_spd_matrix_check(FLA_Uplo uplo, FLA_Obj A)
Definition FLA_Random_spd_matrix_check.c:13
FLA_Error FLA_Herk_external(FLA_Uplo uplo, FLA_Trans trans, FLA_Obj alpha, FLA_Obj A, FLA_Obj beta, FLA_Obj C)
Definition FLA_Herk_external.c:13
FLA_Obj FLA_ZERO
Definition FLA_Init.c:20
FLA_Obj FLA_ONE
Definition FLA_Init.c:18
unsigned int FLA_Check_error_level(void)
Definition FLA_Check.c:18
FLA_Error FLA_Obj_create_conf_to(FLA_Trans trans, FLA_Obj old, FLA_Obj *obj)
Definition FLA_Obj.c:286
FLA_Error FLA_Obj_free(FLA_Obj *obj)
Definition FLA_Obj.c:588
FLA_Error FLA_Random_tri_matrix(FLA_Uplo uplo, FLA_Diag diag, FLA_Obj A)
Definition FLA_Random_tri_matrix.c:13
int i
Definition bl1_axmyv2.c:145
Definition FLA_type_defs.h:159

References FLA_Check_error_level(), FLA_Herk_external(), FLA_Obj_create_conf_to(), FLA_Obj_free(), FLA_ONE, FLA_Random_spd_matrix_check(), FLA_Random_tri_matrix(), FLA_ZERO, and i.

Referenced by FLASH_Random_spd_matrix().