libflame revision_anchor
FLASH_LU_incpiv.c File Reference

(r)

Functions

FLA_Error FLASH_LU_incpiv (FLA_Obj A, FLA_Obj p, FLA_Obj L)
 

Function Documentation

◆ FLASH_LU_incpiv()

FLA_Error FLASH_LU_incpiv ( FLA_Obj A,
FLA_Obj p,
FLA_Obj L )
14{
15 FLA_Error r_val;
16
17 // Check parameters.
18 if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
19 FLA_LU_incpiv_check( A, p, L );
20
21 // *** The current LU_incpiv algorithm implemented assumes that
22 // the matrix has a hierarchical depth of 1. We check for that here, because
23 // we anticipate that we'll use a more general algorithm in the future, and
24 // we don't want to forget to remove the constraint. ***
25 if ( FLASH_Obj_depth( A ) != 1 )
26 {
27 FLA_Print_message( "FLASH_LU_incpiv() currently only supports matrices of depth 1",
28 __FILE__, __LINE__ );
29 FLA_Abort();
30 }
31
32 if ( FLASH_Queue_stack_depth() == 0 )
33 r_val = FLASH_LU_incpiv_opt1( A, p, L );
34 else
35 r_val = FLASH_LU_incpiv_noopt( A, p, L );
36
37 return r_val;
38}
unsigned int FLASH_Queue_stack_depth(void)
Definition FLASH_Queue.c:106
dim_t FLASH_Obj_depth(FLA_Obj H)
Definition FLASH_Obj.c:20
FLA_Error FLASH_LU_incpiv_noopt(FLA_Obj A, FLA_Obj p, FLA_Obj L)
Definition FLASH_LU_incpiv_noopt.c:15
FLA_Error FLASH_LU_incpiv_opt1(FLA_Obj A, FLA_Obj p, FLA_Obj L)
Definition FLASH_LU_incpiv_opt1.c:15
FLA_Error FLA_LU_incpiv_check(FLA_Obj A, FLA_Obj p, FLA_Obj L)
Definition FLA_LU_incpiv_check.c:13
void FLA_Abort(void)
Definition FLA_Error.c:248
unsigned int FLA_Check_error_level(void)
Definition FLA_Check.c:18
void FLA_Print_message(char *str, char *file, int line)
Definition FLA_Error.c:234
int FLA_Error
Definition FLA_type_defs.h:47

References FLA_Abort(), FLA_Check_error_level(), FLA_LU_incpiv_check(), FLA_Print_message(), FLASH_LU_incpiv_noopt(), FLASH_LU_incpiv_opt1(), FLASH_Obj_depth(), and FLASH_Queue_stack_depth().