libflame revision_anchor
Functions
FLA_Obj_shift_diagonal_check.c File Reference

(r)

Functions

FLA_Error FLA_Obj_shift_diagonal_check (FLA_Conj conj, FLA_Obj sigma, FLA_Obj A)

Function Documentation

FLA_Error FLA_Obj_shift_diagonal_check ( FLA_Conj  conj,
FLA_Obj  sigma,
FLA_Obj  A 
)

References FLA_Check_consistent_object_datatype(), FLA_Check_floating_object(), FLA_Check_identical_object_precision(), FLA_Check_if_scalar(), FLA_Check_nonconstant_object(), FLA_Check_valid_conj(), and FLA_Obj_is_real().

Referenced by FLA_Obj_shift_diagonal().

{
  FLA_Error e_val;

  e_val = FLA_Check_valid_conj( conj );
  FLA_Check_error_code( e_val );

  e_val = FLA_Check_floating_object( A );
  FLA_Check_error_code( e_val );

  e_val = FLA_Check_nonconstant_object( A );
  FLA_Check_error_code( e_val );

  if ( FLA_Obj_is_real( A ) )
  {
    e_val = FLA_Check_consistent_object_datatype( A, sigma );
    FLA_Check_error_code( e_val );
  }
  else
  {
    e_val = FLA_Check_identical_object_precision( A, sigma );
    FLA_Check_error_code( e_val );
  }

  e_val = FLA_Check_if_scalar( sigma );
  FLA_Check_error_code( e_val );

  return FLA_SUCCESS;
}