FLA_main_prototypes.h File Reference

(r)

Go to the source code of this file.

Functions

fla_blocksize_tFLA_Blocksize_create (dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
fla_blocksize_tFLA_Blocksize_create_copy (fla_blocksize_t *bp)
void FLA_Blocksize_set (fla_blocksize_t *bp, dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
void FLA_Blocksize_scale (fla_blocksize_t *bp, double factor)
void FLA_Blocksize_free (fla_blocksize_t *bp)
dim_t FLA_Blocksize_extract (FLA_Datatype dt, fla_blocksize_t *bp)
fla_blocksize_tFLA_Query_blocksizes (FLA_Dimension dim)
dim_t FLA_Query_blocksize (FLA_Datatype dt, FLA_Dimension dim)
dim_t FLA_Determine_blocksize (FLA_Obj A_unproc, FLA_Quadrant to_dir, fla_blocksize_t *cntl_blocksizes)
dim_t FLA_determine_matrix_size (FLA_Obj A_unproc, FLA_Quadrant to_dir)
F_INT FLA_F2C() fla_query_blocksize_f (F_INT *dt, F_INT *dim)
unsigned int FLA_Check_error_level (void)
unsigned int FLA_Check_error_level_set (unsigned int level)
void FLA_Check_error_code_helper (int code, char *file, int line)
FLA_Error FLA_Check_valid_side (FLA_Side side)
FLA_Error FLA_Check_valid_uplo (FLA_Uplo uplo)
FLA_Error FLA_Check_valid_trans (FLA_Trans trans)
FLA_Error FLA_Check_valid_diag (FLA_Diag diag)
FLA_Error FLA_Check_valid_conj (FLA_Conj conj)
FLA_Error FLA_Check_valid_direct (FLA_Conj direct)
FLA_Error FLA_Check_valid_storev (FLA_Conj storev)
FLA_Error FLA_Check_valid_datatype (FLA_Datatype datatype)
FLA_Error FLA_Check_valid_object_datatype (FLA_Obj A)
FLA_Error FLA_Check_floating_datatype (FLA_Datatype datatype)
FLA_Error FLA_Check_int_datatype (FLA_Datatype datatype)
FLA_Error FLA_Check_real_datatype (FLA_Datatype datatype)
FLA_Error FLA_Check_complex_datatype (FLA_Datatype datatype)
FLA_Error FLA_Check_floating_object (FLA_Obj A)
FLA_Error FLA_Check_int_object (FLA_Obj A)
FLA_Error FLA_Check_real_object (FLA_Obj A)
FLA_Error FLA_Check_complex_object (FLA_Obj A)
FLA_Error FLA_Check_consistent_datatype (FLA_Datatype datatype, FLA_Obj A)
FLA_Error FLA_Check_consistent_object_datatype (FLA_Obj A, FLA_Obj B)
FLA_Error FLA_Check_identical_object_precision (FLA_Obj A, FLA_Obj B)
FLA_Error FLA_Check_square (FLA_Obj A)
FLA_Error FLA_Check_if_scalar (FLA_Obj A)
FLA_Error FLA_Check_if_vector (FLA_Obj A)
FLA_Error FLA_Check_conformal_dims (FLA_Trans trans, FLA_Obj A, FLA_Obj B)
FLA_Error FLA_Check_matrix_matrix_dims (FLA_Trans transa, FLA_Trans transb, FLA_Obj A, FLA_Obj B, FLA_Obj C)
FLA_Error FLA_Check_matrix_vector_dims (FLA_Trans trans, FLA_Obj A, FLA_Obj x, FLA_Obj y)
FLA_Error FLA_Check_equal_vector_lengths (FLA_Obj x, FLA_Obj y)
FLA_Error FLA_Check_conj_trans_and_datatype (FLA_Trans trans, FLA_Obj A)
FLA_Error FLA_Check_hess_indices (FLA_Obj A, int ilo, int ihi)
FLA_Error FLA_Check_vector_length (FLA_Obj x, dim_t expected_length)
FLA_Error FLA_Check_null_pointer (void *ptr)
FLA_Error FLA_Check_object_dims (FLA_Trans trans, dim_t m, dim_t n, FLA_Obj A)
FLA_Error FLA_Check_valid_pivot_type (FLA_Pivot_type ptype)
FLA_Error FLA_Check_malloc_pointer (void *ptr)
FLA_Error FLA_Check_base_buffer_mismatch (FLA_Obj A, FLA_Obj B)
FLA_Error FLA_Check_adjacent_objects_2x2 (FLA_Obj A11, FLA_Obj A12, FLA_Obj A21, FLA_Obj A22)
FLA_Error FLA_Check_adjacent_objects_2x1 (FLA_Obj AT, FLA_Obj AB)
FLA_Error FLA_Check_adjacent_objects_1x2 (FLA_Obj AL, FLA_Obj AR)
FLA_Error FLA_Check_blocksize_value (dim_t b)
FLA_Error FLA_Check_blocksize_object (FLA_Datatype datatype, fla_blocksize_t *bp)
FLA_Error FLA_Check_file_descriptor (int fd)
FLA_Error FLA_Check_lseek_result (int requested_offset, int lseek_r_val)
FLA_Error FLA_Check_close_result (int close_r_val)
FLA_Error FLA_Check_unlink_result (int unlink_r_val)
FLA_Error FLA_Check_read_result (int requested_size, int read_r_val)
FLA_Error FLA_Check_write_result (int requested_size, int write_r_val)
FLA_Error FLA_Check_valid_quadrant (FLA_Quadrant quad)
FLA_Error FLA_Check_vector_length_min (FLA_Obj x, dim_t min_length)
FLA_Error FLA_Check_pthread_create_result (int pthread_create_r_val)
FLA_Error FLA_Check_pthread_join_result (int pthread_join_r_val)
FLA_Error FLA_Check_valid_isgn_value (FLA_Obj isgn)
FLA_Error FLA_Check_sylv_matrix_dims (FLA_Obj A, FLA_Obj B, FLA_Obj C)
FLA_Error FLA_Check_chol_failure (FLA_Error r_val)
FLA_Error FLA_Check_valid_elemtype (FLA_Elemtype elemtype)
FLA_Error FLA_Check_posix_memalign_failure (int r_val)
FLA_Error FLA_Check_submatrix_dims_and_offset (dim_t m, dim_t n, dim_t i, dim_t j, FLA_Obj A)
FLA_Error FLA_Check_object_scalar_elemtype (FLA_Obj A)
FLA_Error FLA_Check_object_matrix_elemtype (FLA_Obj A)
FLA_Error FLA_Check_num_threads (unsigned int n_threads)
FLA_Error FLA_Check_conj_and_datatype (FLA_Conj conj, FLA_Obj A)
FLA_Error FLA_Check_valid_complex_trans (FLA_Trans trans)
FLA_Error FLA_Check_valid_real_trans (FLA_Trans trans)
FLA_Error FLA_Check_valid_blas_trans (FLA_Trans trans)
FLA_Error FLA_Check_nonconstant_datatype (FLA_Datatype datatype)
FLA_Error FLA_Check_nonconstant_object (FLA_Obj A)
FLA_Error FLA_Check_m_against_ldim (dim_t m, dim_t ldim)
FLA_Error FLA_Check_identical_object_datatype (FLA_Obj A, FLA_Obj B)
FLA_Error FLA_Check_divide_by_zero (FLA_Obj alpha)
FLA_Error FLA_Check_identical_object_elemtype (FLA_Obj A, FLA_Obj B)
FLA_Error FLA_Check_pivot_index_range (FLA_Obj p, dim_t k1, dim_t k2)
FLA_Error FLA_Check_householder_panel_dims (FLA_Obj A, FLA_Obj T)
FLA_Error FLA_Check_object_length_equals (FLA_Obj A, dim_t m)
FLA_Error FLA_Check_object_width_equals (FLA_Obj A, dim_t n)
FLA_Error FLA_Check_valid_error_level (unsigned int level)
FLA_Error FLA_Check_attempted_repart_2x2 (FLA_Obj A_quad, dim_t b_m, dim_t b_n)
FLA_Error FLA_Check_attempted_repart_2x1 (FLA_Obj A_side, dim_t b_m)
FLA_Error FLA_Check_attempted_repart_1x2 (FLA_Obj A_side, dim_t b_n)
char * FLA_Error_string_for_code (int code)
void FLA_Error_messages_init (void)
void FLA_Print_message (char *str, char *file, int line)
void FLA_Abort (void)
void FLA_F2C() fla_abort_f (void)
FLA_Bool FLA_Initialized (void)
void FLA_Init (void)
void FLA_Init_constants (void)
void FLA_Init_memcounter (void)
void FLA_Finalize (void)
void FLA_Finalize_constants (void)
void FLA_Finalize_memcounter (void)
F_INT FLA_F2C() fla_initialized_f (void)
void FLA_F2C() fla_init_fortran (FLA_Obj *minus_one, FLA_Obj *zero, FLA_Obj *one, FLA_Obj *two)
void FLA_F2C() fla_finalize_fortran (void)
void FLA_F2C() fla_init_f (void)
void FLA_F2C() fla_finalize_f (void)
void FLA_Lock_init (FLA_Lock *fla_lock_ptr)
void FLA_Lock_destroy (FLA_Lock *fla_lock_ptr)
void FLA_Lock_acquire (FLA_Lock *fla_lock_ptr)
void FLA_Lock_release (FLA_Lock *fla_lock_ptr)
void * FLA_malloc (size_t size)
void * FLA_realloc (void *old_ptr, size_t size)
void FLA_free (void *ptr)
FLA_Bool FLA_Obj_is_int (FLA_Obj A)
FLA_Bool FLA_Obj_is_floating_point (FLA_Obj A)
FLA_Bool FLA_Obj_is_constant (FLA_Obj A)
FLA_Bool FLA_Obj_is_real (FLA_Obj A)
FLA_Bool FLA_Obj_is_complex (FLA_Obj A)
FLA_Bool FLA_Obj_is_single_precision (FLA_Obj A)
FLA_Bool FLA_Obj_is_double_precision (FLA_Obj A)
FLA_Bool FLA_Obj_is_scalar (FLA_Obj A)
FLA_Bool FLA_Obj_is_vector (FLA_Obj A)
FLA_Bool FLA_Obj_has_zero_dim (FLA_Obj A)
FLA_Bool FLA_Obj_is_conformal_to (FLA_Trans trans, FLA_Obj A, FLA_Obj B)
FLA_Bool FLA_Obj_is (FLA_Obj A, FLA_Obj B)
FLA_Bool FLA_Obj_equals (FLA_Obj A, FLA_Obj B)
FLA_Error FLA_Obj_set_to_scalar (FLA_Obj alpha, FLA_Obj A)
FLA_Error FLA_Obj_set_diagonal_to_scalar (FLA_Obj alpha, FLA_Obj A)
FLA_Error FLA_Obj_set_to_identity (FLA_Obj A)
FLA_Error FLA_Obj_add_to_diagonal (void *diag_value, FLA_Obj A)
FLA_Error FLA_Obj_shift_diagonal (FLA_Obj sigma, FLA_Obj A)
FLA_Error FLA_Obj_show (char *s1, FLA_Obj A, char *format, char *s2)
FLA_Error FLA_Copy_submatrix_to_global (FLA_Trans trans, dim_t m, dim_t n, void *buffer, dim_t ldim, dim_t i, dim_t j, FLA_Obj obj)
FLA_Error FLA_Copy_global_to_submatrix (FLA_Trans trans, dim_t i, dim_t j, FLA_Obj obj, dim_t m, dim_t n, void *buffer, dim_t ldim)
FLA_Error FLA_Axpy_submatrix_to_global (FLA_Trans trans, FLA_Obj alpha, dim_t m, dim_t n, void *buffer, dim_t ldim, dim_t i, dim_t j, FLA_Obj C)
FLA_Error FLA_Axpy_global_to_submatrix (FLA_Trans trans, FLA_Obj alpha, dim_t i, dim_t j, FLA_Obj C, dim_t m, dim_t n, void *buffer, dim_t ldim)
void FLA_F2C() fla_obj_is_f (F_INT *A, F_INT *B, F_INT *IERROR)
void FLA_F2C() fla_obj_equals_f (F_INT *A, F_INT *B, F_INT *IERROR)
void FLA_F2C() fla_obj_set_to_scalar_f (F_INT *alpha, F_INT *A, F_INT *IERROR)
void FLA_F2C() fla_obj_set_diagonal_to_scalar_f (F_INT *alpha, F_INT *A, F_INT *IERROR)
void FLA_F2C() fla_obj_set_to_identity_f (F_INT *A, F_INT *IERROR)
void FLA_F2C() fla_obj_add_to_diagonal_f (F_INT *value, F_INT *A, F_INT *IERROR)
void FLA_F2C() fla_obj_shift_diagonal_f (F_INT *sigma, F_INT *A, F_INT *IERROR)
void FLA_F2C() fla_obj_show_f (F_INT *s1, F_INT *A, F_INT *format, F_INT *s2, F_INT *IERROR)
FLA_Error FLA_Obj_equals_check (FLA_Obj A, FLA_Obj B)
FLA_Error FLA_Obj_set_to_scalar_check (FLA_Obj alpha, FLA_Obj A)
FLA_Error FLA_Obj_set_diagonal_to_scalar_check (FLA_Obj alpha, FLA_Obj A)
FLA_Error FLA_Obj_set_to_identity_check (FLA_Obj A)
FLA_Error FLA_Obj_add_to_diagonal_check (void *diag_value, FLA_Obj A)
FLA_Error FLA_Obj_shift_diagonal_check (FLA_Obj sigma, FLA_Obj A)
FLA_Error FLA_Obj_scale_diagonal_check (FLA_Obj alpha, FLA_Obj A)
FLA_Error FLA_Copy_submatrix_to_global_check (FLA_Trans trans, dim_t m, dim_t n, void *buffer, dim_t ldim, dim_t i, dim_t j, FLA_Obj obj)
FLA_Error FLA_Copy_global_to_submatrix_check (FLA_Trans trans, dim_t i, dim_t j, FLA_Obj obj, dim_t m, dim_t n, void *buffer, dim_t ldim)
FLA_Error FLA_Axpy_submatrix_to_global_check (FLA_Trans trans, FLA_Obj alpha, dim_t m, dim_t n, void *buffer, dim_t ldim, dim_t i, dim_t j, FLA_Obj C)
FLA_Error FLA_Axpy_global_to_submatrix_check (FLA_Trans trans, FLA_Obj alpha, dim_t i, dim_t j, FLA_Obj C, dim_t m, dim_t n, void *buffer, dim_t ldim)
FLA_Error FLA_Obj_create (FLA_Datatype datatype, dim_t m, dim_t n, FLA_Obj *obj)
FLA_Error FLA_Obj_create_ext (FLA_Datatype datatype, FLA_Elemtype elemtype, dim_t m, dim_t n, dim_t m_global, dim_t n_global, FLA_Obj *obj)
FLA_Error FLA_Obj_create_conf_to (FLA_Trans trans, FLA_Obj old, FLA_Obj *obj)
FLA_Error FLA_Obj_create_without_buffer (FLA_Datatype datatype, dim_t m, dim_t n, FLA_Obj *obj)
FLA_Error FLA_Obj_constant_create (double const_real, FLA_Obj *obj)
FLA_Error FLA_Obj_complex_constant_create (double const_real, double const_imag, FLA_Obj *obj)
FLA_Error FLA_Obj_attach_buffer (void *buffer, dim_t lda, FLA_Obj *obj)
FLA_Error FLA_Obj_free (FLA_Obj *obj)
FLA_Error FLA_Obj_free_without_buffer (FLA_Obj *obj)
FLA_Datatype FLA_Obj_datatype (FLA_Obj obj)
FLA_Elemtype FLA_Obj_elemtype (FLA_Obj obj)
dim_t FLA_Obj_datatype_size (FLA_Datatype datatype)
dim_t FLA_Obj_elem_size (FLA_Obj obj)
dim_t FLA_Obj_length (FLA_Obj obj)
dim_t FLA_Obj_width (FLA_Obj obj)
dim_t FLA_Obj_vector_dim (FLA_Obj obj)
dim_t FLA_Obj_vector_inc (FLA_Obj obj)
dim_t FLA_Obj_min_dim (FLA_Obj obj)
dim_t FLA_Obj_max_dim (FLA_Obj obj)
dim_t FLA_Obj_ldim (FLA_Obj obj)
void * FLA_Obj_buffer (FLA_Obj obj)
void FLA_F2C() fla_obj_create_f (F_INT *datatype, F_INT *m, F_INT *n, F_INT *obj, F_INT *IERROR)
void FLA_F2C() fla_obj_create_conf_to_f (F_INT *trans, F_INT *old, F_INT *obj, F_INT *IERROR)
void FLA_F2C() fla_obj_create_w_out_buff_f (F_INT *datatype, F_INT *m, F_INT *n, F_INT *obj, F_INT *IERROR)
void FLA_F2C() fla_obj_constant_create_f (F_DOUBLE *const_real, F_INT *obj, F_INT *IERROR)
void FLA_F2C() fla_obj_complex_constant_create_f (F_DOUBLE *const_real, F_DOUBLE *const_imag, F_INT *obj, F_INT *IERROR)
void FLA_F2C() fla_obj_attach_buff_f (F_INT *buffer, F_INT *lda, F_INT *obj, F_INT *IERROR)
void FLA_F2C() fla_obj_free_f (F_INT *obj, F_INT *IERROR)
void FLA_F2C() fla_obj_free_w_out_buff_f (F_INT *obj, F_INT *IERROR)
F_INT FLA_F2C() fla_obj_datatype_f (F_INT *obj)
F_INT FLA_F2C() fla_obj_datatype_size_f (F_INT *datatype)
F_INT FLA_F2C() fla_obj_elem_size_f (F_INT *obj)
F_INT FLA_F2C() fla_obj_length_f (F_INT *obj)
F_INT FLA_F2C() fla_obj_width_f (F_INT *obj)
F_INT FLA_F2C() fla_obj_vector_dim_f (F_INT *obj)
F_INT FLA_F2C() fla_obj_vector_inc_f (F_INT *obj)
F_INT FLA_F2C() fla_obj_min_dim_f (F_INT *obj)
F_INT FLA_F2C() fla_obj_max_dim_f (F_INT *obj)
F_INT FLA_F2C() fla_obj_ldim_f (F_INT *obj)
FLA_Error FLA_Obj_free_task (FLA_Obj A, void *cntl)
FLA_Error FLA_Obj_create_ext_check (FLA_Datatype datatype, FLA_Elemtype elemtype, dim_t m, dim_t n, dim_t m_inner, dim_t n_inner, FLA_Obj *obj)
FLA_Error FLA_Obj_create_conf_to_check (FLA_Trans trans, FLA_Obj obj_old, FLA_Obj *obj)
FLA_Error FLA_Obj_create_without_buffer_check (FLA_Datatype datatype, dim_t m, dim_t n, FLA_Obj *obj)
FLA_Error FLA_Obj_constant_create_check (double const_real, FLA_Obj *obj)
FLA_Error FLA_Obj_complex_constant_create_check (double const_real, double const_imag, FLA_Obj *obj)
FLA_Error FLA_Obj_attach_buffer_check (void *buffer, dim_t ldim, FLA_Obj *obj)
FLA_Error FLA_Obj_free_check (FLA_Obj *obj)
FLA_Error FLA_Obj_free_without_buffer_check (FLA_Obj *obj)
FLA_Error FLA_Obj_elem_size_check (FLA_Obj obj)
FLA_Error FLA_Obj_buffer_check (FLA_Obj obj)
void FLA_Param_map_to_blas_trans (FLA_Trans trans, void *blas_trans)
void FLA_Param_map_to_blas_uplo (FLA_Uplo uplo, void *blas_uplo)
void FLA_Param_map_to_blas_side (FLA_Uplo side, void *blas_side)
void FLA_Param_map_to_blas_diag (FLA_Diag diag, void *blas_diag)
void FLA_Param_map_to_lapack_direct (FLA_Direct direct, void *lapack_direct)
void FLA_Param_map_to_lapack_storev (FLA_Store storev, void *lapack_storev)
FLA_Error FLA_Merge_2x2 (FLA_Obj A11, FLA_Obj A12, FLA_Obj A21, FLA_Obj A22, FLA_Obj *A)
FLA_Error FLA_Merge_2x1 (FLA_Obj AT, FLA_Obj AB, FLA_Obj *A)
FLA_Error FLA_Merge_1x2 (FLA_Obj AL, FLA_Obj AR, FLA_Obj *A)
FLA_Error FLA_Part_2x2 (FLA_Obj A, FLA_Obj *A11, FLA_Obj *A12, FLA_Obj *A21, FLA_Obj *A22, dim_t mb, dim_t nb, FLA_Quadrant quadrant)
FLA_Error FLA_Part_2x1 (FLA_Obj A, FLA_Obj *A1, FLA_Obj *A2, dim_t mb, FLA_Side side)
FLA_Error FLA_Part_1x2 (FLA_Obj A, FLA_Obj *A1, FLA_Obj *A2, dim_t nb, FLA_Side side)
FLA_Error FLA_Repart_2x2_to_3x3 (FLA_Obj ATL, FLA_Obj ATR, FLA_Obj *A00, FLA_Obj *A01, FLA_Obj *A02, FLA_Obj *A10, FLA_Obj *A11, FLA_Obj *A12, FLA_Obj ABL, FLA_Obj ABR, FLA_Obj *A20, FLA_Obj *A21, FLA_Obj *A22, dim_t mb, dim_t nb, FLA_Quadrant quadrant)
FLA_Error FLA_Repart_2x1_to_3x1 (FLA_Obj AT, FLA_Obj *A0, FLA_Obj *A1, FLA_Obj AB, FLA_Obj *A2, dim_t mb, FLA_Side side)
FLA_Error FLA_Repart_1x2_to_1x3 (FLA_Obj AL, FLA_Obj AR, FLA_Obj *A0, FLA_Obj *A1, FLA_Obj *A2, dim_t nb, FLA_Side side)
FLA_Error FLA_Cont_with_3x3_to_2x2 (FLA_Obj *ATL, FLA_Obj *ATR, FLA_Obj A00, FLA_Obj A01, FLA_Obj A02, FLA_Obj A10, FLA_Obj A11, FLA_Obj A12, FLA_Obj *ABL, FLA_Obj *ABR, FLA_Obj A20, FLA_Obj A21, FLA_Obj A22, FLA_Quadrant quadrant)
FLA_Error FLA_Cont_with_3x1_to_2x1 (FLA_Obj *AT, FLA_Obj A0, FLA_Obj A1, FLA_Obj *AB, FLA_Obj A2, FLA_Side side)
FLA_Error FLA_Cont_with_1x3_to_1x2 (FLA_Obj *AL, FLA_Obj *AR, FLA_Obj A0, FLA_Obj A1, FLA_Obj A2, FLA_Side side)
FLA_Error FLA_Part_2x2_check (FLA_Obj A, FLA_Obj *A11, FLA_Obj *A12, FLA_Obj *A21, FLA_Obj *A22, dim_t mb, dim_t nb, FLA_Quadrant quadrant)
FLA_Error FLA_Part_2x1_check (FLA_Obj A, FLA_Obj *A1, FLA_Obj *A2, dim_t mb, FLA_Side side)
FLA_Error FLA_Part_1x2_check (FLA_Obj A, FLA_Obj *A1, FLA_Obj *A2, dim_t nb, FLA_Side side)
FLA_Error FLA_Repart_2x2_to_3x3_check (FLA_Obj ATL, FLA_Obj ATR, FLA_Obj *A00, FLA_Obj *A01, FLA_Obj *A02, FLA_Obj *A10, FLA_Obj *A11, FLA_Obj *A12, FLA_Obj ABL, FLA_Obj ABR, FLA_Obj *A20, FLA_Obj *A21, FLA_Obj *A22, dim_t mb, dim_t nb, FLA_Quadrant quadrant)
FLA_Error FLA_Repart_2x1_to_3x1_check (FLA_Obj AT, FLA_Obj *A0, FLA_Obj *A1, FLA_Obj AB, FLA_Obj *A2, dim_t mb, FLA_Side side)
FLA_Error FLA_Repart_1x2_to_1x3_check (FLA_Obj AL, FLA_Obj AR, FLA_Obj *A0, FLA_Obj *A1, FLA_Obj *A2, dim_t nb, FLA_Side side)
FLA_Error FLA_Cont_with_3x3_to_2x2_check (FLA_Obj *ATL, FLA_Obj *ATR, FLA_Obj A00, FLA_Obj A01, FLA_Obj A02, FLA_Obj A10, FLA_Obj A11, FLA_Obj A12, FLA_Obj *ABL, FLA_Obj *ABR, FLA_Obj A20, FLA_Obj A21, FLA_Obj A22, FLA_Quadrant quadrant)
FLA_Error FLA_Cont_with_3x1_to_2x1_check (FLA_Obj *AT, FLA_Obj A0, FLA_Obj A1, FLA_Obj *AB, FLA_Obj A2, FLA_Side side)
FLA_Error FLA_Cont_with_1x3_to_1x2_check (FLA_Obj *AL, FLA_Obj *AR, FLA_Obj A0, FLA_Obj A1, FLA_Obj A2, FLA_Side side)
FLA_Error FLA_Merge_2x2_check (FLA_Obj A11, FLA_Obj A12, FLA_Obj A21, FLA_Obj A22, FLA_Obj *A)
FLA_Error FLA_Merge_2x1_check (FLA_Obj AT, FLA_Obj AB, FLA_Obj *A)
FLA_Error FLA_Merge_1x2_check (FLA_Obj AL, FLA_Obj AR, FLA_Obj *A)


Function Documentation

void FLA_Abort ( void   ) 

Referenced by fla_abort_f(), FLA_Check_error_code_helper(), FLASH_Apply_Q_UT_inc_create_workspace(), FLASH_FS_incpiv(), FLASH_LU_incpiv(), FLASH_LU_incpiv_create_hier_matrices(), and FLASH_QR_UT_inc_create_hier_matrices().

00241 {
00242     fprintf( stderr, "libflame: Aborting.\n");
00243     //raise( SIGABRT );
00244     abort();
00245 }

void FLA_F2C() fla_abort_f ( void   ) 

References FLA_Abort().

00248 {
00249     FLA_Abort();
00250 }

FLA_Error FLA_Axpy_global_to_submatrix ( FLA_Trans  trans,
FLA_Obj  alpha,
dim_t  i,
dim_t  j,
FLA_Obj  C,
dim_t  m,
dim_t  n,
void *  buffer,
dim_t  ldim 
)

References FLA_Axpy_global_to_submatrix_check(), FLA_Axpyt_external(), FLA_Check_error_level(), FLA_Obj_attach_buffer(), FLA_Obj_create_without_buffer(), FLA_Obj_datatype(), FLA_Obj_free_without_buffer(), and FLA_Part_2x2().

01157 {
01158   FLA_Obj  Y;
01159   FLA_Obj  XTL, XTR, 
01160            XBL, Xij;
01161 
01162   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
01163     FLA_Axpy_global_to_submatrix_check( trans, alpha, i, j, X, m, n, Y_buffer, ldim );
01164 
01165   FLA_Part_2x2( X,  &XTL, &XTR,
01166                     &XBL, &Xij,     i, j, FLA_TL );
01167 
01168   FLA_Obj_create_without_buffer( FLA_Obj_datatype( X ), m, n, &Y );
01169   FLA_Obj_attach_buffer( Y_buffer, ldim, &Y );
01170 
01171   FLA_Axpyt_external( trans, alpha, Xij, Y );
01172 
01173   FLA_Obj_free_without_buffer( &Y );
01174 
01175   return FLA_SUCCESS;
01176 }

FLA_Error FLA_Axpy_global_to_submatrix_check ( FLA_Trans  trans,
FLA_Obj  alpha,
dim_t  i,
dim_t  j,
FLA_Obj  C,
dim_t  m,
dim_t  n,
void *  buffer,
dim_t  ldim 
)

References FLA_Check_consistent_object_datatype(), FLA_Check_floating_object(), FLA_Check_if_scalar(), FLA_Check_m_against_ldim(), FLA_Check_nonconstant_object(), FLA_Check_null_pointer(), FLA_Check_object_dims(), FLA_Check_submatrix_dims_and_offset(), and FLA_Check_valid_real_trans().

Referenced by FLA_Axpy_global_to_submatrix().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_valid_real_trans( trans );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_floating_object( A );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_nonconstant_object( A );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_consistent_object_datatype( A, alpha );
00049   FLA_Check_error_code( e_val );
00050 
00051   e_val = FLA_Check_if_scalar( alpha );
00052   FLA_Check_error_code( e_val );
00053 
00054   e_val = FLA_Check_null_pointer( B_buffer );
00055   FLA_Check_error_code( e_val );
00056 
00057   e_val = FLA_Check_object_dims( trans, m, n, A );
00058   FLA_Check_error_code( e_val );
00059 
00060   e_val = FLA_Check_m_against_ldim( m, ldim );
00061   FLA_Check_error_code( e_val );
00062 
00063   if ( trans == FLA_NO_TRANSPOSE )
00064   {
00065     e_val = FLA_Check_submatrix_dims_and_offset( m, n, i, j, A );
00066     FLA_Check_error_code( e_val );
00067   }
00068   else
00069   {
00070     e_val = FLA_Check_submatrix_dims_and_offset( n, m, i, j, A );
00071     FLA_Check_error_code( e_val );
00072   }
00073 
00074   e_val = FLA_Check_nonconstant_object( A );
00075   FLA_Check_error_code( e_val );
00076 
00077   return FLA_SUCCESS;
00078 }

FLA_Error FLA_Axpy_submatrix_to_global ( FLA_Trans  trans,
FLA_Obj  alpha,
dim_t  m,
dim_t  n,
void *  buffer,
dim_t  ldim,
dim_t  i,
dim_t  j,
FLA_Obj  C 
)

References FLA_Axpy_submatrix_to_global_check(), FLA_Axpyt_external(), FLA_Check_error_level(), FLA_Obj_attach_buffer(), FLA_Obj_create_without_buffer(), FLA_Obj_datatype(), FLA_Obj_free_without_buffer(), and FLA_Part_2x2().

01128 {
01129   FLA_Obj  X;
01130   FLA_Obj  YTL, YTR, 
01131            YBL, Yij;
01132 
01133   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
01134     FLA_Axpy_submatrix_to_global_check( trans, alpha, m, n, X_buffer, ldim, i, j, Y );
01135 
01136   FLA_Part_2x2( Y,  &YTL, &YTR,
01137                     &YBL, &Yij,     i, j, FLA_TL );
01138 
01139   FLA_Obj_create_without_buffer( FLA_Obj_datatype( Y ), m, n, &X );
01140   FLA_Obj_attach_buffer( X_buffer, ldim, &X );
01141 
01142   FLA_Axpyt_external( trans, alpha, X, Yij );
01143 
01144   FLA_Obj_free_without_buffer( &X );
01145 
01146   return FLA_SUCCESS;
01147 }

FLA_Error FLA_Axpy_submatrix_to_global_check ( FLA_Trans  trans,
FLA_Obj  alpha,
dim_t  m,
dim_t  n,
void *  buffer,
dim_t  ldim,
dim_t  i,
dim_t  j,
FLA_Obj  C 
)

References FLA_Check_consistent_object_datatype(), FLA_Check_floating_object(), FLA_Check_if_scalar(), FLA_Check_m_against_ldim(), FLA_Check_nonconstant_object(), FLA_Check_null_pointer(), FLA_Check_object_dims(), FLA_Check_submatrix_dims_and_offset(), and FLA_Check_valid_real_trans().

Referenced by FLA_Axpy_submatrix_to_global().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_valid_real_trans( trans );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_floating_object( B );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_nonconstant_object( B );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_consistent_object_datatype( B, alpha );
00049   FLA_Check_error_code( e_val );
00050 
00051   e_val = FLA_Check_if_scalar( alpha );
00052   FLA_Check_error_code( e_val );
00053 
00054   e_val = FLA_Check_null_pointer( A_buffer );
00055   FLA_Check_error_code( e_val );
00056 
00057   e_val = FLA_Check_object_dims( trans, m, n, B );
00058   FLA_Check_error_code( e_val );
00059 
00060   e_val = FLA_Check_m_against_ldim( m, ldim );
00061   FLA_Check_error_code( e_val );
00062 
00063   if ( trans == FLA_NO_TRANSPOSE )
00064   {
00065     e_val = FLA_Check_submatrix_dims_and_offset( m, n, i, j, B );
00066     FLA_Check_error_code( e_val );
00067   }
00068   else
00069   {
00070     e_val = FLA_Check_submatrix_dims_and_offset( n, m, i, j, B );
00071     FLA_Check_error_code( e_val );
00072   }
00073 
00074   e_val = FLA_Check_nonconstant_object( B );
00075   FLA_Check_error_code( e_val );
00076 
00077   return FLA_SUCCESS;
00078 }

fla_blocksize_t* FLA_Blocksize_create ( dim_t  b_s,
dim_t  b_d,
dim_t  b_c,
dim_t  b_z 
)

fla_blocksize_t* FLA_Blocksize_create_copy ( fla_blocksize_t bp  ) 

References FLA_Blocksize_s::c, FLA_Blocksize_s::d, FLA_Check_error_level(), FLA_Check_null_pointer(), FLA_malloc(), FLA_Blocksize_s::s, and FLA_Blocksize_s::z.

Referenced by FLA_Chol_cntl_init(), FLA_LU_nopiv_cntl_init(), and FLA_LU_piv_cntl_init().

00106 {
00107     fla_blocksize_t* bp_copy;
00108     FLA_Error        e_val;
00109     
00110     // Verify that the given blocksize pointer is valid.
00111     if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00112     {
00113         e_val = FLA_Check_null_pointer( bp );
00114         FLA_Check_error_code( e_val );
00115     }
00116 
00117     // Allocate memory for the blocksize structure.
00118     bp_copy = ( fla_blocksize_t* ) FLA_malloc( sizeof(fla_blocksize_t) );
00119     
00120     // Assign the provided blocksize object's values into the corresponding
00121     // fields of the new object.
00122     bp_copy->s = bp->s;
00123     bp_copy->d = bp->d;
00124     bp_copy->c = bp->c;
00125     bp_copy->z = bp->z;
00126     
00127     // Return a pointer to the structure.
00128     return bp_copy;
00129 }

dim_t FLA_Blocksize_extract ( FLA_Datatype  dt,
fla_blocksize_t bp 
)

References FLA_Blocksize_s::c, FLA_Blocksize_s::d, FLA_Check_error_level(), FLA_Check_null_pointer(), FLA_Blocksize_s::s, and FLA_Blocksize_s::z.

Referenced by FLA_Check_blocksize_object(), FLA_Determine_blocksize(), FLA_Gemm(), FLA_Hemm(), FLA_Her2k(), FLA_Herk(), FLA_SPDinv(), FLA_Symm(), FLA_Syr2k(), FLA_Syrk(), FLA_Trinv(), FLA_Trmm(), FLA_Trsm(), and FLA_Ttmm().

00139 {
00140     dim_t     b = 0;
00141     FLA_Error e_val;
00142 
00143     // Verify that the given blocksize pointer is valid.
00144     if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00145     {
00146         e_val = FLA_Check_null_pointer( bp );
00147         FLA_Check_error_code( e_val );
00148     }
00149 
00150     if      ( dt == FLA_FLOAT )
00151         b = bp->s;
00152     else if ( dt == FLA_DOUBLE )
00153         b = bp->d;
00154     else if ( dt == FLA_COMPLEX )
00155         b = bp->c;
00156     else if ( dt == FLA_DOUBLE_COMPLEX )
00157         b = bp->z;
00158     
00159     // Return the blocksize corresponding with the datatype.
00160     return b;
00161 }

void FLA_Blocksize_free ( fla_blocksize_t bp  ) 

void FLA_Blocksize_scale ( fla_blocksize_t bp,
double  factor 
)

References FLA_Blocksize_s::c, FLA_Blocksize_s::d, FLA_Check_error_level(), FLA_Check_null_pointer(), FLA_Blocksize_s::s, and FLA_Blocksize_s::z.

Referenced by FLA_Apply_Q_UT_cntl_init(), FLA_Apply_Q_UT_UD_cntl_init(), FLA_Chol_cntl_init(), FLA_LQ_UT_cntl_init(), FLA_LU_nopiv_cntl_init(), FLA_LU_piv_cntl_init(), FLA_QR_UT_cntl_init(), and FLA_QR_UT_UD_cntl_init().

00087 {
00088     FLA_Error e_val;
00089     
00090     // Verify that the given blocksize pointer is valid.
00091     if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00092     {
00093         e_val = FLA_Check_null_pointer( bp );
00094         FLA_Check_error_code( e_val );
00095     }
00096     
00097     // Assign the provided blocksize values into the corresponding fields.
00098     bp->s = ( dim_t )( ( double ) bp->s * factor );
00099     bp->d = ( dim_t )( ( double ) bp->d * factor );
00100     bp->c = ( dim_t )( ( double ) bp->c * factor );
00101     bp->z = ( dim_t )( ( double ) bp->z * factor );
00102 }

void FLA_Blocksize_set ( fla_blocksize_t bp,
dim_t  b_s,
dim_t  b_d,
dim_t  b_c,
dim_t  b_z 
)

References FLA_Blocksize_s::c, FLA_Blocksize_s::d, FLA_Blocksize_s::s, and FLA_Blocksize_s::z.

Referenced by FLA_Apply_Q_UT(), FLA_LQ_UT(), FLA_QR_UT(), FLASH_Apply_Q_UT(), FLASH_Apply_Q_UT_inc(), FLASH_Apply_Q_UT_UD(), FLASH_QR_UT_inc_noopt(), FLASH_QR_UT_inc_opt1(), and FLASH_QR_UT_UD().

00077 {
00078     // Assign the provided blocksize values into the corresponding fields.
00079     if ( b_s != 0 ) bp->s = b_s;
00080     if ( b_d != 0 ) bp->d = b_d;
00081     if ( b_c != 0 ) bp->c = b_c;
00082     if ( b_z != 0 ) bp->z = b_z;
00083 }

FLA_Error FLA_Check_adjacent_objects_1x2 ( FLA_Obj  AL,
FLA_Obj  AR 
)

References FLA_Obj_length(), FLA_Obj_width(), FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Merge_1x2_check().

00641 {
00642   FLA_Error e_val = FLA_SUCCESS;
00643 
00644   if ( FLA_Obj_length( AL ) != FLA_Obj_length( AR ) )
00645     e_val = FLA_ADJACENT_OBJECT_DIM_MISMATCH;
00646 
00647   if ( AR.offn != AL.offn + FLA_Obj_width( AL ) )
00648     e_val = FLA_OBJECTS_NOT_HORIZONTALLY_ADJ;
00649 
00650   if ( AL.offm != AR.offm )
00651     e_val = FLA_OBJECTS_NOT_HORIZONTALLY_ALIGNED;
00652 
00653   return e_val;
00654 }

FLA_Error FLA_Check_adjacent_objects_2x1 ( FLA_Obj  AT,
FLA_Obj  AB 
)

References FLA_Obj_length(), FLA_Obj_width(), FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Merge_2x1_check().

00625 {
00626   FLA_Error e_val = FLA_SUCCESS;
00627 
00628   if ( FLA_Obj_width( AT ) != FLA_Obj_width( AB ) )
00629     e_val = FLA_ADJACENT_OBJECT_DIM_MISMATCH;
00630 
00631   if ( AB.offm != AT.offm + FLA_Obj_length( AT ) )
00632     e_val = FLA_OBJECTS_NOT_VERTICALLY_ADJ;
00633 
00634   if ( AB.offn != AT.offn )
00635     e_val = FLA_OBJECTS_NOT_VERTICALLY_ALIGNED;
00636 
00637   return e_val;
00638 }

FLA_Error FLA_Check_adjacent_objects_2x2 ( FLA_Obj  A11,
FLA_Obj  A12,
FLA_Obj  A21,
FLA_Obj  A22 
)

References FLA_Obj_length(), FLA_Obj_width(), FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Merge_2x2_check().

00595 {
00596   FLA_Error e_val = FLA_SUCCESS;
00597 
00598   if ( FLA_Obj_length( ATL ) != FLA_Obj_length( ATR ) || 
00599        FLA_Obj_length( ABL ) != FLA_Obj_length( ABR ) ||
00600        FLA_Obj_width( ATL )  != FLA_Obj_width( ABL )  ||
00601        FLA_Obj_width( ATR )  != FLA_Obj_width( ABR ) )
00602     e_val = FLA_ADJACENT_OBJECT_DIM_MISMATCH;
00603 
00604   if ( ATL.offm != ABL.offm + FLA_Obj_length( ABL ) ||
00605        ATR.offm != ABR.offm + FLA_Obj_length( ABL ) )
00606     e_val = FLA_OBJECTS_NOT_VERTICALLY_ADJ;
00607 
00608   if ( ATL.offn != ABL.offn ||
00609        ATR.offn != ABR.offn )
00610     e_val = FLA_OBJECTS_NOT_VERTICALLY_ALIGNED;
00611 
00612   if ( ATL.offn != ATR.offn + FLA_Obj_width( ATR ) ||
00613        ABL.offn != ABR.offn + FLA_Obj_width( ATR ) )
00614     e_val = FLA_OBJECTS_NOT_HORIZONTALLY_ADJ;
00615 
00616   if ( ATL.offm != ATR.offm ||
00617        ABL.offm != ABR.offm )
00618     e_val = FLA_OBJECTS_NOT_HORIZONTALLY_ALIGNED;
00619 
00620   return e_val;
00621 }

FLA_Error FLA_Check_attempted_repart_1x2 ( FLA_Obj  A_side,
dim_t  b_n 
)

References FLA_Obj_width().

Referenced by FLA_Repart_1x2_to_1x3_check().

01109 {
01110   FLA_Error e_val = FLA_SUCCESS;
01111 
01112   if ( b_n > FLA_Obj_width( A_side ) )
01113     e_val = FLA_ATTEMPTED_OVER_REPART_1X2;
01114 
01115   return e_val;
01116 }

FLA_Error FLA_Check_attempted_repart_2x1 ( FLA_Obj  A_side,
dim_t  b_m 
)

References FLA_Obj_length().

Referenced by FLA_Repart_2x1_to_3x1_check().

01099 {
01100   FLA_Error e_val = FLA_SUCCESS;
01101 
01102   if ( b_m > FLA_Obj_length( A_side ) )
01103     e_val = FLA_ATTEMPTED_OVER_REPART_2X1;
01104 
01105   return e_val;
01106 }

FLA_Error FLA_Check_attempted_repart_2x2 ( FLA_Obj  A_quad,
dim_t  b_m,
dim_t  b_n 
)

References FLA_Obj_length(), and FLA_Obj_width().

Referenced by FLA_Repart_2x2_to_3x3_check().

01086 {
01087   FLA_Error e_val = FLA_SUCCESS;
01088 
01089   if ( b_m > FLA_Obj_length( A_quad ) )
01090     e_val = FLA_ATTEMPTED_OVER_REPART_2X2;
01091 
01092   if ( b_n > FLA_Obj_width( A_quad ) )
01093     e_val = FLA_ATTEMPTED_OVER_REPART_2X2;
01094 
01095   return e_val;
01096 }

FLA_Error FLA_Check_base_buffer_mismatch ( FLA_Obj  A,
FLA_Obj  B 
)

References FLA_Obj_view::base, and FLA_Obj_struct::buffer.

Referenced by FLA_Merge_1x2_check(), FLA_Merge_2x1_check(), and FLA_Merge_2x2_check().

00584 {
00585   FLA_Error e_val = FLA_SUCCESS;
00586 
00587   if ( A.base->buffer != B.base->buffer )
00588     e_val = FLA_OBJECT_BASE_BUFFER_MISMATCH;
00589 
00590   return e_val;
00591 }

FLA_Error FLA_Check_blocksize_object ( FLA_Datatype  datatype,
fla_blocksize_t bp 
)

References FLA_Blocksize_extract().

00667 {
00668   FLA_Error e_val = FLA_SUCCESS;
00669   dim_t     b;
00670 
00671   b = FLA_Blocksize_extract( datatype, bp );
00672   if ( b <= 0 )
00673     e_val = FLA_INVALID_BLOCKSIZE_OBJ;
00674 
00675   return e_val;
00676 }

FLA_Error FLA_Check_blocksize_value ( dim_t  b  ) 

Referenced by FLA_Determine_blocksize().

00657 {
00658   FLA_Error e_val = FLA_SUCCESS;
00659 
00660   if ( b <= 0 )
00661     e_val = FLA_INVALID_BLOCKSIZE_VALUE;
00662 
00663   return e_val;
00664 }

FLA_Error FLA_Check_chol_failure ( FLA_Error  r_val  ) 

Referenced by FLA_SPDinv_internal().

00815 {
00816   FLA_Error e_val = FLA_SUCCESS;
00817 
00818   if ( r_val > 0 )
00819     e_val = FLA_CHOL_FAILED_MATRIX_NOT_SPD;
00820 
00821   return e_val;
00822 }

FLA_Error FLA_Check_close_result ( int  close_r_val  ) 

00699 {
00700   FLA_Error e_val = FLA_SUCCESS;
00701 
00702   if ( close_r_val == -1 )
00703     e_val = FLA_CLOSE_RETURNED_ERROR;
00704 
00705   return e_val;
00706 }

FLA_Error FLA_Check_complex_datatype ( FLA_Datatype  datatype  ) 

Referenced by FLA_Check_complex_object().

00226 {
00227   FLA_Error e_val = FLA_SUCCESS;
00228 
00229   if ( datatype != FLA_CONSTANT &&
00230        datatype != FLA_COMPLEX &&
00231        datatype != FLA_DOUBLE_COMPLEX )
00232     e_val = FLA_INVALID_COMPLEX_DATATYPE;
00233 
00234   return e_val;
00235 }

FLA_Error FLA_Check_complex_object ( FLA_Obj  A  ) 

References FLA_Check_complex_datatype(), and FLA_Obj_datatype().

Referenced by FLA_Hemm_check(), FLA_Hemv_check(), FLA_Hemvc_check(), FLA_Her2_check(), FLA_Her2c_check(), FLA_Her2k_check(), FLA_Her_check(), FLA_Herc_check(), FLA_Herk_check(), and FLA_Random_herm_matrix_check().

00277 {
00278   FLA_Error    e_val = FLA_SUCCESS;
00279   FLA_Datatype datatype;
00280 
00281   datatype = FLA_Obj_datatype( A );
00282 
00283   if ( FLA_Check_complex_datatype( datatype ) != FLA_SUCCESS )
00284     e_val = FLA_OBJECT_NOT_COMPLEX;
00285 
00286   return e_val;
00287 }

FLA_Error FLA_Check_conformal_dims ( FLA_Trans  trans,
FLA_Obj  A,
FLA_Obj  B 
)

References FLA_Obj_length(), and FLA_Obj_width().

Referenced by FLA_Apply_Q_UT_inc_check(), FLA_Apply_Q_UT_inc_internal_check(), FLA_Apply_Q_UT_UD_check(), FLA_Apply_Q_UT_UD_internal_check(), FLA_Axpy_check(), FLA_Axpy_internal_check(), FLA_Axpys_check(), FLA_Axpyt_check(), FLA_Copy_check(), FLA_Copy_internal_check(), FLA_Copyr_check(), FLA_Copyt_check(), FLA_Max_elemwise_diff_check(), FLA_Obj_equals_check(), FLA_QR_UT_copy_internal_check(), FLA_QR_UT_inc_check(), FLA_Swap_check(), and FLA_Swapt_check().

00385 {
00386   FLA_Error e_val = FLA_SUCCESS;
00387 
00388   if ( trans == FLA_NO_TRANSPOSE || trans == FLA_CONJ_NO_TRANSPOSE )
00389   {
00390     if ( FLA_Obj_length( A ) != FLA_Obj_length( B ) )
00391       e_val = FLA_NONCONFORMAL_DIMENSIONS;
00392 
00393     if ( FLA_Obj_width( A ) != FLA_Obj_width( B ) )
00394       e_val = FLA_NONCONFORMAL_DIMENSIONS;
00395   }
00396   else
00397   {
00398     if ( FLA_Obj_width( A ) != FLA_Obj_length( B ) )
00399       e_val = FLA_NONCONFORMAL_DIMENSIONS;
00400 
00401     if ( FLA_Obj_length( A ) != FLA_Obj_width( B ) )
00402       e_val = FLA_NONCONFORMAL_DIMENSIONS;
00403   }
00404 
00405   return e_val;
00406 }

FLA_Error FLA_Check_conj_and_datatype ( FLA_Conj  conj,
FLA_Obj  A 
)

References FLA_Obj_is_complex().

00906 {
00907   FLA_Error e_val = FLA_SUCCESS;
00908 
00909   if ( conj == FLA_CONJUGATE ){
00910     if ( FLA_Obj_is_complex( A ) == FALSE )
00911       e_val = FLA_INVALID_CONJ_GIVEN_DATATYPE;
00912   }
00913 
00914   return e_val;
00915 }

FLA_Error FLA_Check_conj_trans_and_datatype ( FLA_Trans  trans,
FLA_Obj  A 
)

References FLA_Obj_is_complex().

00489 {
00490   FLA_Error e_val = FLA_SUCCESS;
00491 
00492   if ( trans == FLA_CONJ_TRANSPOSE || trans == FLA_CONJ_NO_TRANSPOSE ){
00493     if ( FLA_Obj_is_complex( A ) == FALSE )
00494       e_val = FLA_INVALID_TRANS_GIVEN_DATATYPE;
00495   }
00496 
00497   return e_val;
00498 }

FLA_Error FLA_Check_consistent_datatype ( FLA_Datatype  datatype,
FLA_Obj  A 
)

References FLA_Obj_datatype().

00343 {
00344   FLA_Error e_val = FLA_SUCCESS;
00345 
00346   if ( FLA_Obj_datatype( A ) != FLA_CONSTANT &&
00347                     datatype != FLA_CONSTANT )
00348     if ( FLA_Obj_datatype( A ) != datatype )
00349       e_val = FLA_INCONSISTENT_DATATYPES;
00350 
00351   return e_val;
00352 }

FLA_Error FLA_Check_consistent_object_datatype ( FLA_Obj  A,
FLA_Obj  B 
)

FLA_Error FLA_Check_divide_by_zero ( FLA_Obj  alpha  ) 

References FLA_Obj_equals(), and FLA_ZERO.

Referenced by FLA_Inv_scal_check(), and FLA_Inv_scalc_check().

00999 {
01000   FLA_Error e_val = FLA_SUCCESS;
01001 
01002   if ( FLA_Obj_equals( alpha, FLA_ZERO ) )
01003     e_val = FLA_DIVIDE_BY_ZERO;
01004 
01005   return e_val;
01006 }

FLA_Error FLA_Check_equal_vector_lengths ( FLA_Obj  x,
FLA_Obj  y 
)

References FLA_Obj_length(), and FLA_Obj_width().

Referenced by FLA_Axpy_check(), FLA_Axpyt_check(), FLA_Copy_check(), FLA_Copyt_check(), FLA_Dot2cs_check(), FLA_Dot2s_check(), FLA_Dot_check(), FLA_Dotc_check(), FLA_Dotcs_check(), and FLA_Dots_check().

00469 {
00470   FLA_Error e_val = FLA_SUCCESS;
00471 
00472   if ( FLA_Obj_length( x ) == 1 )
00473   {
00474     if ( FLA_Obj_width( x ) != FLA_Obj_length( y ) &&
00475          FLA_Obj_width( x ) != FLA_Obj_width( y ) )
00476       e_val = FLA_UNEQUAL_VECTOR_LENGTHS;
00477   }
00478   else if ( FLA_Obj_width( x ) == 1 )
00479   {
00480     if ( FLA_Obj_length( x ) != FLA_Obj_length( y ) &&
00481          FLA_Obj_length( x ) != FLA_Obj_width( y ) )
00482       e_val = FLA_UNEQUAL_VECTOR_LENGTHS;
00483   }
00484 
00485   return e_val;
00486 }

void FLA_Check_error_code_helper ( int  code,
char *  file,
int  line 
)

References FLA_Abort(), FLA_Error_string_for_code(), and FLA_Print_message().

00061 {
00062   if ( code == FLA_SUCCESS )
00063     return;
00064 
00065   if ( FLA_ERROR_CODE_MAX <= code && code <= FLA_ERROR_CODE_MIN )
00066   {
00067     FLA_Print_message( FLA_Error_string_for_code( code ),
00068                        file, line );
00069     FLA_Abort();
00070   }
00071   else
00072   {
00073     FLA_Print_message( FLA_Error_string_for_code( FLA_UNDEFINED_ERROR_CODE ),
00074                        file, line );
00075     FLA_Abort();
00076   }
00077 }

unsigned int FLA_Check_error_level ( void   ) 

Referenced by FLA_Absolute_square(), FLA_Accum_T_UT(), FLA_Accum_T_UT_unb_external(), FLA_Apply_househ2_UT(), FLA_Apply_househ2_UT_opt(), FLA_Apply_Q_blk_external(), FLA_Apply_Q_unb_external(), FLA_Apply_Q_UT(), FLA_Apply_Q_UT_inc_internal(), FLA_Apply_Q_UT_internal(), FLA_Apply_Q_UT_UD_internal(), FLA_Asum_external(), FLA_Axpy(), FLA_Axpy_external(), FLA_Axpy_global_to_submatrix(), FLA_Axpy_internal(), FLA_Axpy_submatrix_to_global(), FLA_Axpys_external(), FLA_Axpyt_external(), FLA_Blocksize_create_copy(), FLA_Blocksize_extract(), FLA_Blocksize_scale(), FLA_Chol(), FLA_Chol_blk_external(), FLA_Chol_internal(), FLA_Chol_unb_external(), FLA_Conjugate(), FLA_Conjugate_r(), FLA_Cont_with_1x3_to_1x2(), FLA_Cont_with_3x1_to_2x1(), FLA_Cont_with_3x3_to_2x2(), FLA_Copy(), FLA_Copy_external(), FLA_Copy_global_to_submatrix(), FLA_Copy_internal(), FLA_Copy_submatrix_to_global(), FLA_Copyr_external(), FLA_Copyt_external(), FLA_Determine_blocksize(), FLA_Dot2cs_external(), FLA_Dot2s_external(), FLA_Dot_external(), FLA_Dotc_external(), FLA_Dotcs_external(), FLA_Dots_external(), FLA_Form_perm_matrix(), FLA_Gemm(), FLA_Gemm_external(), FLA_Gemm_internal(), FLA_Gemv(), FLA_Gemv_external(), FLA_Gemv_internal(), FLA_Gemvc_external(), FLA_Ger_external(), FLA_Gerc_external(), FLA_Hemm(), FLA_Hemm_external(), FLA_Hemm_internal(), FLA_Hemv_external(), FLA_Hemvc_external(), FLA_Her2_external(), FLA_Her2c_external(), FLA_Her2k(), FLA_Her2k_external(), FLA_Her2k_internal(), FLA_Her_external(), FLA_Herc_external(), FLA_Herk(), FLA_Herk_external(), FLA_Herk_internal(), FLA_Hermitianize(), FLA_Hess_blk_external(), FLA_Hess_internal(), FLA_Hess_unb_external(), FLA_Iamax_external(), FLA_Inv_scal_external(), FLA_Inv_scalc_external(), FLA_Invert(), FLA_LQ_blk_external(), FLA_LQ_unb_external(), FLA_LQ_UT(), FLA_LQ_UT_Accum_T_unb_external(), FLA_LQ_UT_blk_external(), FLA_LQ_UT_internal(), FLA_LQ_UT_recover_tau(), FLA_LQ_UT_unb_external(), FLA_LU_nopiv(), FLA_LU_nopiv_blk_external(), FLA_LU_nopiv_internal(), FLA_LU_nopiv_unb_external(), FLA_LU_piv(), FLA_LU_piv_blk_external(), FLA_LU_piv_internal(), FLA_LU_piv_unb_external(), FLA_malloc(), FLA_Max_abs_value(), FLA_Max_elemwise_diff(), FLA_Merge_1x2(), FLA_Merge_2x1(), FLA_Merge_2x2(), FLA_Mult_add(), FLA_Negate(), FLA_Norm1(), FLA_Norm_inf(), FLA_Nrm2_external(), FLA_Obj_add_to_diagonal(), FLA_Obj_attach_buffer(), FLA_Obj_buffer(), FLA_Obj_complex_constant_create(), FLA_Obj_constant_create(), FLA_Obj_create_conf_to(), FLA_Obj_create_ext(), FLA_Obj_create_without_buffer(), FLA_Obj_elem_size(), FLA_Obj_equals(), FLA_Obj_free(), FLA_Obj_free_without_buffer(), FLA_Obj_scale_diagonal(), FLA_Obj_set_diagonal_to_scalar(), FLA_Obj_set_to_identity(), FLA_Obj_set_to_scalar(), FLA_Obj_shift_diagonal(), FLA_Part_1x2(), FLA_Part_2x1(), FLA_Part_2x2(), FLA_QR_blk_external(), FLA_QR_unb_external(), FLA_QR_UT(), FLA_QR_UT_Accum_T_unb_external(), FLA_QR_UT_blk_external(), FLA_QR_UT_copy_internal(), FLA_QR_UT_internal(), FLA_QR_UT_recover_tau(), FLA_QR_UT_UD_internal(), FLA_QR_UT_unb_external(), FLA_Random_herm_matrix(), FLA_Random_matrix(), FLA_Random_spd_matrix(), FLA_Random_tri_matrix(), FLA_realloc(), FLA_Repart_1x2_to_1x3(), FLA_Repart_2x1_to_3x1(), FLA_Repart_2x2_to_3x3(), FLA_Scal_external(), FLA_Scalc_external(), FLA_Scalr_external(), FLA_Shift_pivots_to(), FLA_SPDinv(), FLA_SPDinv_blk_external(), FLA_SPDinv_internal(), FLA_Sqrt(), FLA_Swap_external(), FLA_Swap_rows(), FLA_Swapt_external(), FLA_Sylv(), FLA_Sylv_internal(), FLA_Sylv_unb_external(), FLA_Symm(), FLA_Symm_external(), FLA_Symm_internal(), FLA_Symmetrize(), FLA_Symv_external(), FLA_Syr2_external(), FLA_Syr2k(), FLA_Syr2k_external(), FLA_Syr2k_internal(), FLA_Syr_external(), FLA_Syrk(), FLA_Syrk_external(), FLA_Syrk_internal(), FLA_Transpose(), FLA_Triangularize(), FLA_Trinv(), FLA_Trinv_blk_external(), FLA_Trinv_internal(), FLA_Trinv_unb_external(), FLA_Trmm(), FLA_Trmm_external(), FLA_Trmm_internal(), FLA_Trmmsx_external(), FLA_Trmv_external(), FLA_Trmvsx_external(), FLA_Trsm(), FLA_Trsm_external(), FLA_Trsm_internal(), FLA_Trsmsx_external(), FLA_Trsv(), FLA_Trsv_external(), FLA_Trsv_internal(), FLA_Trsvsx_external(), FLA_Ttmm(), FLA_Ttmm_blk_external(), FLA_Ttmm_internal(), FLA_Ttmm_unb_external(), FLASH_Apply_Q_UT(), FLASH_Apply_Q_UT_inc(), FLASH_Apply_Q_UT_UD(), FLASH_Axpy(), FLASH_Axpy_global_to_submatrix(), FLASH_Axpy_submatrix_to_global(), FLASH_Chol(), FLASH_Copy(), FLASH_Copy_global_to_submatrix(), FLASH_Copy_submatrix_to_global(), FLASH_FS_incpiv(), FLASH_Gemm(), FLASH_Gemv(), FLASH_Hemm(), FLASH_Her2k(), FLASH_Herk(), FLASH_LU_incpiv(), FLASH_LU_nopiv(), FLASH_Obj_attach_buffer(), FLASH_Obj_attach_buffer_hierarchy(), FLASH_Obj_blocksizes(), FLASH_Obj_create_conf_to(), FLASH_Obj_create_flat_conf_to_hier(), FLASH_Obj_create_flat_copy_of_hier(), FLASH_Obj_create_helper(), FLASH_Obj_create_hier_conf_to_flat(), FLASH_Obj_create_hier_conf_to_flat_ext(), FLASH_Obj_create_hier_copy_of_flat(), FLASH_Obj_create_hier_copy_of_flat_ext(), FLASH_Obj_create_hierarchy(), FLASH_Obj_exec(), FLASH_Obj_free(), FLASH_Obj_free_hierarchy(), FLASH_Obj_free_without_buffer(), FLASH_QR_UT_inc_noopt(), FLASH_QR_UT_inc_opt1(), FLASH_QR_UT_UD(), FLASH_Queue_exec_parallel(), FLASH_Random_spd_matrix(), FLASH_SPDinv(), FLASH_Sylv(), FLASH_Symm(), FLASH_Syr2k(), FLASH_Syrk(), FLASH_Trinv(), FLASH_Trmm(), FLASH_Trsm(), FLASH_Trsv(), and FLASH_Ttmm().

00041 {
00042   return fla_error_checking_level;
00043 }

unsigned int FLA_Check_error_level_set ( unsigned int  level  ) 

References FLA_Check_valid_error_level().

00046 {
00047   FLA_Error    e_val;
00048   unsigned int old_level;
00049 
00050   e_val = FLA_Check_valid_error_level( new_level );
00051   FLA_Check_error_code( e_val );
00052 
00053   old_level = fla_error_checking_level;
00054 
00055   fla_error_checking_level = new_level;
00056 
00057   return old_level;
00058 }

FLA_Error FLA_Check_file_descriptor ( int  fd  ) 

00679 {
00680   FLA_Error e_val = FLA_SUCCESS;
00681 
00682   if ( fd == -1 )
00683     e_val = FLA_OPEN_RETURNED_ERROR;
00684 
00685   return e_val;
00686 }

FLA_Error FLA_Check_floating_datatype ( FLA_Datatype  datatype  ) 

Referenced by FLA_Check_floating_object().

00189 {
00190   FLA_Error e_val = FLA_SUCCESS;
00191 
00192   if ( datatype != FLA_CONSTANT &&
00193        datatype != FLA_FLOAT && 
00194        datatype != FLA_DOUBLE && 
00195        datatype != FLA_COMPLEX && 
00196        datatype != FLA_DOUBLE_COMPLEX )
00197     e_val = FLA_INVALID_FLOATING_DATATYPE;
00198   
00199   return e_val;
00200 }

FLA_Error FLA_Check_floating_object ( FLA_Obj  A  ) 

References FLA_Check_floating_datatype(), and FLA_Obj_datatype().

Referenced by FLA_Absolute_square_check(), FLA_Accum_T_UT_check(), FLA_Apply_househ2_UT_check(), FLA_Apply_Q_check(), FLA_Apply_Q_UT_check(), FLA_Apply_Q_UT_inc_check(), FLA_Apply_Q_UT_UD_check(), FLA_Asum_check(), FLA_Axpy_check(), FLA_Axpy_global_to_submatrix_check(), FLA_Axpy_submatrix_to_global_check(), FLA_Axpys_check(), FLA_Axpyt_check(), FLA_Check_identical_object_precision(), FLA_Chol_check(), FLA_Conjugate_check(), FLA_Conjugate_r_check(), FLA_Copy_global_to_submatrix_check(), FLA_Copy_submatrix_to_global_check(), FLA_Dot2cs_check(), FLA_Dot2s_check(), FLA_Dot_check(), FLA_Dotc_check(), FLA_Dotcs_check(), FLA_Dots_check(), FLA_Form_perm_matrix_check(), FLA_FS_incpiv_check(), FLA_Gemm_check(), FLA_Gemv_check(), FLA_Gemvc_check(), FLA_Ger_check(), FLA_Gerc_check(), FLA_Hermitianize_check(), FLA_Hess_check(), FLA_Iamax_check(), FLA_Inv_scal_check(), FLA_Inv_scalc_check(), FLA_Invert_check(), FLA_LQ_check(), FLA_LQ_UT_check(), FLA_LQ_UT_recover_tau_check(), FLA_LU_incpiv_check(), FLA_LU_nopiv_check(), FLA_LU_piv_check(), FLA_Max_abs_value_check(), FLA_Max_elemwise_diff_check(), FLA_Mult_add_check(), FLA_Negate_check(), FLA_Norm1_check(), FLA_Norm_inf_check(), FLA_Nrm2_check(), FLA_Obj_add_to_diagonal_check(), FLA_Obj_scale_diagonal_check(), FLA_Obj_set_diagonal_to_scalar_check(), FLA_Obj_set_to_identity_check(), FLA_Obj_set_to_scalar_check(), FLA_Obj_shift_diagonal_check(), FLA_QR_check(), FLA_QR_UT_check(), FLA_QR_UT_inc_check(), FLA_QR_UT_recover_tau_check(), FLA_QR_UT_UD_check(), FLA_Random_matrix_check(), FLA_Random_spd_matrix_check(), FLA_Random_tri_matrix_check(), FLA_Scal_check(), FLA_Scalc_check(), FLA_Scalr_check(), FLA_SPDinv_check(), FLA_Sqrt_check(), FLA_Swap_check(), FLA_Swap_rows_check(), FLA_Swapt_check(), FLA_Sylv_check(), FLA_Symm_check(), FLA_Symmetrize_check(), FLA_Symv_check(), FLA_Syr2_check(), FLA_Syr2k_check(), FLA_Syr_check(), FLA_Syrk_check(), FLA_Transpose_check(), FLA_Triangularize_check(), FLA_Trinv_check(), FLA_Trmm_check(), FLA_Trmmsx_check(), FLA_Trmv_check(), FLA_Trmvsx_check(), FLA_Trsm_check(), FLA_Trsmsx_check(), FLA_Trsv_check(), FLA_Trsvsx_check(), and FLA_Ttmm_check().

00238 {
00239   FLA_Error    e_val = FLA_SUCCESS;
00240   FLA_Datatype datatype;
00241 
00242   datatype = FLA_Obj_datatype( A );
00243 
00244   if ( FLA_Check_floating_datatype( datatype ) != FLA_SUCCESS )
00245     e_val = FLA_OBJECT_NOT_FLOATING_POINT;
00246 
00247   return e_val;
00248 }

FLA_Error FLA_Check_hess_indices ( FLA_Obj  A,
int  ilo,
int  ihi 
)

References FLA_Obj_width().

Referenced by FLA_Hess_check().

00501 {
00502   FLA_Error e_val = FLA_SUCCESS;
00503 
00504   if ( FLA_Obj_width( A ) == 0 && ilo != 0 && ihi != -1 )
00505     e_val = FLA_INVALID_HESSENBERG_INDICES;
00506 
00507   if ( ilo < 0 || FLA_Obj_width( A ) - 1 < ilo )
00508     e_val = FLA_INVALID_HESSENBERG_INDICES;
00509 
00510   if ( ihi < 0 || FLA_Obj_width( A ) - 1 < ihi )
00511     e_val = FLA_INVALID_HESSENBERG_INDICES;
00512 
00513   if ( ihi < ilo )
00514     e_val = FLA_INVALID_HESSENBERG_INDICES;
00515 
00516   return e_val;
00517 }

FLA_Error FLA_Check_householder_panel_dims ( FLA_Obj  A,
FLA_Obj  T 
)

References FLA_Obj_datatype(), FLA_Obj_length(), FLA_Obj_min_dim(), FLA_Obj_width(), and FLA_Query_blocksize().

01038 {
01039   FLA_Error e_val = FLA_SUCCESS;
01040   dim_t     nb_alg;
01041 
01042   nb_alg = FLA_Query_blocksize( FLA_Obj_datatype( A ), FLA_DIMENSION_MIN );
01043 
01044   if ( FLA_Obj_length( T ) < nb_alg )
01045     e_val = FLA_HOUSEH_PANEL_MATRIX_TOO_SMALL;
01046 
01047   if ( FLA_Obj_width( T ) < FLA_Obj_min_dim( A ) )
01048     e_val = FLA_HOUSEH_PANEL_MATRIX_TOO_SMALL;
01049 
01050   return e_val;
01051 }

FLA_Error FLA_Check_identical_object_datatype ( FLA_Obj  A,
FLA_Obj  B 
)

FLA_Error FLA_Check_identical_object_elemtype ( FLA_Obj  A,
FLA_Obj  B 
)

FLA_Error FLA_Check_identical_object_precision ( FLA_Obj  A,
FLA_Obj  B 
)

References FLA_Check_floating_object(), FLA_Obj_datatype(), FLA_Obj_datatype_size(), and FLA_Obj_is_complex().

Referenced by FLA_Asum_check(), FLA_Her2k_check(), FLA_Her_check(), FLA_Herc_check(), FLA_Herk_check(), FLA_Inv_scal_check(), FLA_Inv_scalc_check(), FLA_Max_abs_value_check(), FLA_Norm1_check(), FLA_Norm_inf_check(), FLA_Nrm2_check(), FLA_Obj_scale_diagonal_check(), FLA_Obj_shift_diagonal_check(), FLA_Scal_check(), FLA_Scalc_check(), FLA_Scalr_check(), and FLA_Sylv_check().

00290 {
00291   FLA_Error    e_val = FLA_SUCCESS;
00292   FLA_Datatype datatype_A;
00293   FLA_Datatype datatype_B;
00294   dim_t        precision_A;
00295   dim_t        precision_B;
00296 
00297   datatype_A = FLA_Obj_datatype( A );
00298   datatype_B = FLA_Obj_datatype( B );
00299 
00300   if ( datatype_A == FLA_CONSTANT ||
00301        datatype_B == FLA_CONSTANT )
00302   {
00303     return FLA_SUCCESS;
00304   }
00305 
00306   if ( FLA_Check_floating_object( A ) != FLA_SUCCESS ||
00307        FLA_Check_floating_object( B ) != FLA_SUCCESS )
00308   {
00309     return FLA_OBJECT_NOT_FLOATING_POINT;
00310   }
00311 
00312   datatype_A = FLA_Obj_datatype( A );
00313   datatype_B = FLA_Obj_datatype( B );
00314 
00315   precision_A = FLA_Obj_datatype_size( datatype_A );
00316   precision_B = FLA_Obj_datatype_size( datatype_B );
00317 
00318   if ( FLA_Obj_is_complex( A ) )
00319     precision_A = precision_A / 2;
00320 
00321   if ( FLA_Obj_is_complex( B ) )
00322     precision_B = precision_B / 2;
00323 
00324   if ( precision_A != precision_B )
00325     e_val = FLA_INCONSISTENT_OBJECT_PRECISION;
00326 
00327   return e_val;
00328 }

FLA_Error FLA_Check_if_scalar ( FLA_Obj  A  ) 

FLA_Error FLA_Check_if_vector ( FLA_Obj  A  ) 

FLA_Error FLA_Check_int_datatype ( FLA_Datatype  datatype  ) 

Referenced by FLA_Check_int_object().

00203 {
00204   FLA_Error e_val = FLA_SUCCESS;
00205 
00206   if ( datatype != FLA_CONSTANT &&
00207        datatype != FLA_INT )
00208     e_val = FLA_INVALID_INTEGER_DATATYPE;
00209 
00210   return e_val;
00211 }

FLA_Error FLA_Check_int_object ( FLA_Obj  A  ) 

References FLA_Check_int_datatype(), and FLA_Obj_datatype().

Referenced by FLA_Form_perm_matrix_check(), FLA_FS_incpiv_check(), FLA_Iamax_check(), FLA_LU_incpiv_check(), FLA_LU_piv_check(), FLA_Shift_pivots_to_check(), FLA_Swap_rows_check(), and FLA_Sylv_check().

00251 {
00252   FLA_Error    e_val = FLA_SUCCESS;
00253   FLA_Datatype datatype;
00254 
00255   datatype = FLA_Obj_datatype( A );
00256 
00257   if ( FLA_Check_int_datatype( datatype ) != FLA_SUCCESS )
00258     e_val = FLA_OBJECT_NOT_INTEGER;
00259 
00260   return e_val;
00261 }

FLA_Error FLA_Check_lseek_result ( int  requested_offset,
int  lseek_r_val 
)

00689 {
00690   FLA_Error e_val = FLA_SUCCESS;
00691 
00692   if ( lseek_r_val != requested_offset )
00693     e_val = FLA_LSEEK_RETURNED_ERROR;
00694 
00695   return e_val;
00696 }

FLA_Error FLA_Check_m_against_ldim ( dim_t  m,
dim_t  ldim 
)

Referenced by FLA_Axpy_global_to_submatrix_check(), FLA_Axpy_submatrix_to_global_check(), FLA_Copy_global_to_submatrix_check(), and FLA_Copy_submatrix_to_global_check().

00979 {
00980   FLA_Error e_val = FLA_SUCCESS;
00981 
00982   if ( m > ldim )
00983     e_val = FLA_INVALID_M_GIVEN_LDIM;
00984 
00985   return e_val;
00986 }

FLA_Error FLA_Check_malloc_pointer ( void *  ptr  ) 

Referenced by FLA_malloc(), and FLA_realloc().

00574 {
00575   FLA_Error e_val = FLA_SUCCESS;
00576 
00577   if ( ptr == NULL )
00578     e_val = FLA_MALLOC_RETURNED_NULL_POINTER;
00579 
00580   return e_val;
00581 }

FLA_Error FLA_Check_matrix_matrix_dims ( FLA_Trans  transa,
FLA_Trans  transb,
FLA_Obj  A,
FLA_Obj  B,
FLA_Obj  C 
)

References FLA_Obj_length(), and FLA_Obj_width().

Referenced by FLA_Apply_Q_check(), FLA_Apply_Q_UT_check(), FLA_Apply_Q_UT_inc_check(), FLA_Apply_Q_UT_inc_internal_check(), FLA_Apply_Q_UT_internal_check(), FLA_Apply_Q_UT_UD_check(), FLA_Apply_Q_UT_UD_internal_check(), FLA_Gemm_check(), FLA_Gemm_internal_check(), FLA_Hemm_check(), FLA_Hemm_internal_check(), FLA_Her2k_check(), FLA_Her2k_internal_check(), FLA_Herk_check(), FLA_Herk_internal_check(), FLA_QR_UT_UD_check(), FLA_QR_UT_UD_internal_check(), FLA_Symm_check(), FLA_Symm_internal_check(), FLA_Syr2k_check(), FLA_Syr2k_internal_check(), FLA_Syrk_check(), FLA_Syrk_internal_check(), FLA_Trmm_check(), FLA_Trmm_internal_check(), FLA_Trmmsx_check(), FLA_Trsm_check(), FLA_Trsm_internal_check(), and FLA_Trsmsx_check().

00409 {
00410   FLA_Error e_val = FLA_SUCCESS;
00411   dim_t     k_A, k_B;
00412   dim_t     m_A, m_C;
00413   dim_t     n_B, n_C;
00414 
00415   m_A = ( transa == FLA_NO_TRANSPOSE || 
00416           transa == FLA_CONJ_NO_TRANSPOSE ? FLA_Obj_length( A ) :
00417                                             FLA_Obj_width( A )  );
00418   k_A = ( transa == FLA_NO_TRANSPOSE ||
00419           transa == FLA_CONJ_NO_TRANSPOSE ? FLA_Obj_width( A )  :
00420                                             FLA_Obj_length( A ) );
00421 
00422   k_B = ( transb == FLA_NO_TRANSPOSE ||
00423           transb == FLA_CONJ_NO_TRANSPOSE ? FLA_Obj_length( B ) :
00424                                             FLA_Obj_width( B )  );
00425   n_B = ( transb == FLA_NO_TRANSPOSE ||
00426           transb == FLA_CONJ_NO_TRANSPOSE ? FLA_Obj_width( B )  :
00427                                             FLA_Obj_length( B ) );
00428 
00429   m_C = FLA_Obj_length( C );
00430   n_C = FLA_Obj_width( C );
00431 
00432   if ( m_A != m_C )
00433     e_val = FLA_NONCONFORMAL_DIMENSIONS;
00434 
00435   if ( k_A != k_B )
00436     e_val = FLA_NONCONFORMAL_DIMENSIONS;
00437 
00438   if ( n_B != n_C )
00439     e_val = FLA_NONCONFORMAL_DIMENSIONS;
00440 
00441   return e_val;
00442 }

FLA_Error FLA_Check_matrix_vector_dims ( FLA_Trans  trans,
FLA_Obj  A,
FLA_Obj  x,
FLA_Obj  y 
)

References FLA_Obj_length(), FLA_Obj_vector_dim(), and FLA_Obj_width().

Referenced by FLA_Apply_househ2_UT_check(), FLA_Form_perm_matrix_check(), FLA_Gemv_check(), FLA_Gemv_internal_check(), FLA_Gemvc_check(), FLA_Ger_check(), FLA_Gerc_check(), FLA_Hemv_check(), FLA_Hemvc_check(), FLA_Her2_check(), FLA_Her2c_check(), FLA_Her_check(), FLA_Herc_check(), FLA_Symv_check(), FLA_Syr2_check(), FLA_Syr_check(), FLA_Trmv_check(), FLA_Trmvsx_check(), FLA_Trsv_check(), FLA_Trsv_internal_check(), and FLA_Trsvsx_check().

00445 {
00446   FLA_Error e_val = FLA_SUCCESS;
00447 
00448   if ( trans == FLA_NO_TRANSPOSE || trans == FLA_CONJ_NO_TRANSPOSE )
00449   {
00450     if ( FLA_Obj_width( A ) != FLA_Obj_vector_dim( x ) )
00451       e_val = FLA_NONCONFORMAL_DIMENSIONS;
00452 
00453     if ( FLA_Obj_length( A ) != FLA_Obj_vector_dim( y ) )
00454       e_val = FLA_NONCONFORMAL_DIMENSIONS;
00455   }
00456   else
00457   {
00458     if ( FLA_Obj_length( A ) != FLA_Obj_vector_dim( x ) )
00459       e_val = FLA_NONCONFORMAL_DIMENSIONS;
00460 
00461     if ( FLA_Obj_width( A ) != FLA_Obj_vector_dim( y ) )
00462       e_val = FLA_NONCONFORMAL_DIMENSIONS;
00463   }
00464 
00465   return e_val;
00466 }

FLA_Error FLA_Check_nonconstant_datatype ( FLA_Datatype  datatype  ) 

Referenced by FLA_Check_nonconstant_object().

00952 {
00953   FLA_Error e_val = FLA_SUCCESS;
00954 
00955   if ( datatype != FLA_INT &&
00956        datatype != FLA_FLOAT && 
00957        datatype != FLA_DOUBLE && 
00958        datatype != FLA_COMPLEX && 
00959        datatype != FLA_DOUBLE_COMPLEX )
00960     e_val = FLA_INVALID_NONCONSTANT_DATATYPE;
00961   
00962   return e_val;
00963 }

FLA_Error FLA_Check_nonconstant_object ( FLA_Obj  A  ) 

References FLA_Check_nonconstant_datatype(), and FLA_Obj_datatype().

Referenced by FLA_Absolute_square_check(), FLA_Apply_househ2_UT_check(), FLA_Apply_Q_check(), FLA_Apply_Q_UT_check(), FLA_Apply_Q_UT_inc_check(), FLA_Apply_Q_UT_UD_check(), FLA_Asum_check(), FLA_Axpy_check(), FLA_Axpy_global_to_submatrix_check(), FLA_Axpy_submatrix_to_global_check(), FLA_Axpys_check(), FLA_Axpyt_check(), FLA_Chol_check(), FLA_Conjugate_check(), FLA_Conjugate_r_check(), FLA_Copy_check(), FLA_Copy_global_to_submatrix_check(), FLA_Copy_submatrix_to_global_check(), FLA_Copyr_check(), FLA_Copyt_check(), FLA_Dot2cs_check(), FLA_Dot2s_check(), FLA_Dot_check(), FLA_Dotc_check(), FLA_Dotcs_check(), FLA_Dots_check(), FLA_Form_perm_matrix_check(), FLA_FS_incpiv_check(), FLA_Gemm_check(), FLA_Gemv_check(), FLA_Gemvc_check(), FLA_Ger_check(), FLA_Gerc_check(), FLA_Hemm_check(), FLA_Hemv_check(), FLA_Hemvc_check(), FLA_Her2_check(), FLA_Her2c_check(), FLA_Her2k_check(), FLA_Her_check(), FLA_Herc_check(), FLA_Herk_check(), FLA_Hermitianize_check(), FLA_Hess_check(), FLA_Iamax_check(), FLA_Inv_scal_check(), FLA_Inv_scalc_check(), FLA_Invert_check(), FLA_LQ_check(), FLA_LQ_UT_check(), FLA_LU_incpiv_check(), FLA_LU_nopiv_check(), FLA_LU_piv_check(), FLA_Max_abs_value_check(), FLA_Max_elemwise_diff_check(), FLA_Mult_add_check(), FLA_Negate_check(), FLA_Norm1_check(), FLA_Norm_inf_check(), FLA_Nrm2_check(), FLA_Obj_add_to_diagonal_check(), FLA_Obj_scale_diagonal_check(), FLA_Obj_set_diagonal_to_scalar_check(), FLA_Obj_set_to_identity_check(), FLA_Obj_set_to_scalar_check(), FLA_Obj_shift_diagonal_check(), FLA_QR_check(), FLA_QR_UT_check(), FLA_QR_UT_inc_check(), FLA_QR_UT_UD_check(), FLA_Random_herm_matrix_check(), FLA_Random_matrix_check(), FLA_Random_spd_matrix_check(), FLA_Random_tri_matrix_check(), FLA_Scal_check(), FLA_Scalc_check(), FLA_Scalr_check(), FLA_Shift_pivots_to_check(), FLA_SPDinv_check(), FLA_Sqrt_check(), FLA_Swap_check(), FLA_Swap_rows_check(), FLA_Swapt_check(), FLA_Sylv_check(), FLA_Symm_check(), FLA_Symmetrize_check(), FLA_Symv_check(), FLA_Syr2_check(), FLA_Syr2k_check(), FLA_Syr_check(), FLA_Syrk_check(), FLA_Transpose_check(), FLA_Triangularize_check(), FLA_Trinv_check(), FLA_Trmm_check(), FLA_Trmmsx_check(), FLA_Trmv_check(), FLA_Trmvsx_check(), FLA_Trsm_check(), FLA_Trsmsx_check(), FLA_Trsv_check(), FLA_Trsvsx_check(), and FLA_Ttmm_check().

00966 {
00967   FLA_Error    e_val = FLA_SUCCESS;
00968   FLA_Datatype datatype;
00969 
00970   datatype = FLA_Obj_datatype( A );
00971 
00972   if ( FLA_Check_nonconstant_datatype( datatype ) != FLA_SUCCESS )
00973     e_val = FLA_OBJECT_NOT_NONCONSTANT;
00974 
00975   return e_val;
00976 }

FLA_Error FLA_Check_null_pointer ( void *  ptr  ) 

Referenced by FLA_Apply_Q_UT_inc_internal_check(), FLA_Apply_Q_UT_internal_check(), FLA_Apply_Q_UT_UD_internal_check(), FLA_Axpy_global_to_submatrix_check(), FLA_Axpy_internal_check(), FLA_Axpy_submatrix_to_global_check(), FLA_Blocksize_create_copy(), FLA_Blocksize_extract(), FLA_Blocksize_scale(), FLA_Chol_internal_check(), FLA_Cont_with_1x3_to_1x2_check(), FLA_Cont_with_3x1_to_2x1_check(), FLA_Cont_with_3x3_to_2x2_check(), FLA_Copy_global_to_submatrix_check(), FLA_Copy_internal_check(), FLA_Copy_submatrix_to_global_check(), FLA_Gemm_internal_check(), FLA_Gemv_internal_check(), FLA_Hemm_internal_check(), FLA_Her2k_internal_check(), FLA_Herk_internal_check(), FLA_Hess_internal(), FLA_LQ_UT_internal_check(), FLA_LU_nopiv_internal_check(), FLA_LU_piv_internal(), FLA_Merge_1x2_check(), FLA_Merge_2x1_check(), FLA_Merge_2x2_check(), FLA_Obj_add_to_diagonal_check(), FLA_Obj_attach_buffer_check(), FLA_Obj_buffer_check(), FLA_Obj_complex_constant_create_check(), FLA_Obj_constant_create_check(), FLA_Obj_create_conf_to_check(), FLA_Obj_create_ext_check(), FLA_Obj_create_without_buffer_check(), FLA_Obj_free_check(), FLA_Obj_free_without_buffer_check(), FLA_Part_1x2_check(), FLA_Part_2x1_check(), FLA_Part_2x2_check(), FLA_QR_UT_copy_internal_check(), FLA_QR_UT_internal_check(), FLA_QR_UT_UD_internal_check(), FLA_Repart_1x2_to_1x3_check(), FLA_Repart_2x1_to_3x1_check(), FLA_Repart_2x2_to_3x3_check(), FLA_SPDinv_internal_check(), FLA_Sylv_internal_check(), FLA_Symm_internal_check(), FLA_Syr2k_internal_check(), FLA_Syrk_internal_check(), FLA_Trinv_internal_check(), FLA_Trmm_internal_check(), FLA_Trsm_internal_check(), FLA_Trsv_internal_check(), FLA_Ttmm_internal_check(), FLASH_Obj_attach_buffer_check(), FLASH_Obj_attach_buffer_hierarchy_check(), FLASH_Obj_blocksizes_check(), FLASH_Obj_create_conf_to_check(), FLASH_Obj_create_flat_conf_to_hier_check(), FLASH_Obj_create_flat_copy_of_hier_check(), FLASH_Obj_create_helper_check(), FLASH_Obj_create_hier_conf_to_flat_check(), FLASH_Obj_create_hier_conf_to_flat_ext_check(), FLASH_Obj_create_hier_copy_of_flat_check(), FLASH_Obj_create_hier_copy_of_flat_ext_check(), FLASH_Obj_create_hierarchy_check(), FLASH_Obj_free_check(), FLASH_Obj_free_hierarchy_check(), and FLASH_Obj_free_without_buffer_check().

00530 {
00531   FLA_Error e_val = FLA_SUCCESS;
00532 
00533   if ( ptr == NULL )
00534     e_val = FLA_NULL_POINTER;
00535 
00536   return e_val;
00537 }

FLA_Error FLA_Check_num_threads ( unsigned int  n_threads  ) 

Referenced by FLASH_Queue_set_num_threads().

00896 {
00897   FLA_Error e_val = FLA_SUCCESS;
00898 
00899   if ( n_threads < 1 )
00900     e_val = FLA_ENCOUNTERED_NON_POSITIVE_NTHREADS;
00901 
00902   return e_val;
00903 }

FLA_Error FLA_Check_object_dims ( FLA_Trans  trans,
dim_t  m,
dim_t  n,
FLA_Obj  A 
)

References FLA_Obj_length(), and FLA_Obj_width().

Referenced by FLA_Axpy_global_to_submatrix_check(), FLA_Axpy_submatrix_to_global_check(), FLA_Copy_global_to_submatrix_check(), and FLA_Copy_submatrix_to_global_check().

00540 {
00541   FLA_Error e_val = FLA_SUCCESS;
00542 
00543   if ( trans == FLA_NO_TRANSPOSE || trans == FLA_CONJ_NO_TRANSPOSE )
00544   {
00545     if ( FLA_Obj_length( A ) != m )
00546       e_val = FLA_SPECIFIED_OBJ_DIM_MISMATCH;
00547 
00548     if ( FLA_Obj_width( A ) != n )
00549       e_val = FLA_SPECIFIED_OBJ_DIM_MISMATCH;
00550   }
00551   else
00552   {
00553     if ( FLA_Obj_length( A ) != n )
00554       e_val = FLA_SPECIFIED_OBJ_DIM_MISMATCH;
00555 
00556     if ( FLA_Obj_width( A ) != m )
00557       e_val = FLA_SPECIFIED_OBJ_DIM_MISMATCH;
00558   }
00559 
00560   return e_val;
00561 }

FLA_Error FLA_Check_object_length_equals ( FLA_Obj  A,
dim_t  m 
)

References FLA_Obj_length().

Referenced by FLA_Apply_Q_UT_inc_internal_check(), FLA_LQ_UT_internal_check(), and FLA_LQ_UT_recover_tau_check().

01054 {
01055   FLA_Error e_val = FLA_SUCCESS;
01056 
01057   if ( FLA_Obj_length( A ) != m )
01058     e_val = FLA_INVALID_OBJECT_LENGTH;
01059 
01060   return e_val;
01061 }

FLA_Error FLA_Check_object_matrix_elemtype ( FLA_Obj  A  ) 

References FLA_Obj_elemtype().

00883 {
00884   FLA_Error     e_val = FLA_SUCCESS;
00885   FLA_Elemtype  elemtype;
00886 
00887   elemtype = FLA_Obj_elemtype( A );
00888 
00889   if ( elemtype != FLA_MATRIX )
00890     e_val = FLA_OBJECT_NOT_MATRIX_ELEMTYPE;
00891 
00892   return e_val;
00893 }

FLA_Error FLA_Check_object_scalar_elemtype ( FLA_Obj  A  ) 

References FLA_Obj_elemtype().

00870 {
00871   FLA_Error     e_val = FLA_SUCCESS;
00872   FLA_Elemtype  elemtype;
00873 
00874   elemtype = FLA_Obj_elemtype( A );
00875 
00876   if ( elemtype != FLA_SCALAR )
00877     e_val = FLA_OBJECT_NOT_SCALAR_ELEMTYPE;
00878 
00879   return e_val;
00880 }

FLA_Error FLA_Check_object_width_equals ( FLA_Obj  A,
dim_t  n 
)

References FLA_Obj_width().

Referenced by FLA_Accum_T_UT_check(), FLA_Apply_Q_UT_inc_internal_check(), FLA_QR_UT_copy_internal_check(), FLA_QR_UT_internal_check(), and FLA_QR_UT_recover_tau_check().

01064 {
01065   FLA_Error e_val = FLA_SUCCESS;
01066 
01067   if ( FLA_Obj_width( A ) != n )
01068     e_val = FLA_INVALID_OBJECT_WIDTH;
01069 
01070   return e_val;
01071 }

FLA_Error FLA_Check_pivot_index_range ( FLA_Obj  p,
dim_t  k1,
dim_t  k2 
)

References FLA_Obj_has_zero_dim(), and FLA_Obj_length().

Referenced by FLA_Swap_rows_check().

01019 {
01020   FLA_Error e_val = FLA_SUCCESS;
01021 
01022   if ( FLA_Obj_has_zero_dim( p ) )
01023     return e_val;
01024 
01025   if ( k1 < 0 || FLA_Obj_length( p ) - 1 < k1 )
01026     e_val = FLA_INVALID_PIVOT_INDEX_RANGE;
01027 
01028   if ( k2 < 0 || FLA_Obj_length( p ) - 1 < k2 )
01029     e_val = FLA_INVALID_PIVOT_INDEX_RANGE;
01030 
01031   if ( k2 < k1 )
01032     e_val = FLA_INVALID_PIVOT_INDEX_RANGE;
01033 
01034   return e_val;
01035 }

FLA_Error FLA_Check_posix_memalign_failure ( int  r_val  ) 

Referenced by FLA_malloc().

00836 {
00837   FLA_Error e_val = FLA_SUCCESS;
00838 
00839   if ( r_val != 0 )
00840     e_val = FLA_POSIX_MEMALIGN_FAILED;
00841 
00842   return e_val;
00843 }

FLA_Error FLA_Check_pthread_create_result ( int  pthread_create_r_val  ) 

Referenced by FLASH_Obj_exec(), and FLASH_Queue_exec_parallel().

00762 {
00763   FLA_Error e_val = FLA_SUCCESS;
00764 
00765   if ( pthread_create_r_val != 0 )
00766     e_val = FLA_PTHREAD_CREATE_RETURNED_ERROR;
00767 
00768   return e_val;
00769 }

FLA_Error FLA_Check_pthread_join_result ( int  pthread_join_r_val  ) 

Referenced by FLASH_Obj_exec(), and FLASH_Queue_exec_parallel().

00772 {
00773   FLA_Error e_val = FLA_SUCCESS;
00774 
00775   if ( pthread_join_r_val != 0 )
00776     e_val = FLA_PTHREAD_JOIN_RETURNED_ERROR;
00777 
00778   return e_val;
00779 }

FLA_Error FLA_Check_read_result ( int  requested_size,
int  read_r_val 
)

00719 {
00720   FLA_Error e_val = FLA_SUCCESS;
00721 
00722   if ( read_r_val == -1 )
00723     e_val = FLA_READ_RETURNED_ERROR;
00724 
00725   return e_val;
00726 }

FLA_Error FLA_Check_real_datatype ( FLA_Datatype  datatype  ) 

Referenced by FLA_Check_real_object().

00214 {
00215   FLA_Error e_val = FLA_SUCCESS;
00216 
00217   if ( datatype != FLA_CONSTANT &&
00218        datatype != FLA_FLOAT &&
00219        datatype != FLA_DOUBLE )
00220     e_val = FLA_INVALID_REAL_DATATYPE;
00221 
00222   return e_val;
00223 }

FLA_Error FLA_Check_real_object ( FLA_Obj  A  ) 

References FLA_Check_real_datatype(), and FLA_Obj_datatype().

Referenced by FLA_Asum_check(), FLA_Her2k_check(), FLA_Her_check(), FLA_Herc_check(), FLA_Herk_check(), FLA_Max_abs_value_check(), FLA_Norm1_check(), FLA_Norm_inf_check(), and FLA_Nrm2_check().

00264 {
00265   FLA_Error    e_val = FLA_SUCCESS;
00266   FLA_Datatype datatype;
00267 
00268   datatype = FLA_Obj_datatype( A );
00269 
00270   if ( FLA_Check_real_datatype( datatype ) != FLA_SUCCESS )
00271     e_val = FLA_OBJECT_NOT_REAL;
00272 
00273   return e_val;
00274 }

FLA_Error FLA_Check_square ( FLA_Obj  A  ) 

FLA_Error FLA_Check_submatrix_dims_and_offset ( dim_t  m,
dim_t  n,
dim_t  i,
dim_t  j,
FLA_Obj  A 
)

References FLA_Obj_elemtype(), FLA_Obj_length(), FLA_Obj_width(), FLASH_Obj_scalar_length(), and FLASH_Obj_scalar_width().

Referenced by FLA_Axpy_global_to_submatrix_check(), FLA_Axpy_submatrix_to_global_check(), FLA_Copy_global_to_submatrix_check(), FLA_Copy_submatrix_to_global_check(), FLASH_Axpy_global_to_submatrix(), FLASH_Axpy_submatrix_to_global(), FLASH_Copy_global_to_submatrix(), and FLASH_Copy_submatrix_to_global().

00846 {
00847   FLA_Error e_val = FLA_SUCCESS;
00848   dim_t     m_A, n_A;
00849 
00850   if ( FLA_Obj_elemtype( A ) == FLA_MATRIX )
00851   {
00852     m_A = FLASH_Obj_scalar_length( A );
00853     n_A = FLASH_Obj_scalar_width( A );
00854   }
00855   else
00856   {
00857     m_A = FLA_Obj_length( A );
00858     n_A = FLA_Obj_width( A );
00859   }
00860 
00861   if      ( i     > m_A || j     > n_A )
00862     e_val = FLA_INVALID_SUBMATRIX_OFFSET;
00863   else if ( i + m > m_A || j + n > n_A )
00864     e_val = FLA_INVALID_SUBMATRIX_DIMS;
00865 
00866   return e_val;
00867 }

FLA_Error FLA_Check_sylv_matrix_dims ( FLA_Obj  A,
FLA_Obj  B,
FLA_Obj  C 
)

References FLA_Obj_length(), and FLA_Obj_width().

Referenced by FLA_Sylv_check(), and FLA_Sylv_internal_check().

00793 {
00794   FLA_Error e_val = FLA_SUCCESS;
00795   dim_t     m_A, m_C;
00796   dim_t     n_B, n_C;
00797 
00798   m_A = FLA_Obj_length( A );
00799 
00800   n_B = FLA_Obj_width( B );
00801 
00802   m_C = FLA_Obj_length( C );
00803   n_C = FLA_Obj_width( C );
00804 
00805   if ( m_A != m_C )
00806     e_val = FLA_NONCONFORMAL_DIMENSIONS;
00807 
00808   if ( n_B != n_C )
00809     e_val = FLA_NONCONFORMAL_DIMENSIONS;
00810 
00811   return e_val;
00812 }

FLA_Error FLA_Check_unlink_result ( int  unlink_r_val  ) 

00709 {
00710   FLA_Error e_val = FLA_SUCCESS;
00711 
00712   if ( unlink_r_val == -1 )
00713     e_val = FLA_UNLINK_RETURNED_ERROR;
00714 
00715   return e_val;
00716 }

FLA_Error FLA_Check_valid_blas_trans ( FLA_Trans  trans  ) 

Referenced by FLA_Sylv_check().

00940 {
00941   FLA_Error e_val = FLA_SUCCESS;
00942 
00943   if ( trans != FLA_NO_TRANSPOSE &&
00944        trans != FLA_TRANSPOSE &&
00945        trans != FLA_CONJ_TRANSPOSE )
00946     e_val = FLA_INVALID_BLAS_TRANS;
00947 
00948   return e_val;
00949 }

FLA_Error FLA_Check_valid_complex_trans ( FLA_Trans  trans  ) 

Referenced by FLA_Apply_Q_check(), FLA_Her2k_check(), and FLA_Herk_check().

00918 {
00919   FLA_Error e_val = FLA_SUCCESS;
00920 
00921   if ( trans != FLA_NO_TRANSPOSE &&
00922        trans != FLA_CONJ_TRANSPOSE )
00923     e_val = FLA_INVALID_COMPLEX_TRANS;
00924 
00925   return e_val;
00926 }

FLA_Error FLA_Check_valid_conj ( FLA_Conj  conj  ) 

Referenced by FLA_Dot2cs_check(), FLA_Dotc_check(), FLA_Dotcs_check(), FLA_Gemvc_check(), FLA_Gerc_check(), FLA_Hemvc_check(), FLA_Her2c_check(), FLA_Herc_check(), FLA_Inv_scalc_check(), and FLA_Scalc_check().

00129 {
00130   FLA_Error e_val = FLA_SUCCESS;
00131 
00132   if ( conj != FLA_NO_CONJUGATE &&
00133        conj != FLA_CONJUGATE )
00134     e_val = FLA_INVALID_CONJ;
00135 
00136   return e_val;
00137 }

FLA_Error FLA_Check_valid_datatype ( FLA_Datatype  datatype  ) 

Referenced by FLA_Check_valid_object_datatype(), FLA_Obj_create_ext_check(), FLA_Obj_create_without_buffer_check(), FLA_Obj_elem_size_check(), FLASH_Obj_create_helper_check(), and FLASH_Obj_create_hierarchy_check().

00162 {
00163   FLA_Error e_val = FLA_SUCCESS;
00164 
00165   if ( datatype != FLA_INT &&
00166        datatype != FLA_FLOAT && 
00167        datatype != FLA_DOUBLE && 
00168        datatype != FLA_COMPLEX && 
00169        datatype != FLA_DOUBLE_COMPLEX && 
00170        datatype != FLA_CONSTANT )
00171     e_val = FLA_INVALID_DATATYPE;
00172 
00173   return e_val;
00174 }

FLA_Error FLA_Check_valid_diag ( FLA_Diag  diag  ) 

Referenced by FLA_Random_tri_matrix_check(), FLA_Triangularize_check(), FLA_Trinv_check(), FLA_Trmm_check(), FLA_Trmmsx_check(), FLA_Trmv_check(), FLA_Trmvsx_check(), FLA_Trsm_check(), FLA_Trsmsx_check(), FLA_Trsv_check(), and FLA_Trsvsx_check().

00117 {
00118   FLA_Error e_val = FLA_SUCCESS;
00119 
00120   if ( diag != FLA_NONUNIT_DIAG && 
00121        diag != FLA_UNIT_DIAG &&
00122        diag != FLA_ZERO_DIAG )
00123     e_val = FLA_INVALID_DIAG;
00124 
00125   return e_val;
00126 }

FLA_Error FLA_Check_valid_direct ( FLA_Conj  direct  ) 

Referenced by FLA_Accum_T_UT_check().

00140 {
00141   FLA_Error e_val = FLA_SUCCESS;
00142 
00143   if ( direct != FLA_FORWARD &&
00144        direct != FLA_BACKWARD )
00145     e_val = FLA_INVALID_DIRECT;
00146 
00147   return e_val;
00148 }

FLA_Error FLA_Check_valid_elemtype ( FLA_Elemtype  elemtype  ) 

Referenced by FLA_Obj_create_ext_check(), and FLA_Obj_elem_size_check().

00825 {
00826   FLA_Error e_val = FLA_SUCCESS;
00827 
00828   if ( elemtype != FLA_SCALAR &&
00829        elemtype != FLA_MATRIX )
00830     e_val = FLA_INVALID_ELEMTYPE;
00831 
00832   return e_val;
00833 }

FLA_Error FLA_Check_valid_error_level ( unsigned int  level  ) 

Referenced by FLA_Check_error_level_set().

01074 {
01075   FLA_Error e_val = FLA_SUCCESS;
01076 
01077   if ( level != FLA_NO_ERROR_CHECKING &&
01078        level != FLA_MIN_ERROR_CHECKING &&
01079        level != FLA_FULL_ERROR_CHECKING )
01080     e_val = FLA_INVALID_ERROR_CHECKING_LEVEL;
01081 
01082   return e_val;
01083 }

FLA_Error FLA_Check_valid_isgn_value ( FLA_Obj  isgn  ) 

References FLA_MINUS_ONE, FLA_Obj_is(), and FLA_ONE.

Referenced by FLA_Sylv_check().

00782 {
00783   FLA_Error e_val = FLA_SUCCESS;
00784   
00785   if ( !FLA_Obj_is( isgn, FLA_ONE ) && 
00786        !FLA_Obj_is( isgn, FLA_MINUS_ONE ) )
00787     e_val = FLA_INVALID_ISGN_VALUE;
00788 
00789   return e_val;
00790 }

FLA_Error FLA_Check_valid_object_datatype ( FLA_Obj  A  ) 

FLA_Error FLA_Check_valid_pivot_type ( FLA_Pivot_type  ptype  ) 

Referenced by FLA_Shift_pivots_to_check().

00564 {
00565   FLA_Error e_val = FLA_SUCCESS;
00566 
00567   if ( ptype != FLA_NATIVE_PIVOTS && ptype != FLA_LAPACK_PIVOTS )
00568     e_val = FLA_INVALID_PIVOT_TYPE;
00569 
00570   return e_val;
00571 }

FLA_Error FLA_Check_valid_quadrant ( FLA_Quadrant  quad  ) 

Referenced by FLA_Cont_with_3x3_to_2x2_check(), FLA_Part_2x2_check(), and FLA_Repart_2x2_to_3x3_check().

00739 {
00740   FLA_Error e_val = FLA_SUCCESS;
00741 
00742   if ( quad != FLA_TL && 
00743        quad != FLA_TR && 
00744        quad != FLA_BL &&
00745        quad != FLA_BR )
00746     e_val = FLA_INVALID_QUADRANT;
00747 
00748   return e_val;
00749 }

FLA_Error FLA_Check_valid_real_trans ( FLA_Trans  trans  ) 

FLA_Error FLA_Check_valid_side ( FLA_Side  side  ) 

Referenced by FLA_Apply_Q_check(), FLA_Apply_Q_UT_check(), FLA_Apply_Q_UT_inc_check(), FLA_Apply_Q_UT_UD_check(), FLA_Cont_with_1x3_to_1x2_check(), FLA_Cont_with_3x1_to_2x1_check(), FLA_Hemm_check(), FLA_Part_1x2_check(), FLA_Part_2x1_check(), FLA_Repart_1x2_to_1x3_check(), FLA_Repart_2x1_to_3x1_check(), FLA_Symm_check(), FLA_Trmm_check(), FLA_Trmmsx_check(), FLA_Trsm_check(), and FLA_Trsmsx_check().

00080 {
00081   FLA_Error e_val = FLA_SUCCESS;
00082 
00083   if ( side != FLA_LEFT && 
00084        side != FLA_RIGHT && 
00085        side != FLA_TOP &&
00086        side != FLA_BOTTOM )
00087     e_val = FLA_INVALID_SIDE;
00088 
00089   return e_val;
00090 }

FLA_Error FLA_Check_valid_storev ( FLA_Conj  storev  ) 

Referenced by FLA_Accum_T_UT_check(), FLA_Apply_Q_check(), FLA_Apply_Q_UT_check(), FLA_Apply_Q_UT_inc_check(), and FLA_Apply_Q_UT_UD_check().

00151 {
00152   FLA_Error e_val = FLA_SUCCESS;
00153 
00154   if ( storev != FLA_COLUMNWISE &&
00155        storev != FLA_ROWWISE )
00156     e_val = FLA_INVALID_STOREV;
00157 
00158   return e_val;
00159 }

FLA_Error FLA_Check_valid_trans ( FLA_Trans  trans  ) 

Referenced by FLA_Apply_Q_check(), FLA_Apply_Q_UT_check(), FLA_Apply_Q_UT_inc_check(), FLA_Apply_Q_UT_UD_check(), FLA_Axpyt_check(), FLA_Copyt_check(), FLA_Gemm_check(), FLA_Gemv_check(), FLA_Gemvc_check(), FLA_Swapt_check(), FLA_Trmm_check(), FLA_Trmmsx_check(), FLA_Trmv_check(), FLA_Trmvsx_check(), FLA_Trsm_check(), FLA_Trsmsx_check(), FLA_Trsv_check(), and FLA_Trsvsx_check().

00104 {
00105   FLA_Error e_val = FLA_SUCCESS;
00106 
00107   if ( trans != FLA_NO_TRANSPOSE &&
00108        trans != FLA_TRANSPOSE &&
00109        trans != FLA_CONJ_TRANSPOSE &&
00110        trans != FLA_CONJ_NO_TRANSPOSE )
00111     e_val = FLA_INVALID_TRANS;
00112 
00113   return e_val;
00114 }

FLA_Error FLA_Check_valid_uplo ( FLA_Uplo  uplo  ) 

FLA_Error FLA_Check_vector_length ( FLA_Obj  x,
dim_t  expected_length 
)

References FLA_Obj_length().

Referenced by FLA_Accum_T_UT_check(), FLA_LQ_check(), FLA_LU_piv_check(), FLA_QR_check(), and FLA_Shift_pivots_to_check().

00520 {
00521   FLA_Error e_val = FLA_SUCCESS;
00522 
00523   if ( FLA_Obj_length( x ) != expected_length )
00524     e_val = FLA_INVALID_VECTOR_LENGTH;
00525 
00526   return e_val;
00527 }

FLA_Error FLA_Check_vector_length_min ( FLA_Obj  x,
dim_t  min_length 
)

References FLA_Obj_length().

Referenced by FLA_Hess_check().

00752 {
00753   FLA_Error e_val = FLA_SUCCESS;
00754 
00755   if ( FLA_Obj_length( x ) < min_length )
00756     e_val = FLA_VECTOR_LENGTH_BELOW_MIN;
00757 
00758   return e_val;
00759 }

FLA_Error FLA_Check_write_result ( int  requested_size,
int  write_r_val 
)

00729 {
00730   FLA_Error e_val = FLA_SUCCESS;
00731 
00732   if ( write_r_val != requested_size )
00733     e_val = FLA_WRITE_RETURNED_ERROR;
00734 
00735   return e_val;
00736 }

FLA_Error FLA_Cont_with_1x3_to_1x2 ( FLA_Obj AL,
FLA_Obj AR,
FLA_Obj  A0,
FLA_Obj  A1,
FLA_Obj  A2,
FLA_Side  side 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Cont_with_1x3_to_1x2_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var2(), FLA_Apply_Q_UT_UD_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var3(), FLA_Axpy_blk_var3(), FLA_Axpy_blk_var4(), FLA_Copy_blk_var3(), FLA_Copy_blk_var4(), FLA_Gemm_hh_blk_var1(), FLA_Gemm_hh_blk_var2(), FLA_Gemm_hh_blk_var3(), FLA_Gemm_hh_blk_var4(), FLA_Gemm_hh_blk_var5(), FLA_Gemm_hh_blk_var6(), FLA_Gemm_hh_unb_var1(), FLA_Gemm_hh_unb_var2(), FLA_Gemm_hh_unb_var3(), FLA_Gemm_hh_unb_var4(), FLA_Gemm_hh_unb_var5(), FLA_Gemm_hh_unb_var6(), FLA_Gemm_hn_blk_var1(), FLA_Gemm_hn_blk_var2(), FLA_Gemm_hn_blk_var3(), FLA_Gemm_hn_blk_var4(), FLA_Gemm_hn_unb_var1(), FLA_Gemm_hn_unb_var2(), FLA_Gemm_hn_unb_var3(), FLA_Gemm_hn_unb_var4(), FLA_Gemm_ht_blk_var1(), FLA_Gemm_ht_blk_var2(), FLA_Gemm_ht_blk_var3(), FLA_Gemm_ht_blk_var4(), FLA_Gemm_ht_blk_var5(), FLA_Gemm_ht_blk_var6(), FLA_Gemm_ht_unb_var1(), FLA_Gemm_ht_unb_var2(), FLA_Gemm_ht_unb_var3(), FLA_Gemm_ht_unb_var4(), FLA_Gemm_ht_unb_var5(), FLA_Gemm_ht_unb_var6(), FLA_Gemm_nh_blk_var3(), FLA_Gemm_nh_blk_var4(), FLA_Gemm_nh_blk_var5(), FLA_Gemm_nh_blk_var6(), FLA_Gemm_nh_unb_var3(), FLA_Gemm_nh_unb_var4(), FLA_Gemm_nh_unb_var5(), FLA_Gemm_nh_unb_var6(), FLA_Gemm_nn_blk_var3(), FLA_Gemm_nn_blk_var4(), FLA_Gemm_nn_blk_var5(), FLA_Gemm_nn_blk_var6(), FLA_Gemm_nn_unb_var3(), FLA_Gemm_nn_unb_var4(), FLA_Gemm_nn_unb_var5(), FLA_Gemm_nn_unb_var6(), FLA_Gemm_nt_blk_var3(), FLA_Gemm_nt_blk_var4(), FLA_Gemm_nt_blk_var5(), FLA_Gemm_nt_blk_var6(), FLA_Gemm_nt_unb_var3(), FLA_Gemm_nt_unb_var4(), FLA_Gemm_nt_unb_var5(), FLA_Gemm_nt_unb_var6(), FLA_Gemm_th_blk_var1(), FLA_Gemm_th_blk_var2(), FLA_Gemm_th_blk_var3(), FLA_Gemm_th_blk_var4(), FLA_Gemm_th_blk_var5(), FLA_Gemm_th_blk_var6(), FLA_Gemm_th_unb_var1(), FLA_Gemm_th_unb_var2(), FLA_Gemm_th_unb_var3(), FLA_Gemm_th_unb_var4(), FLA_Gemm_th_unb_var5(), FLA_Gemm_th_unb_var6(), FLA_Gemm_tn_blk_var1(), FLA_Gemm_tn_blk_var2(), FLA_Gemm_tn_blk_var3(), FLA_Gemm_tn_blk_var4(), FLA_Gemm_tn_unb_var1(), FLA_Gemm_tn_unb_var2(), FLA_Gemm_tn_unb_var3(), FLA_Gemm_tn_unb_var4(), FLA_Gemm_tt_blk_var1(), FLA_Gemm_tt_blk_var2(), FLA_Gemm_tt_blk_var3(), FLA_Gemm_tt_blk_var4(), FLA_Gemm_tt_blk_var5(), FLA_Gemm_tt_blk_var6(), FLA_Gemm_tt_unb_var1(), FLA_Gemm_tt_unb_var2(), FLA_Gemm_tt_unb_var3(), FLA_Gemm_tt_unb_var4(), FLA_Gemm_tt_unb_var5(), FLA_Gemm_tt_unb_var6(), FLA_Gemv_c_blk_var1(), FLA_Gemv_c_blk_var2(), FLA_Gemv_n_blk_var5(), FLA_Gemv_n_blk_var6(), FLA_Gemv_t_blk_var1(), FLA_Gemv_t_blk_var2(), FLA_Hemm_ll_blk_var10(), FLA_Hemm_ll_blk_var9(), FLA_Hemm_ll_unb_var10(), FLA_Hemm_ll_unb_var9(), FLA_Hemm_lu_blk_var10(), FLA_Hemm_lu_blk_var9(), FLA_Hemm_lu_unb_var10(), FLA_Hemm_lu_unb_var9(), FLA_Hemm_rl_blk_var1(), FLA_Hemm_rl_blk_var2(), FLA_Hemm_rl_blk_var3(), FLA_Hemm_rl_blk_var4(), FLA_Hemm_rl_blk_var5(), FLA_Hemm_rl_blk_var6(), FLA_Hemm_rl_blk_var7(), FLA_Hemm_rl_blk_var8(), FLA_Hemm_rl_unb_var1(), FLA_Hemm_rl_unb_var2(), FLA_Hemm_rl_unb_var3(), FLA_Hemm_rl_unb_var4(), FLA_Hemm_rl_unb_var5(), FLA_Hemm_rl_unb_var6(), FLA_Hemm_rl_unb_var7(), FLA_Hemm_rl_unb_var8(), FLA_Hemm_ru_blk_var1(), FLA_Hemm_ru_blk_var2(), FLA_Hemm_ru_blk_var3(), FLA_Hemm_ru_blk_var4(), FLA_Hemm_ru_blk_var5(), FLA_Hemm_ru_blk_var6(), FLA_Hemm_ru_blk_var7(), FLA_Hemm_ru_blk_var8(), FLA_Hemm_ru_unb_var1(), FLA_Hemm_ru_unb_var2(), FLA_Hemm_ru_unb_var3(), FLA_Hemm_ru_unb_var4(), FLA_Hemm_ru_unb_var5(), FLA_Hemm_ru_unb_var6(), FLA_Hemm_ru_unb_var7(), FLA_Hemm_ru_unb_var8(), FLA_Her2k_lh_blk_var1(), FLA_Her2k_lh_blk_var2(), FLA_Her2k_lh_blk_var3(), FLA_Her2k_lh_blk_var4(), FLA_Her2k_lh_blk_var5(), FLA_Her2k_lh_blk_var6(), FLA_Her2k_lh_blk_var7(), FLA_Her2k_lh_blk_var8(), FLA_Her2k_lh_unb_var1(), FLA_Her2k_lh_unb_var2(), FLA_Her2k_lh_unb_var3(), FLA_Her2k_lh_unb_var4(), FLA_Her2k_lh_unb_var5(), FLA_Her2k_lh_unb_var6(), FLA_Her2k_lh_unb_var7(), FLA_Her2k_lh_unb_var8(), FLA_Her2k_ln_blk_var10(), FLA_Her2k_ln_blk_var9(), FLA_Her2k_ln_unb_var10(), FLA_Her2k_ln_unb_var9(), FLA_Her2k_uh_blk_var1(), FLA_Her2k_uh_blk_var2(), FLA_Her2k_uh_blk_var3(), FLA_Her2k_uh_blk_var4(), FLA_Her2k_uh_blk_var5(), FLA_Her2k_uh_blk_var6(), FLA_Her2k_uh_blk_var7(), FLA_Her2k_uh_blk_var8(), FLA_Her2k_uh_unb_var1(), FLA_Her2k_uh_unb_var2(), FLA_Her2k_uh_unb_var3(), FLA_Her2k_uh_unb_var4(), FLA_Her2k_uh_unb_var5(), FLA_Her2k_uh_unb_var6(), FLA_Her2k_uh_unb_var7(), FLA_Her2k_uh_unb_var8(), FLA_Her2k_un_blk_var10(), FLA_Her2k_un_blk_var9(), FLA_Her2k_un_unb_var10(), FLA_Her2k_un_unb_var9(), FLA_Herk_lh_blk_var1(), FLA_Herk_lh_blk_var2(), FLA_Herk_lh_blk_var3(), FLA_Herk_lh_blk_var4(), FLA_Herk_lh_unb_var1(), FLA_Herk_lh_unb_var2(), FLA_Herk_lh_unb_var3(), FLA_Herk_lh_unb_var4(), FLA_Herk_ln_blk_var5(), FLA_Herk_ln_blk_var6(), FLA_Herk_ln_unb_var5(), FLA_Herk_ln_unb_var6(), FLA_Herk_uh_blk_var1(), FLA_Herk_uh_blk_var2(), FLA_Herk_uh_blk_var3(), FLA_Herk_uh_blk_var4(), FLA_Herk_uh_unb_var1(), FLA_Herk_uh_unb_var2(), FLA_Herk_uh_unb_var3(), FLA_Herk_uh_unb_var4(), FLA_Herk_un_blk_var5(), FLA_Herk_un_blk_var6(), FLA_Herk_un_unb_var5(), FLA_Herk_un_unb_var6(), FLA_LU_piv_blk_var3(), FLA_LU_piv_unb_var3(), FLA_Norm1(), FLA_QR_UT_blk_var2(), FLA_QR_UT_inc_blk_var2(), FLA_QR_UT_recover_tau(), FLA_QR_UT_UD_Accum_T_unb_var1(), FLA_QR_UT_UD_blk_var1(), FLA_SA_FS_blk(), FLA_SA_LU_blk(), FLA_Swap_t_blk_var1(), FLA_Swap_t_blk_var2(), FLA_Sylv_nn_blk_var17(), FLA_Sylv_nn_blk_var18(), FLA_Sylv_nt_blk_var17(), FLA_Sylv_nt_blk_var18(), FLA_Sylv_tn_blk_var17(), FLA_Sylv_tn_blk_var18(), FLA_Sylv_tt_blk_var17(), FLA_Sylv_tt_blk_var18(), FLA_Symm_ll_blk_var10(), FLA_Symm_ll_blk_var9(), FLA_Symm_ll_unb_var10(), FLA_Symm_ll_unb_var9(), FLA_Symm_lu_blk_var10(), FLA_Symm_lu_blk_var9(), FLA_Symm_lu_unb_var10(), FLA_Symm_lu_unb_var9(), FLA_Symm_rl_blk_var1(), FLA_Symm_rl_blk_var2(), FLA_Symm_rl_blk_var3(), FLA_Symm_rl_blk_var4(), FLA_Symm_rl_blk_var5(), FLA_Symm_rl_blk_var6(), FLA_Symm_rl_blk_var7(), FLA_Symm_rl_blk_var8(), FLA_Symm_rl_unb_var1(), FLA_Symm_rl_unb_var2(), FLA_Symm_rl_unb_var3(), FLA_Symm_rl_unb_var4(), FLA_Symm_rl_unb_var5(), FLA_Symm_rl_unb_var6(), FLA_Symm_rl_unb_var7(), FLA_Symm_rl_unb_var8(), FLA_Symm_ru_blk_var1(), FLA_Symm_ru_blk_var2(), FLA_Symm_ru_blk_var3(), FLA_Symm_ru_blk_var4(), FLA_Symm_ru_blk_var5(), FLA_Symm_ru_blk_var6(), FLA_Symm_ru_blk_var7(), FLA_Symm_ru_blk_var8(), FLA_Symm_ru_unb_var1(), FLA_Symm_ru_unb_var2(), FLA_Symm_ru_unb_var3(), FLA_Symm_ru_unb_var4(), FLA_Symm_ru_unb_var5(), FLA_Symm_ru_unb_var6(), FLA_Symm_ru_unb_var7(), FLA_Symm_ru_unb_var8(), FLA_Syr2k_ln_blk_var10(), FLA_Syr2k_ln_blk_var9(), FLA_Syr2k_ln_unb_var10(), FLA_Syr2k_ln_unb_var9(), FLA_Syr2k_lt_blk_var1(), FLA_Syr2k_lt_blk_var2(), FLA_Syr2k_lt_blk_var3(), FLA_Syr2k_lt_blk_var4(), FLA_Syr2k_lt_blk_var5(), FLA_Syr2k_lt_blk_var6(), FLA_Syr2k_lt_blk_var7(), FLA_Syr2k_lt_blk_var8(), FLA_Syr2k_lt_unb_var1(), FLA_Syr2k_lt_unb_var2(), FLA_Syr2k_lt_unb_var3(), FLA_Syr2k_lt_unb_var4(), FLA_Syr2k_lt_unb_var5(), FLA_Syr2k_lt_unb_var6(), FLA_Syr2k_lt_unb_var7(), FLA_Syr2k_lt_unb_var8(), FLA_Syr2k_un_blk_var10(), FLA_Syr2k_un_blk_var9(), FLA_Syr2k_un_unb_var10(), FLA_Syr2k_un_unb_var9(), FLA_Syr2k_ut_blk_var1(), FLA_Syr2k_ut_blk_var2(), FLA_Syr2k_ut_blk_var3(), FLA_Syr2k_ut_blk_var4(), FLA_Syr2k_ut_blk_var5(), FLA_Syr2k_ut_blk_var6(), FLA_Syr2k_ut_blk_var7(), FLA_Syr2k_ut_blk_var8(), FLA_Syr2k_ut_unb_var1(), FLA_Syr2k_ut_unb_var2(), FLA_Syr2k_ut_unb_var3(), FLA_Syr2k_ut_unb_var4(), FLA_Syr2k_ut_unb_var5(), FLA_Syr2k_ut_unb_var6(), FLA_Syr2k_ut_unb_var7(), FLA_Syr2k_ut_unb_var8(), FLA_Syrk_ln_blk_var5(), FLA_Syrk_ln_blk_var6(), FLA_Syrk_ln_unb_var5(), FLA_Syrk_ln_unb_var6(), FLA_Syrk_lt_blk_var1(), FLA_Syrk_lt_blk_var2(), FLA_Syrk_lt_blk_var3(), FLA_Syrk_lt_blk_var4(), FLA_Syrk_lt_unb_var1(), FLA_Syrk_lt_unb_var2(), FLA_Syrk_lt_unb_var3(), FLA_Syrk_lt_unb_var4(), FLA_Syrk_un_blk_var5(), FLA_Syrk_un_blk_var6(), FLA_Syrk_un_unb_var5(), FLA_Syrk_un_unb_var6(), FLA_Syrk_ut_blk_var1(), FLA_Syrk_ut_blk_var2(), FLA_Syrk_ut_blk_var3(), FLA_Syrk_ut_blk_var4(), FLA_Syrk_ut_unb_var1(), FLA_Syrk_ut_unb_var2(), FLA_Syrk_ut_unb_var3(), FLA_Syrk_ut_unb_var4(), FLA_Trmm_llh_blk_var3(), FLA_Trmm_llh_blk_var4(), FLA_Trmm_llh_unb_var3(), FLA_Trmm_llh_unb_var4(), FLA_Trmm_lln_blk_var3(), FLA_Trmm_lln_blk_var4(), FLA_Trmm_lln_unb_var3(), FLA_Trmm_lln_unb_var4(), FLA_Trmm_llt_blk_var3(), FLA_Trmm_llt_blk_var4(), FLA_Trmm_llt_unb_var3(), FLA_Trmm_llt_unb_var4(), FLA_Trmm_luh_blk_var3(), FLA_Trmm_luh_blk_var4(), FLA_Trmm_luh_unb_var3(), FLA_Trmm_luh_unb_var4(), FLA_Trmm_lun_blk_var3(), FLA_Trmm_lun_blk_var4(), FLA_Trmm_lun_unb_var3(), FLA_Trmm_lun_unb_var4(), FLA_Trmm_lut_blk_var3(), FLA_Trmm_lut_blk_var4(), FLA_Trmm_lut_unb_var3(), FLA_Trmm_lut_unb_var4(), FLA_Trmm_rlh_blk_var1(), FLA_Trmm_rlh_blk_var2(), FLA_Trmm_rlh_unb_var1(), FLA_Trmm_rlh_unb_var2(), FLA_Trmm_rln_blk_var1(), FLA_Trmm_rln_blk_var2(), FLA_Trmm_rln_unb_var1(), FLA_Trmm_rln_unb_var2(), FLA_Trmm_rlt_blk_var1(), FLA_Trmm_rlt_blk_var2(), FLA_Trmm_rlt_unb_var1(), FLA_Trmm_rlt_unb_var2(), FLA_Trmm_ruh_blk_var1(), FLA_Trmm_ruh_blk_var2(), FLA_Trmm_ruh_unb_var1(), FLA_Trmm_ruh_unb_var2(), FLA_Trmm_run_blk_var1(), FLA_Trmm_run_blk_var2(), FLA_Trmm_run_unb_var1(), FLA_Trmm_run_unb_var2(), FLA_Trmm_rut_blk_var1(), FLA_Trmm_rut_blk_var2(), FLA_Trmm_rut_unb_var1(), FLA_Trmm_rut_unb_var2(), FLA_Trsm_llh_blk_var3(), FLA_Trsm_llh_blk_var4(), FLA_Trsm_llh_unb_var3(), FLA_Trsm_llh_unb_var4(), FLA_Trsm_lln_blk_var3(), FLA_Trsm_lln_blk_var4(), FLA_Trsm_lln_unb_var3(), FLA_Trsm_lln_unb_var4(), FLA_Trsm_llt_blk_var3(), FLA_Trsm_llt_blk_var4(), FLA_Trsm_llt_unb_var3(), FLA_Trsm_llt_unb_var4(), FLA_Trsm_luh_blk_var3(), FLA_Trsm_luh_blk_var4(), FLA_Trsm_luh_unb_var3(), FLA_Trsm_luh_unb_var4(), FLA_Trsm_lun_blk_var3(), FLA_Trsm_lun_blk_var4(), FLA_Trsm_lun_unb_var3(), FLA_Trsm_lun_unb_var4(), FLA_Trsm_lut_blk_var3(), FLA_Trsm_lut_blk_var4(), FLA_Trsm_lut_unb_var3(), FLA_Trsm_lut_unb_var4(), FLA_Trsm_rlh_blk_var1(), FLA_Trsm_rlh_blk_var2(), FLA_Trsm_rlh_unb_var1(), FLA_Trsm_rlh_unb_var2(), FLA_Trsm_rln_blk_var1(), FLA_Trsm_rln_blk_var2(), FLA_Trsm_rln_unb_var1(), FLA_Trsm_rln_unb_var2(), FLA_Trsm_rlt_blk_var1(), FLA_Trsm_rlt_blk_var2(), FLA_Trsm_rlt_unb_var1(), FLA_Trsm_rlt_unb_var2(), FLA_Trsm_ruh_blk_var1(), FLA_Trsm_ruh_blk_var2(), FLA_Trsm_ruh_unb_var1(), FLA_Trsm_ruh_unb_var2(), FLA_Trsm_run_blk_var1(), FLA_Trsm_run_blk_var2(), FLA_Trsm_run_unb_var1(), FLA_Trsm_run_unb_var2(), FLA_Trsm_rut_blk_var1(), FLA_Trsm_rut_blk_var2(), FLA_Trsm_rut_unb_var1(), FLA_Trsm_rut_unb_var2(), FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_Obj_attach_buffer_hierarchy(), FLASH_Obj_create_hierarchy(), FLASH_Obj_scalar_width(), FLASH_SA_FS(), and FLASH_Trsm_piv().

00519 {
00520   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00521     FLA_Cont_with_1x3_to_1x2_check( AL, AR,        A0, A1, A2,
00522                                     side );
00523 
00524   if ( side == FLA_LEFT )
00525   {
00526     AL->m    = A0.m;
00527     AL->n    = A0.n + A1.n;
00528     AL->offm = A0.offm;
00529     AL->offn = A0.offn;
00530     AL->base = A0.base;
00531 
00532     AR->m    = A2.m;
00533     AR->n    = A2.n;
00534     AR->offm = A2.offm;
00535     AR->offn = A2.offn;
00536     AR->base = A2.base;
00537   }
00538   else
00539   {
00540     AL->m    = A0.m;
00541     AL->n    = A0.n;
00542     AL->offm = A0.offm;
00543     AL->offn = A0.offn;
00544     AL->base = A0.base;
00545 
00546     AR->m    = A1.m;
00547     AR->n    = A1.n + A2.n;
00548     AR->offm = A1.offm;
00549     AR->offn = A1.offn;
00550     AR->base = A1.base;
00551   }
00552 
00553   return FLA_SUCCESS;
00554 }

FLA_Error FLA_Cont_with_1x3_to_1x2_check ( FLA_Obj AL,
FLA_Obj AR,
FLA_Obj  A0,
FLA_Obj  A1,
FLA_Obj  A2,
FLA_Side  side 
)

References FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_side().

Referenced by FLA_Cont_with_1x3_to_1x2().

00038 {
00039   FLA_Error e_val;
00040 
00041   e_val = FLA_Check_null_pointer( AL );
00042   FLA_Check_error_code( e_val );
00043 
00044   e_val = FLA_Check_null_pointer( AR );
00045   FLA_Check_error_code( e_val );
00046 
00047   e_val = FLA_Check_valid_object_datatype( A0 );
00048   FLA_Check_error_code( e_val );
00049 
00050   e_val = FLA_Check_valid_object_datatype( A1 );
00051   FLA_Check_error_code( e_val );
00052 
00053   e_val = FLA_Check_valid_object_datatype( A2 );
00054   FLA_Check_error_code( e_val );
00055 
00056   e_val = FLA_Check_valid_side( side );
00057   FLA_Check_error_code( e_val );
00058 
00059   // Needed: check for adjacency, similar to those in FLA_Merge_*().
00060 
00061   return FLA_SUCCESS;
00062 }

FLA_Error FLA_Cont_with_3x1_to_2x1 ( FLA_Obj AT,
FLA_Obj  A0,
FLA_Obj  A1,
FLA_Obj AB,
FLA_Obj  A2,
FLA_Side  side 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Cont_with_3x1_to_2x1_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Accum_T_UT_fc_unb_var1(), FLA_Apply_Q_UT_inc_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var2(), FLA_Axpy_blk_var1(), FLA_Axpy_blk_var2(), FLA_Copy_blk_var1(), FLA_Copy_blk_var2(), FLA_Gemm_hh_blk_var1(), FLA_Gemm_hh_blk_var2(), FLA_Gemm_hh_blk_var3(), FLA_Gemm_hh_blk_var4(), FLA_Gemm_hh_blk_var5(), FLA_Gemm_hh_blk_var6(), FLA_Gemm_hh_unb_var1(), FLA_Gemm_hh_unb_var2(), FLA_Gemm_hh_unb_var3(), FLA_Gemm_hh_unb_var4(), FLA_Gemm_hh_unb_var5(), FLA_Gemm_hh_unb_var6(), FLA_Gemm_hn_blk_var1(), FLA_Gemm_hn_blk_var2(), FLA_Gemm_hn_blk_var5(), FLA_Gemm_hn_blk_var6(), FLA_Gemm_hn_unb_var1(), FLA_Gemm_hn_unb_var2(), FLA_Gemm_hn_unb_var5(), FLA_Gemm_hn_unb_var6(), FLA_Gemm_ht_blk_var1(), FLA_Gemm_ht_blk_var2(), FLA_Gemm_ht_blk_var3(), FLA_Gemm_ht_blk_var4(), FLA_Gemm_ht_blk_var5(), FLA_Gemm_ht_blk_var6(), FLA_Gemm_ht_unb_var1(), FLA_Gemm_ht_unb_var2(), FLA_Gemm_ht_unb_var3(), FLA_Gemm_ht_unb_var4(), FLA_Gemm_ht_unb_var5(), FLA_Gemm_ht_unb_var6(), FLA_Gemm_nh_blk_var1(), FLA_Gemm_nh_blk_var2(), FLA_Gemm_nh_blk_var3(), FLA_Gemm_nh_blk_var4(), FLA_Gemm_nh_unb_var1(), FLA_Gemm_nh_unb_var2(), FLA_Gemm_nh_unb_var3(), FLA_Gemm_nh_unb_var4(), FLA_Gemm_nn_blk_var1(), FLA_Gemm_nn_blk_var2(), FLA_Gemm_nn_blk_var5(), FLA_Gemm_nn_blk_var6(), FLA_Gemm_nn_unb_var1(), FLA_Gemm_nn_unb_var2(), FLA_Gemm_nn_unb_var5(), FLA_Gemm_nn_unb_var6(), FLA_Gemm_nt_blk_var1(), FLA_Gemm_nt_blk_var2(), FLA_Gemm_nt_blk_var3(), FLA_Gemm_nt_blk_var4(), FLA_Gemm_nt_unb_var1(), FLA_Gemm_nt_unb_var2(), FLA_Gemm_nt_unb_var3(), FLA_Gemm_nt_unb_var4(), FLA_Gemm_th_blk_var1(), FLA_Gemm_th_blk_var2(), FLA_Gemm_th_blk_var3(), FLA_Gemm_th_blk_var4(), FLA_Gemm_th_blk_var5(), FLA_Gemm_th_blk_var6(), FLA_Gemm_th_unb_var1(), FLA_Gemm_th_unb_var2(), FLA_Gemm_th_unb_var3(), FLA_Gemm_th_unb_var4(), FLA_Gemm_th_unb_var5(), FLA_Gemm_th_unb_var6(), FLA_Gemm_tn_blk_var1(), FLA_Gemm_tn_blk_var2(), FLA_Gemm_tn_blk_var5(), FLA_Gemm_tn_blk_var6(), FLA_Gemm_tn_unb_var1(), FLA_Gemm_tn_unb_var2(), FLA_Gemm_tn_unb_var5(), FLA_Gemm_tn_unb_var6(), FLA_Gemm_tt_blk_var1(), FLA_Gemm_tt_blk_var2(), FLA_Gemm_tt_blk_var3(), FLA_Gemm_tt_blk_var4(), FLA_Gemm_tt_blk_var5(), FLA_Gemm_tt_blk_var6(), FLA_Gemm_tt_unb_var1(), FLA_Gemm_tt_unb_var2(), FLA_Gemm_tt_unb_var3(), FLA_Gemm_tt_unb_var4(), FLA_Gemm_tt_unb_var5(), FLA_Gemm_tt_unb_var6(), FLA_Gemv_c_blk_var1(), FLA_Gemv_c_blk_var2(), FLA_Gemv_c_blk_var5(), FLA_Gemv_c_blk_var6(), FLA_Gemv_n_blk_var1(), FLA_Gemv_n_blk_var2(), FLA_Gemv_n_blk_var5(), FLA_Gemv_n_blk_var6(), FLA_Gemv_t_blk_var1(), FLA_Gemv_t_blk_var2(), FLA_Gemv_t_blk_var5(), FLA_Gemv_t_blk_var6(), FLA_Hemm_ll_blk_var1(), FLA_Hemm_ll_blk_var2(), FLA_Hemm_ll_blk_var3(), FLA_Hemm_ll_blk_var4(), FLA_Hemm_ll_blk_var5(), FLA_Hemm_ll_blk_var6(), FLA_Hemm_ll_blk_var7(), FLA_Hemm_ll_blk_var8(), FLA_Hemm_ll_unb_var1(), FLA_Hemm_ll_unb_var2(), FLA_Hemm_ll_unb_var3(), FLA_Hemm_ll_unb_var4(), FLA_Hemm_ll_unb_var5(), FLA_Hemm_ll_unb_var6(), FLA_Hemm_ll_unb_var7(), FLA_Hemm_ll_unb_var8(), FLA_Hemm_lu_blk_var1(), FLA_Hemm_lu_blk_var2(), FLA_Hemm_lu_blk_var3(), FLA_Hemm_lu_blk_var4(), FLA_Hemm_lu_blk_var5(), FLA_Hemm_lu_blk_var6(), FLA_Hemm_lu_blk_var7(), FLA_Hemm_lu_blk_var8(), FLA_Hemm_lu_unb_var1(), FLA_Hemm_lu_unb_var2(), FLA_Hemm_lu_unb_var3(), FLA_Hemm_lu_unb_var4(), FLA_Hemm_lu_unb_var5(), FLA_Hemm_lu_unb_var6(), FLA_Hemm_lu_unb_var7(), FLA_Hemm_lu_unb_var8(), FLA_Hemm_rl_blk_var10(), FLA_Hemm_rl_blk_var9(), FLA_Hemm_rl_unb_var10(), FLA_Hemm_rl_unb_var9(), FLA_Hemm_ru_blk_var10(), FLA_Hemm_ru_blk_var9(), FLA_Hemm_ru_unb_var10(), FLA_Hemm_ru_unb_var9(), FLA_Her2k_lh_blk_var10(), FLA_Her2k_lh_blk_var9(), FLA_Her2k_lh_unb_var10(), FLA_Her2k_lh_unb_var9(), FLA_Her2k_ln_blk_var1(), FLA_Her2k_ln_blk_var2(), FLA_Her2k_ln_blk_var3(), FLA_Her2k_ln_blk_var4(), FLA_Her2k_ln_blk_var5(), FLA_Her2k_ln_blk_var6(), FLA_Her2k_ln_blk_var7(), FLA_Her2k_ln_blk_var8(), FLA_Her2k_ln_unb_var1(), FLA_Her2k_ln_unb_var2(), FLA_Her2k_ln_unb_var3(), FLA_Her2k_ln_unb_var4(), FLA_Her2k_ln_unb_var5(), FLA_Her2k_ln_unb_var6(), FLA_Her2k_ln_unb_var7(), FLA_Her2k_ln_unb_var8(), FLA_Her2k_uh_blk_var10(), FLA_Her2k_uh_blk_var9(), FLA_Her2k_uh_unb_var10(), FLA_Her2k_uh_unb_var9(), FLA_Her2k_un_blk_var1(), FLA_Her2k_un_blk_var2(), FLA_Her2k_un_blk_var3(), FLA_Her2k_un_blk_var4(), FLA_Her2k_un_blk_var5(), FLA_Her2k_un_blk_var6(), FLA_Her2k_un_blk_var7(), FLA_Her2k_un_blk_var8(), FLA_Her2k_un_unb_var1(), FLA_Her2k_un_unb_var2(), FLA_Her2k_un_unb_var3(), FLA_Her2k_un_unb_var4(), FLA_Her2k_un_unb_var5(), FLA_Her2k_un_unb_var6(), FLA_Her2k_un_unb_var7(), FLA_Her2k_un_unb_var8(), FLA_Herk_lh_blk_var5(), FLA_Herk_lh_blk_var6(), FLA_Herk_lh_unb_var5(), FLA_Herk_lh_unb_var6(), FLA_Herk_ln_blk_var1(), FLA_Herk_ln_blk_var2(), FLA_Herk_ln_blk_var3(), FLA_Herk_ln_blk_var4(), FLA_Herk_ln_unb_var1(), FLA_Herk_ln_unb_var2(), FLA_Herk_ln_unb_var3(), FLA_Herk_ln_unb_var4(), FLA_Herk_uh_blk_var5(), FLA_Herk_uh_blk_var6(), FLA_Herk_uh_unb_var5(), FLA_Herk_uh_unb_var6(), FLA_Herk_un_blk_var1(), FLA_Herk_un_blk_var2(), FLA_Herk_un_blk_var3(), FLA_Herk_un_blk_var4(), FLA_Herk_un_unb_var1(), FLA_Herk_un_unb_var2(), FLA_Herk_un_unb_var3(), FLA_Herk_un_unb_var4(), FLA_LQ_UT_blk_var2(), FLA_LQ_UT_recover_tau(), FLA_LQ_UT_recover_tau_submatrix(), FLA_LU_piv_blk_var3(), FLA_LU_piv_blk_var4(), FLA_LU_piv_blk_var5(), FLA_LU_piv_unb_var3(), FLA_LU_piv_unb_var3b(), FLA_LU_piv_unb_var4(), FLA_LU_piv_unb_var5(), FLA_Norm_inf(), FLA_QR_UT_recover_tau(), FLA_QR_UT_recover_tau_submatrix(), FLA_QR_UT_UD_blk_var2(), FLA_SA_FS_blk(), FLA_SA_LU_blk(), FLA_Swap_t_blk_var1(), FLA_Swap_t_blk_var2(), FLA_Sylv_nn_blk_var15(), FLA_Sylv_nn_blk_var16(), FLA_Sylv_nt_blk_var15(), FLA_Sylv_nt_blk_var16(), FLA_Sylv_tn_blk_var15(), FLA_Sylv_tn_blk_var16(), FLA_Sylv_tt_blk_var15(), FLA_Sylv_tt_blk_var16(), FLA_Symm_ll_blk_var1(), FLA_Symm_ll_blk_var2(), FLA_Symm_ll_blk_var3(), FLA_Symm_ll_blk_var4(), FLA_Symm_ll_blk_var5(), FLA_Symm_ll_blk_var6(), FLA_Symm_ll_blk_var7(), FLA_Symm_ll_blk_var8(), FLA_Symm_ll_unb_var1(), FLA_Symm_ll_unb_var2(), FLA_Symm_ll_unb_var3(), FLA_Symm_ll_unb_var4(), FLA_Symm_ll_unb_var5(), FLA_Symm_ll_unb_var6(), FLA_Symm_ll_unb_var7(), FLA_Symm_ll_unb_var8(), FLA_Symm_lu_blk_var1(), FLA_Symm_lu_blk_var2(), FLA_Symm_lu_blk_var3(), FLA_Symm_lu_blk_var4(), FLA_Symm_lu_blk_var5(), FLA_Symm_lu_blk_var6(), FLA_Symm_lu_blk_var7(), FLA_Symm_lu_blk_var8(), FLA_Symm_lu_unb_var1(), FLA_Symm_lu_unb_var2(), FLA_Symm_lu_unb_var3(), FLA_Symm_lu_unb_var4(), FLA_Symm_lu_unb_var5(), FLA_Symm_lu_unb_var6(), FLA_Symm_lu_unb_var7(), FLA_Symm_lu_unb_var8(), FLA_Symm_rl_blk_var10(), FLA_Symm_rl_blk_var9(), FLA_Symm_rl_unb_var10(), FLA_Symm_rl_unb_var9(), FLA_Symm_ru_blk_var10(), FLA_Symm_ru_blk_var9(), FLA_Symm_ru_unb_var10(), FLA_Symm_ru_unb_var9(), FLA_Syr2k_ln_blk_var1(), FLA_Syr2k_ln_blk_var2(), FLA_Syr2k_ln_blk_var3(), FLA_Syr2k_ln_blk_var4(), FLA_Syr2k_ln_blk_var5(), FLA_Syr2k_ln_blk_var6(), FLA_Syr2k_ln_blk_var7(), FLA_Syr2k_ln_blk_var8(), FLA_Syr2k_ln_unb_var1(), FLA_Syr2k_ln_unb_var2(), FLA_Syr2k_ln_unb_var3(), FLA_Syr2k_ln_unb_var4(), FLA_Syr2k_ln_unb_var5(), FLA_Syr2k_ln_unb_var6(), FLA_Syr2k_ln_unb_var7(), FLA_Syr2k_ln_unb_var8(), FLA_Syr2k_lt_blk_var10(), FLA_Syr2k_lt_blk_var9(), FLA_Syr2k_lt_unb_var10(), FLA_Syr2k_lt_unb_var9(), FLA_Syr2k_un_blk_var1(), FLA_Syr2k_un_blk_var2(), FLA_Syr2k_un_blk_var3(), FLA_Syr2k_un_blk_var4(), FLA_Syr2k_un_blk_var5(), FLA_Syr2k_un_blk_var6(), FLA_Syr2k_un_blk_var7(), FLA_Syr2k_un_blk_var8(), FLA_Syr2k_un_unb_var1(), FLA_Syr2k_un_unb_var2(), FLA_Syr2k_un_unb_var3(), FLA_Syr2k_un_unb_var4(), FLA_Syr2k_un_unb_var5(), FLA_Syr2k_un_unb_var6(), FLA_Syr2k_un_unb_var7(), FLA_Syr2k_un_unb_var8(), FLA_Syr2k_ut_blk_var10(), FLA_Syr2k_ut_blk_var9(), FLA_Syr2k_ut_unb_var10(), FLA_Syr2k_ut_unb_var9(), FLA_Syrk_ln_blk_var1(), FLA_Syrk_ln_blk_var2(), FLA_Syrk_ln_blk_var3(), FLA_Syrk_ln_blk_var4(), FLA_Syrk_ln_unb_var1(), FLA_Syrk_ln_unb_var2(), FLA_Syrk_ln_unb_var3(), FLA_Syrk_ln_unb_var4(), FLA_Syrk_lt_blk_var5(), FLA_Syrk_lt_blk_var6(), FLA_Syrk_lt_unb_var5(), FLA_Syrk_lt_unb_var6(), FLA_Syrk_un_blk_var1(), FLA_Syrk_un_blk_var2(), FLA_Syrk_un_blk_var3(), FLA_Syrk_un_blk_var4(), FLA_Syrk_un_unb_var1(), FLA_Syrk_un_unb_var2(), FLA_Syrk_un_unb_var3(), FLA_Syrk_un_unb_var4(), FLA_Syrk_ut_blk_var5(), FLA_Syrk_ut_blk_var6(), FLA_Syrk_ut_unb_var5(), FLA_Syrk_ut_unb_var6(), FLA_Trmm_llh_blk_var1(), FLA_Trmm_llh_blk_var2(), FLA_Trmm_llh_unb_var1(), FLA_Trmm_llh_unb_var2(), FLA_Trmm_lln_blk_var1(), FLA_Trmm_lln_blk_var2(), FLA_Trmm_lln_unb_var1(), FLA_Trmm_lln_unb_var2(), FLA_Trmm_llt_blk_var1(), FLA_Trmm_llt_blk_var2(), FLA_Trmm_llt_unb_var1(), FLA_Trmm_llt_unb_var2(), FLA_Trmm_luh_blk_var1(), FLA_Trmm_luh_blk_var2(), FLA_Trmm_luh_unb_var1(), FLA_Trmm_luh_unb_var2(), FLA_Trmm_lun_blk_var1(), FLA_Trmm_lun_blk_var2(), FLA_Trmm_lun_unb_var1(), FLA_Trmm_lun_unb_var2(), FLA_Trmm_lut_blk_var1(), FLA_Trmm_lut_blk_var2(), FLA_Trmm_lut_unb_var1(), FLA_Trmm_lut_unb_var2(), FLA_Trmm_rlh_blk_var3(), FLA_Trmm_rlh_blk_var4(), FLA_Trmm_rlh_unb_var3(), FLA_Trmm_rlh_unb_var4(), FLA_Trmm_rln_blk_var3(), FLA_Trmm_rln_blk_var4(), FLA_Trmm_rln_unb_var3(), FLA_Trmm_rln_unb_var4(), FLA_Trmm_rlt_blk_var3(), FLA_Trmm_rlt_blk_var4(), FLA_Trmm_rlt_unb_var3(), FLA_Trmm_rlt_unb_var4(), FLA_Trmm_ruh_blk_var3(), FLA_Trmm_ruh_blk_var4(), FLA_Trmm_ruh_unb_var3(), FLA_Trmm_ruh_unb_var4(), FLA_Trmm_run_blk_var3(), FLA_Trmm_run_blk_var4(), FLA_Trmm_run_unb_var3(), FLA_Trmm_run_unb_var4(), FLA_Trmm_rut_blk_var3(), FLA_Trmm_rut_blk_var4(), FLA_Trmm_rut_unb_var3(), FLA_Trmm_rut_unb_var4(), FLA_Trsm_llh_blk_var1(), FLA_Trsm_llh_blk_var2(), FLA_Trsm_llh_unb_var1(), FLA_Trsm_llh_unb_var2(), FLA_Trsm_lln_blk_var1(), FLA_Trsm_lln_blk_var2(), FLA_Trsm_lln_unb_var1(), FLA_Trsm_lln_unb_var2(), FLA_Trsm_llt_blk_var1(), FLA_Trsm_llt_blk_var2(), FLA_Trsm_llt_unb_var1(), FLA_Trsm_llt_unb_var2(), FLA_Trsm_luh_blk_var1(), FLA_Trsm_luh_blk_var2(), FLA_Trsm_luh_unb_var1(), FLA_Trsm_luh_unb_var2(), FLA_Trsm_lun_blk_var1(), FLA_Trsm_lun_blk_var2(), FLA_Trsm_lun_unb_var1(), FLA_Trsm_lun_unb_var2(), FLA_Trsm_lut_blk_var1(), FLA_Trsm_lut_blk_var2(), FLA_Trsm_lut_unb_var1(), FLA_Trsm_lut_unb_var2(), FLA_Trsm_rlh_blk_var3(), FLA_Trsm_rlh_blk_var4(), FLA_Trsm_rlh_unb_var3(), FLA_Trsm_rlh_unb_var4(), FLA_Trsm_rln_blk_var3(), FLA_Trsm_rln_blk_var4(), FLA_Trsm_rln_unb_var3(), FLA_Trsm_rln_unb_var4(), FLA_Trsm_rlt_blk_var3(), FLA_Trsm_rlt_blk_var4(), FLA_Trsm_rlt_unb_var3(), FLA_Trsm_rlt_unb_var4(), FLA_Trsm_ruh_blk_var3(), FLA_Trsm_ruh_blk_var4(), FLA_Trsm_ruh_unb_var3(), FLA_Trsm_ruh_unb_var4(), FLA_Trsm_run_blk_var3(), FLA_Trsm_run_blk_var4(), FLA_Trsm_run_unb_var3(), FLA_Trsm_run_unb_var4(), FLA_Trsm_rut_blk_var3(), FLA_Trsm_rut_blk_var4(), FLA_Trsm_rut_unb_var3(), FLA_Trsm_rut_unb_var4(), FLA_Trsv_lc_blk_var1(), FLA_Trsv_lc_blk_var2(), FLA_Trsv_ln_blk_var1(), FLA_Trsv_ln_blk_var2(), FLA_Trsv_lt_blk_var1(), FLA_Trsv_lt_blk_var2(), FLA_Trsv_uc_blk_var1(), FLA_Trsv_uc_blk_var2(), FLA_Trsv_un_blk_var1(), FLA_Trsv_un_blk_var2(), FLA_Trsv_ut_blk_var1(), FLA_Trsv_ut_blk_var2(), FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_FS_incpiv_aux1(), FLASH_FS_incpiv_aux2(), FLASH_Obj_attach_buffer_hierarchy(), FLASH_Obj_scalar_length(), and FLASH_SA_LU().

00471 {
00472   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00473     FLA_Cont_with_3x1_to_2x1_check( AT,     A0, 
00474                                             A1, 
00475                                     AB,     A2,     side );
00476 
00477   if ( side == FLA_TOP )
00478   {
00479     AT->m    = A0.m + A1.m;
00480     AT->n    = A0.n;
00481     AT->offm = A0.offm;
00482     AT->offn = A0.offn;
00483     AT->base = A0.base;
00484 
00485     AB->m    = A2.m;
00486     AB->n    = A2.n;
00487     AB->offm = A2.offm;
00488     AB->offn = A2.offn;
00489     AB->base = A2.base;
00490   }
00491   else
00492   {
00493     AT->m    = A0.m;
00494     AT->n    = A0.n;
00495     AT->offm = A0.offm;
00496     AT->offn = A0.offn;
00497     AT->base = A0.base;
00498  
00499     AB->m    = A1.m + A2.m;
00500     AB->n    = A1.n;
00501     AB->offm = A1.offm;
00502     AB->offn = A1.offn;
00503     AB->base = A1.base;
00504   }
00505 
00506   return FLA_SUCCESS;
00507 }

FLA_Error FLA_Cont_with_3x1_to_2x1_check ( FLA_Obj AT,
FLA_Obj  A0,
FLA_Obj  A1,
FLA_Obj AB,
FLA_Obj  A2,
FLA_Side  side 
)

References FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_side().

Referenced by FLA_Cont_with_3x1_to_2x1().

00039 {
00040   FLA_Error e_val;
00041 
00042   e_val = FLA_Check_null_pointer( AT );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_null_pointer( AB );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_valid_object_datatype( A0 );
00049   FLA_Check_error_code( e_val );
00050 
00051   e_val = FLA_Check_valid_object_datatype( A1 );
00052   FLA_Check_error_code( e_val );
00053 
00054   e_val = FLA_Check_valid_object_datatype( A2 );
00055   FLA_Check_error_code( e_val );
00056 
00057   e_val = FLA_Check_valid_side( side );
00058   FLA_Check_error_code( e_val );
00059 
00060   // Needed: check for adjacency, similar to those in FLA_Merge_*().
00061 
00062   return FLA_SUCCESS;
00063 }

FLA_Error FLA_Cont_with_3x3_to_2x2 ( FLA_Obj ATL,
FLA_Obj ATR,
FLA_Obj  A00,
FLA_Obj  A01,
FLA_Obj  A02,
FLA_Obj  A10,
FLA_Obj  A11,
FLA_Obj  A12,
FLA_Obj ABL,
FLA_Obj ABR,
FLA_Obj  A20,
FLA_Obj  A21,
FLA_Obj  A22,
FLA_Quadrant  quadrant 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Cont_with_3x3_to_2x2_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Accum_T_UT_fc_unb_var1(), FLA_Apply_Q_UT_inc_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Chol_l_blk_var1(), FLA_Chol_l_blk_var2(), FLA_Chol_l_blk_var3(), FLA_Chol_l_unb_var1(), FLA_Chol_l_unb_var2(), FLA_Chol_l_unb_var3(), FLA_Chol_u_blk_var1(), FLA_Chol_u_blk_var2(), FLA_Chol_u_blk_var3(), FLA_Chol_u_unb_var1(), FLA_Chol_u_unb_var2(), FLA_Chol_u_unb_var3(), FLA_Hemm_ll_blk_var1(), FLA_Hemm_ll_blk_var2(), FLA_Hemm_ll_blk_var3(), FLA_Hemm_ll_blk_var4(), FLA_Hemm_ll_blk_var5(), FLA_Hemm_ll_blk_var6(), FLA_Hemm_ll_blk_var7(), FLA_Hemm_ll_blk_var8(), FLA_Hemm_ll_unb_var1(), FLA_Hemm_ll_unb_var2(), FLA_Hemm_ll_unb_var3(), FLA_Hemm_ll_unb_var4(), FLA_Hemm_ll_unb_var5(), FLA_Hemm_ll_unb_var6(), FLA_Hemm_ll_unb_var7(), FLA_Hemm_ll_unb_var8(), FLA_Hemm_lu_blk_var1(), FLA_Hemm_lu_blk_var2(), FLA_Hemm_lu_blk_var3(), FLA_Hemm_lu_blk_var4(), FLA_Hemm_lu_blk_var5(), FLA_Hemm_lu_blk_var6(), FLA_Hemm_lu_blk_var7(), FLA_Hemm_lu_blk_var8(), FLA_Hemm_lu_unb_var1(), FLA_Hemm_lu_unb_var2(), FLA_Hemm_lu_unb_var3(), FLA_Hemm_lu_unb_var4(), FLA_Hemm_lu_unb_var5(), FLA_Hemm_lu_unb_var6(), FLA_Hemm_lu_unb_var7(), FLA_Hemm_lu_unb_var8(), FLA_Hemm_rl_blk_var1(), FLA_Hemm_rl_blk_var2(), FLA_Hemm_rl_blk_var3(), FLA_Hemm_rl_blk_var4(), FLA_Hemm_rl_blk_var5(), FLA_Hemm_rl_blk_var6(), FLA_Hemm_rl_blk_var7(), FLA_Hemm_rl_blk_var8(), FLA_Hemm_rl_unb_var1(), FLA_Hemm_rl_unb_var2(), FLA_Hemm_rl_unb_var3(), FLA_Hemm_rl_unb_var4(), FLA_Hemm_rl_unb_var5(), FLA_Hemm_rl_unb_var6(), FLA_Hemm_rl_unb_var7(), FLA_Hemm_rl_unb_var8(), FLA_Hemm_ru_blk_var1(), FLA_Hemm_ru_blk_var2(), FLA_Hemm_ru_blk_var3(), FLA_Hemm_ru_blk_var4(), FLA_Hemm_ru_blk_var5(), FLA_Hemm_ru_blk_var6(), FLA_Hemm_ru_blk_var7(), FLA_Hemm_ru_blk_var8(), FLA_Hemm_ru_unb_var1(), FLA_Hemm_ru_unb_var2(), FLA_Hemm_ru_unb_var3(), FLA_Hemm_ru_unb_var4(), FLA_Hemm_ru_unb_var5(), FLA_Hemm_ru_unb_var6(), FLA_Hemm_ru_unb_var7(), FLA_Hemm_ru_unb_var8(), FLA_Her2k_lh_blk_var1(), FLA_Her2k_lh_blk_var2(), FLA_Her2k_lh_blk_var3(), FLA_Her2k_lh_blk_var4(), FLA_Her2k_lh_blk_var5(), FLA_Her2k_lh_blk_var6(), FLA_Her2k_lh_blk_var7(), FLA_Her2k_lh_blk_var8(), FLA_Her2k_lh_unb_var1(), FLA_Her2k_lh_unb_var2(), FLA_Her2k_lh_unb_var3(), FLA_Her2k_lh_unb_var4(), FLA_Her2k_lh_unb_var5(), FLA_Her2k_lh_unb_var6(), FLA_Her2k_lh_unb_var7(), FLA_Her2k_lh_unb_var8(), FLA_Her2k_ln_blk_var1(), FLA_Her2k_ln_blk_var2(), FLA_Her2k_ln_blk_var3(), FLA_Her2k_ln_blk_var4(), FLA_Her2k_ln_blk_var5(), FLA_Her2k_ln_blk_var6(), FLA_Her2k_ln_blk_var7(), FLA_Her2k_ln_blk_var8(), FLA_Her2k_ln_unb_var1(), FLA_Her2k_ln_unb_var2(), FLA_Her2k_ln_unb_var3(), FLA_Her2k_ln_unb_var4(), FLA_Her2k_ln_unb_var5(), FLA_Her2k_ln_unb_var6(), FLA_Her2k_ln_unb_var7(), FLA_Her2k_ln_unb_var8(), FLA_Her2k_uh_blk_var1(), FLA_Her2k_uh_blk_var2(), FLA_Her2k_uh_blk_var3(), FLA_Her2k_uh_blk_var4(), FLA_Her2k_uh_blk_var5(), FLA_Her2k_uh_blk_var6(), FLA_Her2k_uh_blk_var7(), FLA_Her2k_uh_blk_var8(), FLA_Her2k_uh_unb_var1(), FLA_Her2k_uh_unb_var2(), FLA_Her2k_uh_unb_var3(), FLA_Her2k_uh_unb_var4(), FLA_Her2k_uh_unb_var5(), FLA_Her2k_uh_unb_var6(), FLA_Her2k_uh_unb_var7(), FLA_Her2k_uh_unb_var8(), FLA_Her2k_un_blk_var1(), FLA_Her2k_un_blk_var2(), FLA_Her2k_un_blk_var3(), FLA_Her2k_un_blk_var4(), FLA_Her2k_un_blk_var5(), FLA_Her2k_un_blk_var6(), FLA_Her2k_un_blk_var7(), FLA_Her2k_un_blk_var8(), FLA_Her2k_un_unb_var1(), FLA_Her2k_un_unb_var2(), FLA_Her2k_un_unb_var3(), FLA_Her2k_un_unb_var4(), FLA_Her2k_un_unb_var5(), FLA_Her2k_un_unb_var6(), FLA_Her2k_un_unb_var7(), FLA_Her2k_un_unb_var8(), FLA_Herk_lh_blk_var1(), FLA_Herk_lh_blk_var2(), FLA_Herk_lh_blk_var3(), FLA_Herk_lh_blk_var4(), FLA_Herk_lh_unb_var1(), FLA_Herk_lh_unb_var2(), FLA_Herk_lh_unb_var3(), FLA_Herk_lh_unb_var4(), FLA_Herk_ln_blk_var1(), FLA_Herk_ln_blk_var2(), FLA_Herk_ln_blk_var3(), FLA_Herk_ln_blk_var4(), FLA_Herk_ln_unb_var1(), FLA_Herk_ln_unb_var2(), FLA_Herk_ln_unb_var3(), FLA_Herk_ln_unb_var4(), FLA_Herk_uh_blk_var1(), FLA_Herk_uh_blk_var2(), FLA_Herk_uh_blk_var3(), FLA_Herk_uh_blk_var4(), FLA_Herk_uh_unb_var1(), FLA_Herk_uh_unb_var2(), FLA_Herk_uh_unb_var3(), FLA_Herk_uh_unb_var4(), FLA_Herk_un_blk_var1(), FLA_Herk_un_blk_var2(), FLA_Herk_un_blk_var3(), FLA_Herk_un_blk_var4(), FLA_Herk_un_unb_var1(), FLA_Herk_un_unb_var2(), FLA_Herk_un_unb_var3(), FLA_Herk_un_unb_var4(), FLA_LQ_UT_Accum_T_blk_var1(), FLA_LQ_UT_blk_var2(), FLA_LQ_UT_recover_tau_submatrix(), FLA_LU_nopiv_blk_var1(), FLA_LU_nopiv_blk_var2(), FLA_LU_nopiv_blk_var3(), FLA_LU_nopiv_blk_var4(), FLA_LU_nopiv_blk_var5(), FLA_LU_nopiv_unb_var1(), FLA_LU_nopiv_unb_var2(), FLA_LU_nopiv_unb_var3(), FLA_LU_nopiv_unb_var4(), FLA_LU_nopiv_unb_var5(), FLA_LU_piv_blk_var3(), FLA_LU_piv_blk_var4(), FLA_LU_piv_blk_var5(), FLA_LU_piv_unb_var3(), FLA_LU_piv_unb_var3b(), FLA_LU_piv_unb_var4(), FLA_LU_piv_unb_var5(), FLA_QR_UT_Accum_T_blk_var1(), FLA_QR_UT_Accum_T_unb_var1(), FLA_QR_UT_blk_var2(), FLA_QR_UT_inc_blk_var1(), FLA_QR_UT_inc_blk_var2(), FLA_QR_UT_recover_tau_submatrix(), FLA_QR_UT_UD_Accum_T_unb_var1(), FLA_QR_UT_UD_blk_var1(), FLA_SA_LU_blk(), FLA_Sylv_nn_blk_var1(), FLA_Sylv_nn_blk_var10(), FLA_Sylv_nn_blk_var11(), FLA_Sylv_nn_blk_var12(), FLA_Sylv_nn_blk_var13(), FLA_Sylv_nn_blk_var14(), FLA_Sylv_nn_blk_var15(), FLA_Sylv_nn_blk_var16(), FLA_Sylv_nn_blk_var17(), FLA_Sylv_nn_blk_var18(), FLA_Sylv_nn_blk_var2(), FLA_Sylv_nn_blk_var3(), FLA_Sylv_nn_blk_var4(), FLA_Sylv_nn_blk_var5(), FLA_Sylv_nn_blk_var6(), FLA_Sylv_nn_blk_var7(), FLA_Sylv_nn_blk_var8(), FLA_Sylv_nn_blk_var9(), FLA_Sylv_nt_blk_var1(), FLA_Sylv_nt_blk_var10(), FLA_Sylv_nt_blk_var11(), FLA_Sylv_nt_blk_var12(), FLA_Sylv_nt_blk_var13(), FLA_Sylv_nt_blk_var14(), FLA_Sylv_nt_blk_var15(), FLA_Sylv_nt_blk_var16(), FLA_Sylv_nt_blk_var17(), FLA_Sylv_nt_blk_var18(), FLA_Sylv_nt_blk_var2(), FLA_Sylv_nt_blk_var3(), FLA_Sylv_nt_blk_var4(), FLA_Sylv_nt_blk_var5(), FLA_Sylv_nt_blk_var6(), FLA_Sylv_nt_blk_var7(), FLA_Sylv_nt_blk_var8(), FLA_Sylv_nt_blk_var9(), FLA_Sylv_tn_blk_var1(), FLA_Sylv_tn_blk_var10(), FLA_Sylv_tn_blk_var11(), FLA_Sylv_tn_blk_var12(), FLA_Sylv_tn_blk_var13(), FLA_Sylv_tn_blk_var14(), FLA_Sylv_tn_blk_var15(), FLA_Sylv_tn_blk_var16(), FLA_Sylv_tn_blk_var17(), FLA_Sylv_tn_blk_var18(), FLA_Sylv_tn_blk_var2(), FLA_Sylv_tn_blk_var3(), FLA_Sylv_tn_blk_var4(), FLA_Sylv_tn_blk_var5(), FLA_Sylv_tn_blk_var6(), FLA_Sylv_tn_blk_var7(), FLA_Sylv_tn_blk_var8(), FLA_Sylv_tn_blk_var9(), FLA_Sylv_tt_blk_var1(), FLA_Sylv_tt_blk_var10(), FLA_Sylv_tt_blk_var11(), FLA_Sylv_tt_blk_var12(), FLA_Sylv_tt_blk_var13(), FLA_Sylv_tt_blk_var14(), FLA_Sylv_tt_blk_var15(), FLA_Sylv_tt_blk_var16(), FLA_Sylv_tt_blk_var17(), FLA_Sylv_tt_blk_var18(), FLA_Sylv_tt_blk_var2(), FLA_Sylv_tt_blk_var3(), FLA_Sylv_tt_blk_var4(), FLA_Sylv_tt_blk_var5(), FLA_Sylv_tt_blk_var6(), FLA_Sylv_tt_blk_var7(), FLA_Sylv_tt_blk_var8(), FLA_Sylv_tt_blk_var9(), FLA_Symm_ll_blk_var1(), FLA_Symm_ll_blk_var2(), FLA_Symm_ll_blk_var3(), FLA_Symm_ll_blk_var4(), FLA_Symm_ll_blk_var5(), FLA_Symm_ll_blk_var6(), FLA_Symm_ll_blk_var7(), FLA_Symm_ll_blk_var8(), FLA_Symm_ll_unb_var1(), FLA_Symm_ll_unb_var2(), FLA_Symm_ll_unb_var3(), FLA_Symm_ll_unb_var4(), FLA_Symm_ll_unb_var5(), FLA_Symm_ll_unb_var6(), FLA_Symm_ll_unb_var7(), FLA_Symm_ll_unb_var8(), FLA_Symm_lu_blk_var1(), FLA_Symm_lu_blk_var2(), FLA_Symm_lu_blk_var3(), FLA_Symm_lu_blk_var4(), FLA_Symm_lu_blk_var5(), FLA_Symm_lu_blk_var6(), FLA_Symm_lu_blk_var7(), FLA_Symm_lu_blk_var8(), FLA_Symm_lu_unb_var1(), FLA_Symm_lu_unb_var2(), FLA_Symm_lu_unb_var3(), FLA_Symm_lu_unb_var4(), FLA_Symm_lu_unb_var5(), FLA_Symm_lu_unb_var6(), FLA_Symm_lu_unb_var7(), FLA_Symm_lu_unb_var8(), FLA_Symm_rl_blk_var1(), FLA_Symm_rl_blk_var2(), FLA_Symm_rl_blk_var3(), FLA_Symm_rl_blk_var4(), FLA_Symm_rl_blk_var5(), FLA_Symm_rl_blk_var6(), FLA_Symm_rl_blk_var7(), FLA_Symm_rl_blk_var8(), FLA_Symm_rl_unb_var1(), FLA_Symm_rl_unb_var2(), FLA_Symm_rl_unb_var3(), FLA_Symm_rl_unb_var4(), FLA_Symm_rl_unb_var5(), FLA_Symm_rl_unb_var6(), FLA_Symm_rl_unb_var7(), FLA_Symm_rl_unb_var8(), FLA_Symm_ru_blk_var1(), FLA_Symm_ru_blk_var2(), FLA_Symm_ru_blk_var3(), FLA_Symm_ru_blk_var4(), FLA_Symm_ru_blk_var5(), FLA_Symm_ru_blk_var6(), FLA_Symm_ru_blk_var7(), FLA_Symm_ru_blk_var8(), FLA_Symm_ru_unb_var1(), FLA_Symm_ru_unb_var2(), FLA_Symm_ru_unb_var3(), FLA_Symm_ru_unb_var4(), FLA_Symm_ru_unb_var5(), FLA_Symm_ru_unb_var6(), FLA_Symm_ru_unb_var7(), FLA_Symm_ru_unb_var8(), FLA_Syr2k_ln_blk_var1(), FLA_Syr2k_ln_blk_var2(), FLA_Syr2k_ln_blk_var3(), FLA_Syr2k_ln_blk_var4(), FLA_Syr2k_ln_blk_var5(), FLA_Syr2k_ln_blk_var6(), FLA_Syr2k_ln_blk_var7(), FLA_Syr2k_ln_blk_var8(), FLA_Syr2k_ln_unb_var1(), FLA_Syr2k_ln_unb_var2(), FLA_Syr2k_ln_unb_var3(), FLA_Syr2k_ln_unb_var4(), FLA_Syr2k_ln_unb_var5(), FLA_Syr2k_ln_unb_var6(), FLA_Syr2k_ln_unb_var7(), FLA_Syr2k_ln_unb_var8(), FLA_Syr2k_lt_blk_var1(), FLA_Syr2k_lt_blk_var2(), FLA_Syr2k_lt_blk_var3(), FLA_Syr2k_lt_blk_var4(), FLA_Syr2k_lt_blk_var5(), FLA_Syr2k_lt_blk_var6(), FLA_Syr2k_lt_blk_var7(), FLA_Syr2k_lt_blk_var8(), FLA_Syr2k_lt_unb_var1(), FLA_Syr2k_lt_unb_var2(), FLA_Syr2k_lt_unb_var3(), FLA_Syr2k_lt_unb_var4(), FLA_Syr2k_lt_unb_var5(), FLA_Syr2k_lt_unb_var6(), FLA_Syr2k_lt_unb_var7(), FLA_Syr2k_lt_unb_var8(), FLA_Syr2k_un_blk_var1(), FLA_Syr2k_un_blk_var2(), FLA_Syr2k_un_blk_var3(), FLA_Syr2k_un_blk_var4(), FLA_Syr2k_un_blk_var5(), FLA_Syr2k_un_blk_var6(), FLA_Syr2k_un_blk_var7(), FLA_Syr2k_un_blk_var8(), FLA_Syr2k_un_unb_var1(), FLA_Syr2k_un_unb_var2(), FLA_Syr2k_un_unb_var3(), FLA_Syr2k_un_unb_var4(), FLA_Syr2k_un_unb_var5(), FLA_Syr2k_un_unb_var6(), FLA_Syr2k_un_unb_var7(), FLA_Syr2k_un_unb_var8(), FLA_Syr2k_ut_blk_var1(), FLA_Syr2k_ut_blk_var2(), FLA_Syr2k_ut_blk_var3(), FLA_Syr2k_ut_blk_var4(), FLA_Syr2k_ut_blk_var5(), FLA_Syr2k_ut_blk_var6(), FLA_Syr2k_ut_blk_var7(), FLA_Syr2k_ut_blk_var8(), FLA_Syr2k_ut_unb_var1(), FLA_Syr2k_ut_unb_var2(), FLA_Syr2k_ut_unb_var3(), FLA_Syr2k_ut_unb_var4(), FLA_Syr2k_ut_unb_var5(), FLA_Syr2k_ut_unb_var6(), FLA_Syr2k_ut_unb_var7(), FLA_Syr2k_ut_unb_var8(), FLA_Syrk_ln_blk_var1(), FLA_Syrk_ln_blk_var2(), FLA_Syrk_ln_blk_var3(), FLA_Syrk_ln_blk_var4(), FLA_Syrk_ln_unb_var1(), FLA_Syrk_ln_unb_var2(), FLA_Syrk_ln_unb_var3(), FLA_Syrk_ln_unb_var4(), FLA_Syrk_lt_blk_var1(), FLA_Syrk_lt_blk_var2(), FLA_Syrk_lt_blk_var3(), FLA_Syrk_lt_blk_var4(), FLA_Syrk_lt_unb_var1(), FLA_Syrk_lt_unb_var2(), FLA_Syrk_lt_unb_var3(), FLA_Syrk_lt_unb_var4(), FLA_Syrk_un_blk_var1(), FLA_Syrk_un_blk_var2(), FLA_Syrk_un_blk_var3(), FLA_Syrk_un_blk_var4(), FLA_Syrk_un_unb_var1(), FLA_Syrk_un_unb_var2(), FLA_Syrk_un_unb_var3(), FLA_Syrk_un_unb_var4(), FLA_Syrk_ut_blk_var1(), FLA_Syrk_ut_blk_var2(), FLA_Syrk_ut_blk_var3(), FLA_Syrk_ut_blk_var4(), FLA_Syrk_ut_unb_var1(), FLA_Syrk_ut_unb_var2(), FLA_Syrk_ut_unb_var3(), FLA_Syrk_ut_unb_var4(), FLA_Transpose_blk_var1(), FLA_Transpose_blk_var2(), FLA_Transpose_unb_var1(), FLA_Transpose_unb_var2(), FLA_Trinv_l_blk_var1(), FLA_Trinv_l_blk_var2(), FLA_Trinv_l_blk_var3(), FLA_Trinv_l_blk_var4(), FLA_Trinv_l_unb_var1(), FLA_Trinv_l_unb_var2(), FLA_Trinv_l_unb_var3(), FLA_Trinv_l_unb_var4(), FLA_Trinv_u_blk_var1(), FLA_Trinv_u_blk_var2(), FLA_Trinv_u_blk_var3(), FLA_Trinv_u_blk_var4(), FLA_Trinv_u_unb_var1(), FLA_Trinv_u_unb_var2(), FLA_Trinv_u_unb_var3(), FLA_Trinv_u_unb_var4(), FLA_Trmm_llh_blk_var1(), FLA_Trmm_llh_blk_var2(), FLA_Trmm_llh_unb_var1(), FLA_Trmm_llh_unb_var2(), FLA_Trmm_lln_blk_var1(), FLA_Trmm_lln_blk_var2(), FLA_Trmm_lln_unb_var1(), FLA_Trmm_lln_unb_var2(), FLA_Trmm_llt_blk_var1(), FLA_Trmm_llt_blk_var2(), FLA_Trmm_llt_unb_var1(), FLA_Trmm_llt_unb_var2(), FLA_Trmm_luh_blk_var1(), FLA_Trmm_luh_blk_var2(), FLA_Trmm_luh_unb_var1(), FLA_Trmm_luh_unb_var2(), FLA_Trmm_lun_blk_var1(), FLA_Trmm_lun_blk_var2(), FLA_Trmm_lun_unb_var1(), FLA_Trmm_lun_unb_var2(), FLA_Trmm_lut_blk_var1(), FLA_Trmm_lut_blk_var2(), FLA_Trmm_lut_unb_var1(), FLA_Trmm_lut_unb_var2(), FLA_Trmm_rlh_blk_var1(), FLA_Trmm_rlh_blk_var2(), FLA_Trmm_rlh_unb_var1(), FLA_Trmm_rlh_unb_var2(), FLA_Trmm_rln_blk_var1(), FLA_Trmm_rln_blk_var2(), FLA_Trmm_rln_unb_var1(), FLA_Trmm_rln_unb_var2(), FLA_Trmm_rlt_blk_var1(), FLA_Trmm_rlt_blk_var2(), FLA_Trmm_rlt_unb_var1(), FLA_Trmm_rlt_unb_var2(), FLA_Trmm_ruh_blk_var1(), FLA_Trmm_ruh_blk_var2(), FLA_Trmm_ruh_unb_var1(), FLA_Trmm_ruh_unb_var2(), FLA_Trmm_run_blk_var1(), FLA_Trmm_run_blk_var2(), FLA_Trmm_run_unb_var1(), FLA_Trmm_run_unb_var2(), FLA_Trmm_rut_blk_var1(), FLA_Trmm_rut_blk_var2(), FLA_Trmm_rut_unb_var1(), FLA_Trmm_rut_unb_var2(), FLA_Trsm_llh_blk_var1(), FLA_Trsm_llh_blk_var2(), FLA_Trsm_llh_unb_var1(), FLA_Trsm_llh_unb_var2(), FLA_Trsm_lln_blk_var1(), FLA_Trsm_lln_blk_var2(), FLA_Trsm_lln_unb_var1(), FLA_Trsm_lln_unb_var2(), FLA_Trsm_llt_blk_var1(), FLA_Trsm_llt_blk_var2(), FLA_Trsm_llt_unb_var1(), FLA_Trsm_llt_unb_var2(), FLA_Trsm_luh_blk_var1(), FLA_Trsm_luh_blk_var2(), FLA_Trsm_luh_unb_var1(), FLA_Trsm_luh_unb_var2(), FLA_Trsm_lun_blk_var1(), FLA_Trsm_lun_blk_var2(), FLA_Trsm_lun_unb_var1(), FLA_Trsm_lun_unb_var2(), FLA_Trsm_lut_blk_var1(), FLA_Trsm_lut_blk_var2(), FLA_Trsm_lut_unb_var1(), FLA_Trsm_lut_unb_var2(), FLA_Trsm_rlh_blk_var1(), FLA_Trsm_rlh_blk_var2(), FLA_Trsm_rlh_unb_var1(), FLA_Trsm_rlh_unb_var2(), FLA_Trsm_rln_blk_var1(), FLA_Trsm_rln_blk_var2(), FLA_Trsm_rln_unb_var1(), FLA_Trsm_rln_unb_var2(), FLA_Trsm_rlt_blk_var1(), FLA_Trsm_rlt_blk_var2(), FLA_Trsm_rlt_unb_var1(), FLA_Trsm_rlt_unb_var2(), FLA_Trsm_ruh_blk_var1(), FLA_Trsm_ruh_blk_var2(), FLA_Trsm_ruh_unb_var1(), FLA_Trsm_ruh_unb_var2(), FLA_Trsm_run_blk_var1(), FLA_Trsm_run_blk_var2(), FLA_Trsm_run_unb_var1(), FLA_Trsm_run_unb_var2(), FLA_Trsm_rut_blk_var1(), FLA_Trsm_rut_blk_var2(), FLA_Trsm_rut_unb_var1(), FLA_Trsm_rut_unb_var2(), FLA_Trsv_lc_blk_var1(), FLA_Trsv_lc_blk_var2(), FLA_Trsv_ln_blk_var1(), FLA_Trsv_ln_blk_var2(), FLA_Trsv_lt_blk_var1(), FLA_Trsv_lt_blk_var2(), FLA_Trsv_uc_blk_var1(), FLA_Trsv_uc_blk_var2(), FLA_Trsv_un_blk_var1(), FLA_Trsv_un_blk_var2(), FLA_Trsv_ut_blk_var1(), FLA_Trsv_ut_blk_var2(), FLA_Ttmm_l_blk_var1(), FLA_Ttmm_l_blk_var2(), FLA_Ttmm_l_blk_var3(), FLA_Ttmm_l_unb_var1(), FLA_Ttmm_l_unb_var2(), FLA_Ttmm_l_unb_var3(), FLA_Ttmm_u_blk_var1(), FLA_Ttmm_u_blk_var2(), FLA_Ttmm_u_blk_var3(), FLA_Ttmm_u_unb_var1(), FLA_Ttmm_u_unb_var2(), FLA_Ttmm_u_unb_var3(), FLASH_FS_incpiv_aux1(), FLASH_LU_incpiv_var1(), and FLASH_LU_incpiv_var2().

00345 {
00346   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00347     FLA_Cont_with_3x3_to_2x2_check( ATL, ATR,       A00, A01, A02,
00348                                                     A10, A11, A12,
00349                                     ABL, ABR,       A20, A21, A22,
00350                                     quadrant );
00351 
00352   if ( quadrant == FLA_TL )
00353   {
00354     ATL->m    = A00.m + A10.m;
00355     ATL->n    = A00.n + A01.n;
00356     ATL->offm = A00.offm;
00357     ATL->offn = A00.offn;
00358     ATL->base = A00.base;
00359  
00360     ATR->m    = A02.m + A12.m;
00361     ATR->n    = A02.n;
00362     ATR->offm = A02.offm;
00363     ATR->offn = A02.offn;
00364     ATR->base = A02.base;
00365  
00366     ABL->m    = A20.m;
00367     ABL->n    = A20.n + A21.n;
00368     ABL->offm = A20.offm;
00369     ABL->offn = A20.offn;
00370     ABL->base = A20.base;
00371  
00372     ABR->m    = A22.m;
00373     ABR->n    = A22.n;
00374     ABR->offm = A22.offm;
00375     ABR->offn = A22.offn;
00376     ABR->base = A22.base;
00377   }
00378   else if ( quadrant == FLA_TR )
00379   {
00380     ATL->m    = A00.m + A10.m;
00381     ATL->n    = A00.n;
00382     ATL->offm = A00.offm;
00383     ATL->offn = A00.offn;
00384     ATL->base = A00.base;
00385  
00386     ATR->m    = A01.m + A11.m;
00387     ATR->n    = A01.n + A02.n;
00388     ATR->offm = A01.offm;
00389     ATR->offn = A01.offn;
00390     ATR->base = A01.base;
00391  
00392     ABL->m    = A20.m;
00393     ABL->n    = A20.n;
00394     ABL->offm = A20.offm;
00395     ABL->offn = A20.offn;
00396     ABL->base = A20.base;
00397  
00398     ABR->m    = A21.m;
00399     ABR->n    = A21.n + A22.n;
00400     ABR->offm = A21.offm;
00401     ABR->offn = A21.offn;
00402     ABR->base = A21.base;
00403   }
00404   else if ( quadrant == FLA_BR )
00405   {
00406     ATL->m    = A00.m;
00407     ATL->n    = A00.n;
00408     ATL->offm = A00.offm;
00409     ATL->offn = A00.offn;
00410     ATL->base = A00.base;
00411  
00412     ATR->m    = A01.m;
00413     ATR->n    = A01.n + A02.n;
00414     ATR->offm = A01.offm;
00415     ATR->offn = A01.offn;
00416     ATR->base = A01.base;
00417  
00418     ABL->m    = A10.m + A20.m;
00419     ABL->n    = A10.n;
00420     ABL->offm = A10.offm;
00421     ABL->offn = A10.offn;
00422     ABL->base = A10.base;
00423  
00424     ABR->m    = A11.m + A21.m;
00425     ABR->n    = A11.n + A12.n;
00426     ABR->offm = A11.offm;
00427     ABR->offn = A11.offn;
00428     ABR->base = A11.base;
00429   }
00430   else if ( quadrant == FLA_BL )
00431   {
00432     ATL->m    = A00.m;
00433     ATL->n    = A00.n + A01.n;
00434     ATL->offm = A00.offm;
00435     ATL->offn = A00.offn;
00436     ATL->base = A00.base;
00437  
00438     ATR->m    = A02.m;
00439     ATR->n    = A02.n;
00440     ATR->offm = A02.offm;
00441     ATR->offn = A02.offn;
00442     ATR->base = A02.base;
00443  
00444     ABL->m    = A10.m + A20.m;
00445     ABL->n    = A10.n + A11.n;
00446     ABL->offm = A10.offm;
00447     ABL->offn = A10.offn;
00448     ABL->base = A10.base;
00449  
00450     ABR->m    = A12.m + A22.m;
00451     ABR->n    = A12.n ;
00452     ABR->offm = A12.offm;
00453     ABR->offn = A12.offn;
00454     ABR->base = A12.base;
00455   }
00456 
00457   return FLA_SUCCESS;
00458 }

FLA_Error FLA_Cont_with_3x3_to_2x2_check ( FLA_Obj ATL,
FLA_Obj ATR,
FLA_Obj  A00,
FLA_Obj  A01,
FLA_Obj  A02,
FLA_Obj  A10,
FLA_Obj  A11,
FLA_Obj  A12,
FLA_Obj ABL,
FLA_Obj ABR,
FLA_Obj  A20,
FLA_Obj  A21,
FLA_Obj  A22,
FLA_Quadrant  quadrant 
)

References FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_quadrant().

Referenced by FLA_Cont_with_3x3_to_2x2().

00039 {
00040   FLA_Error e_val;
00041 
00042   e_val = FLA_Check_null_pointer( ATL );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_null_pointer( ABL );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_null_pointer( ATR );
00049   FLA_Check_error_code( e_val );
00050 
00051   e_val = FLA_Check_null_pointer( ABR );
00052   FLA_Check_error_code( e_val );
00053 
00054   e_val = FLA_Check_valid_object_datatype( A00 );
00055   FLA_Check_error_code( e_val );
00056 
00057   e_val = FLA_Check_valid_object_datatype( A10 );
00058   FLA_Check_error_code( e_val );
00059 
00060   e_val = FLA_Check_valid_object_datatype( A20 );
00061   FLA_Check_error_code( e_val );
00062 
00063   e_val = FLA_Check_valid_object_datatype( A01 );
00064   FLA_Check_error_code( e_val );
00065 
00066   e_val = FLA_Check_valid_object_datatype( A11 );
00067   FLA_Check_error_code( e_val );
00068 
00069   e_val = FLA_Check_valid_object_datatype( A21 );
00070   FLA_Check_error_code( e_val );
00071 
00072   e_val = FLA_Check_valid_object_datatype( A02 );
00073   FLA_Check_error_code( e_val );
00074 
00075   e_val = FLA_Check_valid_object_datatype( A12 );
00076   FLA_Check_error_code( e_val );
00077 
00078   e_val = FLA_Check_valid_object_datatype( A22 );
00079   FLA_Check_error_code( e_val );
00080 
00081   e_val = FLA_Check_valid_quadrant( quadrant );
00082   FLA_Check_error_code( e_val );
00083 
00084   // Needed: check for adjacency, similar to those in FLA_Merge_*().
00085 
00086   return FLA_SUCCESS;
00087 }

FLA_Error FLA_Copy_global_to_submatrix ( FLA_Trans  trans,
dim_t  i,
dim_t  j,
FLA_Obj  obj,
dim_t  m,
dim_t  n,
void *  buffer,
dim_t  ldim 
)

References FLA_Check_error_level(), FLA_Copy_global_to_submatrix_check(), FLA_Copyt_external(), FLA_Obj_attach_buffer(), FLA_Obj_create_without_buffer(), FLA_Obj_datatype(), FLA_Obj_free_without_buffer(), and FLA_Part_2x2().

01099 {
01100   FLA_Obj  B;
01101   FLA_Obj  ATL, ATR, 
01102            ABL, Aij;
01103 
01104   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
01105     FLA_Copy_global_to_submatrix_check( trans, i, j, A, m, n, B_buffer, ldim );
01106 
01107   FLA_Part_2x2( A,  &ATL, &ATR,
01108                     &ABL, &Aij,     i, j, FLA_TL );
01109 
01110   FLA_Obj_create_without_buffer( FLA_Obj_datatype( A ), m, n, &B );
01111   FLA_Obj_attach_buffer( B_buffer, ldim, &B );
01112 
01113   FLA_Copyt_external( trans, Aij, B );
01114 
01115   FLA_Obj_free_without_buffer( &B );
01116 
01117   return FLA_SUCCESS;
01118 }

FLA_Error FLA_Copy_global_to_submatrix_check ( FLA_Trans  trans,
dim_t  i,
dim_t  j,
FLA_Obj  obj,
dim_t  m,
dim_t  n,
void *  buffer,
dim_t  ldim 
)

References FLA_Check_floating_object(), FLA_Check_m_against_ldim(), FLA_Check_nonconstant_object(), FLA_Check_null_pointer(), FLA_Check_object_dims(), FLA_Check_submatrix_dims_and_offset(), and FLA_Check_valid_real_trans().

Referenced by FLA_Copy_global_to_submatrix().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_valid_real_trans( trans );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_floating_object( A );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_nonconstant_object( A );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_null_pointer( B_buffer );
00049   FLA_Check_error_code( e_val );
00050 
00051   e_val = FLA_Check_object_dims( trans, m, n, A );
00052   FLA_Check_error_code( e_val );
00053 
00054   e_val = FLA_Check_m_against_ldim( m, ldim );
00055   FLA_Check_error_code( e_val );
00056 
00057   if ( trans == FLA_NO_TRANSPOSE )
00058   {
00059     e_val = FLA_Check_submatrix_dims_and_offset( m, n, i, j, A );
00060     FLA_Check_error_code( e_val );
00061   }
00062   else
00063   {
00064     e_val = FLA_Check_submatrix_dims_and_offset( n, m, i, j, A );
00065     FLA_Check_error_code( e_val );
00066   }
00067 
00068   e_val = FLA_Check_nonconstant_object( A );
00069   FLA_Check_error_code( e_val );
00070 
00071   return FLA_SUCCESS;
00072 }

FLA_Error FLA_Copy_submatrix_to_global ( FLA_Trans  trans,
dim_t  m,
dim_t  n,
void *  buffer,
dim_t  ldim,
dim_t  i,
dim_t  j,
FLA_Obj  obj 
)

References FLA_Check_error_level(), FLA_Copy_submatrix_to_global_check(), FLA_Copyt_external(), FLA_Obj_attach_buffer(), FLA_Obj_create_without_buffer(), FLA_Obj_datatype(), FLA_Obj_free_without_buffer(), and FLA_Part_2x2().

01070 {
01071   FLA_Obj  A;
01072   FLA_Obj  BTL, BTR, 
01073            BBL, Bij;
01074 
01075   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
01076     FLA_Copy_submatrix_to_global_check( trans, m, n, A_buffer, ldim, i, j, B );
01077 
01078   FLA_Part_2x2( B,  &BTL, &BTR,
01079                     &BBL, &Bij,     i, j, FLA_TL );
01080 
01081   FLA_Obj_create_without_buffer( FLA_Obj_datatype( B ), m, n, &A );
01082   FLA_Obj_attach_buffer( A_buffer, ldim, &A );
01083 
01084   FLA_Copyt_external( trans, A, Bij );
01085 
01086   FLA_Obj_free_without_buffer( &A );
01087 
01088   return FLA_SUCCESS;
01089 }

FLA_Error FLA_Copy_submatrix_to_global_check ( FLA_Trans  trans,
dim_t  m,
dim_t  n,
void *  buffer,
dim_t  ldim,
dim_t  i,
dim_t  j,
FLA_Obj  obj 
)

References FLA_Check_floating_object(), FLA_Check_m_against_ldim(), FLA_Check_nonconstant_object(), FLA_Check_null_pointer(), FLA_Check_object_dims(), FLA_Check_submatrix_dims_and_offset(), and FLA_Check_valid_real_trans().

Referenced by FLA_Copy_submatrix_to_global().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_valid_real_trans( trans );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_floating_object( B );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_nonconstant_object( B );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_null_pointer( A_buffer );
00049   FLA_Check_error_code( e_val );
00050 
00051   e_val = FLA_Check_object_dims( trans, m, n, B );
00052   FLA_Check_error_code( e_val );
00053 
00054   e_val = FLA_Check_m_against_ldim( m, ldim );
00055   FLA_Check_error_code( e_val );
00056 
00057   if ( trans == FLA_NO_TRANSPOSE )
00058   {
00059     e_val = FLA_Check_submatrix_dims_and_offset( m, n, i, j, B );
00060     FLA_Check_error_code( e_val );
00061   }
00062   else
00063   {
00064     e_val = FLA_Check_submatrix_dims_and_offset( n, m, i, j, B );
00065     FLA_Check_error_code( e_val );
00066   }
00067 
00068   e_val = FLA_Check_nonconstant_object( B );
00069   FLA_Check_error_code( e_val );
00070 
00071   return FLA_SUCCESS;
00072 }

dim_t FLA_Determine_blocksize ( FLA_Obj  A_unproc,
FLA_Quadrant  to_dir,
fla_blocksize_t cntl_blocksizes 
)

References FLA_Blocksize_extract(), FLA_Check_blocksize_value(), FLA_Check_error_level(), FLA_determine_matrix_size(), and FLA_Obj_datatype().

Referenced by FLA_Apply_Q_UT_inc_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var2(), FLA_Apply_Q_UT_UD_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var2(), FLA_Apply_Q_UT_UD_lhc_blk_var3(), FLA_Axpy_blk_var1(), FLA_Axpy_blk_var2(), FLA_Axpy_blk_var3(), FLA_Axpy_blk_var4(), FLA_Chol_l_blk_var1(), FLA_Chol_l_blk_var2(), FLA_Chol_l_blk_var3(), FLA_Chol_u_blk_var1(), FLA_Chol_u_blk_var2(), FLA_Chol_u_blk_var3(), FLA_Copy_blk_var1(), FLA_Copy_blk_var2(), FLA_Copy_blk_var3(), FLA_Copy_blk_var4(), FLA_Gemm_hh_blk_var1(), FLA_Gemm_hh_blk_var2(), FLA_Gemm_hh_blk_var3(), FLA_Gemm_hh_blk_var4(), FLA_Gemm_hh_blk_var5(), FLA_Gemm_hh_blk_var6(), FLA_Gemm_hn_blk_var1(), FLA_Gemm_hn_blk_var2(), FLA_Gemm_hn_blk_var3(), FLA_Gemm_hn_blk_var4(), FLA_Gemm_hn_blk_var5(), FLA_Gemm_hn_blk_var6(), FLA_Gemm_ht_blk_var1(), FLA_Gemm_ht_blk_var2(), FLA_Gemm_ht_blk_var3(), FLA_Gemm_ht_blk_var4(), FLA_Gemm_ht_blk_var5(), FLA_Gemm_ht_blk_var6(), FLA_Gemm_nh_blk_var1(), FLA_Gemm_nh_blk_var2(), FLA_Gemm_nh_blk_var3(), FLA_Gemm_nh_blk_var4(), FLA_Gemm_nh_blk_var5(), FLA_Gemm_nh_blk_var6(), FLA_Gemm_nn_blk_var1(), FLA_Gemm_nn_blk_var2(), FLA_Gemm_nn_blk_var3(), FLA_Gemm_nn_blk_var4(), FLA_Gemm_nn_blk_var5(), FLA_Gemm_nn_blk_var6(), FLA_Gemm_nt_blk_var1(), FLA_Gemm_nt_blk_var2(), FLA_Gemm_nt_blk_var3(), FLA_Gemm_nt_blk_var4(), FLA_Gemm_nt_blk_var5(), FLA_Gemm_nt_blk_var6(), FLA_Gemm_th_blk_var1(), FLA_Gemm_th_blk_var2(), FLA_Gemm_th_blk_var3(), FLA_Gemm_th_blk_var4(), FLA_Gemm_th_blk_var5(), FLA_Gemm_th_blk_var6(), FLA_Gemm_tn_blk_var1(), FLA_Gemm_tn_blk_var2(), FLA_Gemm_tn_blk_var3(), FLA_Gemm_tn_blk_var4(), FLA_Gemm_tn_blk_var5(), FLA_Gemm_tn_blk_var6(), FLA_Gemm_tt_blk_var1(), FLA_Gemm_tt_blk_var2(), FLA_Gemm_tt_blk_var3(), FLA_Gemm_tt_blk_var4(), FLA_Gemm_tt_blk_var5(), FLA_Gemm_tt_blk_var6(), FLA_Gemv_c_blk_var1(), FLA_Gemv_c_blk_var2(), FLA_Gemv_c_blk_var5(), FLA_Gemv_c_blk_var6(), FLA_Gemv_n_blk_var1(), FLA_Gemv_n_blk_var2(), FLA_Gemv_n_blk_var5(), FLA_Gemv_n_blk_var6(), FLA_Gemv_t_blk_var1(), FLA_Gemv_t_blk_var2(), FLA_Gemv_t_blk_var5(), FLA_Gemv_t_blk_var6(), FLA_Hemm_ll_blk_var1(), FLA_Hemm_ll_blk_var10(), FLA_Hemm_ll_blk_var2(), FLA_Hemm_ll_blk_var3(), FLA_Hemm_ll_blk_var4(), FLA_Hemm_ll_blk_var5(), FLA_Hemm_ll_blk_var6(), FLA_Hemm_ll_blk_var7(), FLA_Hemm_ll_blk_var8(), FLA_Hemm_ll_blk_var9(), FLA_Hemm_lu_blk_var1(), FLA_Hemm_lu_blk_var10(), FLA_Hemm_lu_blk_var2(), FLA_Hemm_lu_blk_var3(), FLA_Hemm_lu_blk_var4(), FLA_Hemm_lu_blk_var5(), FLA_Hemm_lu_blk_var6(), FLA_Hemm_lu_blk_var7(), FLA_Hemm_lu_blk_var8(), FLA_Hemm_lu_blk_var9(), FLA_Hemm_rl_blk_var1(), FLA_Hemm_rl_blk_var10(), FLA_Hemm_rl_blk_var2(), FLA_Hemm_rl_blk_var3(), FLA_Hemm_rl_blk_var4(), FLA_Hemm_rl_blk_var5(), FLA_Hemm_rl_blk_var6(), FLA_Hemm_rl_blk_var7(), FLA_Hemm_rl_blk_var8(), FLA_Hemm_rl_blk_var9(), FLA_Hemm_ru_blk_var1(), FLA_Hemm_ru_blk_var10(), FLA_Hemm_ru_blk_var2(), FLA_Hemm_ru_blk_var3(), FLA_Hemm_ru_blk_var4(), FLA_Hemm_ru_blk_var5(), FLA_Hemm_ru_blk_var6(), FLA_Hemm_ru_blk_var7(), FLA_Hemm_ru_blk_var8(), FLA_Hemm_ru_blk_var9(), FLA_Her2k_lh_blk_var1(), FLA_Her2k_lh_blk_var10(), FLA_Her2k_lh_blk_var2(), FLA_Her2k_lh_blk_var3(), FLA_Her2k_lh_blk_var4(), FLA_Her2k_lh_blk_var5(), FLA_Her2k_lh_blk_var6(), FLA_Her2k_lh_blk_var7(), FLA_Her2k_lh_blk_var8(), FLA_Her2k_lh_blk_var9(), FLA_Her2k_ln_blk_var1(), FLA_Her2k_ln_blk_var10(), FLA_Her2k_ln_blk_var2(), FLA_Her2k_ln_blk_var3(), FLA_Her2k_ln_blk_var4(), FLA_Her2k_ln_blk_var5(), FLA_Her2k_ln_blk_var6(), FLA_Her2k_ln_blk_var7(), FLA_Her2k_ln_blk_var8(), FLA_Her2k_ln_blk_var9(), FLA_Her2k_uh_blk_var1(), FLA_Her2k_uh_blk_var10(), FLA_Her2k_uh_blk_var2(), FLA_Her2k_uh_blk_var3(), FLA_Her2k_uh_blk_var4(), FLA_Her2k_uh_blk_var5(), FLA_Her2k_uh_blk_var6(), FLA_Her2k_uh_blk_var7(), FLA_Her2k_uh_blk_var8(), FLA_Her2k_uh_blk_var9(), FLA_Her2k_un_blk_var1(), FLA_Her2k_un_blk_var10(), FLA_Her2k_un_blk_var2(), FLA_Her2k_un_blk_var3(), FLA_Her2k_un_blk_var4(), FLA_Her2k_un_blk_var5(), FLA_Her2k_un_blk_var6(), FLA_Her2k_un_blk_var7(), FLA_Her2k_un_blk_var8(), FLA_Her2k_un_blk_var9(), FLA_Herk_lh_blk_var1(), FLA_Herk_lh_blk_var2(), FLA_Herk_lh_blk_var3(), FLA_Herk_lh_blk_var4(), FLA_Herk_lh_blk_var5(), FLA_Herk_lh_blk_var6(), FLA_Herk_ln_blk_var1(), FLA_Herk_ln_blk_var2(), FLA_Herk_ln_blk_var3(), FLA_Herk_ln_blk_var4(), FLA_Herk_ln_blk_var5(), FLA_Herk_ln_blk_var6(), FLA_Herk_uh_blk_var1(), FLA_Herk_uh_blk_var2(), FLA_Herk_uh_blk_var3(), FLA_Herk_uh_blk_var4(), FLA_Herk_uh_blk_var5(), FLA_Herk_uh_blk_var6(), FLA_Herk_un_blk_var1(), FLA_Herk_un_blk_var2(), FLA_Herk_un_blk_var3(), FLA_Herk_un_blk_var4(), FLA_Herk_un_blk_var5(), FLA_Herk_un_blk_var6(), FLA_LQ_UT_Accum_T_blk_var1(), FLA_LQ_UT_blk_var2(), FLA_LU_nopiv_blk_var1(), FLA_LU_nopiv_blk_var2(), FLA_LU_nopiv_blk_var3(), FLA_LU_nopiv_blk_var4(), FLA_LU_nopiv_blk_var5(), FLA_LU_piv_blk_var3(), FLA_LU_piv_blk_var4(), FLA_LU_piv_blk_var5(), FLA_QR_UT_Accum_T_blk_var1(), FLA_QR_UT_blk_var2(), FLA_QR_UT_inc_blk_var1(), FLA_QR_UT_inc_blk_var2(), FLA_QR_UT_UD_blk_var1(), FLA_QR_UT_UD_blk_var2(), FLA_Swap_t_blk_var1(), FLA_Swap_t_blk_var2(), FLA_Sylv_nn_blk_var1(), FLA_Sylv_nn_blk_var10(), FLA_Sylv_nn_blk_var11(), FLA_Sylv_nn_blk_var12(), FLA_Sylv_nn_blk_var13(), FLA_Sylv_nn_blk_var14(), FLA_Sylv_nn_blk_var15(), FLA_Sylv_nn_blk_var16(), FLA_Sylv_nn_blk_var17(), FLA_Sylv_nn_blk_var18(), FLA_Sylv_nn_blk_var2(), FLA_Sylv_nn_blk_var3(), FLA_Sylv_nn_blk_var4(), FLA_Sylv_nn_blk_var5(), FLA_Sylv_nn_blk_var6(), FLA_Sylv_nn_blk_var7(), FLA_Sylv_nn_blk_var8(), FLA_Sylv_nn_blk_var9(), FLA_Sylv_nt_blk_var1(), FLA_Sylv_nt_blk_var10(), FLA_Sylv_nt_blk_var11(), FLA_Sylv_nt_blk_var12(), FLA_Sylv_nt_blk_var13(), FLA_Sylv_nt_blk_var14(), FLA_Sylv_nt_blk_var15(), FLA_Sylv_nt_blk_var16(), FLA_Sylv_nt_blk_var17(), FLA_Sylv_nt_blk_var18(), FLA_Sylv_nt_blk_var2(), FLA_Sylv_nt_blk_var3(), FLA_Sylv_nt_blk_var4(), FLA_Sylv_nt_blk_var5(), FLA_Sylv_nt_blk_var6(), FLA_Sylv_nt_blk_var7(), FLA_Sylv_nt_blk_var8(), FLA_Sylv_nt_blk_var9(), FLA_Sylv_tn_blk_var1(), FLA_Sylv_tn_blk_var10(), FLA_Sylv_tn_blk_var11(), FLA_Sylv_tn_blk_var12(), FLA_Sylv_tn_blk_var13(), FLA_Sylv_tn_blk_var14(), FLA_Sylv_tn_blk_var15(), FLA_Sylv_tn_blk_var16(), FLA_Sylv_tn_blk_var17(), FLA_Sylv_tn_blk_var18(), FLA_Sylv_tn_blk_var2(), FLA_Sylv_tn_blk_var3(), FLA_Sylv_tn_blk_var4(), FLA_Sylv_tn_blk_var5(), FLA_Sylv_tn_blk_var6(), FLA_Sylv_tn_blk_var7(), FLA_Sylv_tn_blk_var8(), FLA_Sylv_tn_blk_var9(), FLA_Sylv_tt_blk_var1(), FLA_Sylv_tt_blk_var10(), FLA_Sylv_tt_blk_var11(), FLA_Sylv_tt_blk_var12(), FLA_Sylv_tt_blk_var13(), FLA_Sylv_tt_blk_var14(), FLA_Sylv_tt_blk_var15(), FLA_Sylv_tt_blk_var16(), FLA_Sylv_tt_blk_var17(), FLA_Sylv_tt_blk_var18(), FLA_Sylv_tt_blk_var2(), FLA_Sylv_tt_blk_var3(), FLA_Sylv_tt_blk_var4(), FLA_Sylv_tt_blk_var5(), FLA_Sylv_tt_blk_var6(), FLA_Sylv_tt_blk_var7(), FLA_Sylv_tt_blk_var8(), FLA_Sylv_tt_blk_var9(), FLA_Symm_ll_blk_var1(), FLA_Symm_ll_blk_var10(), FLA_Symm_ll_blk_var2(), FLA_Symm_ll_blk_var3(), FLA_Symm_ll_blk_var4(), FLA_Symm_ll_blk_var5(), FLA_Symm_ll_blk_var6(), FLA_Symm_ll_blk_var7(), FLA_Symm_ll_blk_var8(), FLA_Symm_ll_blk_var9(), FLA_Symm_lu_blk_var1(), FLA_Symm_lu_blk_var10(), FLA_Symm_lu_blk_var2(), FLA_Symm_lu_blk_var3(), FLA_Symm_lu_blk_var4(), FLA_Symm_lu_blk_var5(), FLA_Symm_lu_blk_var6(), FLA_Symm_lu_blk_var7(), FLA_Symm_lu_blk_var8(), FLA_Symm_lu_blk_var9(), FLA_Symm_rl_blk_var1(), FLA_Symm_rl_blk_var10(), FLA_Symm_rl_blk_var2(), FLA_Symm_rl_blk_var3(), FLA_Symm_rl_blk_var4(), FLA_Symm_rl_blk_var5(), FLA_Symm_rl_blk_var6(), FLA_Symm_rl_blk_var7(), FLA_Symm_rl_blk_var8(), FLA_Symm_rl_blk_var9(), FLA_Symm_ru_blk_var1(), FLA_Symm_ru_blk_var10(), FLA_Symm_ru_blk_var2(), FLA_Symm_ru_blk_var3(), FLA_Symm_ru_blk_var4(), FLA_Symm_ru_blk_var5(), FLA_Symm_ru_blk_var6(), FLA_Symm_ru_blk_var7(), FLA_Symm_ru_blk_var8(), FLA_Symm_ru_blk_var9(), FLA_Syr2k_ln_blk_var1(), FLA_Syr2k_ln_blk_var10(), FLA_Syr2k_ln_blk_var2(), FLA_Syr2k_ln_blk_var3(), FLA_Syr2k_ln_blk_var4(), FLA_Syr2k_ln_blk_var5(), FLA_Syr2k_ln_blk_var6(), FLA_Syr2k_ln_blk_var7(), FLA_Syr2k_ln_blk_var8(), FLA_Syr2k_ln_blk_var9(), FLA_Syr2k_lt_blk_var1(), FLA_Syr2k_lt_blk_var10(), FLA_Syr2k_lt_blk_var2(), FLA_Syr2k_lt_blk_var3(), FLA_Syr2k_lt_blk_var4(), FLA_Syr2k_lt_blk_var5(), FLA_Syr2k_lt_blk_var6(), FLA_Syr2k_lt_blk_var7(), FLA_Syr2k_lt_blk_var8(), FLA_Syr2k_lt_blk_var9(), FLA_Syr2k_un_blk_var1(), FLA_Syr2k_un_blk_var10(), FLA_Syr2k_un_blk_var2(), FLA_Syr2k_un_blk_var3(), FLA_Syr2k_un_blk_var4(), FLA_Syr2k_un_blk_var5(), FLA_Syr2k_un_blk_var6(), FLA_Syr2k_un_blk_var7(), FLA_Syr2k_un_blk_var8(), FLA_Syr2k_un_blk_var9(), FLA_Syr2k_ut_blk_var1(), FLA_Syr2k_ut_blk_var10(), FLA_Syr2k_ut_blk_var2(), FLA_Syr2k_ut_blk_var3(), FLA_Syr2k_ut_blk_var4(), FLA_Syr2k_ut_blk_var5(), FLA_Syr2k_ut_blk_var6(), FLA_Syr2k_ut_blk_var7(), FLA_Syr2k_ut_blk_var8(), FLA_Syr2k_ut_blk_var9(), FLA_Syrk_ln_blk_var1(), FLA_Syrk_ln_blk_var2(), FLA_Syrk_ln_blk_var3(), FLA_Syrk_ln_blk_var4(), FLA_Syrk_ln_blk_var5(), FLA_Syrk_ln_blk_var6(), FLA_Syrk_lt_blk_var1(), FLA_Syrk_lt_blk_var2(), FLA_Syrk_lt_blk_var3(), FLA_Syrk_lt_blk_var4(), FLA_Syrk_lt_blk_var5(), FLA_Syrk_lt_blk_var6(), FLA_Syrk_un_blk_var1(), FLA_Syrk_un_blk_var2(), FLA_Syrk_un_blk_var3(), FLA_Syrk_un_blk_var4(), FLA_Syrk_un_blk_var5(), FLA_Syrk_un_blk_var6(), FLA_Syrk_ut_blk_var1(), FLA_Syrk_ut_blk_var2(), FLA_Syrk_ut_blk_var3(), FLA_Syrk_ut_blk_var4(), FLA_Syrk_ut_blk_var5(), FLA_Syrk_ut_blk_var6(), FLA_Transpose_blk_var1(), FLA_Transpose_blk_var2(), FLA_Trinv_l_blk_var1(), FLA_Trinv_l_blk_var2(), FLA_Trinv_l_blk_var3(), FLA_Trinv_l_blk_var4(), FLA_Trinv_u_blk_var1(), FLA_Trinv_u_blk_var2(), FLA_Trinv_u_blk_var3(), FLA_Trinv_u_blk_var4(), FLA_Trmm_llh_blk_var1(), FLA_Trmm_llh_blk_var2(), FLA_Trmm_llh_blk_var3(), FLA_Trmm_llh_blk_var4(), FLA_Trmm_lln_blk_var1(), FLA_Trmm_lln_blk_var2(), FLA_Trmm_lln_blk_var3(), FLA_Trmm_lln_blk_var4(), FLA_Trmm_llt_blk_var1(), FLA_Trmm_llt_blk_var2(), FLA_Trmm_llt_blk_var3(), FLA_Trmm_llt_blk_var4(), FLA_Trmm_luh_blk_var1(), FLA_Trmm_luh_blk_var2(), FLA_Trmm_luh_blk_var3(), FLA_Trmm_luh_blk_var4(), FLA_Trmm_lun_blk_var1(), FLA_Trmm_lun_blk_var2(), FLA_Trmm_lun_blk_var3(), FLA_Trmm_lun_blk_var4(), FLA_Trmm_lut_blk_var1(), FLA_Trmm_lut_blk_var2(), FLA_Trmm_lut_blk_var3(), FLA_Trmm_lut_blk_var4(), FLA_Trmm_rlh_blk_var1(), FLA_Trmm_rlh_blk_var2(), FLA_Trmm_rlh_blk_var3(), FLA_Trmm_rlh_blk_var4(), FLA_Trmm_rln_blk_var1(), FLA_Trmm_rln_blk_var2(), FLA_Trmm_rln_blk_var3(), FLA_Trmm_rln_blk_var4(), FLA_Trmm_rlt_blk_var1(), FLA_Trmm_rlt_blk_var2(), FLA_Trmm_rlt_blk_var3(), FLA_Trmm_rlt_blk_var4(), FLA_Trmm_ruh_blk_var1(), FLA_Trmm_ruh_blk_var2(), FLA_Trmm_ruh_blk_var3(), FLA_Trmm_ruh_blk_var4(), FLA_Trmm_run_blk_var1(), FLA_Trmm_run_blk_var2(), FLA_Trmm_run_blk_var3(), FLA_Trmm_run_blk_var4(), FLA_Trmm_rut_blk_var1(), FLA_Trmm_rut_blk_var2(), FLA_Trmm_rut_blk_var3(), FLA_Trmm_rut_blk_var4(), FLA_Trsm_llh_blk_var1(), FLA_Trsm_llh_blk_var2(), FLA_Trsm_llh_blk_var3(), FLA_Trsm_llh_blk_var4(), FLA_Trsm_lln_blk_var1(), FLA_Trsm_lln_blk_var2(), FLA_Trsm_lln_blk_var3(), FLA_Trsm_lln_blk_var4(), FLA_Trsm_llt_blk_var1(), FLA_Trsm_llt_blk_var2(), FLA_Trsm_llt_blk_var3(), FLA_Trsm_llt_blk_var4(), FLA_Trsm_luh_blk_var1(), FLA_Trsm_luh_blk_var2(), FLA_Trsm_luh_blk_var3(), FLA_Trsm_luh_blk_var4(), FLA_Trsm_lun_blk_var1(), FLA_Trsm_lun_blk_var2(), FLA_Trsm_lun_blk_var3(), FLA_Trsm_lun_blk_var4(), FLA_Trsm_lut_blk_var1(), FLA_Trsm_lut_blk_var2(), FLA_Trsm_lut_blk_var3(), FLA_Trsm_lut_blk_var4(), FLA_Trsm_rlh_blk_var1(), FLA_Trsm_rlh_blk_var2(), FLA_Trsm_rlh_blk_var3(), FLA_Trsm_rlh_blk_var4(), FLA_Trsm_rln_blk_var1(), FLA_Trsm_rln_blk_var2(), FLA_Trsm_rln_blk_var3(), FLA_Trsm_rln_blk_var4(), FLA_Trsm_rlt_blk_var1(), FLA_Trsm_rlt_blk_var2(), FLA_Trsm_rlt_blk_var3(), FLA_Trsm_rlt_blk_var4(), FLA_Trsm_ruh_blk_var1(), FLA_Trsm_ruh_blk_var2(), FLA_Trsm_ruh_blk_var3(), FLA_Trsm_ruh_blk_var4(), FLA_Trsm_run_blk_var1(), FLA_Trsm_run_blk_var2(), FLA_Trsm_run_blk_var3(), FLA_Trsm_run_blk_var4(), FLA_Trsm_rut_blk_var1(), FLA_Trsm_rut_blk_var2(), FLA_Trsm_rut_blk_var3(), FLA_Trsm_rut_blk_var4(), FLA_Trsv_lc_blk_var1(), FLA_Trsv_lc_blk_var2(), FLA_Trsv_ln_blk_var1(), FLA_Trsv_ln_blk_var2(), FLA_Trsv_lt_blk_var1(), FLA_Trsv_lt_blk_var2(), FLA_Trsv_uc_blk_var1(), FLA_Trsv_uc_blk_var2(), FLA_Trsv_un_blk_var1(), FLA_Trsv_un_blk_var2(), FLA_Trsv_ut_blk_var1(), FLA_Trsv_ut_blk_var2(), FLA_Ttmm_l_blk_var1(), FLA_Ttmm_l_blk_var2(), FLA_Ttmm_l_blk_var3(), FLA_Ttmm_u_blk_var1(), FLA_Ttmm_u_blk_var2(), and FLA_Ttmm_u_blk_var3().

00264 {
00265     FLA_Error    e_val;
00266     FLA_Datatype datatype;
00267     dim_t        A_unproc_size;
00268     dim_t        typed_blocksize;
00269     dim_t        b;
00270 
00271     // Determine the size of the remaining portion of the matrix.
00272     A_unproc_size = FLA_determine_matrix_size( A_unproc, to_dir );
00273     
00274     // Determine the datatype of the matrix.
00275     datatype = FLA_Obj_datatype( A_unproc );
00276     
00277     // Determine the raw blocksize value from the blocksize structure.
00278     typed_blocksize = FLA_Blocksize_extract( datatype, bp );
00279 
00280     // Check blocksize for zero value.
00281     if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00282     {
00283         e_val = FLA_Check_blocksize_value( typed_blocksize );
00284         FLA_Check_error_code( e_val );
00285     }
00286 
00287     // If the unprocessed partition is smaller than our blocksize allows,
00288     // we have to use it's length/width instead.
00289     b = min( A_unproc_size, typed_blocksize );
00290     
00291     // Return the computed blocksize.
00292     return b;
00293 }

dim_t FLA_determine_matrix_size ( FLA_Obj  A_unproc,
FLA_Quadrant  to_dir 
)

References FLA_Obj_length(), FLA_Obj_min_dim(), and FLA_Obj_width().

Referenced by FLA_Determine_blocksize().

00297 {
00298     dim_t r_val = 0;
00299 
00300     // Determine the size of the matrix dimension along which we are moving.
00301     switch( to_dir )
00302     {
00303         case FLA_TOP:
00304         case FLA_BOTTOM:
00305         {
00306             r_val = FLA_Obj_length( A_unproc );
00307             break;
00308         }
00309         case FLA_LEFT:
00310         case FLA_RIGHT:
00311         {
00312             r_val = FLA_Obj_width( A_unproc );
00313             break;
00314         }
00315         case FLA_TL:
00316         case FLA_TR:
00317         case FLA_BL:
00318         case FLA_BR:
00319         {
00320             // We need to use min_dim() here because the matrix might be
00321             // rectangular.
00322             r_val = FLA_Obj_min_dim( A_unproc );
00323             break;
00324         }
00325     }
00326     
00327     return r_val;
00328 }

void FLA_Error_messages_init ( void   ) 

References FLA_Error_string_for_code().

Referenced by FLA_Init().

00057 {
00058     sprintf( FLA_Error_string_for_code(FLA_INVALID_SIDE),
00059              "Invalid side parameter value." );
00060     sprintf( FLA_Error_string_for_code(FLA_INVALID_UPLO),
00061              "Invalid uplo parameter value." );
00062     sprintf( FLA_Error_string_for_code(FLA_INVALID_TRANS),
00063              "Invalid trans parameter value." );
00064     sprintf( FLA_Error_string_for_code(FLA_INVALID_TRANS_GIVEN_DATATYPE),
00065              "Invalid trans value (FLA_CONJ_TRANSPOSE|FLA_CONJ_NO_TRANSPOSE) for given non-complex object datatype" );
00066     sprintf( FLA_Error_string_for_code(FLA_INVALID_CONJ),
00067              "Invalid conjugate parameter value." );
00068     sprintf( FLA_Error_string_for_code(FLA_INVALID_DIRECT),
00069              "Invalid direction parameter value." );
00070     sprintf( FLA_Error_string_for_code(FLA_INVALID_STOREV),
00071              "Invalid storev parameter value." );
00072     sprintf( FLA_Error_string_for_code(FLA_INVALID_DATATYPE),
00073              "Invalid datatype value." );
00074     sprintf( FLA_Error_string_for_code(FLA_INVALID_INTEGER_DATATYPE),
00075              "Invalid integer datatype value." );
00076     sprintf( FLA_Error_string_for_code(FLA_INVALID_REAL_DATATYPE),
00077              "Invalid real datatype value." );
00078     sprintf( FLA_Error_string_for_code(FLA_INVALID_COMPLEX_DATATYPE),
00079              "Invalid complex datatype value." );
00080     sprintf( FLA_Error_string_for_code(FLA_OBJECT_NOT_INTEGER),
00081              "Expected integer object." );
00082     sprintf( FLA_Error_string_for_code(FLA_OBJECT_NOT_REAL),
00083              "Expected real object." );
00084     sprintf( FLA_Error_string_for_code(FLA_OBJECT_NOT_COMPLEX),
00085              "Expected complex object." );
00086     sprintf( FLA_Error_string_for_code(FLA_OBJECT_NOT_SQUARE),
00087              "Expected square matrix object." );
00088     sprintf( FLA_Error_string_for_code(FLA_OBJECT_NOT_SCALAR),
00089              "Expected scalar object." );
00090     sprintf( FLA_Error_string_for_code(FLA_OBJECT_NOT_VECTOR),
00091              "Expected vector object." );
00092     sprintf( FLA_Error_string_for_code(FLA_INCONSISTENT_DATATYPES),
00093              "Detected inconsistent object datatypes." );
00094     sprintf( FLA_Error_string_for_code(FLA_NONCONFORMAL_DIMENSIONS),
00095              "Detected inconsistent object dimensions." );
00096     sprintf( FLA_Error_string_for_code(FLA_UNEQUAL_VECTOR_LENGTHS),
00097              "Detected vectors of unequal length." );
00098     sprintf( FLA_Error_string_for_code(FLA_INVALID_HESSENBERG_INDICES),
00099              "Detected invalid Hessenberg ilo/ihi indices." );
00100     sprintf( FLA_Error_string_for_code(FLA_INVALID_VECTOR_LENGTH),
00101              "Detected vector of unexpected length." );
00102     sprintf( FLA_Error_string_for_code(FLA_NULL_POINTER),
00103              "Encountered NULL pointer." );
00104     sprintf( FLA_Error_string_for_code(FLA_SPECIFIED_OBJ_DIM_MISMATCH),
00105              "Specified dimensions do not match object dimensions." );
00106     sprintf( FLA_Error_string_for_code(FLA_SPECIFIED_OBJ_LDIM_MISMATCH),
00107              "Specified leading dim dimension does not match object leading dimension." );
00108     sprintf( FLA_Error_string_for_code(FLA_INVALID_PIVOT_TYPE),
00109              "Invalid pivot index type specified." );
00110     sprintf( FLA_Error_string_for_code(FLA_MALLOC_RETURNED_NULL_POINTER),
00111              "malloc() returned NULL pointer." );
00112     sprintf( FLA_Error_string_for_code(FLA_OBJECT_BASE_BUFFER_MISMATCH),
00113              "Detected a buffer address mismatch between adjacent objects." );
00114     sprintf( FLA_Error_string_for_code(FLA_OBJECTS_NOT_VERTICALLY_ADJ),
00115              "Object partitions not vertically adjacent." );
00116     sprintf( FLA_Error_string_for_code(FLA_OBJECTS_NOT_HORIZONTALLY_ADJ),
00117              "Object partitions not horizontally adjacent." );
00118     sprintf( FLA_Error_string_for_code(FLA_ADJACENT_OBJECT_DIM_MISMATCH),
00119              "Object partitions have mismatched dimensions." );
00120     sprintf( FLA_Error_string_for_code(FLA_OBJECTS_NOT_VERTICALLY_ALIGNED),
00121              "Object partitions not vertically aligned." );
00122     sprintf( FLA_Error_string_for_code(FLA_OBJECTS_NOT_HORIZONTALLY_ALIGNED),
00123              "Object partitions not horizontally aligned." );
00124     sprintf( FLA_Error_string_for_code(FLA_INVALID_FLOATING_DATATYPE),
00125              "Expected single or double-precision real or complex datatype value." );
00126     sprintf( FLA_Error_string_for_code(FLA_OBJECT_NOT_FLOATING_POINT),
00127              "Expected single or double-precision real or complex object." );
00128     sprintf( FLA_Error_string_for_code(FLA_INVALID_BLOCKSIZE_VALUE),
00129              "Detected blocksize value less than or equal to zero." );
00130     sprintf( FLA_Error_string_for_code(FLA_OPEN_RETURNED_ERROR),
00131              "open() returned bad file descriptor." );
00132     sprintf( FLA_Error_string_for_code(FLA_LSEEK_RETURNED_ERROR),
00133              "lseek() returned error." );
00134     sprintf( FLA_Error_string_for_code(FLA_CLOSE_RETURNED_ERROR),
00135              "close() returned error." );
00136     sprintf( FLA_Error_string_for_code(FLA_UNLINK_RETURNED_ERROR),
00137              "unlink() returned error." );
00138     sprintf( FLA_Error_string_for_code(FLA_READ_RETURNED_ERROR),
00139              "read() returned error." );
00140     sprintf( FLA_Error_string_for_code(FLA_WRITE_RETURNED_ERROR),
00141              "write() returned error." );
00142     sprintf( FLA_Error_string_for_code(FLA_INVALID_QUADRANT),
00143              "Invalid quadrant parameter value." );
00144     sprintf( FLA_Error_string_for_code(FLA_NOT_YET_IMPLEMENTED),
00145              "Function or conditional branch/case not yet implemented." );
00146     sprintf( FLA_Error_string_for_code(FLA_EXPECTED_NONNEGATIVE_VALUE),
00147              "Expected non-negative value." );
00148     sprintf( FLA_Error_string_for_code(FLA_SUPERMATRIX_NOT_ENABLED),
00149              "SuperMatrix support must be enabled for this code to execute." );
00150     sprintf( FLA_Error_string_for_code(FLA_UNDEFINED_ERROR_CODE),
00151              "Undefined error code passed to FLA_Check_error_code()." );
00152     sprintf( FLA_Error_string_for_code(FLA_INVALID_DIAG),
00153              "Invalid diag parameter value." );
00154     sprintf( FLA_Error_string_for_code(FLA_INCONSISTENT_OBJECT_PRECISION),
00155              "Inconsistent precisions between objects." );
00156     sprintf( FLA_Error_string_for_code(FLA_INVALID_BLOCKSIZE_OBJ),
00157              "Encountered blocksize object containing value less than or equal to zero." );
00158     sprintf( FLA_Error_string_for_code(FLA_VECTOR_LENGTH_BELOW_MIN),
00159              "Detected vector length below pre-determined minimum." );
00160     sprintf( FLA_Error_string_for_code(FLA_PTHREAD_CREATE_RETURNED_ERROR),
00161              "pthread_create() returned error." );
00162     sprintf( FLA_Error_string_for_code(FLA_PTHREAD_JOIN_RETURNED_ERROR),
00163              "pthread_join() returned error." );
00164     sprintf( FLA_Error_string_for_code(FLA_INVALID_ISGN_VALUE),
00165              "Invalid value for isgn parameter (ie: |isgn| != 1)." );
00166     sprintf( FLA_Error_string_for_code(FLA_CHOL_FAILED_MATRIX_NOT_SPD),
00167              "FLA_Chol() failed due to negative diagonal element; matrix not SPD." );
00168     sprintf( FLA_Error_string_for_code(FLA_INVALID_ELEMTYPE),
00169              "Invalid object element type value." );
00170     sprintf( FLA_Error_string_for_code(FLA_POSIX_MEMALIGN_FAILED),
00171              "posix_memalign() returned error." );
00172     sprintf( FLA_Error_string_for_code(FLA_INVALID_SUBMATRIX_DIMS),
00173              "Invalid submatrix dimensions relative to parent matrix." );
00174     sprintf( FLA_Error_string_for_code(FLA_INVALID_SUBMATRIX_OFFSET),
00175              "Invalid submatrix offset relative to dimensions of submatrix and parent." );
00176     sprintf( FLA_Error_string_for_code(FLA_OBJECT_NOT_SCALAR_ELEMTYPE),
00177              "Object element type is not FLA_SCALAR as expected." );
00178     sprintf( FLA_Error_string_for_code(FLA_OBJECT_NOT_MATRIX_ELEMTYPE),
00179              "Object element type is not FLA_MATRIX as expected." );
00180     sprintf( FLA_Error_string_for_code(FLA_ENCOUNTERED_NON_POSITIVE_NTHREADS),
00181              "Encountered non-positive (zero) value for number of threads." );
00182     sprintf( FLA_Error_string_for_code(FLA_INVALID_CONJ_GIVEN_DATATYPE),
00183              "Invalid conj value (FLA_CONJUGATE) for given non-complex object datatype" );
00184     sprintf( FLA_Error_string_for_code(FLA_INVALID_COMPLEX_TRANS),
00185              "Invalid complex trans parameter value" );
00186     sprintf( FLA_Error_string_for_code(FLA_INVALID_REAL_TRANS),
00187              "Invalid real trans parameter value" );
00188     sprintf( FLA_Error_string_for_code(FLA_INVALID_BLAS_TRANS),
00189              "Invalid BLAS-style trans parameter value" );
00190     sprintf( FLA_Error_string_for_code(FLA_INVALID_NONCONSTANT_DATATYPE),
00191              "Invalid non-constant datatype value." );
00192     sprintf( FLA_Error_string_for_code(FLA_OBJECT_NOT_NONCONSTANT),
00193              "Expected non-constant object." );
00194     sprintf( FLA_Error_string_for_code(FLA_INVALID_M_GIVEN_LDIM),
00195              "Given m dimension exceeds leading dimension." );
00196     sprintf( FLA_Error_string_for_code(FLA_OBJECT_DATATYPES_NOT_EQUAL),
00197              "Detected unequal object datatypes." );
00198     sprintf( FLA_Error_string_for_code(FLA_DIVIDE_BY_ZERO),
00199              "Encountered request to invert zero scalar object." );
00200     sprintf( FLA_Error_string_for_code(FLA_OBJECT_ELEMTYPES_NOT_EQUAL),
00201              "Detected unequal object elemtypes." );
00202     sprintf( FLA_Error_string_for_code(FLA_INVALID_PIVOT_INDEX_RANGE),
00203              "Invalid pivot index range." );
00204     sprintf( FLA_Error_string_for_code(FLA_HOUSEH_PANEL_MATRIX_TOO_SMALL),
00205              "Block-panel Householder matrix is too small." );
00206     sprintf( FLA_Error_string_for_code(FLA_INVALID_OBJECT_LENGTH),
00207              "Expected different object length." );
00208     sprintf( FLA_Error_string_for_code(FLA_INVALID_OBJECT_WIDTH),
00209              "Expected different object width." );
00210     sprintf( FLA_Error_string_for_code(FLA_INVALID_ERROR_CHECKING_LEVEL),
00211              "Invalid error checking level." );
00212     sprintf( FLA_Error_string_for_code(FLA_ATTEMPTED_OVER_REPART_2X2),
00213              "Detected attempt to (2x2) repartition more matrix into A11 than exists in source quadrant." );
00214     sprintf( FLA_Error_string_for_code(FLA_ATTEMPTED_OVER_REPART_2X1),
00215              "Detected attempt to (2x1) repartition more matrix into A1 than exists in source partition." );
00216     sprintf( FLA_Error_string_for_code(FLA_ATTEMPTED_OVER_REPART_1X2),
00217              "Detected attempt to (1x2) repartition more matrix into A1 than exists in source partition." );
00218 }

char* FLA_Error_string_for_code ( int  code  ) 

References fla_error_string.

Referenced by FLA_Check_error_code_helper(), and FLA_Error_messages_init().

00046 {
00047     return fla_error_string[-code];
00048 }

void FLA_Finalize ( void   ) 

References FLA_Cntl_finalize(), FLA_Finalize_constants(), fla_finalize_fortran(), FLA_Finalize_memcounter(), FLA_initialized, and FLASH_Queue_finalize().

Referenced by fla_finalize_f().

00272 {
00273   if ( FLA_initialized == FALSE )
00274     return;
00275 
00276   FLA_initialized = FALSE;
00277 
00278   FLA_Finalize_constants();
00279 
00280   FLA_Cntl_finalize();
00281 
00282 #ifdef FLA_ENABLE_NON_CRITICAL_CODE
00283   FLA_F2C( fla_finalize_fortran )();
00284 #endif
00285   
00286 #ifdef FLA_ENABLE_SUPERMATRIX
00287   FLASH_Queue_finalize();
00288 #endif
00289 
00290   FLA_Finalize_memcounter();
00291 }

void FLA_Finalize_constants ( void   ) 

References FLA_MINUS_ONE, FLA_Obj_free(), FLA_ONE, FLA_TWO, and FLA_ZERO.

Referenced by FLA_Finalize().

00225 {
00226   FLA_Obj_free( &FLA_MINUS_ONE );
00227   FLA_Obj_free( &FLA_ZERO );
00228   FLA_Obj_free( &FLA_ONE );
00229   FLA_Obj_free( &FLA_TWO );
00230 }

void FLA_F2C() fla_finalize_f ( void   ) 

References FLA_Finalize().

00294 {
00295   FLA_Finalize();
00296 }

void FLA_F2C() fla_finalize_fortran ( void   ) 

Referenced by FLA_Finalize().

void FLA_Finalize_memcounter ( void   ) 

References FLA_Lock_destroy(), and memcounter.

Referenced by FLA_Finalize().

00255 {
00256 #ifdef FLA_ENABLE_MEM_COUNTER
00257   fprintf( stderr, "libflame: memory leak counter: %d\n", memcounter );
00258   fflush( stderr );
00259 #ifdef FLA_ENABLE_MULTITHREADING
00260   FLA_Lock_destroy( &memcounter_lock );
00261 #endif
00262 #endif
00263 }

void FLA_free ( void *  ptr  ) 

References FLA_Lock_acquire(), FLA_Lock_release(), and memcounter.

Referenced by FLA_Apply_househ2_UT_opt_dcomplex(), FLA_Apply_househ2_UT_opt_double(), FLA_Apply_househ2_UT_opt_float(), FLA_Apply_househ2_UT_opt_scomplex(), FLA_Blocksize_free(), FLA_Cntl_obj_free(), FLA_Obj_free(), FLA_Obj_free_without_buffer(), FLA_realloc(), FLASH_Obj_create_conf_to(), FLASH_Obj_create_helper(), FLASH_Obj_exec_parallel(), FLASH_Obj_free(), FLASH_Queue_push(), FLASH_Task_free(), and FLASH_Task_free_parallel().

00186 {
00187   if ( ptr != NULL )
00188   {
00189     // Free the memory addressed by ptr. Make sure it is not NULL just in case.
00190     free( ptr );
00191 
00192 #ifdef FLA_ENABLE_MEM_COUNTER
00193     // We don't want to decrement the counter if the buffer is NULL.
00194     // This is because it's likely that the buffer was never allocated
00195     // a valid pointer to begin with, which means FLA_malloc() was never
00196     // called and thus the counter was never incremented.
00197   #ifdef FLA_ENABLE_MULTITHREADING
00198     FLA_Lock_acquire( &memcounter_lock );
00199     memcounter -= 1;
00200     FLA_Lock_release( &memcounter_lock );
00201   #else
00202     memcounter -= 1;
00203   #endif
00204 #endif
00205   }
00206 }

void FLA_Init ( void   ) 

References FLA_Cntl_init(), FLA_Error_messages_init(), FLA_Init_constants(), fla_init_fortran(), FLA_Init_memcounter(), FLA_initialized, FLA_MINUS_ONE, FLA_ONE, FLA_TWO, FLA_ZERO, and FLASH_Queue_init().

Referenced by fla_init_f().

00087 {
00088   if ( FLA_initialized ) return;
00089   
00090   FLA_initialized = TRUE;
00091 
00092   FLA_Error_messages_init();
00093 
00094   FLA_Init_memcounter();
00095 
00096   FLA_Init_constants();
00097 
00098   FLA_Cntl_init();
00099 
00100 #ifdef FLA_ENABLE_NON_CRITICAL_CODE
00101   FLA_F2C( fla_init_fortran )( &FLA_MINUS_ONE, &FLA_ZERO, &FLA_ONE, &FLA_TWO );
00102 #endif
00103 
00104 #ifdef FLA_ENABLE_SUPERMATRIX
00105   FLASH_Queue_init( );
00106 #endif
00107 }

void FLA_Init_constants ( void   ) 

References FLA_c_minus_one, FLA_c_one, FLA_c_two, FLA_c_zero, FLA_d_minus_one, FLA_d_one, FLA_d_two, FLA_d_zero, FLA_i_minus_one, FLA_i_one, FLA_i_two, FLA_i_zero, FLA_MINUS_ONE, FLA_Obj_create(), FLA_ONE, FLA_s_minus_one, FLA_s_one, FLA_s_two, FLA_s_zero, FLA_TWO, FLA_z_minus_one, FLA_z_one, FLA_z_two, FLA_z_zero, FLA_ZERO, dcomplex::imag, scomplex::imag, dcomplex::real, and scomplex::real.

Referenced by FLA_Init().

00121 {
00122   int      *temp_i;
00123   float    *temp_s;
00124   double   *temp_d;
00125   scomplex *temp_c;
00126   dcomplex *temp_z;
00127 
00128   FLA_i_minus_one      = -1;
00129   FLA_i_zero           =  0;
00130   FLA_i_one            =  1;
00131   FLA_i_two            =  2;
00132 
00133   FLA_s_minus_one      = -1.0;
00134   FLA_s_zero           =  0.0;
00135   FLA_s_one            =  1.0;
00136   FLA_s_two            =  2.0;
00137 
00138   FLA_d_minus_one      = -1.0;
00139   FLA_d_zero           =  0.0;
00140   FLA_d_one            =  1.0;
00141   FLA_d_two            =  2.0;
00142 
00143   FLA_c_minus_one.real = -1.0;
00144   FLA_c_minus_one.imag =  0.0;
00145   FLA_c_zero.real      =  0.0;
00146   FLA_c_zero.imag      =  0.0;
00147   FLA_c_one.real       =  1.0;
00148   FLA_c_one.imag       =  0.0;
00149   FLA_c_two.real       =  2.0;
00150   FLA_c_two.imag       =  0.0;
00151 
00152   FLA_z_minus_one.real = -1.0;
00153   FLA_z_minus_one.imag =  0.0;
00154   FLA_z_zero.real      =  0.0;
00155   FLA_z_zero.imag      =  0.0;
00156   FLA_z_one.real       =  1.0;
00157   FLA_z_one.imag       =  0.0;
00158   FLA_z_two.real       =  2.0;
00159   FLA_z_two.imag       =  0.0;
00160 
00161   FLA_Obj_create( FLA_CONSTANT, 1, 1, &FLA_MINUS_ONE );
00162 
00163   temp_i = FLA_INT_PTR( FLA_MINUS_ONE );
00164   temp_s = FLA_FLOAT_PTR( FLA_MINUS_ONE );
00165   temp_d = FLA_DOUBLE_PTR( FLA_MINUS_ONE );
00166   temp_c = FLA_COMPLEX_PTR( FLA_MINUS_ONE );
00167   temp_z = FLA_DOUBLE_COMPLEX_PTR( FLA_MINUS_ONE );
00168 
00169   *temp_i = FLA_i_minus_one;
00170   *temp_s = FLA_s_minus_one;
00171   *temp_d = FLA_d_minus_one;
00172   *temp_c = FLA_c_minus_one;
00173   *temp_z = FLA_z_minus_one;
00174 
00175   FLA_Obj_create( FLA_CONSTANT, 1, 1, &FLA_ZERO );
00176 
00177   temp_i = FLA_INT_PTR( FLA_ZERO );
00178   temp_s = FLA_FLOAT_PTR( FLA_ZERO );
00179   temp_d = FLA_DOUBLE_PTR( FLA_ZERO );
00180   temp_c = FLA_COMPLEX_PTR( FLA_ZERO );
00181   temp_z = FLA_DOUBLE_COMPLEX_PTR( FLA_ZERO );
00182 
00183   *temp_i = FLA_i_zero;
00184   *temp_s = FLA_s_zero;
00185   *temp_d = FLA_d_zero;
00186   *temp_c = FLA_c_zero;
00187   *temp_z = FLA_z_zero;
00188 
00189   FLA_Obj_create( FLA_CONSTANT, 1, 1, &FLA_ONE );
00190 
00191   temp_i = FLA_INT_PTR( FLA_ONE );
00192   temp_s = FLA_FLOAT_PTR( FLA_ONE );
00193   temp_d = FLA_DOUBLE_PTR( FLA_ONE );
00194   temp_c = FLA_COMPLEX_PTR( FLA_ONE );
00195   temp_z = FLA_DOUBLE_COMPLEX_PTR( FLA_ONE );
00196 
00197   *temp_i = FLA_i_one;
00198   *temp_s = FLA_s_one;
00199   *temp_d = FLA_d_one;
00200   *temp_c = FLA_c_one;
00201   *temp_z = FLA_z_one;
00202 
00203   FLA_Obj_create( FLA_CONSTANT, 1, 1, &FLA_TWO );
00204 
00205   temp_i = FLA_INT_PTR( FLA_TWO );
00206   temp_s = FLA_FLOAT_PTR( FLA_TWO );
00207   temp_d = FLA_DOUBLE_PTR( FLA_TWO );
00208   temp_c = FLA_COMPLEX_PTR( FLA_TWO );
00209   temp_z = FLA_DOUBLE_COMPLEX_PTR( FLA_TWO );
00210 
00211   *temp_i = FLA_i_two;
00212   *temp_s = FLA_s_two;
00213   *temp_d = FLA_d_two;
00214   *temp_c = FLA_c_two;
00215   *temp_z = FLA_z_two;
00216 }

void FLA_F2C() fla_init_f ( void   ) 

References FLA_Init().

00110 {
00111   FLA_Init();
00112 }

void FLA_F2C() fla_init_fortran ( FLA_Obj minus_one,
FLA_Obj zero,
FLA_Obj one,
FLA_Obj two 
)

Referenced by FLA_Init().

void FLA_Init_memcounter ( void   ) 

References FLA_Lock_init(), and memcounter.

Referenced by FLA_Init().

00239 {
00240 #ifdef FLA_ENABLE_MEM_COUNTER
00241   memcounter = 0;
00242 #ifdef FLA_ENABLE_MULTITHREADING
00243   FLA_Lock_init( &memcounter_lock );
00244 #endif
00245 #endif
00246 }

FLA_Bool FLA_Initialized ( void   ) 

References FLA_initialized.

00305 {
00306   return FLA_initialized;
00307 }

F_INT FLA_F2C() fla_initialized_f ( void   ) 

References FLA_initialized.

00310 {
00311   return ( F_INT ) FLA_initialized;
00312 }

void FLA_Lock_acquire ( FLA_Lock fla_lock_ptr  ) 

References FLA_Lock_s::lock.

Referenced by FLA_free(), FLA_malloc(), FLASH_Obj_exec_parallel(), FLASH_Queue_exec_parallel_function(), FLASH_Task_free_parallel(), and FLASH_Task_update_dependencies().

00067 {
00068 #if   FLA_MULTITHREADING_MODEL == FLA_OPENMP
00069   omp_set_lock( &(fla_lock_ptr->lock) );
00070 #elif FLA_MULTITHREADING_MODEL == FLA_PTHREADS
00071   pthread_mutex_lock( &(fla_lock_ptr->lock) );
00072 #endif
00073 }

void FLA_Lock_destroy ( FLA_Lock fla_lock_ptr  ) 

References FLA_Lock_s::lock.

Referenced by FLA_Finalize_memcounter(), FLASH_Obj_exec(), and FLASH_Queue_exec().

00097 {
00098 #if   FLA_MULTITHREADING_MODEL == FLA_OPENMP
00099   omp_destroy_lock( &(fla_lock_ptr->lock) );
00100 #elif FLA_MULTITHREADING_MODEL == FLA_PTHREADS
00101   pthread_mutex_destroy( &(fla_lock_ptr->lock) );
00102 #endif
00103 }

void FLA_Lock_init ( FLA_Lock fla_lock_ptr  ) 

References FLA_Lock_s::lock.

Referenced by FLA_Init_memcounter(), FLASH_Obj_exec(), and FLASH_Queue_exec().

00052 {
00053 #if   FLA_MULTITHREADING_MODEL == FLA_OPENMP
00054   omp_init_lock( &(fla_lock_ptr->lock) );
00055 #elif FLA_MULTITHREADING_MODEL == FLA_PTHREADS
00056   pthread_mutex_init( &(fla_lock_ptr->lock), NULL );
00057 #endif
00058 }

void FLA_Lock_release ( FLA_Lock fla_lock_ptr  ) 

References FLA_Lock_s::lock.

Referenced by FLA_free(), FLA_malloc(), FLASH_Obj_exec_parallel(), FLASH_Queue_exec_parallel_function(), FLASH_Task_free_parallel(), and FLASH_Task_update_dependencies().

00082 {
00083 #if   FLA_MULTITHREADING_MODEL == FLA_OPENMP
00084   omp_unset_lock( &(fla_lock_ptr->lock) );
00085 #elif FLA_MULTITHREADING_MODEL == FLA_PTHREADS
00086   pthread_mutex_unlock( &(fla_lock_ptr->lock) );
00087 #endif
00088 }

void* FLA_malloc ( size_t  size  ) 

References FLA_Check_error_level(), FLA_Check_malloc_pointer(), FLA_Check_posix_memalign_failure(), FLA_Lock_acquire(), FLA_Lock_release(), and memcounter.

Referenced by FLA_Apply_househ2_UT_opt_dcomplex(), FLA_Apply_househ2_UT_opt_double(), FLA_Apply_househ2_UT_opt_float(), FLA_Apply_househ2_UT_opt_scomplex(), FLA_Blocksize_create(), FLA_Blocksize_create_copy(), FLA_Cntl_apqut_obj_create(), FLA_Cntl_apqutinc_obj_create(), FLA_Cntl_apqutud_obj_create(), FLA_Cntl_axpy_obj_create(), FLA_Cntl_chol_obj_create(), FLA_Cntl_copy_obj_create(), FLA_Cntl_gemm_obj_create(), FLA_Cntl_gemv_obj_create(), FLA_Cntl_hemm_obj_create(), FLA_Cntl_her2k_obj_create(), FLA_Cntl_herk_obj_create(), FLA_Cntl_hess_obj_create(), FLA_Cntl_lqut_obj_create(), FLA_Cntl_lu_obj_create(), FLA_Cntl_qrut_obj_create(), FLA_Cntl_qrutinc_obj_create(), FLA_Cntl_qrutud_obj_create(), FLA_Cntl_spdinv_obj_create(), FLA_Cntl_swap_obj_create(), FLA_Cntl_sylv_obj_create(), FLA_Cntl_symm_obj_create(), FLA_Cntl_syr2k_obj_create(), FLA_Cntl_syrk_obj_create(), FLA_Cntl_tpose_obj_create(), FLA_Cntl_trinv_obj_create(), FLA_Cntl_trmm_obj_create(), FLA_Cntl_trsm_obj_create(), FLA_Cntl_trsv_obj_create(), FLA_Cntl_ttmm_obj_create(), FLA_Obj_create_conf_to(), FLA_Obj_create_ext(), FLA_Obj_create_without_buffer(), FLA_realloc(), FLASH_Obj_create_conf_to(), FLASH_Obj_create_helper(), FLASH_Obj_push(), FLASH_Queue_push(), and FLASH_Task_alloc().

00051 {
00052   void*     ptr = NULL;
00053   FLA_Error e_val;
00054 #ifdef FLA_ENABLE_MEMORY_ALIGNMENT
00055   int       r_val;
00056 #endif
00057 
00058   // In practice, the size argument should very rarely be zero. However, if the
00059   // calling code does request a memory region of zero length, we short-circut
00060   // the actual allocation request and just return NULL. Hopefully, the calling
00061   // code is written such that the pointer is never dereferenced. At free()-time
00062   // everything will be fine, as calling free() with a NULl pointer is safe.
00063   // Also note that we do NOT increment the memory counter before returning.
00064   // Likewise, we will not decrement the counter when a NULL pointer is freed.
00065   if ( size == 0 ) return NULL;
00066 
00067 #ifdef FLA_ENABLE_MEMORY_ALIGNMENT
00068 
00069   // Allocate size bytes of memory. Here, we call posix_memalign() if
00070   // memory alignment was requested at configure-time, providing the
00071   // alignment boundary value given by the user. posix_memalign() also
00072   // returns an error code, which is how it signals that something
00073   // went wrong. Compare to malloc(), which does this by simply returning
00074   // a NULL pointer.
00075   r_val = posix_memalign( &ptr, ( size_t ) FLA_MEMORY_ALIGNMENT_BOUNDARY, size );
00076 
00077   // Check the return value of posix_memalign() for evidence that the
00078   // request failed.
00079   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00080   {
00081     e_val = FLA_Check_posix_memalign_failure( r_val );
00082     FLA_Check_error_code( e_val );
00083   }
00084 
00085 #else
00086 
00087   // Allocate size bytes of memory. Note that malloc() only guarantees 8-byte
00088   // alignment.
00089   ptr = malloc( size );
00090 
00091   // It may not seem useful to have a check for a null pointer here, given
00092   // that such an occurance would cause the file and line of the error to
00093   // be reported as the below line of the current file instead of the file
00094   // and line number of the calling code. However, consider that in the
00095   // unlikely event that malloc() does return a null pointer, the user will
00096   // have much bigger problems on his hands (e.g. an exhausted memory heap)
00097   // than needing to know exactly what line in the library triggered error.
00098   // Note that such a line in the application code is likely not the root
00099   // source of the problem anyway (ie: not the reason why the heap is full).
00100   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00101   {
00102     e_val = FLA_Check_malloc_pointer( ptr );
00103     FLA_Check_error_code( e_val );
00104   }
00105 
00106 #endif
00107 
00108   // Update the memory counter if it is enabled, and do so thread-safely if
00109   // multithreading is enabled.
00110 #ifdef FLA_ENABLE_MEM_COUNTER
00111   #ifdef FLA_ENABLE_MULTITHREADING
00112   FLA_Lock_acquire( &memcounter_lock );
00113   memcounter += 1;
00114   FLA_Lock_release( &memcounter_lock );
00115   #else
00116   memcounter += 1;
00117   #endif
00118 #endif
00119   
00120   // Return the pointer to the new memory region returned by malloc().
00121   return ptr;
00122 }

FLA_Error FLA_Merge_1x2 ( FLA_Obj  AL,
FLA_Obj  AR,
FLA_Obj A 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Merge_1x2_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_LQ_UT_Accum_T_blk_var1(), and FLA_LQ_UT_blk_var2().

00610 {
00611   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00612     FLA_Merge_1x2_check( AL, AR,    A );
00613 
00614   A->m    = AL.m;
00615   A->n    = AL.n + AR.n;
00616   A->offm = AL.offm;
00617   A->offn = AL.offn;
00618   A->base = AL.base;
00619 
00620   return FLA_SUCCESS;
00621 }

FLA_Error FLA_Merge_1x2_check ( FLA_Obj  AL,
FLA_Obj  AR,
FLA_Obj A 
)

References FLA_Check_adjacent_objects_1x2(), FLA_Check_base_buffer_mismatch(), FLA_Check_null_pointer(), and FLA_Check_valid_object_datatype().

Referenced by FLA_Merge_1x2().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_valid_object_datatype( AL );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_valid_object_datatype( AR );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_null_pointer( A );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_base_buffer_mismatch( AL, AR );
00049   FLA_Check_error_code( e_val );
00050 
00051   e_val = FLA_Check_adjacent_objects_1x2( AL, AR );
00052   FLA_Check_error_code( e_val );
00053 
00054   return FLA_SUCCESS;
00055 }

FLA_Error FLA_Merge_2x1 ( FLA_Obj  AT,
FLA_Obj  AB,
FLA_Obj A 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Merge_2x1_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_LU_piv_blk_var3(), FLA_LU_piv_blk_var4(), FLA_LU_piv_blk_var5(), FLA_LU_piv_unb_var3(), FLA_LU_piv_unb_var3b(), FLA_LU_piv_unb_var4(), FLA_LU_piv_unb_var5(), FLA_QR_UT_Accum_T_blk_var1(), and FLA_QR_UT_blk_var2().

00588 {
00589   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00590     FLA_Merge_2x1_check( AT,
00591                          AB,   A );
00592 
00593   A->m    = AT.m + AB.m;
00594   A->n    = AT.n;
00595   A->offm = AT.offm;
00596   A->offn = AT.offn;
00597   A->base = AT.base;
00598 
00599   return FLA_SUCCESS;
00600 }

FLA_Error FLA_Merge_2x1_check ( FLA_Obj  AT,
FLA_Obj  AB,
FLA_Obj A 
)

References FLA_Check_adjacent_objects_2x1(), FLA_Check_base_buffer_mismatch(), FLA_Check_null_pointer(), and FLA_Check_valid_object_datatype().

Referenced by FLA_Merge_2x1().

00037 {
00038   FLA_Error e_val;
00039 
00040   e_val = FLA_Check_valid_object_datatype( AT );
00041   FLA_Check_error_code( e_val );
00042 
00043   e_val = FLA_Check_valid_object_datatype( AB );
00044   FLA_Check_error_code( e_val );
00045 
00046   e_val = FLA_Check_null_pointer( A );
00047   FLA_Check_error_code( e_val );
00048 
00049   e_val = FLA_Check_base_buffer_mismatch( AT, AB );
00050   FLA_Check_error_code( e_val );
00051 
00052   e_val = FLA_Check_adjacent_objects_2x1( AT,
00053                                           AB );
00054   FLA_Check_error_code( e_val );
00055 
00056   return FLA_SUCCESS;
00057 }

FLA_Error FLA_Merge_2x2 ( FLA_Obj  A11,
FLA_Obj  A12,
FLA_Obj  A21,
FLA_Obj  A22,
FLA_Obj A 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Merge_2x2_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

00565 {
00566   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00567     FLA_Merge_2x2_check( A11, A12,
00568                          A21, A22,    A );
00569 
00570   A->m      = A11.m + A21.m;
00571   A->n      = A11.n + A12.n;
00572   A->offm   = A11.offm;
00573   A->offn   = A11.offn;
00574   A->base   = A11.base;
00575 
00576   return FLA_SUCCESS;
00577 }

FLA_Error FLA_Merge_2x2_check ( FLA_Obj  A11,
FLA_Obj  A12,
FLA_Obj  A21,
FLA_Obj  A22,
FLA_Obj A 
)

References FLA_Check_adjacent_objects_2x2(), FLA_Check_base_buffer_mismatch(), FLA_Check_null_pointer(), and FLA_Check_valid_object_datatype().

Referenced by FLA_Merge_2x2().

00037 {
00038   FLA_Error e_val;
00039 
00040   e_val = FLA_Check_valid_object_datatype( A11 );
00041   FLA_Check_error_code( e_val );
00042 
00043   e_val = FLA_Check_valid_object_datatype( A21 );
00044   FLA_Check_error_code( e_val );
00045 
00046   e_val = FLA_Check_valid_object_datatype( A12 );
00047   FLA_Check_error_code( e_val );
00048 
00049   e_val = FLA_Check_valid_object_datatype( A22 );
00050   FLA_Check_error_code( e_val );
00051 
00052   e_val = FLA_Check_null_pointer( A );
00053   FLA_Check_error_code( e_val );
00054 
00055   e_val = FLA_Check_base_buffer_mismatch( A11, A21 );
00056   FLA_Check_error_code( e_val );
00057 
00058   e_val = FLA_Check_base_buffer_mismatch( A12, A22 );
00059   FLA_Check_error_code( e_val );
00060 
00061   e_val = FLA_Check_base_buffer_mismatch( A11, A12 );
00062   FLA_Check_error_code( e_val );
00063 
00064   e_val = FLA_Check_adjacent_objects_2x2( A11, A12,
00065                                           A21, A22 );
00066   FLA_Check_error_code( e_val );
00067 
00068   return FLA_SUCCESS;
00069 }

FLA_Error FLA_Obj_add_to_diagonal ( void *  diag_value,
FLA_Obj  A 
)

References FLA_Check_error_level(), FLA_Obj_add_to_diagonal_check(), FLA_Obj_datatype(), FLA_Obj_ldim(), FLA_Obj_min_dim(), dcomplex::imag, scomplex::imag, dcomplex::real, and scomplex::real.

Referenced by fla_obj_add_to_diagonal_f().

00643 {
00644   FLA_Datatype datatype;
00645   dim_t        i, n, ldim;
00646 
00647   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00648     FLA_Obj_add_to_diagonal_check( diag_value, A );
00649 
00650   datatype = FLA_Obj_datatype( A );
00651   ldim     = FLA_Obj_ldim( A );
00652   n        = FLA_Obj_min_dim( A );
00653 
00654   switch ( datatype ){
00655 
00656   case FLA_FLOAT:
00657   {
00658     float *buff_A    = ( float * ) FLA_FLOAT_PTR( A );
00659     float *value_ptr = ( float * ) diag_value;
00660 
00661     for ( i = 0; i < n; i++ )
00662       buff_A[ i*ldim + i ] += *value_ptr;
00663 
00664     break;
00665   }
00666 
00667   case FLA_DOUBLE:
00668   {
00669     double *buff_A    = ( double * ) FLA_DOUBLE_PTR( A );
00670     double *value_ptr = ( double * ) diag_value;
00671 
00672     for ( i = 0; i < n; i++ )
00673       buff_A[ i*ldim + i ] += *value_ptr;
00674 
00675     break;
00676   }
00677 
00678   case FLA_COMPLEX:
00679   {
00680     scomplex *buff_A    = ( scomplex * ) FLA_COMPLEX_PTR( A );
00681     scomplex *value_ptr = ( scomplex * ) diag_value;
00682 
00683     for ( i = 0; i < n; i++ )
00684     {
00685       buff_A[ i*ldim + i ].real += value_ptr->real;
00686       buff_A[ i*ldim + i ].imag += value_ptr->imag;
00687     }
00688 
00689     break;
00690   }
00691 
00692   case FLA_DOUBLE_COMPLEX:
00693   {
00694     dcomplex *buff_A    = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( A );
00695     dcomplex *value_ptr = ( dcomplex * ) diag_value;
00696 
00697     for ( i = 0; i < n; i++ )
00698     {
00699       buff_A[ i*ldim + i ].real += value_ptr->real;
00700       buff_A[ i*ldim + i ].imag += value_ptr->imag;
00701     }
00702 
00703     break;
00704   }
00705 
00706   }
00707 
00708   return FLA_SUCCESS;
00709 }

FLA_Error FLA_Obj_add_to_diagonal_check ( void *  diag_value,
FLA_Obj  A 
)

References FLA_Check_floating_object(), FLA_Check_nonconstant_object(), and FLA_Check_null_pointer().

Referenced by FLA_Obj_add_to_diagonal().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_floating_object( A );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_nonconstant_object( A );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_null_pointer( diag_value );
00046   FLA_Check_error_code( e_val );
00047 
00048   return FLA_SUCCESS;
00049 }

void FLA_F2C() fla_obj_add_to_diagonal_f ( F_INT *  value,
F_INT *  A,
F_INT *  IERROR 
)

References FLA_Obj_add_to_diagonal().

00713 {
00714   *IERROR = FLA_Obj_add_to_diagonal(  ( ( void    * ) value ),
00715                                      *( ( FLA_Obj * ) A     ) );
00716 }

void FLA_F2C() fla_obj_attach_buff_f ( F_INT *  buffer,
F_INT *  lda,
F_INT *  obj,
F_INT *  IERROR 
)

References FLA_Obj_attach_buffer().

00373 {
00374   *IERROR = FLA_Obj_attach_buffer(  ( ( void    * ) buffer ),
00375                                    *( ( dim_t   * ) ldim   ),
00376                                     ( ( FLA_Obj * ) obj    ) );
00377 }

FLA_Error FLA_Obj_attach_buffer ( void *  buffer,
dim_t  lda,
FLA_Obj obj 
)

FLA_Error FLA_Obj_attach_buffer_check ( void *  buffer,
dim_t  ldim,
FLA_Obj obj 
)

References FLA_Check_null_pointer().

Referenced by FLA_Obj_attach_buffer().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_null_pointer( obj );
00040   FLA_Check_error_code( e_val );
00041 
00042   return FLA_SUCCESS;
00043 }

void* FLA_Obj_buffer ( FLA_Obj  obj  ) 

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Obj_buffer_check(), FLA_Obj_elem_size(), FLA_Obj_ldim(), FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_Obj_attach_buffer_hierarchy(), FLASH_Obj_blocksizes(), FLASH_Obj_create_hierarchy(), FLASH_Obj_depth(), FLASH_Obj_extract_buffer(), FLASH_Obj_free_hierarchy(), FLASH_print_struct(), and FLASH_print_struct_helper().

00693 {
00694   void*  buffer;
00695   size_t elem_size, offm, offn, ldim;
00696   size_t byte_offset;
00697 
00698   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00699     FLA_Obj_buffer_check( obj );
00700 
00701 //  buffer = ( char * ) (obj.base)->buffer + 
00702 //                      elem_size * ( obj.offn * FLA_Obj_ldim( obj ) + 
00703 //                                    obj.offm );
00704 
00705   elem_size = ( size_t ) FLA_Obj_elem_size( obj );
00706   ldim      = ( size_t ) FLA_Obj_ldim( obj );
00707   offm      = ( size_t ) obj.offm;
00708   offn      = ( size_t ) obj.offn;
00709 
00710   byte_offset = elem_size * ( offn * ldim + offm );
00711 
00712   buffer = ( char * ) (obj.base)->buffer + byte_offset;
00713 
00714   return buffer;
00715 }

FLA_Error FLA_Obj_buffer_check ( FLA_Obj  obj  ) 

References FLA_Obj_view::base, and FLA_Check_null_pointer().

Referenced by FLA_Obj_buffer().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_null_pointer( obj.base );
00040   FLA_Check_error_code( e_val );
00041 
00042   return FLA_SUCCESS;
00043 }

FLA_Error FLA_Obj_complex_constant_create ( double  const_real,
double  const_imag,
FLA_Obj obj 
)

References FLA_Check_error_level(), FLA_Obj_complex_constant_create_check(), FLA_Obj_create(), dcomplex::imag, scomplex::imag, dcomplex::real, and scomplex::real.

Referenced by fla_obj_complex_constant_create_f().

00320 {
00321   float          *temp_s;
00322   double         *temp_d;
00323   scomplex       *temp_c;
00324   dcomplex *temp_z;
00325 
00326   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00327     FLA_Obj_complex_constant_create_check( const_real, const_imag, obj );
00328 
00329   FLA_Obj_create( FLA_CONSTANT, 1, 1, obj );
00330 
00331   temp_s       = FLA_FLOAT_PTR( *obj );
00332   temp_d       = FLA_DOUBLE_PTR( *obj );
00333   temp_c       = FLA_COMPLEX_PTR( *obj );
00334   temp_z       = FLA_DOUBLE_COMPLEX_PTR( *obj );
00335 
00336   *temp_s      = ( float ) const_real;
00337   *temp_d      =           const_real;
00338   temp_c->real = ( float ) const_real;
00339   temp_c->imag = ( float ) const_imag;
00340   temp_z->real =           const_real;
00341   temp_z->imag =           const_imag;
00342 
00343   return FLA_SUCCESS;
00344 }

FLA_Error FLA_Obj_complex_constant_create_check ( double  const_real,
double  const_imag,
FLA_Obj obj 
)

References FLA_Check_null_pointer().

Referenced by FLA_Obj_complex_constant_create().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_null_pointer( obj );
00040   FLA_Check_error_code( e_val );
00041 
00042   return FLA_SUCCESS;
00043 }

void FLA_F2C() fla_obj_complex_constant_create_f ( F_DOUBLE *  const_real,
F_DOUBLE *  const_imag,
F_INT *  obj,
F_INT *  IERROR 
)

References FLA_Obj_complex_constant_create().

00348 {
00349   *IERROR = FLA_Obj_complex_constant_create( *( ( double  * ) const_real ),
00350                                              *( ( double  * ) const_imag ),
00351                                               ( ( FLA_Obj * ) obj        ) );
00352 }

FLA_Error FLA_Obj_constant_create ( double  const_real,
FLA_Obj obj 
)

References FLA_Check_error_level(), FLA_Obj_constant_create_check(), FLA_Obj_create(), dcomplex::imag, scomplex::imag, dcomplex::real, and scomplex::real.

Referenced by fla_obj_constant_create_f().

00280 {
00281   float    *temp_s;
00282   double   *temp_d;
00283   scomplex *temp_c;
00284   dcomplex *temp_z;
00285 
00286   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00287     FLA_Obj_constant_create_check( const_real, obj );
00288 
00289   FLA_Obj_create( FLA_CONSTANT, 1, 1, obj );
00290 
00291   temp_s       = FLA_FLOAT_PTR( *obj );
00292   temp_d       = FLA_DOUBLE_PTR( *obj );
00293   temp_c       = FLA_COMPLEX_PTR( *obj );
00294   temp_z       = FLA_DOUBLE_COMPLEX_PTR( *obj );
00295 
00296   *temp_s      = ( float ) const_real;
00297   *temp_d      =           const_real;
00298   temp_c->real = ( float ) const_real;
00299   temp_c->imag = ( float ) 0.0;
00300   temp_z->real =           const_real;
00301   temp_z->imag =           0.0;
00302 
00303   return FLA_SUCCESS;
00304 }

FLA_Error FLA_Obj_constant_create_check ( double  const_real,
FLA_Obj obj 
)

References FLA_Check_null_pointer().

Referenced by FLA_Obj_constant_create().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_null_pointer( obj );
00040   FLA_Check_error_code( e_val );
00041 
00042   return FLA_SUCCESS;
00043 }

void FLA_F2C() fla_obj_constant_create_f ( F_DOUBLE *  const_real,
F_INT *  obj,
F_INT *  IERROR 
)

References FLA_Obj_constant_create().

00308 {
00309   *IERROR = FLA_Obj_constant_create( *( ( double  * ) const_real ),
00310                                       ( ( FLA_Obj * ) obj        ) );
00311 }

FLA_Error FLA_Obj_create ( FLA_Datatype  datatype,
dim_t  m,
dim_t  n,
FLA_Obj obj 
)

FLA_Error FLA_Obj_create_conf_to ( FLA_Trans  trans,
FLA_Obj  old,
FLA_Obj obj 
)

References FLA_Obj_view::base, FLA_Obj_struct::buffer, FLA_Obj_struct::datatype, FLA_Obj_struct::elemtype, FLA_Check_error_level(), FLA_malloc(), FLA_Obj_create_conf_to_check(), FLA_Obj_datatype(), FLA_Obj_elem_size(), FLA_Obj_length(), FLA_Obj_width(), FLA_Obj_struct::id, FLA_Obj_struct::ldim, FLA_Obj_struct::m, FLA_Obj_view::m, FLA_Obj_struct::m_index, FLA_Obj_struct::m_inner, FLA_Obj_struct::n, FLA_Obj_view::n, FLA_Obj_struct::n_index, FLA_Obj_struct::n_inner, FLA_Obj_struct::n_read_tasks, FLA_Obj_view::offm, FLA_Obj_view::offn, FLA_Obj_struct::read_task_head, FLA_Obj_struct::read_task_tail, and FLA_Obj_struct::write_task.

Referenced by FLA_Apply_househ2_UT(), FLA_Axpys_external(), FLA_Axpyt_external(), FLA_Gemm_external(), FLA_Gemv_external(), FLA_Gemvc_external(), FLA_Gerc_external(), FLA_Hemvc_external(), FLA_Her2c_external(), FLA_Herc_external(), fla_obj_create_conf_to_f(), FLA_Random_spd_matrix(), FLA_Trmm_external(), FLA_Trmmsx_external(), FLA_Trmv_external(), FLA_Trmvsx_external(), FLA_Trsm_external(), FLA_Trsmsx_external(), FLA_Trsv_external(), FLA_Trsvsx_external(), and FLASH_LU_incpiv_var2().

00133 {
00134   FLA_Datatype datatype;
00135   dim_t        m, n, ldim; 
00136   size_t       buffer_size;
00137 
00138   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00139     FLA_Obj_create_conf_to_check( trans, obj_old, obj );
00140 
00141   datatype = FLA_Obj_datatype( obj_old );
00142 
00143   // Query the dimensions of the existing object.
00144   if ( trans == FLA_NO_TRANSPOSE )
00145   {
00146     m = FLA_Obj_length( obj_old );
00147     n = FLA_Obj_width( obj_old );
00148   }
00149   else
00150   {
00151     m = FLA_Obj_width( obj_old );
00152     n = FLA_Obj_length( obj_old );
00153   }
00154 
00155   // Populate the fields in the view object.
00156   obj->m                = m;
00157   obj->n                = n;
00158   obj->offm             = 0;
00159   obj->offn             = 0;
00160 
00161   // Allocate the base object field.
00162   obj->base             = ( FLA_Base_obj * ) FLA_malloc( sizeof( FLA_Base_obj ) );
00163 
00164   // Populate the fields in the base object.
00165   obj->base->datatype   = datatype;
00166   obj->base->elemtype   = FLA_SCALAR;
00167   obj->base->m          = m;
00168   obj->base->n          = n;
00169   obj->base->m_inner    = m;
00170   obj->base->n_inner    = n;
00171   obj->base->id         = ( unsigned long ) obj->base;
00172   obj->base->m_index    = 0;
00173   obj->base->n_index    = 0;
00174 
00175   // Determine the leading dimension.
00176   ldim                  = m;
00177 #ifdef FLA_ENABLE_MEMORY_ALIGNMENT
00178   #ifdef FLA_ENABLE_LDIM_ALIGNMENT
00179   // Note that here we don't guard the ldim computation with a conditional
00180   // like we do in FLA_Obj_create_ext(), because we assume that the matrix
00181   // given to this function has an element type of FLA_SCALAR.
00182   ldim                  = ( ( m * FLA_Obj_elem_size( *obj ) + 
00183                             FLA_MEMORY_ALIGNMENT_BOUNDARY - 1 ) / 
00184                             FLA_MEMORY_ALIGNMENT_BOUNDARY ) *
00185                           FLA_MEMORY_ALIGNMENT_BOUNDARY /
00186                           FLA_Obj_elem_size( *obj );
00187   #endif
00188 #endif
00189   obj->base->ldim       = ldim;
00190 
00191   // Allocate the base object's element buffer.
00192   buffer_size           = ( size_t ) ldim * 
00193                           ( size_t ) n *
00194                           ( size_t ) FLA_Obj_elem_size( *obj );
00195   obj->base->buffer     = FLA_malloc( buffer_size );
00196 
00197 #ifdef FLA_ENABLE_SUPERMATRIX
00198   // Initialize SuperMatrix fields.
00199   obj->base->n_read_tasks   = 0;
00200   obj->base->read_task_head = NULL;
00201   obj->base->read_task_tail = NULL;
00202   obj->base->write_task     = NULL;
00203 #endif
00204 
00205   return FLA_SUCCESS;
00206 }

FLA_Error FLA_Obj_create_conf_to_check ( FLA_Trans  trans,
FLA_Obj  obj_old,
FLA_Obj obj 
)

References FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_real_trans().

Referenced by FLA_Obj_create_conf_to().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_valid_real_trans( trans );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_valid_object_datatype( obj_old );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_null_pointer( obj );
00046   FLA_Check_error_code( e_val );
00047 
00048   return FLA_SUCCESS;
00049 }

void FLA_F2C() fla_obj_create_conf_to_f ( F_INT *  trans,
F_INT *  old,
F_INT *  obj,
F_INT *  IERROR 
)

References FLA_Obj_create_conf_to().

00210 {
00211   *IERROR = FLA_Obj_create_conf_to( *( ( FLA_Trans * ) trans   ), 
00212                                     *( ( FLA_Obj   * ) obj_old ),
00213                                      ( ( FLA_Obj   * ) obj     ) );
00214 }

FLA_Error FLA_Obj_create_ext ( FLA_Datatype  datatype,
FLA_Elemtype  elemtype,
dim_t  m,
dim_t  n,
dim_t  m_global,
dim_t  n_global,
FLA_Obj obj 
)

References FLA_Obj_view::base, FLA_Obj_struct::buffer, FLA_Obj_struct::datatype, FLA_Obj_struct::elemtype, FLA_Check_error_level(), FLA_malloc(), FLA_Obj_create_ext_check(), FLA_Obj_elem_size(), FLA_Obj_struct::id, FLA_Obj_struct::ldim, FLA_Obj_struct::m, FLA_Obj_view::m, FLA_Obj_struct::m_index, FLA_Obj_struct::m_inner, FLA_Obj_struct::n, FLA_Obj_view::n, FLA_Obj_struct::n_index, FLA_Obj_struct::n_inner, FLA_Obj_struct::n_read_tasks, FLA_Obj_view::offm, FLA_Obj_view::offn, FLA_Obj_struct::read_task_head, FLA_Obj_struct::read_task_tail, and FLA_Obj_struct::write_task.

Referenced by FLA_Obj_create(), and FLASH_Obj_create_hierarchy().

00064 {
00065   size_t buffer_size;
00066   dim_t  ldim;
00067 
00068   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00069     FLA_Obj_create_ext_check( datatype, elemtype, m, n, m_inner, n_inner, obj );
00070 
00071   // Populate the fields in the view object.
00072   obj->m                = m;
00073   obj->n                = n;
00074   obj->offm             = 0;
00075   obj->offn             = 0;
00076 
00077   // Allocate the base object field.
00078   obj->base             = ( FLA_Base_obj * ) FLA_malloc( sizeof( FLA_Base_obj ) );
00079 
00080   // Populate the fields in the base object.
00081   obj->base->datatype   = datatype;
00082   obj->base->elemtype   = elemtype;
00083   obj->base->m          = m;
00084   obj->base->n          = n;
00085   obj->base->m_inner    = m_inner;
00086   obj->base->n_inner    = n_inner;
00087   obj->base->id         = ( unsigned long ) obj->base;
00088   obj->base->m_index    = 0;
00089   obj->base->n_index    = 0;
00090 
00091   // Determine the leading dimension.
00092   ldim                  = m;
00093 #ifdef FLA_ENABLE_MEMORY_ALIGNMENT
00094   #ifdef FLA_ENABLE_LDIM_ALIGNMENT
00095   // We only attempt to align the address if we're creating a scalar object.
00096   // Aligning leading dimensions of hierarchical objects, whose elements are
00097   // FLA_Objs, is more difficult, and more prone to wasted padding memory,
00098   // depending on the size of an FLA_Obj.
00099   if ( elemtype == FLA_SCALAR )
00100     ldim                = ( ( m * FLA_Obj_elem_size( *obj ) + 
00101                             FLA_MEMORY_ALIGNMENT_BOUNDARY - 1 ) / 
00102                             FLA_MEMORY_ALIGNMENT_BOUNDARY ) *
00103                           FLA_MEMORY_ALIGNMENT_BOUNDARY /
00104                           FLA_Obj_elem_size( *obj );
00105   #endif
00106 #endif
00107   obj->base->ldim       = ldim;
00108 
00109   // Allocate the base object's element buffer.
00110   buffer_size           = ( size_t ) ldim *
00111                           ( size_t ) n *
00112                           ( size_t ) FLA_Obj_elem_size( *obj );
00113   obj->base->buffer     = FLA_malloc( buffer_size );
00114 
00115 #ifdef FLA_ENABLE_SUPERMATRIX
00116   // Initialize SuperMatrix fields.
00117   obj->base->n_read_tasks   = 0;
00118   obj->base->read_task_head = NULL;
00119   obj->base->read_task_tail = NULL;
00120   obj->base->write_task     = NULL;
00121 #endif
00122 
00123   return FLA_SUCCESS;
00124 }

FLA_Error FLA_Obj_create_ext_check ( FLA_Datatype  datatype,
FLA_Elemtype  elemtype,
dim_t  m,
dim_t  n,
dim_t  m_inner,
dim_t  n_inner,
FLA_Obj obj 
)

References FLA_Check_null_pointer(), FLA_Check_valid_datatype(), and FLA_Check_valid_elemtype().

Referenced by FLA_Obj_create_ext().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_valid_elemtype( elemtype );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_valid_datatype( datatype );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_null_pointer( obj );
00046   FLA_Check_error_code( e_val );
00047 
00048   return FLA_SUCCESS;
00049 }

void FLA_F2C() fla_obj_create_f ( F_INT *  datatype,
F_INT *  m,
F_INT *  n,
F_INT *  obj,
F_INT *  IERROR 
)

References FLA_Obj_create().

00050 {
00051   *IERROR = FLA_Obj_create( *( ( FLA_Datatype * ) datatype ), 
00052                             *( ( dim_t        * ) m        ),
00053                             *( ( dim_t        * ) n        ),
00054                              ( ( FLA_Obj      * ) obj      ) );
00055 }

void FLA_F2C() fla_obj_create_w_out_buff_f ( F_INT *  datatype,
F_INT *  m,
F_INT *  n,
F_INT *  obj,
F_INT *  IERROR 
)

References FLA_Obj_create_without_buffer().

00266 {
00267   *IERROR = FLA_Obj_create_without_buffer( *( ( FLA_Datatype * ) datatype ), 
00268                                            *( ( dim_t        * ) m        ),
00269                                            *( ( dim_t        * ) n        ),
00270                                             ( ( FLA_Obj      * ) obj      ) );
00271 }

FLA_Error FLA_Obj_create_without_buffer ( FLA_Datatype  datatype,
dim_t  m,
dim_t  n,
FLA_Obj obj 
)

References FLA_Obj_view::base, FLA_Obj_struct::buffer, FLA_Obj_struct::datatype, FLA_Obj_struct::elemtype, FLA_Check_error_level(), FLA_malloc(), FLA_Obj_create_without_buffer_check(), FLA_Obj_struct::id, FLA_Obj_struct::ldim, FLA_Obj_struct::m, FLA_Obj_view::m, FLA_Obj_struct::m_index, FLA_Obj_struct::m_inner, FLA_Obj_struct::n, FLA_Obj_view::n, FLA_Obj_struct::n_index, FLA_Obj_struct::n_inner, FLA_Obj_struct::n_read_tasks, FLA_Obj_view::offm, FLA_Obj_view::offn, FLA_Obj_struct::read_task_head, FLA_Obj_struct::read_task_tail, and FLA_Obj_struct::write_task.

Referenced by FLA_Axpy_global_to_submatrix(), FLA_Axpy_submatrix_to_global(), FLA_Copy_global_to_submatrix(), FLA_Copy_submatrix_to_global(), fla_obj_create_w_out_buff_f(), FLASH_Axpy_global_to_submatrix(), FLASH_Axpy_submatrix_to_global(), FLASH_Copy_global_to_submatrix(), FLASH_Copy_submatrix_to_global(), FLASH_Obj_attach_buffer(), FLASH_Obj_create_helper(), and FLASH_Obj_create_hierarchy().

00223 {
00224   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00225     FLA_Obj_create_without_buffer_check( datatype, m, n, obj );
00226 
00227   // Populate the fields in the view object.
00228   obj->m                = m;
00229   obj->n                = n;
00230   obj->offm             = 0;
00231   obj->offn             = 0;
00232 
00233   // Allocate the base object field.
00234   obj->base             = ( FLA_Base_obj * ) FLA_malloc( sizeof( FLA_Base_obj ) );
00235 
00236   // Populate the fields in the base object.
00237   obj->base->datatype   = datatype;
00238   obj->base->elemtype   = FLA_SCALAR;
00239   obj->base->m          = m;
00240   obj->base->n          = n;
00241   obj->base->m_inner    = m;
00242   obj->base->n_inner    = n;
00243   obj->base->id         = ( unsigned long ) obj->base;
00244   obj->base->m_index    = 0;
00245   obj->base->n_index    = 0;
00246 
00247   // Set the leading dimension.
00248   obj->base->ldim       = -1;
00249 
00250   // Initialize the base object's element buffer to NULL.
00251   obj->base->buffer     = NULL;
00252 
00253 #ifdef FLA_ENABLE_SUPERMATRIX
00254   // Initialize SuperMatrix fields.
00255   obj->base->n_read_tasks   = 0;
00256   obj->base->read_task_head = NULL;
00257   obj->base->read_task_tail = NULL;
00258   obj->base->write_task     = NULL;
00259 #endif
00260 
00261   return FLA_SUCCESS;
00262 }

FLA_Error FLA_Obj_create_without_buffer_check ( FLA_Datatype  datatype,
dim_t  m,
dim_t  n,
FLA_Obj obj 
)

References FLA_Check_null_pointer(), and FLA_Check_valid_datatype().

Referenced by FLA_Obj_create_without_buffer().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_valid_datatype( datatype );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_null_pointer( obj );
00043   FLA_Check_error_code( e_val );
00044 
00045   return FLA_SUCCESS;
00046 }

FLA_Datatype FLA_Obj_datatype ( FLA_Obj  obj  ) 

References FLA_Obj_view::base, and FLA_Obj_struct::datatype.

Referenced by FLA_Absolute_square(), FLA_Accum_T_UT_fc_opt_var1(), FLA_Accum_T_UT_unb_external(), FLA_Apply_househ2_UT_opt(), FLA_Apply_Q_blk_external(), FLA_Apply_Q_unb_external(), FLA_Asum_external(), FLA_Axpy_external(), FLA_Axpy_global_to_submatrix(), FLA_Axpy_submatrix_to_global(), FLA_Axpys_external(), FLA_Check_complex_object(), FLA_Check_consistent_datatype(), FLA_Check_consistent_object_datatype(), FLA_Check_floating_object(), FLA_Check_householder_panel_dims(), FLA_Check_identical_object_datatype(), FLA_Check_identical_object_precision(), FLA_Check_int_object(), FLA_Check_nonconstant_object(), FLA_Check_real_object(), FLA_Check_valid_object_datatype(), FLA_Chol_blk_external(), FLA_Chol_unb_external(), FLA_Conjugate(), FLA_Conjugate_r(), FLA_Copy_external(), FLA_Copy_global_to_submatrix(), FLA_Copy_submatrix_to_global(), FLA_Copyr_external(), FLA_Copyt_external(), FLA_Determine_blocksize(), FLA_Dot2cs_external(), FLA_Dot2s_external(), FLA_Dot_external(), FLA_Dotc_external(), FLA_Dotcs_external(), FLA_Dots_external(), FLA_Gemm(), FLA_Gemm_external(), FLA_Gemv_external(), FLA_Gemvc_external(), FLA_Ger_external(), FLA_Gerc_external(), FLA_Hemm(), FLA_Hemm_external(), FLA_Hemv_external(), FLA_Hemvc_external(), FLA_Her2_external(), FLA_Her2c_external(), FLA_Her2k(), FLA_Her2k_external(), FLA_Her_external(), FLA_Herc_external(), FLA_Herk(), FLA_Herk_external(), FLA_Hermitianize(), FLA_Hess_blk_external(), FLA_Hess_unb_external(), FLA_Househ2_UT(), FLA_Househ2_UT_opt(), FLA_Iamax_external(), FLA_Inv_scal_external(), FLA_Inv_scalc_external(), FLA_Invert(), FLA_LQ_blk_external(), FLA_LQ_unb_external(), FLA_LQ_UT_Accum_T_unb_external(), FLA_LQ_UT_blk_external(), FLA_LQ_UT_create_T(), FLA_LQ_UT_unb_external(), FLA_LU_nopiv_blk_external(), FLA_LU_nopiv_unb_external(), FLA_LU_piv_blk_external(), FLA_LU_piv_unb_external(), FLA_Max_abs_value(), FLA_Max_elemwise_diff(), FLA_Mult_add(), FLA_Norm1(), FLA_Norm_inf(), FLA_Nrm2_external(), FLA_Obj_add_to_diagonal(), FLA_Obj_create_conf_to(), fla_obj_datatype_f(), FLA_Obj_elem_size(), FLA_Obj_elem_size_check(), FLA_Obj_equals(), FLA_Obj_is_complex(), FLA_Obj_is_constant(), FLA_Obj_is_double_precision(), FLA_Obj_is_floating_point(), FLA_Obj_is_int(), FLA_Obj_is_real(), FLA_Obj_is_single_precision(), FLA_Obj_scale_diagonal(), FLA_Obj_set_diagonal_to_scalar(), FLA_Obj_set_to_scalar(), FLA_Obj_shift_diagonal(), FLA_Obj_show(), FLA_QR_blk_external(), FLA_QR_unb_external(), FLA_QR_UT_Accum_T_opt_var1(), FLA_QR_UT_Accum_T_unb_external(), FLA_QR_UT_blk_external(), FLA_QR_UT_create_T(), FLA_QR_UT_inc_create_U_panel(), FLA_QR_UT_UD_Accum_T_opt_var1(), FLA_QR_UT_unb_external(), FLA_Random_matrix(), FLA_Random_tri_matrix(), FLA_SA_Apply_pivots(), FLA_SA_LU_unb(), FLA_Scal_external(), FLA_Scalc_external(), FLA_Scalr_external(), FLA_SPDinv(), FLA_Sqrt(), FLA_Swap_external(), FLA_Swap_rows(), FLA_Swapt_external(), FLA_Sylv_unb_external(), FLA_Symm(), FLA_Symm_external(), FLA_Symmetrize(), FLA_Symv_external(), FLA_Syr2_external(), FLA_Syr2k(), FLA_Syr2k_external(), FLA_Syr_external(), FLA_Syrk(), FLA_Syrk_external(), FLA_Triangularize(), FLA_Trinv(), FLA_Trinv_blk_external(), FLA_Trinv_unb_external(), FLA_Trmm(), FLA_Trmm_external(), FLA_Trmv_external(), FLA_Trsm(), FLA_Trsm_external(), FLA_Trsv_external(), FLA_Ttmm(), FLA_Ttmm_blk_external(), FLA_Ttmm_unb_external(), FLASH_Apply_Q_UT_inc_create_workspace(), FLASH_LU_incpiv_create_hier_matrices(), FLASH_Obj_create_hier_conf_to_flat(), FLASH_Obj_create_hier_conf_to_flat_ext(), FLASH_Obj_datatype(), FLASH_print_struct_helper(), and FLASH_QR_UT_inc_create_hier_matrices().

00439 {
00440   return obj.base->datatype;
00441 }

F_INT FLA_F2C() fla_obj_datatype_f ( F_INT *  obj  ) 

References FLA_Obj_datatype().

00444 {
00445   return FLA_Obj_datatype( *( ( FLA_Obj * ) obj ) );
00446 }

dim_t FLA_Obj_datatype_size ( FLA_Datatype  datatype  ) 

Referenced by FLA_Check_identical_object_precision(), fla_obj_datatype_size_f(), and FLASH_Obj_create_hierarchy().

00471 {
00472   dim_t typesize = 0;
00473 
00474   switch( datatype ){
00475   case FLA_INT: 
00476     typesize = sizeof( int );
00477     break;
00478   case FLA_FLOAT: 
00479     typesize = sizeof( float );
00480     break;
00481   case FLA_DOUBLE: 
00482     typesize = sizeof( double );
00483     break;
00484   case FLA_COMPLEX: 
00485     typesize = sizeof( scomplex );
00486     break;
00487   case FLA_DOUBLE_COMPLEX: 
00488     typesize = sizeof( dcomplex );
00489     break;
00490   case FLA_CONSTANT: 
00491     typesize = sizeof( double ) +
00492                sizeof( double ) + sizeof( double ) + 
00493                sizeof( scomplex ) + sizeof( dcomplex );
00494     break;
00495   case FLA_OBJ:
00496     // This case is for internal use only! And is needed primarily
00497     // for fla_init_fortran() when it needs to know how much memory
00498     // to copy for the global FLA_CONSTANTs.
00499     typesize = sizeof( FLA_Obj );
00500     break;
00501   default:
00502     FLA_Check_error_code( FLA_INVALID_DATATYPE );
00503   }
00504 
00505   return typesize;
00506 }

F_INT FLA_F2C() fla_obj_datatype_size_f ( F_INT *  datatype  ) 

References FLA_Obj_datatype_size().

00509 {
00510   return FLA_Obj_datatype_size( *( ( FLA_Datatype * ) datatype ) );
00511 }

dim_t FLA_Obj_elem_size ( FLA_Obj  obj  ) 

References FLA_Check_error_level(), FLA_Obj_datatype(), FLA_Obj_elem_size_check(), and FLA_Obj_elemtype().

Referenced by FLA_Obj_buffer(), FLA_Obj_create_conf_to(), FLA_Obj_create_ext(), and fla_obj_elem_size_f().

00520 {
00521   dim_t elem_size = 0;
00522 
00523   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00524     FLA_Obj_elem_size_check( obj );
00525 
00526   if ( FLA_Obj_elemtype( obj ) == FLA_MATRIX )
00527   {
00528     elem_size = sizeof( FLA_Obj );
00529   }
00530   else
00531   {
00532     switch( FLA_Obj_datatype( obj ) )
00533     {
00534       case FLA_INT: 
00535         elem_size = sizeof( int );
00536         break;
00537       case FLA_FLOAT: 
00538         elem_size = sizeof( float );
00539         break;
00540       case FLA_DOUBLE: 
00541         elem_size = sizeof( double );
00542         break;
00543       case FLA_COMPLEX: 
00544         elem_size = sizeof( scomplex );
00545         break;
00546       case FLA_DOUBLE_COMPLEX: 
00547         elem_size = sizeof( dcomplex );
00548         break;
00549       case FLA_CONSTANT: 
00550         elem_size = sizeof( double ) +
00551                     sizeof( double ) + sizeof( double ) + 
00552                     sizeof( scomplex ) + sizeof( dcomplex );
00553       break;
00554         case FLA_OBJ:
00555         // This case is for internal use only! And is needed primarily
00556         // for fla_init_fortran() when it needs to know how much memory
00557         // to copy for the global FLA_CONSTANTs.
00558         elem_size = sizeof( FLA_Obj );
00559         break;
00560       default:
00561         // This default case should never execute.
00562         FLA_Check_error_code( FLA_INVALID_DATATYPE );
00563     }
00564   }
00565 
00566   return elem_size;
00567 }

FLA_Error FLA_Obj_elem_size_check ( FLA_Obj  obj  ) 

References FLA_Check_valid_datatype(), FLA_Check_valid_elemtype(), FLA_Obj_datatype(), and FLA_Obj_elemtype().

Referenced by FLA_Obj_elem_size().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_valid_elemtype( FLA_Obj_elemtype( obj ) );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_valid_datatype( FLA_Obj_datatype( obj ) );
00043   FLA_Check_error_code( e_val );
00044 
00045   return FLA_SUCCESS;
00046 }

F_INT FLA_F2C() fla_obj_elem_size_f ( F_INT *  obj  ) 

References FLA_Obj_elem_size().

00570 {
00571   return FLA_Obj_elem_size( *( ( FLA_Obj * ) obj ) );
00572 }

FLA_Elemtype FLA_Obj_elemtype ( FLA_Obj  obj  ) 

FLA_Bool FLA_Obj_equals ( FLA_Obj  A,
FLA_Obj  B 
)

References FLA_Check_error_level(), FLA_Obj_datatype(), FLA_Obj_equals_check(), FLA_Obj_ldim(), FLA_Obj_length(), and FLA_Obj_width().

Referenced by FLA_Axpys_external(), FLA_Check_divide_by_zero(), FLA_Inv_scal_external(), FLA_Inv_scalc_external(), fla_obj_equals_f(), FLA_Scal_external(), and FLA_Scalc_external().

00301 {
00302   FLA_Datatype datatype_A;
00303   FLA_Datatype datatype_B;
00304   FLA_Datatype datatype;
00305   dim_t        m, n, ldim_A, ldim_B;
00306   dim_t        i, j;
00307 
00308   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00309     FLA_Obj_equals_check( A, B );
00310 
00311   m      = FLA_Obj_length( A );
00312   n      = FLA_Obj_width( A );
00313   ldim_A = FLA_Obj_ldim( A );
00314   ldim_B = FLA_Obj_ldim( B );
00315 
00316   datatype_A = FLA_Obj_datatype( A );
00317   datatype_B = FLA_Obj_datatype( B );
00318 
00319   // If A is a non-FLA_CONSTANT object, then we should proceed based on the
00320   // value of datatype_A. In such a situation, either datatype_B is an exact
00321   // match and we're fine, or datatype_B is FLA_CONSTANT, in which case we're
00322   // also covered since FLA_CONSTANT encompassas all numerical types.
00323   // If A is an FLA_CONSTANT object, then we should proceed based on the value
00324   // of datatype_B. In this case, datatype_B is either a non-FLA_CONSTANT type,
00325   // which mirrors the second sub-case above, or datatype_B is FLA_CONSTANT,
00326   // in which case both types are FLA_CONSTANT and therefore we have to handle
00327   // that case. Only if both are FLA_CONSTANTs does the FLA_CONSTANT case
00328   // statement below execute.
00329   if ( datatype_A != FLA_CONSTANT )
00330     datatype = datatype_A;
00331   else
00332     datatype = datatype_B;
00333 
00334   switch ( datatype ){
00335 
00336   case FLA_CONSTANT:
00337   {
00338     // If both objects are FLA_CONSTANTs, then it doesn't matter which datatype
00339     // macro we use, as long as we use the same one for both A and B.
00340     int *buff_A = ( int * ) FLA_INT_PTR( A );
00341     int *buff_B = ( int * ) FLA_INT_PTR( B );
00342 
00343     for ( j = 0; j < n; j++ )
00344       for ( i = 0; i < m; i++ )
00345         if ( buff_A[ j * ldim_A + i ] != 
00346              buff_B[ j * ldim_B + i ] )
00347           return FALSE;
00348 
00349     break;
00350   }
00351 
00352   case FLA_INT:
00353   {
00354     int *buff_A = ( int * ) FLA_INT_PTR( A );
00355     int *buff_B = ( int * ) FLA_INT_PTR( B );
00356 
00357     for ( j = 0; j < n; j++ )
00358       for ( i = 0; i < m; i++ )
00359         if ( buff_A[ j * ldim_A + i ] != 
00360              buff_B[ j * ldim_B + i ] )
00361         {
00362           return FALSE;
00363         }
00364 
00365     break;
00366   }
00367 
00368   case FLA_FLOAT:
00369   {
00370     float *buff_A = ( float * ) FLA_FLOAT_PTR( A );
00371     float *buff_B = ( float * ) FLA_FLOAT_PTR( B );
00372 
00373     for ( j = 0; j < n; j++ )
00374       for ( i = 0; i < m; i++ )
00375         if ( buff_A[ j * ldim_A + i ] != 
00376              buff_B[ j * ldim_B + i ] )
00377         {
00378           return FALSE;
00379         }
00380 
00381     break;
00382   }
00383 
00384   case FLA_DOUBLE:
00385   {
00386     double *buff_A = ( double * ) FLA_DOUBLE_PTR( A );
00387     double *buff_B = ( double * ) FLA_DOUBLE_PTR( B );
00388 
00389     for ( j = 0; j < n; j++ )
00390       for ( i = 0; i < m; i++ )
00391         if ( buff_A[ j * ldim_A + i ] != 
00392              buff_B[ j * ldim_B + i ] )
00393         {
00394           return FALSE;
00395         }
00396 
00397     break;
00398   }
00399 
00400   case FLA_COMPLEX:
00401   {
00402     scomplex *buff_A = ( scomplex * ) FLA_COMPLEX_PTR( A );
00403     scomplex *buff_B = ( scomplex * ) FLA_COMPLEX_PTR( B );
00404 
00405     for ( j = 0; j < n; j++ )
00406       for ( i = 0; i < m; i++ )
00407         if ( buff_A[ j * ldim_A + i ].real != buff_B[ j * ldim_B + i ].real ||
00408              buff_A[ j * ldim_A + i ].imag != buff_B[ j * ldim_B + i ].imag )
00409         {
00410           return FALSE;
00411         }
00412 
00413     break;
00414   }
00415 
00416   case FLA_DOUBLE_COMPLEX:
00417   {
00418     dcomplex *buff_A = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( A );
00419     dcomplex *buff_B = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( B );
00420 
00421     for ( j = 0; j < n; j++ )
00422       for ( i = 0; i < m; i++ )
00423         if ( buff_A[ j * ldim_A + i ].real != buff_B[ j * ldim_B + i ].real ||
00424              buff_A[ j * ldim_A + i ].imag != buff_B[ j * ldim_B + i ].imag )
00425         {
00426           return FALSE;
00427         }
00428 
00429     break;
00430   }
00431 
00432   }
00433 
00434   return TRUE;
00435 }

FLA_Error FLA_Obj_equals_check ( FLA_Obj  A,
FLA_Obj  B 
)

References FLA_Check_conformal_dims(), FLA_Check_consistent_object_datatype(), and FLA_Check_valid_object_datatype().

Referenced by FLA_Obj_equals().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_valid_object_datatype( A );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_valid_object_datatype( B );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_consistent_object_datatype( A, B );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_conformal_dims( FLA_NO_TRANSPOSE, A, B );
00049   FLA_Check_error_code( e_val );
00050 
00051   return FLA_SUCCESS;
00052 }

void FLA_F2C() fla_obj_equals_f ( F_INT *  A,
F_INT *  B,
F_INT *  IERROR 
)

References FLA_Obj_equals().

00439 {
00440   *IERROR = FLA_Obj_equals( *( ( FLA_Obj * ) A ),
00441                             *( ( FLA_Obj * ) B ) );
00442 }

FLA_Error FLA_Obj_free ( FLA_Obj obj  ) 

References FLA_Obj_view::base, FLA_Obj_struct::buffer, FLA_Check_error_level(), FLA_free(), FLA_Obj_free_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Apply_househ2_UT(), FLA_Apply_Q_blk_external(), FLA_Apply_Q_unb_external(), FLA_Axpys_external(), FLA_Axpyt_external(), FLA_Finalize_constants(), FLA_Gemm_external(), FLA_Gemv_external(), FLA_Gemvc_external(), FLA_Gerc_external(), FLA_Hemvc_external(), FLA_Her2c_external(), FLA_Herc_external(), FLA_Hess_blk_external(), FLA_Hess_unb_external(), FLA_LQ_blk_external(), FLA_LQ_unb_external(), FLA_LQ_UT_Accum_T_unb_external(), FLA_LQ_UT_blk_external(), FLA_LQ_UT_unb_external(), FLA_Norm1(), FLA_Norm_inf(), fla_obj_free_f(), FLA_Obj_free_task(), FLA_QR_blk_external(), FLA_QR_unb_external(), FLA_QR_UT_Accum_T_unb_external(), FLA_QR_UT_blk_external(), FLA_QR_UT_inc_free_U(), FLA_QR_UT_unb_external(), FLA_Random_spd_matrix(), FLA_Trmm_external(), FLA_Trmmsx_external(), FLA_Trmv_external(), FLA_Trmvsx_external(), FLA_Trsm_external(), FLA_Trsmsx_external(), FLA_Trsv_external(), FLA_Trsvsx_external(), FLASH_Max_elemwise_diff(), FLASH_Norm1(), FLASH_Obj_free(), FLASH_Obj_free_without_buffer(), FLASH_Obj_set_to_scalar(), FLASH_Obj_shift_diagonal(), FLASH_Obj_show(), FLASH_Random_matrix(), and FLASH_Triangularize().

00386 {
00387   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00388     FLA_Obj_free_check( obj );
00389 
00390   FLA_free( obj->base->buffer );
00391   FLA_free( ( void * ) obj->base );
00392   obj->offm = 0;
00393   obj->offn = 0;
00394   obj->m = 0;
00395   obj->n = 0;
00396 
00397   return FLA_SUCCESS;
00398 }

FLA_Error FLA_Obj_free_check ( FLA_Obj obj  ) 

References FLA_Obj_view::base, and FLA_Check_null_pointer().

Referenced by FLA_Obj_free().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_null_pointer( obj );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_null_pointer( obj->base );
00043   FLA_Check_error_code( e_val );
00044 
00045   return FLA_SUCCESS;
00046 }

void FLA_F2C() fla_obj_free_f ( F_INT *  obj,
F_INT *  IERROR 
)

References FLA_Obj_free().

00402 {
00403   *IERROR = FLA_Obj_free( ( FLA_Obj * ) obj );
00404 }

FLA_Error FLA_Obj_free_task ( FLA_Obj  A,
void *  cntl 
)

References FLA_Obj_free().

Referenced by FLA_QR_UT_inc_free_U(), FLASH_LU_incpiv_var2(), FLASH_Queue_exec_task(), FLASH_Task_free(), and FLASH_Task_free_parallel().

00036 {
00037   FLA_Obj_free( &A );
00038 
00039   return FLA_SUCCESS;
00040 }

void FLA_F2C() fla_obj_free_w_out_buff_f ( F_INT *  obj,
F_INT *  IERROR 
)

References FLA_Obj_free_without_buffer().

00428 {
00429   *IERROR = FLA_Obj_free_without_buffer( ( FLA_Obj * ) obj );
00430 }

FLA_Error FLA_Obj_free_without_buffer ( FLA_Obj obj  ) 

FLA_Error FLA_Obj_free_without_buffer_check ( FLA_Obj obj  ) 

References FLA_Obj_view::base, and FLA_Check_null_pointer().

Referenced by FLA_Obj_free_without_buffer().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_null_pointer( obj );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_null_pointer( obj->base );
00043   FLA_Check_error_code( e_val );
00044 
00045   return FLA_SUCCESS;
00046 }

FLA_Bool FLA_Obj_has_zero_dim ( FLA_Obj  A  ) 

References FLA_Obj_length(), and FLA_Obj_width().

Referenced by FLA_Apply_househ2_UT(), FLA_Apply_househ2_UT_opt(), FLA_Apply_Q_blk_external(), FLA_Apply_Q_unb_external(), FLA_Asum_external(), FLA_Axpy_external(), FLA_Check_pivot_index_range(), FLA_Chol_blk_external(), FLA_Chol_unb_external(), FLA_Conjugate(), FLA_Copy_external(), FLA_Copyr_external(), FLA_Copyt_external(), FLA_Dot2cs_external(), FLA_Dot2s_external(), FLA_Dot_external(), FLA_Dotc_external(), FLA_Dotcs_external(), FLA_Dots_external(), FLA_Gemm_external(), FLA_Gemv_external(), FLA_Gemvc_external(), FLA_Ger_external(), FLA_Gerc_external(), FLA_Hemm_external(), FLA_Hemv_external(), FLA_Hemvc_external(), FLA_Her2_external(), FLA_Her2c_external(), FLA_Her2k_external(), FLA_Her_external(), FLA_Herc_external(), FLA_Herk_external(), FLA_Hess_blk_external(), FLA_Hess_unb_external(), FLA_Iamax_external(), FLA_Inv_scal_external(), FLA_Inv_scalc_external(), FLA_LQ_blk_external(), FLA_LQ_unb_external(), FLA_LQ_UT_blk_external(), FLA_LQ_UT_unb_external(), FLA_LU_nopiv_blk_external(), FLA_LU_nopiv_unb_external(), FLA_LU_piv_blk_external(), FLA_LU_piv_unb_external(), FLA_Nrm2_external(), FLA_QR_blk_external(), FLA_QR_unb_external(), FLA_QR_UT_blk_external(), FLA_QR_UT_unb_external(), FLA_SA_Apply_pivots(), FLA_SA_LU_unb(), FLA_Scal_external(), FLA_Scalc_external(), FLA_Scalr_external(), FLA_Swap_external(), FLA_Swap_rows(), FLA_Swapt_external(), FLA_Sylv_unb_external(), FLA_Symm_external(), FLA_Symv_external(), FLA_Syr2_external(), FLA_Syr2k_external(), FLA_Syr_external(), FLA_Syrk_external(), FLA_Trinv_blk_external(), FLA_Trinv_unb_external(), FLA_Trmm_external(), FLA_Trmv_external(), FLA_Trsm_external(), FLA_Trsv_external(), FLA_Ttmm_blk_external(), and FLA_Ttmm_unb_external().

00233 {
00234   FLA_Bool r_val = FALSE;
00235 
00236   if ( FLA_Obj_length( A ) == 0 || FLA_Obj_width( A ) == 0 )
00237     r_val = TRUE;
00238 
00239   return r_val;
00240 }

FLA_Bool FLA_Obj_is ( FLA_Obj  A,
FLA_Obj  B 
)

References FLA_Obj_view::base.

Referenced by FLA_Check_valid_isgn_value(), and fla_obj_is_f().

00277 {
00278   FLA_Bool r_val = FALSE;
00279 
00280   if ( A.base == B.base )
00281     r_val = TRUE;
00282 
00283   return r_val;
00284 }

FLA_Bool FLA_Obj_is_complex ( FLA_Obj  A  ) 

References FLA_Obj_datatype().

Referenced by FLA_Check_conj_and_datatype(), FLA_Check_conj_trans_and_datatype(), and FLA_Check_identical_object_precision().

00132 {
00133   FLA_Datatype datatype;
00134   FLA_Bool     r_val;
00135 
00136   datatype = FLA_Obj_datatype( A );
00137 
00138   if ( datatype == FLA_CONSTANT || datatype == FLA_COMPLEX || datatype == FLA_DOUBLE_COMPLEX )
00139     r_val = TRUE;
00140   else
00141     r_val = FALSE;
00142 
00143   return r_val;
00144 }

FLA_Bool FLA_Obj_is_conformal_to ( FLA_Trans  trans,
FLA_Obj  A,
FLA_Obj  B 
)

References FLA_Obj_length(), and FLA_Obj_width().

00250 {
00251   FLA_Bool r_val = FALSE;
00252 
00253   if ( trans == FLA_NO_TRANSPOSE || trans == FLA_CONJ_NO_TRANSPOSE )
00254   {
00255     if ( FLA_Obj_length( A ) != FLA_Obj_length( B ) ||
00256          FLA_Obj_width( A )  != FLA_Obj_width( B ) )
00257       r_val = TRUE;
00258   }
00259   else
00260   {
00261     if ( FLA_Obj_width( A )  != FLA_Obj_length( B ) ||
00262          FLA_Obj_length( A ) != FLA_Obj_width( B ) )
00263       r_val = TRUE;
00264   }
00265 
00266   return r_val;
00267 }

FLA_Bool FLA_Obj_is_constant ( FLA_Obj  A  ) 

References FLA_Obj_datatype().

00088 {
00089   FLA_Datatype datatype;
00090   FLA_Bool     r_val;
00091 
00092   datatype = FLA_Obj_datatype( A );
00093 
00094   if ( datatype == FLA_CONSTANT )
00095     r_val = TRUE;
00096   else
00097     r_val = FALSE;
00098 
00099   return r_val;
00100 }

FLA_Bool FLA_Obj_is_double_precision ( FLA_Obj  A  ) 

References FLA_Obj_datatype().

00176 {
00177   FLA_Datatype datatype;
00178   FLA_Bool     r_val;
00179 
00180   datatype = FLA_Obj_datatype( A );
00181 
00182   if ( datatype == FLA_CONSTANT || datatype == FLA_DOUBLE || datatype == FLA_DOUBLE_COMPLEX )
00183     r_val = TRUE;
00184   else
00185     r_val = FALSE;
00186 
00187   return r_val;
00188 }

void FLA_F2C() fla_obj_is_f ( F_INT *  A,
F_INT *  B,
F_INT *  IERROR 
)

References FLA_Obj_is().

00288 {
00289   *IERROR = FLA_Obj_is( *( ( FLA_Obj * ) A ),
00290                         *( ( FLA_Obj * ) B ) );
00291 }

FLA_Bool FLA_Obj_is_floating_point ( FLA_Obj  A  ) 

References FLA_Obj_datatype().

00065 {
00066   FLA_Datatype datatype;
00067   FLA_Bool     r_val;
00068 
00069   datatype = FLA_Obj_datatype( A );
00070 
00071   if ( datatype == FLA_FLOAT || datatype == FLA_COMPLEX ||
00072        datatype == FLA_DOUBLE || datatype == FLA_DOUBLE_COMPLEX )
00073     r_val = TRUE;
00074   else
00075     r_val = FALSE;
00076 
00077   return r_val;
00078 }

FLA_Bool FLA_Obj_is_int ( FLA_Obj  A  ) 

References FLA_Obj_datatype().

00043 {
00044   FLA_Datatype datatype;
00045   FLA_Bool     r_val;
00046 
00047   datatype = FLA_Obj_datatype( A );
00048 
00049   if ( datatype == FLA_INT )
00050     r_val = TRUE;
00051   else
00052     r_val = FALSE;
00053 
00054   return r_val;
00055 }

FLA_Bool FLA_Obj_is_real ( FLA_Obj  A  ) 

FLA_Bool FLA_Obj_is_scalar ( FLA_Obj  A  ) 

References FLA_Obj_length(), and FLA_Obj_width().

00198 {
00199   FLA_Bool r_val = FALSE;
00200 
00201   if ( FLA_Obj_length( A ) == 1 &&
00202        FLA_Obj_width( A ) == 1 )
00203     r_val = TRUE;
00204 
00205   return r_val;
00206 }

FLA_Bool FLA_Obj_is_single_precision ( FLA_Obj  A  ) 

References FLA_Obj_datatype().

00154 {
00155   FLA_Datatype datatype;
00156   FLA_Bool     r_val;
00157 
00158   datatype = FLA_Obj_datatype( A );
00159 
00160   if ( datatype == FLA_CONSTANT || datatype == FLA_FLOAT || datatype == FLA_COMPLEX )
00161     r_val = TRUE;
00162   else
00163     r_val = FALSE;
00164 
00165   return r_val;
00166 }

FLA_Bool FLA_Obj_is_vector ( FLA_Obj  A  ) 

dim_t FLA_Obj_ldim ( FLA_Obj  obj  ) 

References FLA_Obj_view::base.

Referenced by FLA_Accum_T_UT_fc_opt_var1_dcomplex(), FLA_Accum_T_UT_fc_opt_var1_double(), FLA_Accum_T_UT_fc_opt_var1_float(), FLA_Accum_T_UT_fc_opt_var1_scomplex(), FLA_Accum_T_UT_unb_external(), FLA_Apply_househ2_UT_opt(), FLA_Apply_Q_blk_external(), FLA_Apply_Q_unb_external(), FLA_Asum_external(), FLA_Axpy_external(), FLA_Chol_blk_external(), FLA_Chol_unb_external(), FLA_Conjugate(), FLA_Conjugate_r(), FLA_Copy_external(), FLA_Copyr_external(), FLA_Copyt_external(), FLA_Dot2cs_external(), FLA_Dot2s_external(), FLA_Dot_external(), FLA_Dotc_external(), FLA_Dotcs_external(), FLA_Dots_external(), FLA_Gemm_external(), FLA_Gemv_external(), FLA_Gemvc_external(), FLA_Ger_external(), FLA_Gerc_external(), FLA_Hemm_external(), FLA_Hemv_external(), FLA_Hemvc_external(), FLA_Her2_external(), FLA_Her2c_external(), FLA_Her2k_external(), FLA_Her_external(), FLA_Herc_external(), FLA_Herk_external(), FLA_Hermitianize(), FLA_Hess_blk_external(), FLA_Hess_unb_external(), FLA_Iamax_external(), FLA_Inv_scal_external(), FLA_Inv_scalc_external(), FLA_LQ_blk_external(), FLA_LQ_unb_external(), FLA_LQ_UT_blk_external(), FLA_LQ_UT_unb_external(), FLA_LU_nopiv_blk_external(), FLA_LU_nopiv_unb_external(), FLA_LU_piv_blk_external(), FLA_LU_piv_unb_external(), FLA_Max_abs_value(), FLA_Max_elemwise_diff(), FLA_Nrm2_external(), FLA_Obj_add_to_diagonal(), FLA_Obj_buffer(), FLA_Obj_equals(), fla_obj_ldim_f(), FLA_Obj_scale_diagonal(), FLA_Obj_set_diagonal_to_scalar(), FLA_Obj_set_to_scalar(), FLA_Obj_shift_diagonal(), FLA_Obj_show(), FLA_QR_blk_external(), FLA_QR_unb_external(), FLA_QR_UT_Accum_T_opt_var1_dcomplex(), FLA_QR_UT_Accum_T_opt_var1_double(), FLA_QR_UT_Accum_T_opt_var1_float(), FLA_QR_UT_Accum_T_opt_var1_scomplex(), FLA_QR_UT_blk_external(), FLA_QR_UT_UD_Accum_T_opt_var1_dcomplex(), FLA_QR_UT_UD_Accum_T_opt_var1_double(), FLA_QR_UT_UD_Accum_T_opt_var1_float(), FLA_QR_UT_UD_Accum_T_opt_var1_scomplex(), FLA_QR_UT_unb_external(), FLA_Random_matrix(), FLA_Random_tri_matrix(), FLA_SA_Apply_pivots(), FLA_SA_LU_unb(), FLA_Scal_external(), FLA_Scalc_external(), FLA_Scalr_external(), FLA_Swap_external(), FLA_Swap_rows(), FLA_Swapt_external(), FLA_Sylv_unb_external(), FLA_Symm_external(), FLA_Symmetrize(), FLA_Symv_external(), FLA_Syr2_external(), FLA_Syr2k_external(), FLA_Syr_external(), FLA_Syrk_external(), FLA_Triangularize(), FLA_Trinv_blk_external(), FLA_Trinv_unb_external(), FLA_Trmm_external(), FLA_Trmv_external(), FLA_Trsm_external(), FLA_Trsv_external(), FLA_Ttmm_blk_external(), FLA_Ttmm_unb_external(), FLASH_Obj_attach_buffer_hierarchy(), and FLASH_print_struct_helper().

00677 {
00678   return (obj.base)->ldim;
00679 }

F_INT FLA_F2C() fla_obj_ldim_f ( F_INT *  obj  ) 

References FLA_Obj_ldim().

00682 {
00683   return FLA_Obj_ldim( *( ( FLA_Obj * ) obj ) );
00684 }

dim_t FLA_Obj_length ( FLA_Obj  obj  ) 

References FLA_Obj_view::m.

Referenced by FLA_Accum_T_UT_fc_opt_var1_dcomplex(), FLA_Accum_T_UT_fc_opt_var1_double(), FLA_Accum_T_UT_fc_opt_var1_float(), FLA_Accum_T_UT_fc_opt_var1_scomplex(), FLA_Accum_T_UT_unb_external(), FLA_Apply_househ2_UT_opt(), FLA_Apply_pivots(), FLA_Apply_Q_blk_external(), FLA_Apply_Q_unb_external(), FLA_Apply_Q_UT(), FLA_Apply_Q_UT_inc_internal_check(), FLA_Apply_Q_UT_UD_lhc_blk_var2(), FLA_Asum_external(), FLA_Axpy_blk_var1(), FLA_Axpy_blk_var2(), FLA_Axpy_external(), FLA_Check_adjacent_objects_1x2(), FLA_Check_adjacent_objects_2x1(), FLA_Check_adjacent_objects_2x2(), FLA_Check_attempted_repart_2x1(), FLA_Check_attempted_repart_2x2(), FLA_Check_conformal_dims(), FLA_Check_equal_vector_lengths(), FLA_Check_householder_panel_dims(), FLA_Check_if_scalar(), FLA_Check_if_vector(), FLA_Check_matrix_matrix_dims(), FLA_Check_matrix_vector_dims(), FLA_Check_object_dims(), FLA_Check_object_length_equals(), FLA_Check_pivot_index_range(), FLA_Check_square(), FLA_Check_submatrix_dims_and_offset(), FLA_Check_sylv_matrix_dims(), FLA_Check_vector_length(), FLA_Check_vector_length_min(), FLA_Chol_blk_external(), FLA_Chol_l_blk_var1(), FLA_Chol_l_blk_var2(), FLA_Chol_l_blk_var3(), FLA_Chol_l_unb_var1(), FLA_Chol_l_unb_var2(), FLA_Chol_l_unb_var3(), FLA_Chol_u_blk_var1(), FLA_Chol_u_blk_var2(), FLA_Chol_u_blk_var3(), FLA_Chol_u_unb_var1(), FLA_Chol_u_unb_var2(), FLA_Chol_u_unb_var3(), FLA_Chol_unb_external(), FLA_Conjugate(), FLA_Conjugate_r(), FLA_Copy_blk_var1(), FLA_Copy_blk_var2(), FLA_Copy_external(), FLA_Copyr_external(), FLA_Copyt_external(), FLA_determine_matrix_size(), FLA_Dot2cs_external(), FLA_Dot2s_external(), FLA_Dot_external(), FLA_Dotc_external(), FLA_Dotcs_external(), FLA_Dots_external(), FLA_Gemm(), FLA_Gemm_external(), FLA_Gemm_hh_blk_var3(), FLA_Gemm_hh_blk_var4(), FLA_Gemm_hh_blk_var5(), FLA_Gemm_hh_blk_var6(), FLA_Gemm_hh_unb_var3(), FLA_Gemm_hh_unb_var4(), FLA_Gemm_hh_unb_var5(), FLA_Gemm_hh_unb_var6(), FLA_Gemm_hn_blk_var5(), FLA_Gemm_hn_blk_var6(), FLA_Gemm_hn_unb_var5(), FLA_Gemm_hn_unb_var6(), FLA_Gemm_ht_blk_var3(), FLA_Gemm_ht_blk_var4(), FLA_Gemm_ht_blk_var5(), FLA_Gemm_ht_blk_var6(), FLA_Gemm_ht_unb_var3(), FLA_Gemm_ht_unb_var4(), FLA_Gemm_ht_unb_var5(), FLA_Gemm_ht_unb_var6(), FLA_Gemm_nh_blk_var1(), FLA_Gemm_nh_blk_var2(), FLA_Gemm_nh_blk_var3(), FLA_Gemm_nh_blk_var4(), FLA_Gemm_nh_unb_var1(), FLA_Gemm_nh_unb_var2(), FLA_Gemm_nh_unb_var3(), FLA_Gemm_nh_unb_var4(), FLA_Gemm_nn_blk_var1(), FLA_Gemm_nn_blk_var2(), FLA_Gemm_nn_unb_var1(), FLA_Gemm_nn_unb_var2(), FLA_Gemm_nt_blk_var1(), FLA_Gemm_nt_blk_var2(), FLA_Gemm_nt_blk_var3(), FLA_Gemm_nt_blk_var4(), FLA_Gemm_nt_unb_var1(), FLA_Gemm_nt_unb_var2(), FLA_Gemm_nt_unb_var3(), FLA_Gemm_nt_unb_var4(), FLA_Gemm_th_blk_var3(), FLA_Gemm_th_blk_var4(), FLA_Gemm_th_blk_var5(), FLA_Gemm_th_blk_var6(), FLA_Gemm_th_unb_var3(), FLA_Gemm_th_unb_var4(), FLA_Gemm_th_unb_var5(), FLA_Gemm_th_unb_var6(), FLA_Gemm_tn_blk_var5(), FLA_Gemm_tn_blk_var6(), FLA_Gemm_tn_unb_var5(), FLA_Gemm_tn_unb_var6(), FLA_Gemm_tt_blk_var3(), FLA_Gemm_tt_blk_var4(), FLA_Gemm_tt_blk_var5(), FLA_Gemm_tt_blk_var6(), FLA_Gemm_tt_unb_var3(), FLA_Gemm_tt_unb_var4(), FLA_Gemm_tt_unb_var5(), FLA_Gemm_tt_unb_var6(), FLA_Gemv_c_blk_var5(), FLA_Gemv_c_blk_var6(), FLA_Gemv_external(), FLA_Gemv_n_blk_var1(), FLA_Gemv_n_blk_var2(), FLA_Gemv_t_blk_var5(), FLA_Gemv_t_blk_var6(), FLA_Gemvc_external(), FLA_Ger_external(), FLA_Gerc_external(), FLA_Hemm(), FLA_Hemm_external(), FLA_Hemm_ll_blk_var1(), FLA_Hemm_ll_blk_var2(), FLA_Hemm_ll_blk_var3(), FLA_Hemm_ll_blk_var4(), FLA_Hemm_ll_blk_var5(), FLA_Hemm_ll_blk_var6(), FLA_Hemm_ll_blk_var7(), FLA_Hemm_ll_blk_var8(), FLA_Hemm_ll_unb_var1(), FLA_Hemm_ll_unb_var2(), FLA_Hemm_ll_unb_var3(), FLA_Hemm_ll_unb_var4(), FLA_Hemm_ll_unb_var5(), FLA_Hemm_ll_unb_var6(), FLA_Hemm_ll_unb_var7(), FLA_Hemm_ll_unb_var8(), FLA_Hemm_lu_blk_var1(), FLA_Hemm_lu_blk_var2(), FLA_Hemm_lu_blk_var3(), FLA_Hemm_lu_blk_var4(), FLA_Hemm_lu_blk_var5(), FLA_Hemm_lu_blk_var6(), FLA_Hemm_lu_blk_var7(), FLA_Hemm_lu_blk_var8(), FLA_Hemm_lu_unb_var1(), FLA_Hemm_lu_unb_var2(), FLA_Hemm_lu_unb_var3(), FLA_Hemm_lu_unb_var4(), FLA_Hemm_lu_unb_var5(), FLA_Hemm_lu_unb_var6(), FLA_Hemm_lu_unb_var7(), FLA_Hemm_lu_unb_var8(), FLA_Hemm_rl_blk_var1(), FLA_Hemm_rl_blk_var10(), FLA_Hemm_rl_blk_var2(), FLA_Hemm_rl_blk_var3(), FLA_Hemm_rl_blk_var4(), FLA_Hemm_rl_blk_var5(), FLA_Hemm_rl_blk_var6(), FLA_Hemm_rl_blk_var7(), FLA_Hemm_rl_blk_var8(), FLA_Hemm_rl_blk_var9(), FLA_Hemm_rl_unb_var1(), FLA_Hemm_rl_unb_var10(), FLA_Hemm_rl_unb_var2(), FLA_Hemm_rl_unb_var3(), FLA_Hemm_rl_unb_var4(), FLA_Hemm_rl_unb_var5(), FLA_Hemm_rl_unb_var6(), FLA_Hemm_rl_unb_var7(), FLA_Hemm_rl_unb_var8(), FLA_Hemm_rl_unb_var9(), FLA_Hemm_ru_blk_var1(), FLA_Hemm_ru_blk_var10(), FLA_Hemm_ru_blk_var2(), FLA_Hemm_ru_blk_var3(), FLA_Hemm_ru_blk_var4(), FLA_Hemm_ru_blk_var5(), FLA_Hemm_ru_blk_var6(), FLA_Hemm_ru_blk_var7(), FLA_Hemm_ru_blk_var8(), FLA_Hemm_ru_blk_var9(), FLA_Hemm_ru_unb_var1(), FLA_Hemm_ru_unb_var10(), FLA_Hemm_ru_unb_var2(), FLA_Hemm_ru_unb_var3(), FLA_Hemm_ru_unb_var4(), FLA_Hemm_ru_unb_var5(), FLA_Hemm_ru_unb_var6(), FLA_Hemm_ru_unb_var7(), FLA_Hemm_ru_unb_var8(), FLA_Hemm_ru_unb_var9(), FLA_Hemv_external(), FLA_Hemvc_external(), FLA_Her2_external(), FLA_Her2c_external(), FLA_Her2k(), FLA_Her2k_external(), FLA_Her2k_lh_blk_var10(), FLA_Her2k_lh_blk_var9(), FLA_Her2k_lh_unb_var10(), FLA_Her2k_lh_unb_var9(), FLA_Her2k_ln_blk_var1(), FLA_Her2k_ln_blk_var2(), FLA_Her2k_ln_blk_var3(), FLA_Her2k_ln_blk_var4(), FLA_Her2k_ln_blk_var5(), FLA_Her2k_ln_blk_var6(), FLA_Her2k_ln_blk_var7(), FLA_Her2k_ln_blk_var8(), FLA_Her2k_ln_unb_var1(), FLA_Her2k_ln_unb_var2(), FLA_Her2k_ln_unb_var3(), FLA_Her2k_ln_unb_var4(), FLA_Her2k_ln_unb_var5(), FLA_Her2k_ln_unb_var6(), FLA_Her2k_ln_unb_var7(), FLA_Her2k_ln_unb_var8(), FLA_Her2k_uh_blk_var10(), FLA_Her2k_uh_blk_var9(), FLA_Her2k_uh_unb_var10(), FLA_Her2k_uh_unb_var9(), FLA_Her2k_un_blk_var1(), FLA_Her2k_un_blk_var2(), FLA_Her2k_un_blk_var3(), FLA_Her2k_un_blk_var4(), FLA_Her2k_un_blk_var5(), FLA_Her2k_un_blk_var6(), FLA_Her2k_un_blk_var7(), FLA_Her2k_un_blk_var8(), FLA_Her2k_un_unb_var1(), FLA_Her2k_un_unb_var2(), FLA_Her2k_un_unb_var3(), FLA_Her2k_un_unb_var4(), FLA_Her2k_un_unb_var5(), FLA_Her2k_un_unb_var6(), FLA_Her2k_un_unb_var7(), FLA_Her2k_un_unb_var8(), FLA_Her_external(), FLA_Herc_external(), FLA_Herk(), FLA_Herk_external(), FLA_Herk_lh_blk_var5(), FLA_Herk_lh_blk_var6(), FLA_Herk_lh_unb_var5(), FLA_Herk_lh_unb_var6(), FLA_Herk_ln_blk_var1(), FLA_Herk_ln_blk_var2(), FLA_Herk_ln_blk_var3(), FLA_Herk_ln_blk_var4(), FLA_Herk_ln_unb_var1(), FLA_Herk_ln_unb_var2(), FLA_Herk_ln_unb_var3(), FLA_Herk_ln_unb_var4(), FLA_Herk_uh_blk_var5(), FLA_Herk_uh_blk_var6(), FLA_Herk_uh_unb_var5(), FLA_Herk_uh_unb_var6(), FLA_Herk_un_blk_var1(), FLA_Herk_un_blk_var2(), FLA_Herk_un_blk_var3(), FLA_Herk_un_blk_var4(), FLA_Herk_un_unb_var1(), FLA_Herk_un_unb_var2(), FLA_Herk_un_unb_var3(), FLA_Herk_un_unb_var4(), FLA_Househ2_UT_opt(), FLA_Iamax_external(), FLA_Inv_scal_external(), FLA_Inv_scalc_external(), FLA_LQ_blk_external(), FLA_LQ_unb_external(), FLA_LQ_UT_blk_external(), FLA_LQ_UT_blk_var2(), FLA_LQ_UT_create_T(), FLA_LQ_UT_internal_check(), FLA_LQ_UT_recover_tau(), FLA_LQ_UT_unb_external(), FLA_LU_nopiv_blk_external(), FLA_LU_nopiv_blk_var1(), FLA_LU_nopiv_blk_var2(), FLA_LU_nopiv_blk_var3(), FLA_LU_nopiv_blk_var4(), FLA_LU_nopiv_blk_var5(), FLA_LU_nopiv_unb_external(), FLA_LU_nopiv_unb_var1(), FLA_LU_nopiv_unb_var2(), FLA_LU_nopiv_unb_var3(), FLA_LU_nopiv_unb_var4(), FLA_LU_nopiv_unb_var5(), FLA_LU_piv_blk_external(), FLA_LU_piv_blk_var3(), FLA_LU_piv_blk_var4(), FLA_LU_piv_blk_var5(), FLA_LU_piv_unb_external(), FLA_LU_piv_unb_var3(), FLA_LU_piv_unb_var3b(), FLA_LU_piv_unb_var4(), FLA_LU_piv_unb_var5(), FLA_Max_abs_value(), FLA_Max_elemwise_diff(), FLA_Norm_inf(), FLA_Nrm2_external(), FLA_Obj_create_conf_to(), FLA_Obj_equals(), FLA_Obj_has_zero_dim(), FLA_Obj_is_conformal_to(), FLA_Obj_is_scalar(), FLA_Obj_is_vector(), fla_obj_length_f(), FLA_Obj_set_to_scalar(), FLA_Obj_show(), FLA_QR_blk_external(), FLA_QR_unb_external(), FLA_QR_UT(), FLA_QR_UT_Accum_T_opt_var1_dcomplex(), FLA_QR_UT_Accum_T_opt_var1_double(), FLA_QR_UT_Accum_T_opt_var1_float(), FLA_QR_UT_Accum_T_opt_var1_scomplex(), FLA_QR_UT_blk_external(), FLA_QR_UT_inc_create_U_panel(), FLA_QR_UT_recover_tau(), FLA_QR_UT_UD_Accum_T_opt_var1_dcomplex(), FLA_QR_UT_UD_Accum_T_opt_var1_double(), FLA_QR_UT_UD_Accum_T_opt_var1_float(), FLA_QR_UT_UD_Accum_T_opt_var1_scomplex(), FLA_QR_UT_UD_blk_var2(), FLA_QR_UT_unb_external(), FLA_Random_matrix(), FLA_Random_tri_matrix(), FLA_SA_Apply_pivots(), FLA_SA_FS_blk(), FLA_SA_LU_blk(), FLA_SA_LU_unb(), FLA_Scal_external(), FLA_Scalc_external(), FLA_Shift_pivots_to(), FLA_Shift_pivots_to_check(), FLA_SPDinv(), FLA_Swap_external(), FLA_Swap_rows(), FLA_Swap_t_blk_var2(), FLA_Swapt_external(), FLA_Sylv_nn_blk_var1(), FLA_Sylv_nn_blk_var10(), FLA_Sylv_nn_blk_var11(), FLA_Sylv_nn_blk_var12(), FLA_Sylv_nn_blk_var13(), FLA_Sylv_nn_blk_var14(), FLA_Sylv_nn_blk_var15(), FLA_Sylv_nn_blk_var16(), FLA_Sylv_nn_blk_var17(), FLA_Sylv_nn_blk_var18(), FLA_Sylv_nn_blk_var2(), FLA_Sylv_nn_blk_var3(), FLA_Sylv_nn_blk_var4(), FLA_Sylv_nn_blk_var5(), FLA_Sylv_nn_blk_var6(), FLA_Sylv_nn_blk_var7(), FLA_Sylv_nn_blk_var8(), FLA_Sylv_nn_blk_var9(), FLA_Sylv_nt_blk_var1(), FLA_Sylv_nt_blk_var10(), FLA_Sylv_nt_blk_var11(), FLA_Sylv_nt_blk_var12(), FLA_Sylv_nt_blk_var13(), FLA_Sylv_nt_blk_var14(), FLA_Sylv_nt_blk_var15(), FLA_Sylv_nt_blk_var16(), FLA_Sylv_nt_blk_var17(), FLA_Sylv_nt_blk_var18(), FLA_Sylv_nt_blk_var2(), FLA_Sylv_nt_blk_var3(), FLA_Sylv_nt_blk_var4(), FLA_Sylv_nt_blk_var5(), FLA_Sylv_nt_blk_var6(), FLA_Sylv_nt_blk_var7(), FLA_Sylv_nt_blk_var8(), FLA_Sylv_nt_blk_var9(), FLA_Sylv_tn_blk_var1(), FLA_Sylv_tn_blk_var10(), FLA_Sylv_tn_blk_var11(), FLA_Sylv_tn_blk_var12(), FLA_Sylv_tn_blk_var13(), FLA_Sylv_tn_blk_var14(), FLA_Sylv_tn_blk_var15(), FLA_Sylv_tn_blk_var16(), FLA_Sylv_tn_blk_var17(), FLA_Sylv_tn_blk_var18(), FLA_Sylv_tn_blk_var2(), FLA_Sylv_tn_blk_var3(), FLA_Sylv_tn_blk_var4(), FLA_Sylv_tn_blk_var5(), FLA_Sylv_tn_blk_var6(), FLA_Sylv_tn_blk_var7(), FLA_Sylv_tn_blk_var8(), FLA_Sylv_tn_blk_var9(), FLA_Sylv_tt_blk_var1(), FLA_Sylv_tt_blk_var10(), FLA_Sylv_tt_blk_var11(), FLA_Sylv_tt_blk_var12(), FLA_Sylv_tt_blk_var13(), FLA_Sylv_tt_blk_var14(), FLA_Sylv_tt_blk_var15(), FLA_Sylv_tt_blk_var16(), FLA_Sylv_tt_blk_var17(), FLA_Sylv_tt_blk_var18(), FLA_Sylv_tt_blk_var2(), FLA_Sylv_tt_blk_var3(), FLA_Sylv_tt_blk_var4(), FLA_Sylv_tt_blk_var5(), FLA_Sylv_tt_blk_var6(), FLA_Sylv_tt_blk_var7(), FLA_Sylv_tt_blk_var8(), FLA_Sylv_tt_blk_var9(), FLA_Sylv_unb_external(), FLA_Symm(), FLA_Symm_external(), FLA_Symm_ll_blk_var1(), FLA_Symm_ll_blk_var2(), FLA_Symm_ll_blk_var3(), FLA_Symm_ll_blk_var4(), FLA_Symm_ll_blk_var5(), FLA_Symm_ll_blk_var6(), FLA_Symm_ll_blk_var7(), FLA_Symm_ll_blk_var8(), FLA_Symm_ll_unb_var1(), FLA_Symm_ll_unb_var2(), FLA_Symm_ll_unb_var3(), FLA_Symm_ll_unb_var4(), FLA_Symm_ll_unb_var5(), FLA_Symm_ll_unb_var6(), FLA_Symm_ll_unb_var7(), FLA_Symm_ll_unb_var8(), FLA_Symm_lu_blk_var1(), FLA_Symm_lu_blk_var2(), FLA_Symm_lu_blk_var3(), FLA_Symm_lu_blk_var4(), FLA_Symm_lu_blk_var5(), FLA_Symm_lu_blk_var6(), FLA_Symm_lu_blk_var7(), FLA_Symm_lu_blk_var8(), FLA_Symm_lu_unb_var1(), FLA_Symm_lu_unb_var2(), FLA_Symm_lu_unb_var3(), FLA_Symm_lu_unb_var4(), FLA_Symm_lu_unb_var5(), FLA_Symm_lu_unb_var6(), FLA_Symm_lu_unb_var7(), FLA_Symm_lu_unb_var8(), FLA_Symm_rl_blk_var1(), FLA_Symm_rl_blk_var10(), FLA_Symm_rl_blk_var2(), FLA_Symm_rl_blk_var3(), FLA_Symm_rl_blk_var4(), FLA_Symm_rl_blk_var5(), FLA_Symm_rl_blk_var6(), FLA_Symm_rl_blk_var7(), FLA_Symm_rl_blk_var8(), FLA_Symm_rl_blk_var9(), FLA_Symm_rl_unb_var1(), FLA_Symm_rl_unb_var10(), FLA_Symm_rl_unb_var2(), FLA_Symm_rl_unb_var3(), FLA_Symm_rl_unb_var4(), FLA_Symm_rl_unb_var5(), FLA_Symm_rl_unb_var6(), FLA_Symm_rl_unb_var7(), FLA_Symm_rl_unb_var8(), FLA_Symm_rl_unb_var9(), FLA_Symm_ru_blk_var1(), FLA_Symm_ru_blk_var10(), FLA_Symm_ru_blk_var2(), FLA_Symm_ru_blk_var3(), FLA_Symm_ru_blk_var4(), FLA_Symm_ru_blk_var5(), FLA_Symm_ru_blk_var6(), FLA_Symm_ru_blk_var7(), FLA_Symm_ru_blk_var8(), FLA_Symm_ru_blk_var9(), FLA_Symm_ru_unb_var1(), FLA_Symm_ru_unb_var10(), FLA_Symm_ru_unb_var2(), FLA_Symm_ru_unb_var3(), FLA_Symm_ru_unb_var4(), FLA_Symm_ru_unb_var5(), FLA_Symm_ru_unb_var6(), FLA_Symm_ru_unb_var7(), FLA_Symm_ru_unb_var8(), FLA_Symm_ru_unb_var9(), FLA_Symv_external(), FLA_Syr2_external(), FLA_Syr2k(), FLA_Syr2k_external(), FLA_Syr2k_ln_blk_var1(), FLA_Syr2k_ln_blk_var2(), FLA_Syr2k_ln_blk_var3(), FLA_Syr2k_ln_blk_var4(), FLA_Syr2k_ln_blk_var5(), FLA_Syr2k_ln_blk_var6(), FLA_Syr2k_ln_blk_var7(), FLA_Syr2k_ln_blk_var8(), FLA_Syr2k_ln_unb_var1(), FLA_Syr2k_ln_unb_var2(), FLA_Syr2k_ln_unb_var3(), FLA_Syr2k_ln_unb_var4(), FLA_Syr2k_ln_unb_var5(), FLA_Syr2k_ln_unb_var6(), FLA_Syr2k_ln_unb_var7(), FLA_Syr2k_ln_unb_var8(), FLA_Syr2k_lt_blk_var10(), FLA_Syr2k_lt_blk_var9(), FLA_Syr2k_lt_unb_var10(), FLA_Syr2k_lt_unb_var9(), FLA_Syr2k_un_blk_var1(), FLA_Syr2k_un_blk_var2(), FLA_Syr2k_un_blk_var3(), FLA_Syr2k_un_blk_var4(), FLA_Syr2k_un_blk_var5(), FLA_Syr2k_un_blk_var6(), FLA_Syr2k_un_blk_var7(), FLA_Syr2k_un_blk_var8(), FLA_Syr2k_un_unb_var1(), FLA_Syr2k_un_unb_var2(), FLA_Syr2k_un_unb_var3(), FLA_Syr2k_un_unb_var4(), FLA_Syr2k_un_unb_var5(), FLA_Syr2k_un_unb_var6(), FLA_Syr2k_un_unb_var7(), FLA_Syr2k_un_unb_var8(), FLA_Syr2k_ut_blk_var10(), FLA_Syr2k_ut_blk_var9(), FLA_Syr2k_ut_unb_var10(), FLA_Syr2k_ut_unb_var9(), FLA_Syr_external(), FLA_Syrk(), FLA_Syrk_external(), FLA_Syrk_ln_blk_var1(), FLA_Syrk_ln_blk_var2(), FLA_Syrk_ln_blk_var3(), FLA_Syrk_ln_blk_var4(), FLA_Syrk_ln_unb_var1(), FLA_Syrk_ln_unb_var2(), FLA_Syrk_ln_unb_var3(), FLA_Syrk_ln_unb_var4(), FLA_Syrk_lt_blk_var5(), FLA_Syrk_lt_blk_var6(), FLA_Syrk_lt_unb_var5(), FLA_Syrk_lt_unb_var6(), FLA_Syrk_un_blk_var1(), FLA_Syrk_un_blk_var2(), FLA_Syrk_un_blk_var3(), FLA_Syrk_un_blk_var4(), FLA_Syrk_un_unb_var1(), FLA_Syrk_un_unb_var2(), FLA_Syrk_un_unb_var3(), FLA_Syrk_un_unb_var4(), FLA_Syrk_ut_blk_var5(), FLA_Syrk_ut_blk_var6(), FLA_Syrk_ut_unb_var5(), FLA_Syrk_ut_unb_var6(), FLA_Transpose_blk_var1(), FLA_Transpose_blk_var2(), FLA_Transpose_unb_var1(), FLA_Transpose_unb_var2(), FLA_Triangularize(), FLA_Trinv(), FLA_Trinv_blk_external(), FLA_Trinv_l_blk_var1(), FLA_Trinv_l_blk_var2(), FLA_Trinv_l_blk_var3(), FLA_Trinv_l_blk_var4(), FLA_Trinv_l_unb_var1(), FLA_Trinv_l_unb_var2(), FLA_Trinv_l_unb_var3(), FLA_Trinv_l_unb_var4(), FLA_Trinv_u_blk_var1(), FLA_Trinv_u_blk_var2(), FLA_Trinv_u_blk_var3(), FLA_Trinv_u_blk_var4(), FLA_Trinv_u_unb_var1(), FLA_Trinv_u_unb_var2(), FLA_Trinv_u_unb_var3(), FLA_Trinv_u_unb_var4(), FLA_Trinv_unb_external(), FLA_Trmm(), FLA_Trmm_external(), FLA_Trmm_llh_blk_var1(), FLA_Trmm_llh_blk_var2(), FLA_Trmm_llh_unb_var1(), FLA_Trmm_llh_unb_var2(), FLA_Trmm_lln_blk_var1(), FLA_Trmm_lln_blk_var2(), FLA_Trmm_lln_unb_var1(), FLA_Trmm_lln_unb_var2(), FLA_Trmm_llt_blk_var1(), FLA_Trmm_llt_blk_var2(), FLA_Trmm_llt_unb_var1(), FLA_Trmm_llt_unb_var2(), FLA_Trmm_luh_blk_var1(), FLA_Trmm_luh_blk_var2(), FLA_Trmm_luh_unb_var1(), FLA_Trmm_luh_unb_var2(), FLA_Trmm_lun_blk_var1(), FLA_Trmm_lun_blk_var2(), FLA_Trmm_lun_unb_var1(), FLA_Trmm_lun_unb_var2(), FLA_Trmm_lut_blk_var1(), FLA_Trmm_lut_blk_var2(), FLA_Trmm_lut_unb_var1(), FLA_Trmm_lut_unb_var2(), FLA_Trmm_rlh_blk_var1(), FLA_Trmm_rlh_blk_var2(), FLA_Trmm_rlh_blk_var3(), FLA_Trmm_rlh_blk_var4(), FLA_Trmm_rlh_unb_var1(), FLA_Trmm_rlh_unb_var2(), FLA_Trmm_rlh_unb_var3(), FLA_Trmm_rlh_unb_var4(), FLA_Trmm_rln_blk_var1(), FLA_Trmm_rln_blk_var2(), FLA_Trmm_rln_blk_var3(), FLA_Trmm_rln_blk_var4(), FLA_Trmm_rln_unb_var1(), FLA_Trmm_rln_unb_var2(), FLA_Trmm_rln_unb_var3(), FLA_Trmm_rln_unb_var4(), FLA_Trmm_rlt_blk_var1(), FLA_Trmm_rlt_blk_var2(), FLA_Trmm_rlt_blk_var3(), FLA_Trmm_rlt_blk_var4(), FLA_Trmm_rlt_unb_var1(), FLA_Trmm_rlt_unb_var2(), FLA_Trmm_rlt_unb_var3(), FLA_Trmm_rlt_unb_var4(), FLA_Trmm_ruh_blk_var1(), FLA_Trmm_ruh_blk_var2(), FLA_Trmm_ruh_blk_var3(), FLA_Trmm_ruh_blk_var4(), FLA_Trmm_ruh_unb_var1(), FLA_Trmm_ruh_unb_var2(), FLA_Trmm_ruh_unb_var3(), FLA_Trmm_ruh_unb_var4(), FLA_Trmm_run_blk_var1(), FLA_Trmm_run_blk_var2(), FLA_Trmm_run_blk_var3(), FLA_Trmm_run_blk_var4(), FLA_Trmm_run_unb_var1(), FLA_Trmm_run_unb_var2(), FLA_Trmm_run_unb_var3(), FLA_Trmm_run_unb_var4(), FLA_Trmm_rut_blk_var1(), FLA_Trmm_rut_blk_var2(), FLA_Trmm_rut_blk_var3(), FLA_Trmm_rut_blk_var4(), FLA_Trmm_rut_unb_var1(), FLA_Trmm_rut_unb_var2(), FLA_Trmm_rut_unb_var3(), FLA_Trmm_rut_unb_var4(), FLA_Trmv_external(), FLA_Trsm(), FLA_Trsm_external(), FLA_Trsm_llh_blk_var1(), FLA_Trsm_llh_blk_var2(), FLA_Trsm_llh_unb_var1(), FLA_Trsm_llh_unb_var2(), FLA_Trsm_lln_blk_var1(), FLA_Trsm_lln_blk_var2(), FLA_Trsm_lln_unb_var1(), FLA_Trsm_lln_unb_var2(), FLA_Trsm_llt_blk_var1(), FLA_Trsm_llt_blk_var2(), FLA_Trsm_llt_unb_var1(), FLA_Trsm_llt_unb_var2(), FLA_Trsm_luh_blk_var1(), FLA_Trsm_luh_blk_var2(), FLA_Trsm_luh_unb_var1(), FLA_Trsm_luh_unb_var2(), FLA_Trsm_lun_blk_var1(), FLA_Trsm_lun_blk_var2(), FLA_Trsm_lun_unb_var1(), FLA_Trsm_lun_unb_var2(), FLA_Trsm_lut_blk_var1(), FLA_Trsm_lut_blk_var2(), FLA_Trsm_lut_unb_var1(), FLA_Trsm_lut_unb_var2(), FLA_Trsm_rlh_blk_var1(), FLA_Trsm_rlh_blk_var2(), FLA_Trsm_rlh_blk_var3(), FLA_Trsm_rlh_blk_var4(), FLA_Trsm_rlh_unb_var1(), FLA_Trsm_rlh_unb_var2(), FLA_Trsm_rlh_unb_var3(), FLA_Trsm_rlh_unb_var4(), FLA_Trsm_rln_blk_var1(), FLA_Trsm_rln_blk_var2(), FLA_Trsm_rln_blk_var3(), FLA_Trsm_rln_blk_var4(), FLA_Trsm_rln_unb_var1(), FLA_Trsm_rln_unb_var2(), FLA_Trsm_rln_unb_var3(), FLA_Trsm_rln_unb_var4(), FLA_Trsm_rlt_blk_var1(), FLA_Trsm_rlt_blk_var2(), FLA_Trsm_rlt_blk_var3(), FLA_Trsm_rlt_blk_var4(), FLA_Trsm_rlt_unb_var1(), FLA_Trsm_rlt_unb_var2(), FLA_Trsm_rlt_unb_var3(), FLA_Trsm_rlt_unb_var4(), FLA_Trsm_ruh_blk_var1(), FLA_Trsm_ruh_blk_var2(), FLA_Trsm_ruh_blk_var3(), FLA_Trsm_ruh_blk_var4(), FLA_Trsm_ruh_unb_var1(), FLA_Trsm_ruh_unb_var2(), FLA_Trsm_ruh_unb_var3(), FLA_Trsm_ruh_unb_var4(), FLA_Trsm_run_blk_var1(), FLA_Trsm_run_blk_var2(), FLA_Trsm_run_blk_var3(), FLA_Trsm_run_blk_var4(), FLA_Trsm_run_unb_var1(), FLA_Trsm_run_unb_var2(), FLA_Trsm_run_unb_var3(), FLA_Trsm_run_unb_var4(), FLA_Trsm_rut_blk_var1(), FLA_Trsm_rut_blk_var2(), FLA_Trsm_rut_blk_var3(), FLA_Trsm_rut_blk_var4(), FLA_Trsm_rut_unb_var1(), FLA_Trsm_rut_unb_var2(), FLA_Trsm_rut_unb_var3(), FLA_Trsm_rut_unb_var4(), FLA_Trsv_external(), FLA_Trsv_lc_blk_var1(), FLA_Trsv_lc_blk_var2(), FLA_Trsv_ln_blk_var1(), FLA_Trsv_ln_blk_var2(), FLA_Trsv_lt_blk_var1(), FLA_Trsv_lt_blk_var2(), FLA_Trsv_uc_blk_var1(), FLA_Trsv_uc_blk_var2(), FLA_Trsv_un_blk_var1(), FLA_Trsv_un_blk_var2(), FLA_Trsv_ut_blk_var1(), FLA_Trsv_ut_blk_var2(), FLA_Ttmm(), FLA_Ttmm_blk_external(), FLA_Ttmm_l_blk_var1(), FLA_Ttmm_l_blk_var2(), FLA_Ttmm_l_blk_var3(), FLA_Ttmm_l_unb_var1(), FLA_Ttmm_l_unb_var2(), FLA_Ttmm_l_unb_var3(), FLA_Ttmm_u_blk_var1(), FLA_Ttmm_u_blk_var2(), FLA_Ttmm_u_blk_var3(), FLA_Ttmm_u_unb_var1(), FLA_Ttmm_u_unb_var2(), FLA_Ttmm_u_unb_var3(), FLA_Ttmm_unb_external(), FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_FS_incpiv_aux1(), FLASH_FS_incpiv_aux2(), FLASH_LU_incpiv_create_hier_matrices(), FLASH_LU_incpiv_determine_alg_blocksize(), FLASH_LU_incpiv_var1(), FLASH_LU_incpiv_var2(), FLASH_Obj_attach_buffer_hierarchy(), FLASH_Obj_blocksizes(), FLASH_Obj_create_hier_conf_to_flat(), FLASH_Obj_create_hier_conf_to_flat_ext(), FLASH_Obj_free_hierarchy(), FLASH_Obj_scalar_length(), FLASH_print_struct(), FLASH_print_struct_helper(), FLASH_QR_UT_inc_create_hier_matrices(), FLASH_QR_UT_inc_determine_alg_blocksize(), and FLASH_SA_LU().

00581 {
00582   return obj.m;
00583 }

F_INT FLA_F2C() fla_obj_length_f ( F_INT *  obj  ) 

References FLA_Obj_length().

00586 {
00587   return FLA_Obj_length( *( ( FLA_Obj * ) obj ) );
00588 }

dim_t FLA_Obj_max_dim ( FLA_Obj  obj  ) 

References FLA_Obj_view::m, and FLA_Obj_view::n.

Referenced by fla_obj_max_dim_f().

00661 {
00662   return max( obj.m, obj.n );
00663 }

F_INT FLA_F2C() fla_obj_max_dim_f ( F_INT *  obj  ) 

References FLA_Obj_max_dim().

00666 {
00667   return FLA_Obj_max_dim( *( ( FLA_Obj * ) obj ) );
00668 }

dim_t FLA_Obj_min_dim ( FLA_Obj  obj  ) 

F_INT FLA_F2C() fla_obj_min_dim_f ( F_INT *  obj  ) 

References FLA_Obj_min_dim().

00650 {
00651   return FLA_Obj_min_dim( *( ( FLA_Obj * ) obj ) );
00652 }

FLA_Error FLA_Obj_scale_diagonal_check ( FLA_Obj  alpha,
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(), and FLA_Obj_is_real().

Referenced by FLA_Obj_scale_diagonal().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_floating_object( A );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_nonconstant_object( A );
00043   FLA_Check_error_code( e_val );
00044 
00045   if ( FLA_Obj_is_real( A ) )
00046   {
00047     e_val = FLA_Check_consistent_object_datatype( A, alpha );
00048     FLA_Check_error_code( e_val );
00049   }
00050   else
00051   {
00052     e_val = FLA_Check_identical_object_precision( A, alpha );
00053     FLA_Check_error_code( e_val );
00054   }
00055 
00056   e_val = FLA_Check_if_scalar( alpha );
00057   FLA_Check_error_code( e_val );
00058 
00059   return FLA_SUCCESS;
00060 }

FLA_Error FLA_Obj_set_diagonal_to_scalar ( FLA_Obj  alpha,
FLA_Obj  A 
)

References FLA_Check_error_level(), FLA_Obj_datatype(), FLA_Obj_ldim(), FLA_Obj_min_dim(), FLA_Obj_set_diagonal_to_scalar_check(), dcomplex::imag, scomplex::imag, dcomplex::real, and scomplex::real.

Referenced by fla_obj_set_diagonal_to_scalar_f(), and FLA_Obj_set_to_identity().

00535 {
00536   FLA_Datatype datatype;
00537   dim_t        i, min_m_n, ldim;
00538 
00539   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00540     FLA_Obj_set_diagonal_to_scalar_check( alpha, A );
00541 
00542   datatype = FLA_Obj_datatype( A );
00543   ldim     = FLA_Obj_ldim( A );
00544   min_m_n  = FLA_Obj_min_dim( A );
00545 
00546   switch ( datatype ){
00547 
00548   case FLA_FLOAT:
00549   {
00550     float *buff_A     = ( float * ) FLA_FLOAT_PTR( A );
00551     float *buff_alpha = ( float * ) FLA_FLOAT_PTR( alpha );
00552 
00553     for ( i = 0; i < min_m_n; i++ )
00554       buff_A[ i*ldim + i ] = *buff_alpha;
00555 
00556     break;
00557   }
00558 
00559   case FLA_DOUBLE:
00560   {
00561     double *buff_A     = ( double * ) FLA_DOUBLE_PTR( A );
00562     double *buff_alpha = ( double * ) FLA_DOUBLE_PTR( alpha );
00563 
00564     for ( i = 0; i < min_m_n; i++ )
00565       buff_A[ i*ldim + i ] = *buff_alpha;
00566 
00567     break;
00568   }
00569 
00570   case FLA_COMPLEX:
00571   {
00572     scomplex *buff_A     = ( scomplex * ) FLA_COMPLEX_PTR( A );
00573     scomplex *buff_alpha = ( scomplex * ) FLA_COMPLEX_PTR( alpha );
00574 
00575     for ( i = 0; i < min_m_n; i++ )
00576     {
00577       buff_A[ i*ldim + i ].real = buff_alpha->real;
00578       buff_A[ i*ldim + i ].imag = buff_alpha->imag;
00579     }
00580 
00581     break;
00582   }
00583 
00584   case FLA_DOUBLE_COMPLEX:
00585   {
00586     dcomplex *buff_A     = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( A );
00587     dcomplex *buff_alpha = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( alpha );
00588 
00589     for ( i = 0; i < min_m_n; i++ )
00590     {
00591       buff_A[ i*ldim + i ].real = buff_alpha->real;
00592       buff_A[ i*ldim + i ].imag = buff_alpha->imag;
00593     }
00594 
00595     break;
00596   }
00597 
00598   }
00599 
00600   return FLA_SUCCESS;
00601 }

FLA_Error FLA_Obj_set_diagonal_to_scalar_check ( FLA_Obj  alpha,
FLA_Obj  A 
)

References FLA_Check_consistent_object_datatype(), FLA_Check_floating_object(), FLA_Check_if_scalar(), and FLA_Check_nonconstant_object().

Referenced by FLA_Obj_set_diagonal_to_scalar().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_floating_object( A );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_nonconstant_object( A );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_consistent_object_datatype( A, alpha );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_if_scalar( alpha );
00049   FLA_Check_error_code( e_val );
00050 
00051   return FLA_SUCCESS;
00052 }

void FLA_F2C() fla_obj_set_diagonal_to_scalar_f ( F_INT *  alpha,
F_INT *  A,
F_INT *  IERROR 
)

References FLA_Obj_set_diagonal_to_scalar().

00605 {
00606   *IERROR = FLA_Obj_set_diagonal_to_scalar( *( ( FLA_Obj * ) alpha ),
00607                                             *( ( FLA_Obj * ) A     ) );
00608 }

FLA_Error FLA_Obj_set_to_identity ( FLA_Obj  A  ) 

References FLA_Check_error_level(), FLA_Obj_set_diagonal_to_scalar(), FLA_Obj_set_to_identity_check(), FLA_Obj_set_to_scalar(), FLA_ONE, and FLA_ZERO.

Referenced by FLA_Form_perm_matrix(), and fla_obj_set_to_identity_f().

00618 {
00619   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00620     FLA_Obj_set_to_identity_check( A );
00621 
00622   FLA_Obj_set_to_scalar( FLA_ZERO, A );
00623 
00624   FLA_Obj_set_diagonal_to_scalar( FLA_ONE, A );
00625 
00626   return FLA_SUCCESS;
00627 }

FLA_Error FLA_Obj_set_to_identity_check ( FLA_Obj  A  ) 

References FLA_Check_floating_object(), FLA_Check_nonconstant_object(), and FLA_Check_square().

Referenced by FLA_Obj_set_to_identity().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_floating_object( A );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_nonconstant_object( A );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_square( A );
00046   FLA_Check_error_code( e_val );
00047 
00048   return FLA_SUCCESS;
00049 }

void FLA_F2C() fla_obj_set_to_identity_f ( F_INT *  A,
F_INT *  IERROR 
)

References FLA_Obj_set_to_identity().

00631 {
00632   *IERROR = FLA_Obj_set_to_identity( *( ( FLA_Obj * ) A ) );
00633 }

FLA_Error FLA_Obj_set_to_scalar ( FLA_Obj  alpha,
FLA_Obj  A 
)

References FLA_Check_error_level(), FLA_Obj_datatype(), FLA_Obj_ldim(), FLA_Obj_length(), FLA_Obj_set_to_scalar_check(), and FLA_Obj_width().

Referenced by FLA_Asum_external(), FLA_Nrm2_external(), FLA_Obj_set_to_identity(), fla_obj_set_to_scalar_f(), FLA_QR_UT_UD_blk_var1(), FLA_Scal_external(), FLA_Scalc_external(), FLA_Sylv_unb_external(), and FLASH_Obj_set_to_scalar().

00452 {
00453   FLA_Datatype datatype;
00454   dim_t        m_A, n_A, ldim_A;
00455   dim_t        i, j;
00456 
00457   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00458     FLA_Obj_set_to_scalar_check( alpha, A );
00459 
00460   datatype = FLA_Obj_datatype( A );
00461   m_A      = FLA_Obj_length( A );
00462   n_A      = FLA_Obj_width( A );
00463   ldim_A   = FLA_Obj_ldim( A );
00464 
00465   switch ( datatype ){
00466 
00467   case FLA_FLOAT:
00468   {
00469     float *buff_A     = ( float * ) FLA_FLOAT_PTR( A );
00470     float *buff_alpha = ( float * ) FLA_FLOAT_PTR( alpha );
00471  
00472     for ( j = 0; j < n_A; j++ )
00473       for ( i = 0; i < m_A; i++ )
00474         buff_A[ j * ldim_A + i ] = *buff_alpha;
00475 
00476     break;
00477   }
00478 
00479   case FLA_DOUBLE:
00480   {
00481     double *buff_A     = ( double * ) FLA_DOUBLE_PTR( A );
00482     double *buff_alpha = ( double * ) FLA_DOUBLE_PTR( alpha );
00483  
00484     for ( j = 0; j < n_A; j++ )
00485       for ( i = 0; i < m_A; i++ )
00486         buff_A[ j * ldim_A + i ] = *buff_alpha;
00487 
00488     break;
00489   }
00490 
00491   case FLA_COMPLEX:
00492   {
00493     scomplex *buff_A     = ( scomplex * ) FLA_COMPLEX_PTR( A );
00494     scomplex *buff_alpha = ( scomplex * ) FLA_COMPLEX_PTR( alpha );
00495  
00496     for ( j = 0; j < n_A; j++ )
00497       for ( i = 0; i < m_A; i++ )
00498         buff_A[ j * ldim_A + i ] = *buff_alpha;
00499 
00500     break;
00501   }
00502 
00503   case FLA_DOUBLE_COMPLEX:
00504   {
00505     dcomplex *buff_A     = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( A );
00506     dcomplex *buff_alpha = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( alpha );
00507  
00508     for ( j = 0; j < n_A; j++ )
00509       for ( i = 0; i < m_A; i++ )
00510         buff_A[ j * ldim_A + i ] = *buff_alpha;
00511 
00512     break;
00513   }
00514 
00515   }
00516 
00517   return FLA_SUCCESS;
00518 }

FLA_Error FLA_Obj_set_to_scalar_check ( FLA_Obj  alpha,
FLA_Obj  A 
)

References FLA_Check_consistent_object_datatype(), FLA_Check_floating_object(), FLA_Check_if_scalar(), and FLA_Check_nonconstant_object().

Referenced by FLA_Obj_set_to_scalar().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_floating_object( A );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_nonconstant_object( A );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_consistent_object_datatype( A, alpha );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_if_scalar( alpha );
00049   FLA_Check_error_code( e_val );
00050 
00051   return FLA_SUCCESS;
00052 }

void FLA_F2C() fla_obj_set_to_scalar_f ( F_INT *  alpha,
F_INT *  A,
F_INT *  IERROR 
)

References FLA_Obj_set_to_scalar().

00522 {
00523   *IERROR = FLA_Obj_set_to_scalar( *( ( FLA_Obj * ) alpha ),
00524                                    *( ( FLA_Obj * ) A     ) );
00525 }

FLA_Error FLA_Obj_shift_diagonal ( FLA_Obj  sigma,
FLA_Obj  A 
)

References FLA_Check_error_level(), FLA_Obj_datatype(), FLA_Obj_ldim(), FLA_Obj_min_dim(), FLA_Obj_shift_diagonal_check(), dcomplex::imag, scomplex::imag, dcomplex::real, and scomplex::real.

Referenced by fla_obj_shift_diagonal_f(), and FLASH_Obj_shift_diagonal().

00726 {
00727   FLA_Datatype datatype_A;
00728   FLA_Datatype datatype_sigma;
00729   dim_t        i, min_m_n, ldim_A;
00730 
00731   if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00732     FLA_Obj_shift_diagonal_check( sigma, A );
00733 
00734   ldim_A         = FLA_Obj_ldim( A );
00735   min_m_n        = FLA_Obj_min_dim( A );
00736   datatype_A     = FLA_Obj_datatype( A );
00737   datatype_sigma = FLA_Obj_datatype( sigma );
00738   
00739   switch( datatype_A ){
00740 
00741   case FLA_FLOAT:
00742   {
00743     float *buff_A     = ( float * ) FLA_FLOAT_PTR( A );
00744     float *buff_sigma = ( float * ) FLA_FLOAT_PTR( sigma );
00745 
00746     for ( i = 0; i < min_m_n; i++ )
00747       *( buff_A + i*ldim_A + i ) += *buff_sigma;
00748 
00749     break;
00750   }
00751 
00752   case FLA_DOUBLE:
00753   {
00754     double *buff_A     = ( double * ) FLA_DOUBLE_PTR( A );
00755     double *buff_sigma = ( double * ) FLA_DOUBLE_PTR( sigma );
00756 
00757     for ( i = 0; i < min_m_n; i++ )
00758       *( buff_A + i*ldim_A + i ) += *buff_sigma;
00759 
00760     break;
00761   }
00762 
00763   case FLA_COMPLEX:
00764   {
00765     if ( datatype_sigma == FLA_COMPLEX )
00766     {
00767       scomplex *buff_A     = ( scomplex * ) FLA_COMPLEX_PTR( A );
00768       scomplex *buff_sigma = ( scomplex * ) FLA_COMPLEX_PTR( sigma );
00769   
00770       for ( i = 0; i < min_m_n; i++ )
00771       {
00772         ( buff_A + i*ldim_A + i )->real += buff_sigma->real;
00773         ( buff_A + i*ldim_A + i )->imag += buff_sigma->imag;
00774       }
00775     }
00776     else
00777     {
00778       scomplex *buff_A     = ( scomplex * ) FLA_COMPLEX_PTR( A );
00779       float    *buff_sigma = ( float    * ) FLA_FLOAT_PTR( sigma );
00780   
00781       for ( i = 0; i < min_m_n; i++ )
00782       {
00783         ( buff_A + i*ldim_A + i )->real += *buff_sigma;
00784       }
00785     }
00786 
00787     break;
00788   }
00789 
00790   case FLA_DOUBLE_COMPLEX:
00791   {
00792     if ( datatype_sigma == FLA_DOUBLE_COMPLEX )
00793     {
00794       dcomplex *buff_A     = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( A );
00795       dcomplex *buff_sigma = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( sigma );
00796 
00797       for ( i = 0; i < min_m_n; i++ )
00798       {
00799         ( buff_A + i*ldim_A + i )->real += buff_sigma->real;
00800         ( buff_A + i*ldim_A + i )->imag += buff_sigma->imag;
00801       }
00802     }
00803     else
00804     {
00805       dcomplex *buff_A     = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( A );
00806       double   *buff_sigma = ( double   * ) FLA_DOUBLE_PTR( sigma );
00807 
00808       for ( i = 0; i < min_m_n; i++ )
00809       {
00810         ( buff_A + i*ldim_A + i )->real += *buff_sigma;
00811       }
00812     }
00813 
00814     break;
00815   }
00816 
00817   }
00818 
00819   return FLA_SUCCESS;
00820 }

FLA_Error FLA_Obj_shift_diagonal_check ( 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(), and FLA_Obj_is_real().

Referenced by FLA_Obj_shift_diagonal().

00036 {
00037   FLA_Error e_val;
00038 
00039   e_val = FLA_Check_floating_object( A );
00040   FLA_Check_error_code( e_val );
00041 
00042   e_val = FLA_Check_nonconstant_object( A );
00043   FLA_Check_error_code( e_val );
00044 
00045   if ( FLA_Obj_is_real( A ) )
00046   {
00047     e_val = FLA_Check_consistent_object_datatype( A, sigma );
00048     FLA_Check_error_code( e_val );
00049   }
00050   else
00051   {
00052     e_val = FLA_Check_identical_object_precision( A, sigma );
00053     FLA_Check_error_code( e_val );
00054   }
00055 
00056   e_val = FLA_Check_if_scalar( sigma );
00057   FLA_Check_error_code( e_val );
00058 
00059   return FLA_SUCCESS;
00060 }

void FLA_F2C() fla_obj_shift_diagonal_f ( F_INT *  sigma,
F_INT *  A,
F_INT *  IERROR 
)

References FLA_Obj_shift_diagonal().

00824 {
00825   *IERROR = FLA_Obj_shift_diagonal( *( ( FLA_Obj * ) sigma ), 
00826                                     *( ( FLA_Obj * ) A     ) );
00827 }

FLA_Error FLA_Obj_show ( char *  s1,
FLA_Obj  A,
char *  format,
char *  s2 
)

References FLA_Obj_datatype(), FLA_Obj_ldim(), FLA_Obj_length(), and FLA_Obj_width().

Referenced by fla_obj_show_f(), and FLASH_Obj_show().

00950 {
00951   FLA_Datatype datatype;
00952   dim_t        m, n, i, j, ldim;
00953 
00954   datatype = FLA_Obj_datatype( A );
00955   m        = FLA_Obj_length  ( A );
00956   n        = FLA_Obj_width   ( A );
00957   ldim     = FLA_Obj_ldim    ( A );
00958 
00959   printf( "%s\n", s1 );
00960 
00961   switch ( datatype ){
00962 
00963   case FLA_FLOAT:
00964   {
00965     float *buffer = ( float * ) FLA_FLOAT_PTR( A );
00966 
00967     for ( i = 0; i < m; i++ )
00968     {
00969       for ( j = 0; j < n; j++ )
00970       {
00971         printf( format, BUFFER( i, j, ldim ) );
00972         printf( " " );
00973       }
00974       printf( "\n" );
00975     }
00976     printf("%s\n", s2 );
00977     break;
00978   }
00979 
00980   case FLA_DOUBLE:
00981   {
00982     double *buffer = ( double * ) FLA_DOUBLE_PTR( A );
00983 
00984     for ( i = 0; i < m; i++ )
00985     {
00986       for ( j = 0; j < n; j++ )
00987       {
00988         printf( format, BUFFER( i, j, ldim ) );
00989         printf( " " );
00990       }
00991       printf( "\n" );
00992     }
00993     printf("%s\n", s2 );
00994     break;
00995   }
00996 
00997   case FLA_COMPLEX:
00998   {
00999     scomplex *buffer = ( scomplex * ) FLA_COMPLEX_PTR( A );
01000 
01001     for ( i = 0; i < m; i++ )
01002     {
01003       for ( j = 0; j < n; j++ )
01004       {
01005         printf( format, BUFFER(i,j,ldim).real, BUFFER(i,j,ldim).imag );
01006         printf( " " );
01007       }
01008       printf( "\n" );
01009     }
01010     printf("%s\n", s2 );
01011     break;
01012   }
01013 
01014   case FLA_DOUBLE_COMPLEX:
01015   {
01016     dcomplex *buffer = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( A );
01017 
01018     for ( i = 0; i < m; i++ )
01019     {
01020       for ( j = 0; j < n; j++ )
01021       {
01022         printf( format, BUFFER(i,j,ldim).real, BUFFER(i,j,ldim).imag );
01023         printf( " " );
01024       }
01025       printf( "\n" );
01026     }
01027     printf("%s\n", s2 );
01028     break;
01029   }
01030 
01031   case FLA_INT:
01032   {
01033     int *buffer = ( int * ) FLA_INT_PTR( A );
01034 
01035     for ( i = 0; i < m; i++ )
01036     {
01037       for ( j = 0; j < n; j++ )
01038       {
01039         printf( format, BUFFER( i, j, ldim ) );
01040         printf( " " );
01041       }
01042       printf( "\n" );
01043     }
01044     printf("%s\n", s2 );
01045     break;
01046   }
01047 
01048   }
01049 
01050   return FLA_SUCCESS;
01051 }

void FLA_F2C() fla_obj_show_f ( F_INT *  s1,
F_INT *  A,
F_INT *  format,
F_INT *  s2,
F_INT *  IERROR 
)

References FLA_Obj_show().

01055 {
01056   *IERROR = FLA_Obj_show(  ( ( char    * ) s1     ), 
01057                           *( ( FLA_Obj * ) A      ), 
01058                            ( ( char    * ) format ), 
01059                            ( ( char    * ) s2     ) );
01060 }

dim_t FLA_Obj_vector_dim ( FLA_Obj  obj  ) 

F_INT FLA_F2C() fla_obj_vector_dim_f ( F_INT *  obj  ) 

References FLA_Obj_vector_dim().

00618 {
00619   return FLA_Obj_vector_dim( *( ( FLA_Obj * ) obj ) );
00620 }

dim_t FLA_Obj_vector_inc ( FLA_Obj  obj  ) 

References FLA_Obj_view::base, and FLA_Obj_view::m.

Referenced by FLA_Apply_househ2_UT_opt(), FLA_Househ2_UT(), FLA_Househ2_UT_opt(), and fla_obj_vector_inc_f().

00629 {
00630   return ( obj.m == 1 ? (obj.base)->ldim : 1 );
00631 }

F_INT FLA_F2C() fla_obj_vector_inc_f ( F_INT *  obj  ) 

References FLA_Obj_vector_inc().

00634 {
00635   return FLA_Obj_vector_inc( *( ( FLA_Obj * ) obj ) );
00636 }

dim_t FLA_Obj_width ( FLA_Obj  obj  ) 

References FLA_Obj_view::n.

Referenced by FLA_Accum_T_UT_fc_opt_var1_dcomplex(), FLA_Accum_T_UT_fc_opt_var1_double(), FLA_Accum_T_UT_fc_opt_var1_float(), FLA_Accum_T_UT_fc_opt_var1_scomplex(), FLA_Accum_T_UT_unb_external(), FLA_Apply_househ2_UT_opt(), FLA_Apply_Q_blk_external(), FLA_Apply_Q_unb_external(), FLA_Apply_Q_UT_inc_internal_check(), FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var2(), FLA_Apply_Q_UT_UD_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var3(), FLA_Axpy_blk_var3(), FLA_Axpy_blk_var4(), FLA_Axpy_external(), FLA_Check_adjacent_objects_1x2(), FLA_Check_adjacent_objects_2x1(), FLA_Check_adjacent_objects_2x2(), FLA_Check_attempted_repart_1x2(), FLA_Check_attempted_repart_2x2(), FLA_Check_conformal_dims(), FLA_Check_equal_vector_lengths(), FLA_Check_hess_indices(), FLA_Check_householder_panel_dims(), FLA_Check_if_scalar(), FLA_Check_if_vector(), FLA_Check_matrix_matrix_dims(), FLA_Check_matrix_vector_dims(), FLA_Check_object_dims(), FLA_Check_object_width_equals(), FLA_Check_square(), FLA_Check_submatrix_dims_and_offset(), FLA_Check_sylv_matrix_dims(), FLA_Conjugate(), FLA_Conjugate_r(), FLA_Copy_blk_var3(), FLA_Copy_blk_var4(), FLA_Copy_external(), FLA_Copyr_external(), FLA_Copyt_external(), FLA_determine_matrix_size(), FLA_Gemm(), FLA_Gemm_external(), FLA_Gemm_hh_blk_var1(), FLA_Gemm_hh_blk_var2(), FLA_Gemm_hh_unb_var1(), FLA_Gemm_hh_unb_var2(), FLA_Gemm_hn_blk_var1(), FLA_Gemm_hn_blk_var2(), FLA_Gemm_hn_blk_var3(), FLA_Gemm_hn_blk_var4(), FLA_Gemm_hn_unb_var1(), FLA_Gemm_hn_unb_var2(), FLA_Gemm_hn_unb_var3(), FLA_Gemm_hn_unb_var4(), FLA_Gemm_ht_blk_var1(), FLA_Gemm_ht_blk_var2(), FLA_Gemm_ht_unb_var1(), FLA_Gemm_ht_unb_var2(), FLA_Gemm_nh_blk_var5(), FLA_Gemm_nh_blk_var6(), FLA_Gemm_nh_unb_var5(), FLA_Gemm_nh_unb_var6(), FLA_Gemm_nn_blk_var3(), FLA_Gemm_nn_blk_var4(), FLA_Gemm_nn_blk_var5(), FLA_Gemm_nn_blk_var6(), FLA_Gemm_nn_unb_var3(), FLA_Gemm_nn_unb_var4(), FLA_Gemm_nn_unb_var5(), FLA_Gemm_nn_unb_var6(), FLA_Gemm_nt_blk_var5(), FLA_Gemm_nt_blk_var6(), FLA_Gemm_nt_unb_var5(), FLA_Gemm_nt_unb_var6(), FLA_Gemm_th_blk_var1(), FLA_Gemm_th_blk_var2(), FLA_Gemm_th_unb_var1(), FLA_Gemm_th_unb_var2(), FLA_Gemm_tn_blk_var1(), FLA_Gemm_tn_blk_var2(), FLA_Gemm_tn_blk_var3(), FLA_Gemm_tn_blk_var4(), FLA_Gemm_tn_unb_var1(), FLA_Gemm_tn_unb_var2(), FLA_Gemm_tn_unb_var3(), FLA_Gemm_tn_unb_var4(), FLA_Gemm_tt_blk_var1(), FLA_Gemm_tt_blk_var2(), FLA_Gemm_tt_unb_var1(), FLA_Gemm_tt_unb_var2(), FLA_Gemv_c_blk_var1(), FLA_Gemv_c_blk_var2(), FLA_Gemv_external(), FLA_Gemv_n_blk_var5(), FLA_Gemv_n_blk_var6(), FLA_Gemv_t_blk_var1(), FLA_Gemv_t_blk_var2(), FLA_Gemvc_external(), FLA_Ger_external(), FLA_Gerc_external(), FLA_Hemm(), FLA_Hemm_external(), FLA_Hemm_ll_blk_var10(), FLA_Hemm_ll_blk_var9(), FLA_Hemm_ll_unb_var10(), FLA_Hemm_ll_unb_var9(), FLA_Hemm_lu_blk_var10(), FLA_Hemm_lu_blk_var9(), FLA_Hemm_lu_unb_var10(), FLA_Hemm_lu_unb_var9(), FLA_Her2k(), FLA_Her2k_external(), FLA_Her2k_lh_blk_var1(), FLA_Her2k_lh_blk_var2(), FLA_Her2k_lh_blk_var3(), FLA_Her2k_lh_blk_var4(), FLA_Her2k_lh_blk_var5(), FLA_Her2k_lh_blk_var6(), FLA_Her2k_lh_blk_var7(), FLA_Her2k_lh_blk_var8(), FLA_Her2k_lh_unb_var1(), FLA_Her2k_lh_unb_var2(), FLA_Her2k_lh_unb_var3(), FLA_Her2k_lh_unb_var4(), FLA_Her2k_lh_unb_var5(), FLA_Her2k_lh_unb_var6(), FLA_Her2k_lh_unb_var7(), FLA_Her2k_lh_unb_var8(), FLA_Her2k_ln_blk_var10(), FLA_Her2k_ln_blk_var9(), FLA_Her2k_ln_unb_var10(), FLA_Her2k_ln_unb_var9(), FLA_Her2k_uh_blk_var1(), FLA_Her2k_uh_blk_var2(), FLA_Her2k_uh_blk_var3(), FLA_Her2k_uh_blk_var4(), FLA_Her2k_uh_blk_var5(), FLA_Her2k_uh_blk_var6(), FLA_Her2k_uh_blk_var7(), FLA_Her2k_uh_blk_var8(), FLA_Her2k_uh_unb_var1(), FLA_Her2k_uh_unb_var2(), FLA_Her2k_uh_unb_var3(), FLA_Her2k_uh_unb_var4(), FLA_Her2k_uh_unb_var5(), FLA_Her2k_uh_unb_var6(), FLA_Her2k_uh_unb_var7(), FLA_Her2k_uh_unb_var8(), FLA_Her2k_un_blk_var10(), FLA_Her2k_un_blk_var9(), FLA_Her2k_un_unb_var10(), FLA_Her2k_un_unb_var9(), FLA_Herk(), FLA_Herk_external(), FLA_Herk_lh_blk_var1(), FLA_Herk_lh_blk_var2(), FLA_Herk_lh_blk_var3(), FLA_Herk_lh_blk_var4(), FLA_Herk_lh_unb_var1(), FLA_Herk_lh_unb_var2(), FLA_Herk_lh_unb_var3(), FLA_Herk_lh_unb_var4(), FLA_Herk_ln_blk_var5(), FLA_Herk_ln_blk_var6(), FLA_Herk_ln_unb_var5(), FLA_Herk_ln_unb_var6(), FLA_Herk_uh_blk_var1(), FLA_Herk_uh_blk_var2(), FLA_Herk_uh_blk_var3(), FLA_Herk_uh_blk_var4(), FLA_Herk_uh_unb_var1(), FLA_Herk_uh_unb_var2(), FLA_Herk_uh_unb_var3(), FLA_Herk_uh_unb_var4(), FLA_Herk_un_blk_var5(), FLA_Herk_un_blk_var6(), FLA_Herk_un_unb_var5(), FLA_Herk_un_unb_var6(), FLA_Hermitianize(), FLA_Hess_blk_external(), FLA_Hess_check(), FLA_Hess_unb_external(), FLA_Inv_scal_external(), FLA_Inv_scalc_external(), FLA_LQ_blk_external(), FLA_LQ_unb_external(), FLA_LQ_UT(), FLA_LQ_UT_blk_external(), FLA_LQ_UT_recover_tau(), FLA_LQ_UT_unb_external(), FLA_LU_nopiv_blk_external(), FLA_LU_nopiv_blk_var1(), FLA_LU_nopiv_blk_var2(), FLA_LU_nopiv_blk_var3(), FLA_LU_nopiv_blk_var4(), FLA_LU_nopiv_blk_var5(), FLA_LU_nopiv_unb_external(), FLA_LU_nopiv_unb_var1(), FLA_LU_nopiv_unb_var2(), FLA_LU_nopiv_unb_var3(), FLA_LU_nopiv_unb_var4(), FLA_LU_nopiv_unb_var5(), FLA_LU_piv_blk_external(), FLA_LU_piv_blk_var3(), FLA_LU_piv_blk_var4(), FLA_LU_piv_blk_var5(), FLA_LU_piv_unb_external(), FLA_LU_piv_unb_var3(), FLA_LU_piv_unb_var3b(), FLA_LU_piv_unb_var4(), FLA_LU_piv_unb_var5(), FLA_Max_abs_value(), FLA_Max_elemwise_diff(), FLA_Norm1(), FLA_Obj_create_conf_to(), FLA_Obj_equals(), FLA_Obj_has_zero_dim(), FLA_Obj_is_conformal_to(), FLA_Obj_is_scalar(), FLA_Obj_is_vector(), FLA_Obj_set_to_scalar(), FLA_Obj_show(), fla_obj_width_f(), FLA_QR_blk_external(), FLA_QR_unb_external(), FLA_QR_UT_Accum_T_opt_var1_dcomplex(), FLA_QR_UT_Accum_T_opt_var1_double(), FLA_QR_UT_Accum_T_opt_var1_float(), FLA_QR_UT_Accum_T_opt_var1_scomplex(), FLA_QR_UT_blk_external(), FLA_QR_UT_blk_var2(), FLA_QR_UT_copy_internal_check(), FLA_QR_UT_create_T(), FLA_QR_UT_internal_check(), FLA_QR_UT_recover_tau(), FLA_QR_UT_UD_blk_var1(), FLA_QR_UT_unb_external(), FLA_Random_matrix(), FLA_Random_tri_matrix(), FLA_SA_Apply_pivots(), FLA_Scal_external(), FLA_Scalc_external(), FLA_Scalr_external(), FLA_Shift_pivots_to(), FLA_Swap_external(), FLA_Swap_rows(), FLA_Swap_t_blk_var1(), FLA_Swapt_external(), FLA_Sylv_unb_external(), FLA_Symm(), FLA_Symm_external(), FLA_Symm_ll_blk_var10(), FLA_Symm_ll_blk_var9(), FLA_Symm_ll_unb_var10(), FLA_Symm_ll_unb_var9(), FLA_Symm_lu_blk_var10(), FLA_Symm_lu_blk_var9(), FLA_Symm_lu_unb_var10(), FLA_Symm_lu_unb_var9(), FLA_Symmetrize(), FLA_Syr2k(), FLA_Syr2k_external(), FLA_Syr2k_ln_blk_var10(), FLA_Syr2k_ln_blk_var9(), FLA_Syr2k_ln_unb_var10(), FLA_Syr2k_ln_unb_var9(), FLA_Syr2k_lt_blk_var1(), FLA_Syr2k_lt_blk_var2(), FLA_Syr2k_lt_blk_var3(), FLA_Syr2k_lt_blk_var4(), FLA_Syr2k_lt_blk_var5(), FLA_Syr2k_lt_blk_var6(), FLA_Syr2k_lt_blk_var7(), FLA_Syr2k_lt_blk_var8(), FLA_Syr2k_lt_unb_var1(), FLA_Syr2k_lt_unb_var2(), FLA_Syr2k_lt_unb_var3(), FLA_Syr2k_lt_unb_var4(), FLA_Syr2k_lt_unb_var5(), FLA_Syr2k_lt_unb_var6(), FLA_Syr2k_lt_unb_var7(), FLA_Syr2k_lt_unb_var8(), FLA_Syr2k_un_blk_var10(), FLA_Syr2k_un_blk_var9(), FLA_Syr2k_un_unb_var10(), FLA_Syr2k_un_unb_var9(), FLA_Syr2k_ut_blk_var1(), FLA_Syr2k_ut_blk_var2(), FLA_Syr2k_ut_blk_var3(), FLA_Syr2k_ut_blk_var4(), FLA_Syr2k_ut_blk_var5(), FLA_Syr2k_ut_blk_var6(), FLA_Syr2k_ut_blk_var7(), FLA_Syr2k_ut_blk_var8(), FLA_Syr2k_ut_unb_var1(), FLA_Syr2k_ut_unb_var2(), FLA_Syr2k_ut_unb_var3(), FLA_Syr2k_ut_unb_var4(), FLA_Syr2k_ut_unb_var5(), FLA_Syr2k_ut_unb_var6(), FLA_Syr2k_ut_unb_var7(), FLA_Syr2k_ut_unb_var8(), FLA_Syr_external(), FLA_Syrk(), FLA_Syrk_external(), FLA_Syrk_ln_blk_var5(), FLA_Syrk_ln_blk_var6(), FLA_Syrk_ln_unb_var5(), FLA_Syrk_ln_unb_var6(), FLA_Syrk_lt_blk_var1(), FLA_Syrk_lt_blk_var2(), FLA_Syrk_lt_blk_var3(), FLA_Syrk_lt_blk_var4(), FLA_Syrk_lt_unb_var1(), FLA_Syrk_lt_unb_var2(), FLA_Syrk_lt_unb_var3(), FLA_Syrk_lt_unb_var4(), FLA_Syrk_un_blk_var5(), FLA_Syrk_un_blk_var6(), FLA_Syrk_un_unb_var5(), FLA_Syrk_un_unb_var6(), FLA_Syrk_ut_blk_var1(), FLA_Syrk_ut_blk_var2(), FLA_Syrk_ut_blk_var3(), FLA_Syrk_ut_blk_var4(), FLA_Syrk_ut_unb_var1(), FLA_Syrk_ut_unb_var2(), FLA_Syrk_ut_unb_var3(), FLA_Syrk_ut_unb_var4(), FLA_Triangularize(), FLA_Trmm(), FLA_Trmm_external(), FLA_Trmm_llh_blk_var3(), FLA_Trmm_llh_blk_var4(), FLA_Trmm_llh_unb_var3(), FLA_Trmm_llh_unb_var4(), FLA_Trmm_lln_blk_var3(), FLA_Trmm_lln_blk_var4(), FLA_Trmm_lln_unb_var3(), FLA_Trmm_lln_unb_var4(), FLA_Trmm_llt_blk_var3(), FLA_Trmm_llt_blk_var4(), FLA_Trmm_llt_unb_var3(), FLA_Trmm_llt_unb_var4(), FLA_Trmm_luh_blk_var3(), FLA_Trmm_luh_blk_var4(), FLA_Trmm_luh_unb_var3(), FLA_Trmm_luh_unb_var4(), FLA_Trmm_lun_blk_var3(), FLA_Trmm_lun_blk_var4(), FLA_Trmm_lun_unb_var3(), FLA_Trmm_lun_unb_var4(), FLA_Trmm_lut_blk_var3(), FLA_Trmm_lut_blk_var4(), FLA_Trmm_lut_unb_var3(), FLA_Trmm_lut_unb_var4(), FLA_Trsm(), FLA_Trsm_external(), FLA_Trsm_llh_blk_var3(), FLA_Trsm_llh_blk_var4(), FLA_Trsm_llh_unb_var3(), FLA_Trsm_llh_unb_var4(), FLA_Trsm_lln_blk_var3(), FLA_Trsm_lln_blk_var4(), FLA_Trsm_lln_unb_var3(), FLA_Trsm_lln_unb_var4(), FLA_Trsm_llt_blk_var3(), FLA_Trsm_llt_blk_var4(), FLA_Trsm_llt_unb_var3(), FLA_Trsm_llt_unb_var4(), FLA_Trsm_luh_blk_var3(), FLA_Trsm_luh_blk_var4(), FLA_Trsm_luh_unb_var3(), FLA_Trsm_luh_unb_var4(), FLA_Trsm_lun_blk_var3(), FLA_Trsm_lun_blk_var4(), FLA_Trsm_lun_unb_var3(), FLA_Trsm_lun_unb_var4(), FLA_Trsm_lut_blk_var3(), FLA_Trsm_lut_blk_var4(), FLA_Trsm_lut_unb_var3(), FLA_Trsm_lut_unb_var4(), FLASH_Apply_Q_UT_inc_create_workspace(), FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_FS_incpiv_aux1(), FLASH_LU_incpiv_create_hier_matrices(), FLASH_LU_incpiv_var1(), FLASH_LU_incpiv_var2(), FLASH_Obj_attach_buffer_hierarchy(), FLASH_Obj_blocksizes(), FLASH_Obj_create_hier_conf_to_flat(), FLASH_Obj_create_hier_conf_to_flat_ext(), FLASH_Obj_create_hierarchy(), FLASH_Obj_free_hierarchy(), FLASH_Obj_scalar_width(), FLASH_print_struct(), FLASH_print_struct_helper(), FLASH_QR_UT_inc_create_hier_matrices(), FLASH_SA_FS(), and FLASH_Trsm_piv().

00597 {
00598   return obj.n;
00599 }

F_INT FLA_F2C() fla_obj_width_f ( F_INT *  obj  ) 

References FLA_Obj_width().

00602 {
00603   return FLA_Obj_width( *( ( FLA_Obj * ) obj ) );
00604 }

void FLA_Param_map_to_blas_diag ( FLA_Diag  diag,
void *  blas_diag 
)

References CblasNonUnit, and CblasUnit.

Referenced by FLA_Trinv_blk_external(), FLA_Trinv_unb_external(), FLA_Trmm_external(), FLA_Trmv_external(), FLA_Trsm_external(), and FLA_Trsv_external().

00134 {
00135     if ( diag == FLA_NONUNIT_DIAG )
00136     {
00137 #ifdef FLA_ENABLE_CBLAS_INTERFACE
00138         *( ( CBLAS_DIAG* ) blas_diag ) = CblasNonUnit;
00139 #else
00140         *( ( char*       ) blas_diag ) = 'N';
00141 #endif
00142     }
00143     else
00144     {
00145 #ifdef FLA_ENABLE_CBLAS_INTERFACE
00146         *( ( CBLAS_DIAG* ) blas_diag ) = CblasUnit;
00147 #else
00148         *( ( char*       ) blas_diag ) = 'U';
00149 #endif
00150     }
00151 }

void FLA_Param_map_to_blas_side ( FLA_Uplo  side,
void *  blas_side 
)

References CblasLeft, and CblasRight.

Referenced by FLA_Apply_Q_blk_external(), FLA_Apply_Q_unb_external(), FLA_Hemm_external(), FLA_Symm_external(), FLA_Trmm_external(), and FLA_Trsm_external().

00108 {
00109     if ( side == FLA_LEFT )
00110     {
00111 #ifdef FLA_ENABLE_CBLAS_INTERFACE
00112         *( ( CBLAS_SIDE* ) blas_side ) = CblasLeft;
00113 #else
00114         *( ( char*       ) blas_side ) = 'L';
00115 #endif
00116     }
00117     else
00118     {
00119 #ifdef FLA_ENABLE_CBLAS_INTERFACE
00120         *( ( CBLAS_SIDE* ) blas_side ) = CblasRight;
00121 #else
00122         *( ( char*       ) blas_side ) = 'R';
00123 #endif
00124     }
00125 }

void FLA_Param_map_to_blas_trans ( FLA_Trans  trans,
void *  blas_trans 
)

References CblasConjTrans, CblasNoTrans, and CblasTrans.

Referenced by FLA_Apply_Q_blk_external(), FLA_Apply_Q_unb_external(), FLA_Gemm_external(), FLA_Gemv_external(), FLA_Gemvc_external(), FLA_Her2k_external(), FLA_Herk_external(), FLA_Sylv_unb_external(), FLA_Syr2k_external(), FLA_Syrk_external(), FLA_Trmm_external(), FLA_Trmv_external(), FLA_Trsm_external(), and FLA_Trsv_external().

00043 {
00044     if ( trans == FLA_NO_TRANSPOSE )
00045     {
00046 #ifdef FLA_ENABLE_CBLAS_INTERFACE
00047         *( ( CBLAS_TRANSPOSE* ) blas_trans ) = CblasNoTrans;
00048 #else
00049         *( ( char*            ) blas_trans ) = 'N';
00050 #endif
00051     }
00052     else if ( trans == FLA_TRANSPOSE )
00053     {
00054 #ifdef FLA_ENABLE_CBLAS_INTERFACE
00055         *( ( CBLAS_TRANSPOSE* ) blas_trans ) = CblasTrans;
00056 #else
00057         *( ( char*            ) blas_trans ) = 'T';
00058 #endif
00059     }
00060     else if ( trans == FLA_CONJ_TRANSPOSE )
00061     {
00062 #ifdef FLA_ENABLE_CBLAS_INTERFACE
00063         *( ( CBLAS_TRANSPOSE* ) blas_trans ) = CblasConjTrans;
00064 #else
00065         *( ( char*            ) blas_trans ) = 'C';
00066 #endif
00067     }
00068     else
00069     {
00070         FLA_Check_error_code( FLA_NOT_YET_IMPLEMENTED );
00071     }
00072 }

void FLA_Param_map_to_blas_uplo ( FLA_Uplo  uplo,
void *  blas_uplo 
)

References CblasLower, and CblasUpper.

Referenced by FLA_Chol_blk_external(), FLA_Chol_unb_external(), FLA_Hemm_external(), FLA_Hemv_external(), FLA_Hemvc_external(), FLA_Her2_external(), FLA_Her2c_external(), FLA_Her2k_external(), FLA_Her_external(), FLA_Herc_external(), FLA_Herk_external(), FLA_Symm_external(), FLA_Symv_external(), FLA_Syr2_external(), FLA_Syr2k_external(), FLA_Syr_external(), FLA_Syrk_external(), FLA_Trinv_blk_external(), FLA_Trinv_unb_external(), FLA_Trmm_external(), FLA_Trmv_external(), FLA_Trsm_external(), FLA_Trsv_external(), FLA_Ttmm_blk_external(), and FLA_Ttmm_unb_external().

00082 {
00083     if ( uplo == FLA_LOWER_TRIANGULAR )
00084     {
00085 #ifdef FLA_ENABLE_CBLAS_INTERFACE
00086         *( ( CBLAS_UPLO* ) blas_uplo ) = CblasLower;
00087 #else
00088         *( ( char*       ) blas_uplo ) = 'L';
00089 #endif
00090     }
00091     else
00092     {
00093 #ifdef FLA_ENABLE_CBLAS_INTERFACE
00094         *( ( CBLAS_UPLO* ) blas_uplo ) = CblasUpper;
00095 #else
00096         *( ( char*       ) blas_uplo ) = 'U';
00097 #endif
00098     }
00099 }

void FLA_Param_map_to_lapack_direct ( FLA_Direct  direct,
void *  lapack_direct 
)

Referenced by FLA_Accum_T_UT_unb_external().

00160 {
00161     if ( direct == FLA_FORWARD )
00162     {
00163         *( ( char* ) lapack_direct ) = 'F';
00164     }
00165     else // direct == FLA_BACKWARD
00166     {
00167         *( ( char* ) lapack_direct ) = 'B';
00168     }
00169 }

void FLA_Param_map_to_lapack_storev ( FLA_Store  storev,
void *  lapack_storev 
)

Referenced by FLA_Accum_T_UT_unb_external().

00178 {
00179     if ( storev == FLA_COLUMNWISE )
00180     {
00181         *( ( char* ) lapack_storev ) = 'C';
00182     }
00183     else // storev == FLA_ROWWISE
00184     {
00185         *( ( char* ) lapack_storev ) = 'R';
00186     }
00187 }

FLA_Error FLA_Part_1x2 ( FLA_Obj  A,
FLA_Obj A1,
FLA_Obj A2,
dim_t  nb,
FLA_Side  side 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Part_1x2_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var2(), FLA_Apply_Q_UT_UD_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var3(), FLA_Axpy_blk_var3(), FLA_Axpy_blk_var4(), FLA_Copy_blk_var3(), FLA_Copy_blk_var4(), FLA_Gemm_hh_blk_var1(), FLA_Gemm_hh_blk_var2(), FLA_Gemm_hh_blk_var3(), FLA_Gemm_hh_blk_var4(), FLA_Gemm_hh_blk_var5(), FLA_Gemm_hh_blk_var6(), FLA_Gemm_hh_unb_var1(), FLA_Gemm_hh_unb_var2(), FLA_Gemm_hh_unb_var3(), FLA_Gemm_hh_unb_var4(), FLA_Gemm_hh_unb_var5(), FLA_Gemm_hh_unb_var6(), FLA_Gemm_hn_blk_var1(), FLA_Gemm_hn_blk_var2(), FLA_Gemm_hn_blk_var3(), FLA_Gemm_hn_blk_var4(), FLA_Gemm_hn_unb_var1(), FLA_Gemm_hn_unb_var2(), FLA_Gemm_hn_unb_var3(), FLA_Gemm_hn_unb_var4(), FLA_Gemm_ht_blk_var1(), FLA_Gemm_ht_blk_var2(), FLA_Gemm_ht_blk_var3(), FLA_Gemm_ht_blk_var4(), FLA_Gemm_ht_blk_var5(), FLA_Gemm_ht_blk_var6(), FLA_Gemm_ht_unb_var1(), FLA_Gemm_ht_unb_var2(), FLA_Gemm_ht_unb_var3(), FLA_Gemm_ht_unb_var4(), FLA_Gemm_ht_unb_var5(), FLA_Gemm_ht_unb_var6(), FLA_Gemm_nh_blk_var3(), FLA_Gemm_nh_blk_var4(), FLA_Gemm_nh_blk_var5(), FLA_Gemm_nh_blk_var6(), FLA_Gemm_nh_unb_var3(), FLA_Gemm_nh_unb_var4(), FLA_Gemm_nh_unb_var5(), FLA_Gemm_nh_unb_var6(), FLA_Gemm_nn_blk_var3(), FLA_Gemm_nn_blk_var4(), FLA_Gemm_nn_blk_var5(), FLA_Gemm_nn_blk_var6(), FLA_Gemm_nn_unb_var3(), FLA_Gemm_nn_unb_var4(), FLA_Gemm_nn_unb_var5(), FLA_Gemm_nn_unb_var6(), FLA_Gemm_nt_blk_var3(), FLA_Gemm_nt_blk_var4(), FLA_Gemm_nt_blk_var5(), FLA_Gemm_nt_blk_var6(), FLA_Gemm_nt_unb_var3(), FLA_Gemm_nt_unb_var4(), FLA_Gemm_nt_unb_var5(), FLA_Gemm_nt_unb_var6(), FLA_Gemm_th_blk_var1(), FLA_Gemm_th_blk_var2(), FLA_Gemm_th_blk_var3(), FLA_Gemm_th_blk_var4(), FLA_Gemm_th_blk_var5(), FLA_Gemm_th_blk_var6(), FLA_Gemm_th_unb_var1(), FLA_Gemm_th_unb_var2(), FLA_Gemm_th_unb_var3(), FLA_Gemm_th_unb_var4(), FLA_Gemm_th_unb_var5(), FLA_Gemm_th_unb_var6(), FLA_Gemm_tn_blk_var1(), FLA_Gemm_tn_blk_var2(), FLA_Gemm_tn_blk_var3(), FLA_Gemm_tn_blk_var4(), FLA_Gemm_tn_unb_var1(), FLA_Gemm_tn_unb_var2(), FLA_Gemm_tn_unb_var3(), FLA_Gemm_tn_unb_var4(), FLA_Gemm_tt_blk_var1(), FLA_Gemm_tt_blk_var2(), FLA_Gemm_tt_blk_var3(), FLA_Gemm_tt_blk_var4(), FLA_Gemm_tt_blk_var5(), FLA_Gemm_tt_blk_var6(), FLA_Gemm_tt_unb_var1(), FLA_Gemm_tt_unb_var2(), FLA_Gemm_tt_unb_var3(), FLA_Gemm_tt_unb_var4(), FLA_Gemm_tt_unb_var5(), FLA_Gemm_tt_unb_var6(), FLA_Gemv_c_blk_var1(), FLA_Gemv_c_blk_var2(), FLA_Gemv_n_blk_var5(), FLA_Gemv_n_blk_var6(), FLA_Gemv_t_blk_var1(), FLA_Gemv_t_blk_var2(), FLA_Hemm_ll_blk_var10(), FLA_Hemm_ll_blk_var9(), FLA_Hemm_ll_unb_var10(), FLA_Hemm_ll_unb_var9(), FLA_Hemm_lu_blk_var10(), FLA_Hemm_lu_blk_var9(), FLA_Hemm_lu_unb_var10(), FLA_Hemm_lu_unb_var9(), FLA_Hemm_rl_blk_var1(), FLA_Hemm_rl_blk_var2(), FLA_Hemm_rl_blk_var3(), FLA_Hemm_rl_blk_var4(), FLA_Hemm_rl_blk_var5(), FLA_Hemm_rl_blk_var6(), FLA_Hemm_rl_blk_var7(), FLA_Hemm_rl_blk_var8(), FLA_Hemm_rl_unb_var1(), FLA_Hemm_rl_unb_var2(), FLA_Hemm_rl_unb_var3(), FLA_Hemm_rl_unb_var4(), FLA_Hemm_rl_unb_var5(), FLA_Hemm_rl_unb_var6(), FLA_Hemm_rl_unb_var7(), FLA_Hemm_rl_unb_var8(), FLA_Hemm_ru_blk_var1(), FLA_Hemm_ru_blk_var2(), FLA_Hemm_ru_blk_var3(), FLA_Hemm_ru_blk_var4(), FLA_Hemm_ru_blk_var5(), FLA_Hemm_ru_blk_var6(), FLA_Hemm_ru_blk_var7(), FLA_Hemm_ru_blk_var8(), FLA_Hemm_ru_unb_var1(), FLA_Hemm_ru_unb_var2(), FLA_Hemm_ru_unb_var3(), FLA_Hemm_ru_unb_var4(), FLA_Hemm_ru_unb_var5(), FLA_Hemm_ru_unb_var6(), FLA_Hemm_ru_unb_var7(), FLA_Hemm_ru_unb_var8(), FLA_Her2k_lh_blk_var1(), FLA_Her2k_lh_blk_var2(), FLA_Her2k_lh_blk_var3(), FLA_Her2k_lh_blk_var4(), FLA_Her2k_lh_blk_var5(), FLA_Her2k_lh_blk_var6(), FLA_Her2k_lh_blk_var7(), FLA_Her2k_lh_blk_var8(), FLA_Her2k_lh_unb_var1(), FLA_Her2k_lh_unb_var2(), FLA_Her2k_lh_unb_var3(), FLA_Her2k_lh_unb_var4(), FLA_Her2k_lh_unb_var5(), FLA_Her2k_lh_unb_var6(), FLA_Her2k_lh_unb_var7(), FLA_Her2k_lh_unb_var8(), FLA_Her2k_ln_blk_var10(), FLA_Her2k_ln_blk_var9(), FLA_Her2k_ln_unb_var10(), FLA_Her2k_ln_unb_var9(), FLA_Her2k_uh_blk_var1(), FLA_Her2k_uh_blk_var2(), FLA_Her2k_uh_blk_var3(), FLA_Her2k_uh_blk_var4(), FLA_Her2k_uh_blk_var5(), FLA_Her2k_uh_blk_var6(), FLA_Her2k_uh_blk_var7(), FLA_Her2k_uh_blk_var8(), FLA_Her2k_uh_unb_var1(), FLA_Her2k_uh_unb_var2(), FLA_Her2k_uh_unb_var3(), FLA_Her2k_uh_unb_var4(), FLA_Her2k_uh_unb_var5(), FLA_Her2k_uh_unb_var6(), FLA_Her2k_uh_unb_var7(), FLA_Her2k_uh_unb_var8(), FLA_Her2k_un_blk_var10(), FLA_Her2k_un_blk_var9(), FLA_Her2k_un_unb_var10(), FLA_Her2k_un_unb_var9(), FLA_Herk_lh_blk_var1(), FLA_Herk_lh_blk_var2(), FLA_Herk_lh_blk_var3(), FLA_Herk_lh_blk_var4(), FLA_Herk_lh_unb_var1(), FLA_Herk_lh_unb_var2(), FLA_Herk_lh_unb_var3(), FLA_Herk_lh_unb_var4(), FLA_Herk_ln_blk_var5(), FLA_Herk_ln_blk_var6(), FLA_Herk_ln_unb_var5(), FLA_Herk_ln_unb_var6(), FLA_Herk_uh_blk_var1(), FLA_Herk_uh_blk_var2(), FLA_Herk_uh_blk_var3(), FLA_Herk_uh_blk_var4(), FLA_Herk_uh_unb_var1(), FLA_Herk_uh_unb_var2(), FLA_Herk_uh_unb_var3(), FLA_Herk_uh_unb_var4(), FLA_Herk_un_blk_var5(), FLA_Herk_un_blk_var6(), FLA_Herk_un_unb_var5(), FLA_Herk_un_unb_var6(), FLA_LQ_UT_blk_var2(), FLA_LU_piv_blk_var3(), FLA_LU_piv_unb_var3(), FLA_Norm1(), FLA_QR_UT_blk_var2(), FLA_QR_UT_inc_blk_var2(), FLA_QR_UT_inc_create_U_panel(), FLA_QR_UT_recover_tau(), FLA_QR_UT_UD_Accum_T_unb_var1(), FLA_QR_UT_UD_blk_var1(), FLA_Repart_1x2_to_1x3(), FLA_Repart_2x2_to_3x3(), FLA_SA_FS_blk(), FLA_SA_LU_blk(), FLA_Swap_t_blk_var1(), FLA_Swap_t_blk_var2(), FLA_Sylv_nn_blk_var17(), FLA_Sylv_nn_blk_var18(), FLA_Sylv_nt_blk_var17(), FLA_Sylv_nt_blk_var18(), FLA_Sylv_tn_blk_var17(), FLA_Sylv_tn_blk_var18(), FLA_Sylv_tt_blk_var17(), FLA_Sylv_tt_blk_var18(), FLA_Symm_ll_blk_var10(), FLA_Symm_ll_blk_var9(), FLA_Symm_ll_unb_var10(), FLA_Symm_ll_unb_var9(), FLA_Symm_lu_blk_var10(), FLA_Symm_lu_blk_var9(), FLA_Symm_lu_unb_var10(), FLA_Symm_lu_unb_var9(), FLA_Symm_rl_blk_var1(), FLA_Symm_rl_blk_var2(), FLA_Symm_rl_blk_var3(), FLA_Symm_rl_blk_var4(), FLA_Symm_rl_blk_var5(), FLA_Symm_rl_blk_var6(), FLA_Symm_rl_blk_var7(), FLA_Symm_rl_blk_var8(), FLA_Symm_rl_unb_var1(), FLA_Symm_rl_unb_var2(), FLA_Symm_rl_unb_var3(), FLA_Symm_rl_unb_var4(), FLA_Symm_rl_unb_var5(), FLA_Symm_rl_unb_var6(), FLA_Symm_rl_unb_var7(), FLA_Symm_rl_unb_var8(), FLA_Symm_ru_blk_var1(), FLA_Symm_ru_blk_var2(), FLA_Symm_ru_blk_var3(), FLA_Symm_ru_blk_var4(), FLA_Symm_ru_blk_var5(), FLA_Symm_ru_blk_var6(), FLA_Symm_ru_blk_var7(), FLA_Symm_ru_blk_var8(), FLA_Symm_ru_unb_var1(), FLA_Symm_ru_unb_var2(), FLA_Symm_ru_unb_var3(), FLA_Symm_ru_unb_var4(), FLA_Symm_ru_unb_var5(), FLA_Symm_ru_unb_var6(), FLA_Symm_ru_unb_var7(), FLA_Symm_ru_unb_var8(), FLA_Syr2k_ln_blk_var10(), FLA_Syr2k_ln_blk_var9(), FLA_Syr2k_ln_unb_var10(), FLA_Syr2k_ln_unb_var9(), FLA_Syr2k_lt_blk_var1(), FLA_Syr2k_lt_blk_var2(), FLA_Syr2k_lt_blk_var3(), FLA_Syr2k_lt_blk_var4(), FLA_Syr2k_lt_blk_var5(), FLA_Syr2k_lt_blk_var6(), FLA_Syr2k_lt_blk_var7(), FLA_Syr2k_lt_blk_var8(), FLA_Syr2k_lt_unb_var1(), FLA_Syr2k_lt_unb_var2(), FLA_Syr2k_lt_unb_var3(), FLA_Syr2k_lt_unb_var4(), FLA_Syr2k_lt_unb_var5(), FLA_Syr2k_lt_unb_var6(), FLA_Syr2k_lt_unb_var7(), FLA_Syr2k_lt_unb_var8(), FLA_Syr2k_un_blk_var10(), FLA_Syr2k_un_blk_var9(), FLA_Syr2k_un_unb_var10(), FLA_Syr2k_un_unb_var9(), FLA_Syr2k_ut_blk_var1(), FLA_Syr2k_ut_blk_var2(), FLA_Syr2k_ut_blk_var3(), FLA_Syr2k_ut_blk_var4(), FLA_Syr2k_ut_blk_var5(), FLA_Syr2k_ut_blk_var6(), FLA_Syr2k_ut_blk_var7(), FLA_Syr2k_ut_blk_var8(), FLA_Syr2k_ut_unb_var1(), FLA_Syr2k_ut_unb_var2(), FLA_Syr2k_ut_unb_var3(), FLA_Syr2k_ut_unb_var4(), FLA_Syr2k_ut_unb_var5(), FLA_Syr2k_ut_unb_var6(), FLA_Syr2k_ut_unb_var7(), FLA_Syr2k_ut_unb_var8(), FLA_Syrk_ln_blk_var5(), FLA_Syrk_ln_blk_var6(), FLA_Syrk_ln_unb_var5(), FLA_Syrk_ln_unb_var6(), FLA_Syrk_lt_blk_var1(), FLA_Syrk_lt_blk_var2(), FLA_Syrk_lt_blk_var3(), FLA_Syrk_lt_blk_var4(), FLA_Syrk_lt_unb_var1(), FLA_Syrk_lt_unb_var2(), FLA_Syrk_lt_unb_var3(), FLA_Syrk_lt_unb_var4(), FLA_Syrk_un_blk_var5(), FLA_Syrk_un_blk_var6(), FLA_Syrk_un_unb_var5(), FLA_Syrk_un_unb_var6(), FLA_Syrk_ut_blk_var1(), FLA_Syrk_ut_blk_var2(), FLA_Syrk_ut_blk_var3(), FLA_Syrk_ut_blk_var4(), FLA_Syrk_ut_unb_var1(), FLA_Syrk_ut_unb_var2(), FLA_Syrk_ut_unb_var3(), FLA_Syrk_ut_unb_var4(), FLA_Trmm_llh_blk_var3(), FLA_Trmm_llh_blk_var4(), FLA_Trmm_llh_unb_var3(), FLA_Trmm_llh_unb_var4(), FLA_Trmm_lln_blk_var3(), FLA_Trmm_lln_blk_var4(), FLA_Trmm_lln_unb_var3(), FLA_Trmm_lln_unb_var4(), FLA_Trmm_llt_blk_var3(), FLA_Trmm_llt_blk_var4(), FLA_Trmm_llt_unb_var3(), FLA_Trmm_llt_unb_var4(), FLA_Trmm_luh_blk_var3(), FLA_Trmm_luh_blk_var4(), FLA_Trmm_luh_unb_var3(), FLA_Trmm_luh_unb_var4(), FLA_Trmm_lun_blk_var3(), FLA_Trmm_lun_blk_var4(), FLA_Trmm_lun_unb_var3(), FLA_Trmm_lun_unb_var4(), FLA_Trmm_lut_blk_var3(), FLA_Trmm_lut_blk_var4(), FLA_Trmm_lut_unb_var3(), FLA_Trmm_lut_unb_var4(), FLA_Trmm_rlh_blk_var1(), FLA_Trmm_rlh_blk_var2(), FLA_Trmm_rlh_unb_var1(), FLA_Trmm_rlh_unb_var2(), FLA_Trmm_rln_blk_var1(), FLA_Trmm_rln_blk_var2(), FLA_Trmm_rln_unb_var1(), FLA_Trmm_rln_unb_var2(), FLA_Trmm_rlt_blk_var1(), FLA_Trmm_rlt_blk_var2(), FLA_Trmm_rlt_unb_var1(), FLA_Trmm_rlt_unb_var2(), FLA_Trmm_ruh_blk_var1(), FLA_Trmm_ruh_blk_var2(), FLA_Trmm_ruh_unb_var1(), FLA_Trmm_ruh_unb_var2(), FLA_Trmm_run_blk_var1(), FLA_Trmm_run_blk_var2(), FLA_Trmm_run_unb_var1(), FLA_Trmm_run_unb_var2(), FLA_Trmm_rut_blk_var1(), FLA_Trmm_rut_blk_var2(), FLA_Trmm_rut_unb_var1(), FLA_Trmm_rut_unb_var2(), FLA_Trsm_llh_blk_var3(), FLA_Trsm_llh_blk_var4(), FLA_Trsm_llh_unb_var3(), FLA_Trsm_llh_unb_var4(), FLA_Trsm_lln_blk_var3(), FLA_Trsm_lln_blk_var4(), FLA_Trsm_lln_unb_var3(), FLA_Trsm_lln_unb_var4(), FLA_Trsm_llt_blk_var3(), FLA_Trsm_llt_blk_var4(), FLA_Trsm_llt_unb_var3(), FLA_Trsm_llt_unb_var4(), FLA_Trsm_luh_blk_var3(), FLA_Trsm_luh_blk_var4(), FLA_Trsm_luh_unb_var3(), FLA_Trsm_luh_unb_var4(), FLA_Trsm_lun_blk_var3(), FLA_Trsm_lun_blk_var4(), FLA_Trsm_lun_unb_var3(), FLA_Trsm_lun_unb_var4(), FLA_Trsm_lut_blk_var3(), FLA_Trsm_lut_blk_var4(), FLA_Trsm_lut_unb_var3(), FLA_Trsm_lut_unb_var4(), FLA_Trsm_rlh_blk_var1(), FLA_Trsm_rlh_blk_var2(), FLA_Trsm_rlh_unb_var1(), FLA_Trsm_rlh_unb_var2(), FLA_Trsm_rln_blk_var1(), FLA_Trsm_rln_blk_var2(), FLA_Trsm_rln_unb_var1(), FLA_Trsm_rln_unb_var2(), FLA_Trsm_rlt_blk_var1(), FLA_Trsm_rlt_blk_var2(), FLA_Trsm_rlt_unb_var1(), FLA_Trsm_rlt_unb_var2(), FLA_Trsm_ruh_blk_var1(), FLA_Trsm_ruh_blk_var2(), FLA_Trsm_ruh_unb_var1(), FLA_Trsm_ruh_unb_var2(), FLA_Trsm_run_blk_var1(), FLA_Trsm_run_blk_var2(), FLA_Trsm_run_unb_var1(), FLA_Trsm_run_unb_var2(), FLA_Trsm_rut_blk_var1(), FLA_Trsm_rut_blk_var2(), FLA_Trsm_rut_unb_var1(), FLA_Trsm_rut_unb_var2(), FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_Obj_attach_buffer_hierarchy(), FLASH_Obj_create_hierarchy(), FLASH_Obj_scalar_width(), FLASH_SA_FS(), and FLASH_Trsm_piv().

00141 {
00142   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00143     FLA_Part_1x2_check( A,    A1,  A2,      nb, side );
00144 
00145   // Safeguard: if nb > n, reduce nb to n.
00146   if ( nb > A.n ) nb = A.n;
00147 
00148   // Set nb to be the dimension of A1.
00149   if ( side == FLA_RIGHT ) nb = A.n - nb;
00150 
00151   A1->m    = A.m;
00152   A1->n    = nb;
00153   A1->offm = A.offm;
00154   A1->offn = A.offn;
00155   A1->base = A.base;
00156 
00157   A2->m    = A.m;
00158   A2->n    = A.n - nb;
00159   A2->offm = A.offm;
00160   A2->offn = A.offn + nb;
00161   A2->base = A.base;
00162 
00163   return FLA_SUCCESS;
00164 }

FLA_Error FLA_Part_1x2_check ( FLA_Obj  A,
FLA_Obj A1,
FLA_Obj A2,
dim_t  nb,
FLA_Side  side 
)

References FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_side().

Referenced by FLA_Part_1x2().

00037 {
00038   FLA_Error e_val;
00039 
00040   e_val = FLA_Check_valid_object_datatype( A );
00041   FLA_Check_error_code( e_val );
00042 
00043   e_val = FLA_Check_null_pointer( A1 );
00044   FLA_Check_error_code( e_val );
00045 
00046   e_val = FLA_Check_null_pointer( A2 );
00047   FLA_Check_error_code( e_val );
00048 
00049   e_val = FLA_Check_valid_side( side );
00050   FLA_Check_error_code( e_val );
00051 
00052   return FLA_SUCCESS;
00053 }

FLA_Error FLA_Part_2x1 ( FLA_Obj  A,
FLA_Obj A1,
FLA_Obj A2,
dim_t  mb,
FLA_Side  side 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Part_2x1_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Accum_T_UT_fc_unb_var1(), FLA_Apply_Q_UT_inc_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var2(), FLA_Axpy_blk_var1(), FLA_Axpy_blk_var2(), FLA_Copy_blk_var1(), FLA_Copy_blk_var2(), FLA_Gemm_hh_blk_var1(), FLA_Gemm_hh_blk_var2(), FLA_Gemm_hh_blk_var3(), FLA_Gemm_hh_blk_var4(), FLA_Gemm_hh_blk_var5(), FLA_Gemm_hh_blk_var6(), FLA_Gemm_hh_unb_var1(), FLA_Gemm_hh_unb_var2(), FLA_Gemm_hh_unb_var3(), FLA_Gemm_hh_unb_var4(), FLA_Gemm_hh_unb_var5(), FLA_Gemm_hh_unb_var6(), FLA_Gemm_hn_blk_var1(), FLA_Gemm_hn_blk_var2(), FLA_Gemm_hn_blk_var5(), FLA_Gemm_hn_blk_var6(), FLA_Gemm_hn_unb_var1(), FLA_Gemm_hn_unb_var2(), FLA_Gemm_hn_unb_var5(), FLA_Gemm_hn_unb_var6(), FLA_Gemm_ht_blk_var1(), FLA_Gemm_ht_blk_var2(), FLA_Gemm_ht_blk_var3(), FLA_Gemm_ht_blk_var4(), FLA_Gemm_ht_blk_var5(), FLA_Gemm_ht_blk_var6(), FLA_Gemm_ht_unb_var1(), FLA_Gemm_ht_unb_var2(), FLA_Gemm_ht_unb_var3(), FLA_Gemm_ht_unb_var4(), FLA_Gemm_ht_unb_var5(), FLA_Gemm_ht_unb_var6(), FLA_Gemm_nh_blk_var1(), FLA_Gemm_nh_blk_var2(), FLA_Gemm_nh_blk_var3(), FLA_Gemm_nh_blk_var4(), FLA_Gemm_nh_unb_var1(), FLA_Gemm_nh_unb_var2(), FLA_Gemm_nh_unb_var3(), FLA_Gemm_nh_unb_var4(), FLA_Gemm_nn_blk_var1(), FLA_Gemm_nn_blk_var2(), FLA_Gemm_nn_blk_var5(), FLA_Gemm_nn_blk_var6(), FLA_Gemm_nn_unb_var1(), FLA_Gemm_nn_unb_var2(), FLA_Gemm_nn_unb_var5(), FLA_Gemm_nn_unb_var6(), FLA_Gemm_nt_blk_var1(), FLA_Gemm_nt_blk_var2(), FLA_Gemm_nt_blk_var3(), FLA_Gemm_nt_blk_var4(), FLA_Gemm_nt_unb_var1(), FLA_Gemm_nt_unb_var2(), FLA_Gemm_nt_unb_var3(), FLA_Gemm_nt_unb_var4(), FLA_Gemm_th_blk_var1(), FLA_Gemm_th_blk_var2(), FLA_Gemm_th_blk_var3(), FLA_Gemm_th_blk_var4(), FLA_Gemm_th_blk_var5(), FLA_Gemm_th_blk_var6(), FLA_Gemm_th_unb_var1(), FLA_Gemm_th_unb_var2(), FLA_Gemm_th_unb_var3(), FLA_Gemm_th_unb_var4(), FLA_Gemm_th_unb_var5(), FLA_Gemm_th_unb_var6(), FLA_Gemm_tn_blk_var1(), FLA_Gemm_tn_blk_var2(), FLA_Gemm_tn_blk_var5(), FLA_Gemm_tn_blk_var6(), FLA_Gemm_tn_unb_var1(), FLA_Gemm_tn_unb_var2(), FLA_Gemm_tn_unb_var5(), FLA_Gemm_tn_unb_var6(), FLA_Gemm_tt_blk_var1(), FLA_Gemm_tt_blk_var2(), FLA_Gemm_tt_blk_var3(), FLA_Gemm_tt_blk_var4(), FLA_Gemm_tt_blk_var5(), FLA_Gemm_tt_blk_var6(), FLA_Gemm_tt_unb_var1(), FLA_Gemm_tt_unb_var2(), FLA_Gemm_tt_unb_var3(), FLA_Gemm_tt_unb_var4(), FLA_Gemm_tt_unb_var5(), FLA_Gemm_tt_unb_var6(), FLA_Gemv_c_blk_var1(), FLA_Gemv_c_blk_var2(), FLA_Gemv_c_blk_var5(), FLA_Gemv_c_blk_var6(), FLA_Gemv_n_blk_var1(), FLA_Gemv_n_blk_var2(), FLA_Gemv_n_blk_var5(), FLA_Gemv_n_blk_var6(), FLA_Gemv_t_blk_var1(), FLA_Gemv_t_blk_var2(), FLA_Gemv_t_blk_var5(), FLA_Gemv_t_blk_var6(), FLA_Hemm_ll_blk_var1(), FLA_Hemm_ll_blk_var2(), FLA_Hemm_ll_blk_var3(), FLA_Hemm_ll_blk_var4(), FLA_Hemm_ll_blk_var5(), FLA_Hemm_ll_blk_var6(), FLA_Hemm_ll_blk_var7(), FLA_Hemm_ll_blk_var8(), FLA_Hemm_ll_unb_var1(), FLA_Hemm_ll_unb_var2(), FLA_Hemm_ll_unb_var3(), FLA_Hemm_ll_unb_var4(), FLA_Hemm_ll_unb_var5(), FLA_Hemm_ll_unb_var6(), FLA_Hemm_ll_unb_var7(), FLA_Hemm_ll_unb_var8(), FLA_Hemm_lu_blk_var1(), FLA_Hemm_lu_blk_var2(), FLA_Hemm_lu_blk_var3(), FLA_Hemm_lu_blk_var4(), FLA_Hemm_lu_blk_var5(), FLA_Hemm_lu_blk_var6(), FLA_Hemm_lu_blk_var7(), FLA_Hemm_lu_blk_var8(), FLA_Hemm_lu_unb_var1(), FLA_Hemm_lu_unb_var2(), FLA_Hemm_lu_unb_var3(), FLA_Hemm_lu_unb_var4(), FLA_Hemm_lu_unb_var5(), FLA_Hemm_lu_unb_var6(), FLA_Hemm_lu_unb_var7(), FLA_Hemm_lu_unb_var8(), FLA_Hemm_rl_blk_var10(), FLA_Hemm_rl_blk_var9(), FLA_Hemm_rl_unb_var10(), FLA_Hemm_rl_unb_var9(), FLA_Hemm_ru_blk_var10(), FLA_Hemm_ru_blk_var9(), FLA_Hemm_ru_unb_var10(), FLA_Hemm_ru_unb_var9(), FLA_Her2k_lh_blk_var10(), FLA_Her2k_lh_blk_var9(), FLA_Her2k_lh_unb_var10(), FLA_Her2k_lh_unb_var9(), FLA_Her2k_ln_blk_var1(), FLA_Her2k_ln_blk_var2(), FLA_Her2k_ln_blk_var3(), FLA_Her2k_ln_blk_var4(), FLA_Her2k_ln_blk_var5(), FLA_Her2k_ln_blk_var6(), FLA_Her2k_ln_blk_var7(), FLA_Her2k_ln_blk_var8(), FLA_Her2k_ln_unb_var1(), FLA_Her2k_ln_unb_var2(), FLA_Her2k_ln_unb_var3(), FLA_Her2k_ln_unb_var4(), FLA_Her2k_ln_unb_var5(), FLA_Her2k_ln_unb_var6(), FLA_Her2k_ln_unb_var7(), FLA_Her2k_ln_unb_var8(), FLA_Her2k_uh_blk_var10(), FLA_Her2k_uh_blk_var9(), FLA_Her2k_uh_unb_var10(), FLA_Her2k_uh_unb_var9(), FLA_Her2k_un_blk_var1(), FLA_Her2k_un_blk_var2(), FLA_Her2k_un_blk_var3(), FLA_Her2k_un_blk_var4(), FLA_Her2k_un_blk_var5(), FLA_Her2k_un_blk_var6(), FLA_Her2k_un_blk_var7(), FLA_Her2k_un_blk_var8(), FLA_Her2k_un_unb_var1(), FLA_Her2k_un_unb_var2(), FLA_Her2k_un_unb_var3(), FLA_Her2k_un_unb_var4(), FLA_Her2k_un_unb_var5(), FLA_Her2k_un_unb_var6(), FLA_Her2k_un_unb_var7(), FLA_Her2k_un_unb_var8(), FLA_Herk_lh_blk_var5(), FLA_Herk_lh_blk_var6(), FLA_Herk_lh_unb_var5(), FLA_Herk_lh_unb_var6(), FLA_Herk_ln_blk_var1(), FLA_Herk_ln_blk_var2(), FLA_Herk_ln_blk_var3(), FLA_Herk_ln_blk_var4(), FLA_Herk_ln_unb_var1(), FLA_Herk_ln_unb_var2(), FLA_Herk_ln_unb_var3(), FLA_Herk_ln_unb_var4(), FLA_Herk_uh_blk_var5(), FLA_Herk_uh_blk_var6(), FLA_Herk_uh_unb_var5(), FLA_Herk_uh_unb_var6(), FLA_Herk_un_blk_var1(), FLA_Herk_un_blk_var2(), FLA_Herk_un_blk_var3(), FLA_Herk_un_blk_var4(), FLA_Herk_un_unb_var1(), FLA_Herk_un_unb_var2(), FLA_Herk_un_unb_var3(), FLA_Herk_un_unb_var4(), FLA_LQ_UT_blk_var2(), FLA_LQ_UT_recover_tau(), FLA_LQ_UT_recover_tau_submatrix(), FLA_LU_piv_blk_var3(), FLA_LU_piv_blk_var4(), FLA_LU_piv_blk_var5(), FLA_LU_piv_unb_var3(), FLA_LU_piv_unb_var3b(), FLA_LU_piv_unb_var4(), FLA_LU_piv_unb_var5(), FLA_Norm_inf(), FLA_QR_UT_blk_var2(), FLA_QR_UT_recover_tau(), FLA_QR_UT_recover_tau_submatrix(), FLA_QR_UT_UD_blk_var1(), FLA_QR_UT_UD_blk_var2(), FLA_Repart_2x1_to_3x1(), FLA_Repart_2x2_to_3x3(), FLA_SA_FS_blk(), FLA_SA_LU_blk(), FLA_Swap_t_blk_var1(), FLA_Swap_t_blk_var2(), FLA_Sylv_nn_blk_var15(), FLA_Sylv_nn_blk_var16(), FLA_Sylv_nt_blk_var15(), FLA_Sylv_nt_blk_var16(), FLA_Sylv_tn_blk_var15(), FLA_Sylv_tn_blk_var16(), FLA_Sylv_tt_blk_var15(), FLA_Sylv_tt_blk_var16(), FLA_Symm_ll_blk_var1(), FLA_Symm_ll_blk_var2(), FLA_Symm_ll_blk_var3(), FLA_Symm_ll_blk_var4(), FLA_Symm_ll_blk_var5(), FLA_Symm_ll_blk_var6(), FLA_Symm_ll_blk_var7(), FLA_Symm_ll_blk_var8(), FLA_Symm_ll_unb_var1(), FLA_Symm_ll_unb_var2(), FLA_Symm_ll_unb_var3(), FLA_Symm_ll_unb_var4(), FLA_Symm_ll_unb_var5(), FLA_Symm_ll_unb_var6(), FLA_Symm_ll_unb_var7(), FLA_Symm_ll_unb_var8(), FLA_Symm_lu_blk_var1(), FLA_Symm_lu_blk_var2(), FLA_Symm_lu_blk_var3(), FLA_Symm_lu_blk_var4(), FLA_Symm_lu_blk_var5(), FLA_Symm_lu_blk_var6(), FLA_Symm_lu_blk_var7(), FLA_Symm_lu_blk_var8(), FLA_Symm_lu_unb_var1(), FLA_Symm_lu_unb_var2(), FLA_Symm_lu_unb_var3(), FLA_Symm_lu_unb_var4(), FLA_Symm_lu_unb_var5(), FLA_Symm_lu_unb_var6(), FLA_Symm_lu_unb_var7(), FLA_Symm_lu_unb_var8(), FLA_Symm_rl_blk_var10(), FLA_Symm_rl_blk_var9(), FLA_Symm_rl_unb_var10(), FLA_Symm_rl_unb_var9(), FLA_Symm_ru_blk_var10(), FLA_Symm_ru_blk_var9(), FLA_Symm_ru_unb_var10(), FLA_Symm_ru_unb_var9(), FLA_Syr2k_ln_blk_var1(), FLA_Syr2k_ln_blk_var2(), FLA_Syr2k_ln_blk_var3(), FLA_Syr2k_ln_blk_var4(), FLA_Syr2k_ln_blk_var5(), FLA_Syr2k_ln_blk_var6(), FLA_Syr2k_ln_blk_var7(), FLA_Syr2k_ln_blk_var8(), FLA_Syr2k_ln_unb_var1(), FLA_Syr2k_ln_unb_var2(), FLA_Syr2k_ln_unb_var3(), FLA_Syr2k_ln_unb_var4(), FLA_Syr2k_ln_unb_var5(), FLA_Syr2k_ln_unb_var6(), FLA_Syr2k_ln_unb_var7(), FLA_Syr2k_ln_unb_var8(), FLA_Syr2k_lt_blk_var10(), FLA_Syr2k_lt_blk_var9(), FLA_Syr2k_lt_unb_var10(), FLA_Syr2k_lt_unb_var9(), FLA_Syr2k_un_blk_var1(), FLA_Syr2k_un_blk_var2(), FLA_Syr2k_un_blk_var3(), FLA_Syr2k_un_blk_var4(), FLA_Syr2k_un_blk_var5(), FLA_Syr2k_un_blk_var6(), FLA_Syr2k_un_blk_var7(), FLA_Syr2k_un_blk_var8(), FLA_Syr2k_un_unb_var1(), FLA_Syr2k_un_unb_var2(), FLA_Syr2k_un_unb_var3(), FLA_Syr2k_un_unb_var4(), FLA_Syr2k_un_unb_var5(), FLA_Syr2k_un_unb_var6(), FLA_Syr2k_un_unb_var7(), FLA_Syr2k_un_unb_var8(), FLA_Syr2k_ut_blk_var10(), FLA_Syr2k_ut_blk_var9(), FLA_Syr2k_ut_unb_var10(), FLA_Syr2k_ut_unb_var9(), FLA_Syrk_ln_blk_var1(), FLA_Syrk_ln_blk_var2(), FLA_Syrk_ln_blk_var3(), FLA_Syrk_ln_blk_var4(), FLA_Syrk_ln_unb_var1(), FLA_Syrk_ln_unb_var2(), FLA_Syrk_ln_unb_var3(), FLA_Syrk_ln_unb_var4(), FLA_Syrk_lt_blk_var5(), FLA_Syrk_lt_blk_var6(), FLA_Syrk_lt_unb_var5(), FLA_Syrk_lt_unb_var6(), FLA_Syrk_un_blk_var1(), FLA_Syrk_un_blk_var2(), FLA_Syrk_un_blk_var3(), FLA_Syrk_un_blk_var4(), FLA_Syrk_un_unb_var1(), FLA_Syrk_un_unb_var2(), FLA_Syrk_un_unb_var3(), FLA_Syrk_un_unb_var4(), FLA_Syrk_ut_blk_var5(), FLA_Syrk_ut_blk_var6(), FLA_Syrk_ut_unb_var5(), FLA_Syrk_ut_unb_var6(), FLA_Trmm_llh_blk_var1(), FLA_Trmm_llh_blk_var2(), FLA_Trmm_llh_unb_var1(), FLA_Trmm_llh_unb_var2(), FLA_Trmm_lln_blk_var1(), FLA_Trmm_lln_blk_var2(), FLA_Trmm_lln_unb_var1(), FLA_Trmm_lln_unb_var2(), FLA_Trmm_llt_blk_var1(), FLA_Trmm_llt_blk_var2(), FLA_Trmm_llt_unb_var1(), FLA_Trmm_llt_unb_var2(), FLA_Trmm_luh_blk_var1(), FLA_Trmm_luh_blk_var2(), FLA_Trmm_luh_unb_var1(), FLA_Trmm_luh_unb_var2(), FLA_Trmm_lun_blk_var1(), FLA_Trmm_lun_blk_var2(), FLA_Trmm_lun_unb_var1(), FLA_Trmm_lun_unb_var2(), FLA_Trmm_lut_blk_var1(), FLA_Trmm_lut_blk_var2(), FLA_Trmm_lut_unb_var1(), FLA_Trmm_lut_unb_var2(), FLA_Trmm_rlh_blk_var3(), FLA_Trmm_rlh_blk_var4(), FLA_Trmm_rlh_unb_var3(), FLA_Trmm_rlh_unb_var4(), FLA_Trmm_rln_blk_var3(), FLA_Trmm_rln_blk_var4(), FLA_Trmm_rln_unb_var3(), FLA_Trmm_rln_unb_var4(), FLA_Trmm_rlt_blk_var3(), FLA_Trmm_rlt_blk_var4(), FLA_Trmm_rlt_unb_var3(), FLA_Trmm_rlt_unb_var4(), FLA_Trmm_ruh_blk_var3(), FLA_Trmm_ruh_blk_var4(), FLA_Trmm_ruh_unb_var3(), FLA_Trmm_ruh_unb_var4(), FLA_Trmm_run_blk_var3(), FLA_Trmm_run_blk_var4(), FLA_Trmm_run_unb_var3(), FLA_Trmm_run_unb_var4(), FLA_Trmm_rut_blk_var3(), FLA_Trmm_rut_blk_var4(), FLA_Trmm_rut_unb_var3(), FLA_Trmm_rut_unb_var4(), FLA_Trsm_llh_blk_var1(), FLA_Trsm_llh_blk_var2(), FLA_Trsm_llh_unb_var1(), FLA_Trsm_llh_unb_var2(), FLA_Trsm_lln_blk_var1(), FLA_Trsm_lln_blk_var2(), FLA_Trsm_lln_unb_var1(), FLA_Trsm_lln_unb_var2(), FLA_Trsm_llt_blk_var1(), FLA_Trsm_llt_blk_var2(), FLA_Trsm_llt_unb_var1(), FLA_Trsm_llt_unb_var2(), FLA_Trsm_luh_blk_var1(), FLA_Trsm_luh_blk_var2(), FLA_Trsm_luh_unb_var1(), FLA_Trsm_luh_unb_var2(), FLA_Trsm_lun_blk_var1(), FLA_Trsm_lun_blk_var2(), FLA_Trsm_lun_unb_var1(), FLA_Trsm_lun_unb_var2(), FLA_Trsm_lut_blk_var1(), FLA_Trsm_lut_blk_var2(), FLA_Trsm_lut_unb_var1(), FLA_Trsm_lut_unb_var2(), FLA_Trsm_rlh_blk_var3(), FLA_Trsm_rlh_blk_var4(), FLA_Trsm_rlh_unb_var3(), FLA_Trsm_rlh_unb_var4(), FLA_Trsm_rln_blk_var3(), FLA_Trsm_rln_blk_var4(), FLA_Trsm_rln_unb_var3(), FLA_Trsm_rln_unb_var4(), FLA_Trsm_rlt_blk_var3(), FLA_Trsm_rlt_blk_var4(), FLA_Trsm_rlt_unb_var3(), FLA_Trsm_rlt_unb_var4(), FLA_Trsm_ruh_blk_var3(), FLA_Trsm_ruh_blk_var4(), FLA_Trsm_ruh_unb_var3(), FLA_Trsm_ruh_unb_var4(), FLA_Trsm_run_blk_var3(), FLA_Trsm_run_blk_var4(), FLA_Trsm_run_unb_var3(), FLA_Trsm_run_unb_var4(), FLA_Trsm_rut_blk_var3(), FLA_Trsm_rut_blk_var4(), FLA_Trsm_rut_unb_var3(), FLA_Trsm_rut_unb_var4(), FLA_Trsv_lc_blk_var1(), FLA_Trsv_lc_blk_var2(), FLA_Trsv_ln_blk_var1(), FLA_Trsv_ln_blk_var2(), FLA_Trsv_lt_blk_var1(), FLA_Trsv_lt_blk_var2(), FLA_Trsv_uc_blk_var1(), FLA_Trsv_uc_blk_var2(), FLA_Trsv_un_blk_var1(), FLA_Trsv_un_blk_var2(), FLA_Trsv_ut_blk_var1(), FLA_Trsv_ut_blk_var2(), FLASH_Apply_Q_UT_UD(), FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_FS_incpiv_aux1(), FLASH_FS_incpiv_aux2(), FLASH_Obj_attach_buffer_hierarchy(), FLASH_Obj_scalar_length(), FLASH_QR_UT_UD(), and FLASH_SA_LU().

00106 { 
00107   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00108     FLA_Part_2x1_check( A,    A1,
00109                               A2,     mb, side );
00110 
00111   // Safeguard: if mb > m, reduce mb to m.
00112   if ( mb > A.m ) mb = A.m;
00113 
00114   // Set mb to be the dimension of A1.
00115   if ( side == FLA_BOTTOM ) mb = A.m - mb;
00116 
00117   A1->m    = mb;
00118   A1->n    = A.n;
00119   A1->offm = A.offm;
00120   A1->offn = A.offn;
00121   A1->base = A.base;
00122 
00123   A2->m    = A.m - mb;
00124   A2->n    = A.n;
00125   A2->offm = A.offm + mb;
00126   A2->offn = A.offn;
00127   A2->base = A.base;
00128 
00129   return FLA_SUCCESS;
00130 }

FLA_Error FLA_Part_2x1_check ( FLA_Obj  A,
FLA_Obj A1,
FLA_Obj A2,
dim_t  mb,
FLA_Side  side 
)

References FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_side().

Referenced by FLA_Part_2x1().

00038 {
00039   FLA_Error e_val;
00040 
00041   e_val = FLA_Check_valid_object_datatype( A );
00042   FLA_Check_error_code( e_val );
00043 
00044   e_val = FLA_Check_null_pointer( A1 );
00045   FLA_Check_error_code( e_val );
00046 
00047   e_val = FLA_Check_null_pointer( A2 );
00048   FLA_Check_error_code( e_val );
00049 
00050   e_val = FLA_Check_valid_side( side );
00051   FLA_Check_error_code( e_val );
00052 
00053   return FLA_SUCCESS;
00054 }

FLA_Error FLA_Part_2x2 ( FLA_Obj  A,
FLA_Obj A11,
FLA_Obj A12,
FLA_Obj A21,
FLA_Obj A22,
dim_t  mb,
dim_t  nb,
FLA_Quadrant  quadrant 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Part_2x2_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Accum_T_UT_fc_unb_var1(), FLA_Apply_Q_UT_inc_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var1(), FLA_Axpy_global_to_submatrix(), FLA_Axpy_submatrix_to_global(), FLA_Chol_l_blk_var1(), FLA_Chol_l_blk_var2(), FLA_Chol_l_blk_var3(), FLA_Chol_l_unb_var1(), FLA_Chol_l_unb_var2(), FLA_Chol_l_unb_var3(), FLA_Chol_u_blk_var1(), FLA_Chol_u_blk_var2(), FLA_Chol_u_blk_var3(), FLA_Chol_u_unb_var1(), FLA_Chol_u_unb_var2(), FLA_Chol_u_unb_var3(), FLA_Copy_global_to_submatrix(), FLA_Copy_submatrix_to_global(), FLA_Hemm_ll_blk_var1(), FLA_Hemm_ll_blk_var2(), FLA_Hemm_ll_blk_var3(), FLA_Hemm_ll_blk_var4(), FLA_Hemm_ll_blk_var5(), FLA_Hemm_ll_blk_var6(), FLA_Hemm_ll_blk_var7(), FLA_Hemm_ll_blk_var8(), FLA_Hemm_ll_unb_var1(), FLA_Hemm_ll_unb_var2(), FLA_Hemm_ll_unb_var3(), FLA_Hemm_ll_unb_var4(), FLA_Hemm_ll_unb_var5(), FLA_Hemm_ll_unb_var6(), FLA_Hemm_ll_unb_var7(), FLA_Hemm_ll_unb_var8(), FLA_Hemm_lu_blk_var1(), FLA_Hemm_lu_blk_var2(), FLA_Hemm_lu_blk_var3(), FLA_Hemm_lu_blk_var4(), FLA_Hemm_lu_blk_var5(), FLA_Hemm_lu_blk_var6(), FLA_Hemm_lu_blk_var7(), FLA_Hemm_lu_blk_var8(), FLA_Hemm_lu_unb_var1(), FLA_Hemm_lu_unb_var2(), FLA_Hemm_lu_unb_var3(), FLA_Hemm_lu_unb_var4(), FLA_Hemm_lu_unb_var5(), FLA_Hemm_lu_unb_var6(), FLA_Hemm_lu_unb_var7(), FLA_Hemm_lu_unb_var8(), FLA_Hemm_rl_blk_var1(), FLA_Hemm_rl_blk_var2(), FLA_Hemm_rl_blk_var3(), FLA_Hemm_rl_blk_var4(), FLA_Hemm_rl_blk_var5(), FLA_Hemm_rl_blk_var6(), FLA_Hemm_rl_blk_var7(), FLA_Hemm_rl_blk_var8(), FLA_Hemm_rl_unb_var1(), FLA_Hemm_rl_unb_var2(), FLA_Hemm_rl_unb_var3(), FLA_Hemm_rl_unb_var4(), FLA_Hemm_rl_unb_var5(), FLA_Hemm_rl_unb_var6(), FLA_Hemm_rl_unb_var7(), FLA_Hemm_rl_unb_var8(), FLA_Hemm_ru_blk_var1(), FLA_Hemm_ru_blk_var2(), FLA_Hemm_ru_blk_var3(), FLA_Hemm_ru_blk_var4(), FLA_Hemm_ru_blk_var5(), FLA_Hemm_ru_blk_var6(), FLA_Hemm_ru_blk_var7(), FLA_Hemm_ru_blk_var8(), FLA_Hemm_ru_unb_var1(), FLA_Hemm_ru_unb_var2(), FLA_Hemm_ru_unb_var3(), FLA_Hemm_ru_unb_var4(), FLA_Hemm_ru_unb_var5(), FLA_Hemm_ru_unb_var6(), FLA_Hemm_ru_unb_var7(), FLA_Hemm_ru_unb_var8(), FLA_Her2k_lh_blk_var1(), FLA_Her2k_lh_blk_var2(), FLA_Her2k_lh_blk_var3(), FLA_Her2k_lh_blk_var4(), FLA_Her2k_lh_blk_var5(), FLA_Her2k_lh_blk_var6(), FLA_Her2k_lh_blk_var7(), FLA_Her2k_lh_blk_var8(), FLA_Her2k_lh_unb_var1(), FLA_Her2k_lh_unb_var2(), FLA_Her2k_lh_unb_var3(), FLA_Her2k_lh_unb_var4(), FLA_Her2k_lh_unb_var5(), FLA_Her2k_lh_unb_var6(), FLA_Her2k_lh_unb_var7(), FLA_Her2k_lh_unb_var8(), FLA_Her2k_ln_blk_var1(), FLA_Her2k_ln_blk_var2(), FLA_Her2k_ln_blk_var3(), FLA_Her2k_ln_blk_var4(), FLA_Her2k_ln_blk_var5(), FLA_Her2k_ln_blk_var6(), FLA_Her2k_ln_blk_var7(), FLA_Her2k_ln_blk_var8(), FLA_Her2k_ln_unb_var1(), FLA_Her2k_ln_unb_var2(), FLA_Her2k_ln_unb_var3(), FLA_Her2k_ln_unb_var4(), FLA_Her2k_ln_unb_var5(), FLA_Her2k_ln_unb_var6(), FLA_Her2k_ln_unb_var7(), FLA_Her2k_ln_unb_var8(), FLA_Her2k_uh_blk_var1(), FLA_Her2k_uh_blk_var2(), FLA_Her2k_uh_blk_var3(), FLA_Her2k_uh_blk_var4(), FLA_Her2k_uh_blk_var5(), FLA_Her2k_uh_blk_var6(), FLA_Her2k_uh_blk_var7(), FLA_Her2k_uh_blk_var8(), FLA_Her2k_uh_unb_var1(), FLA_Her2k_uh_unb_var2(), FLA_Her2k_uh_unb_var3(), FLA_Her2k_uh_unb_var4(), FLA_Her2k_uh_unb_var5(), FLA_Her2k_uh_unb_var6(), FLA_Her2k_uh_unb_var7(), FLA_Her2k_uh_unb_var8(), FLA_Her2k_un_blk_var1(), FLA_Her2k_un_blk_var2(), FLA_Her2k_un_blk_var3(), FLA_Her2k_un_blk_var4(), FLA_Her2k_un_blk_var5(), FLA_Her2k_un_blk_var6(), FLA_Her2k_un_blk_var7(), FLA_Her2k_un_blk_var8(), FLA_Her2k_un_unb_var1(), FLA_Her2k_un_unb_var2(), FLA_Her2k_un_unb_var3(), FLA_Her2k_un_unb_var4(), FLA_Her2k_un_unb_var5(), FLA_Her2k_un_unb_var6(), FLA_Her2k_un_unb_var7(), FLA_Her2k_un_unb_var8(), FLA_Herk_lh_blk_var1(), FLA_Herk_lh_blk_var2(), FLA_Herk_lh_blk_var3(), FLA_Herk_lh_blk_var4(), FLA_Herk_lh_unb_var1(), FLA_Herk_lh_unb_var2(), FLA_Herk_lh_unb_var3(), FLA_Herk_lh_unb_var4(), FLA_Herk_ln_blk_var1(), FLA_Herk_ln_blk_var2(), FLA_Herk_ln_blk_var3(), FLA_Herk_ln_blk_var4(), FLA_Herk_ln_unb_var1(), FLA_Herk_ln_unb_var2(), FLA_Herk_ln_unb_var3(), FLA_Herk_ln_unb_var4(), FLA_Herk_uh_blk_var1(), FLA_Herk_uh_blk_var2(), FLA_Herk_uh_blk_var3(), FLA_Herk_uh_blk_var4(), FLA_Herk_uh_unb_var1(), FLA_Herk_uh_unb_var2(), FLA_Herk_uh_unb_var3(), FLA_Herk_uh_unb_var4(), FLA_Herk_un_blk_var1(), FLA_Herk_un_blk_var2(), FLA_Herk_un_blk_var3(), FLA_Herk_un_blk_var4(), FLA_Herk_un_unb_var1(), FLA_Herk_un_unb_var2(), FLA_Herk_un_unb_var3(), FLA_Herk_un_unb_var4(), FLA_LQ_UT_Accum_T_blk_var1(), FLA_LQ_UT_blk_var2(), FLA_LQ_UT_recover_tau_submatrix(), FLA_LU_nopiv_blk_var1(), FLA_LU_nopiv_blk_var2(), FLA_LU_nopiv_blk_var3(), FLA_LU_nopiv_blk_var4(), FLA_LU_nopiv_blk_var5(), FLA_LU_nopiv_unb_var1(), FLA_LU_nopiv_unb_var2(), FLA_LU_nopiv_unb_var3(), FLA_LU_nopiv_unb_var4(), FLA_LU_nopiv_unb_var5(), FLA_LU_piv_blk_var3(), FLA_LU_piv_blk_var4(), FLA_LU_piv_blk_var5(), FLA_LU_piv_unb_var3(), FLA_LU_piv_unb_var3b(), FLA_LU_piv_unb_var4(), FLA_LU_piv_unb_var5(), FLA_QR_UT_Accum_T_blk_var1(), FLA_QR_UT_Accum_T_unb_var1(), FLA_QR_UT_blk_var2(), FLA_QR_UT_inc_blk_var1(), FLA_QR_UT_inc_blk_var2(), FLA_QR_UT_inc_create_U_panel(), FLA_QR_UT_recover_tau_submatrix(), FLA_QR_UT_UD_Accum_T_unb_var1(), FLA_QR_UT_UD_blk_var1(), FLA_Repart_2x2_to_3x3(), FLA_SA_LU_blk(), FLA_Sylv_nn_blk_var1(), FLA_Sylv_nn_blk_var10(), FLA_Sylv_nn_blk_var11(), FLA_Sylv_nn_blk_var12(), FLA_Sylv_nn_blk_var13(), FLA_Sylv_nn_blk_var14(), FLA_Sylv_nn_blk_var15(), FLA_Sylv_nn_blk_var16(), FLA_Sylv_nn_blk_var17(), FLA_Sylv_nn_blk_var18(), FLA_Sylv_nn_blk_var2(), FLA_Sylv_nn_blk_var3(), FLA_Sylv_nn_blk_var4(), FLA_Sylv_nn_blk_var5(), FLA_Sylv_nn_blk_var6(), FLA_Sylv_nn_blk_var7(), FLA_Sylv_nn_blk_var8(), FLA_Sylv_nn_blk_var9(), FLA_Sylv_nt_blk_var1(), FLA_Sylv_nt_blk_var10(), FLA_Sylv_nt_blk_var11(), FLA_Sylv_nt_blk_var12(), FLA_Sylv_nt_blk_var13(), FLA_Sylv_nt_blk_var14(), FLA_Sylv_nt_blk_var15(), FLA_Sylv_nt_blk_var16(), FLA_Sylv_nt_blk_var17(), FLA_Sylv_nt_blk_var18(), FLA_Sylv_nt_blk_var2(), FLA_Sylv_nt_blk_var3(), FLA_Sylv_nt_blk_var4(), FLA_Sylv_nt_blk_var5(), FLA_Sylv_nt_blk_var6(), FLA_Sylv_nt_blk_var7(), FLA_Sylv_nt_blk_var8(), FLA_Sylv_nt_blk_var9(), FLA_Sylv_tn_blk_var1(), FLA_Sylv_tn_blk_var10(), FLA_Sylv_tn_blk_var11(), FLA_Sylv_tn_blk_var12(), FLA_Sylv_tn_blk_var13(), FLA_Sylv_tn_blk_var14(), FLA_Sylv_tn_blk_var15(), FLA_Sylv_tn_blk_var16(), FLA_Sylv_tn_blk_var17(), FLA_Sylv_tn_blk_var18(), FLA_Sylv_tn_blk_var2(), FLA_Sylv_tn_blk_var3(), FLA_Sylv_tn_blk_var4(), FLA_Sylv_tn_blk_var5(), FLA_Sylv_tn_blk_var6(), FLA_Sylv_tn_blk_var7(), FLA_Sylv_tn_blk_var8(), FLA_Sylv_tn_blk_var9(), FLA_Sylv_tt_blk_var1(), FLA_Sylv_tt_blk_var10(), FLA_Sylv_tt_blk_var11(), FLA_Sylv_tt_blk_var12(), FLA_Sylv_tt_blk_var13(), FLA_Sylv_tt_blk_var14(), FLA_Sylv_tt_blk_var15(), FLA_Sylv_tt_blk_var16(), FLA_Sylv_tt_blk_var17(), FLA_Sylv_tt_blk_var18(), FLA_Sylv_tt_blk_var2(), FLA_Sylv_tt_blk_var3(), FLA_Sylv_tt_blk_var4(), FLA_Sylv_tt_blk_var5(), FLA_Sylv_tt_blk_var6(), FLA_Sylv_tt_blk_var7(), FLA_Sylv_tt_blk_var8(), FLA_Sylv_tt_blk_var9(), FLA_Symm_ll_blk_var1(), FLA_Symm_ll_blk_var2(), FLA_Symm_ll_blk_var3(), FLA_Symm_ll_blk_var4(), FLA_Symm_ll_blk_var5(), FLA_Symm_ll_blk_var6(), FLA_Symm_ll_blk_var7(), FLA_Symm_ll_blk_var8(), FLA_Symm_ll_unb_var1(), FLA_Symm_ll_unb_var2(), FLA_Symm_ll_unb_var3(), FLA_Symm_ll_unb_var4(), FLA_Symm_ll_unb_var5(), FLA_Symm_ll_unb_var6(), FLA_Symm_ll_unb_var7(), FLA_Symm_ll_unb_var8(), FLA_Symm_lu_blk_var1(), FLA_Symm_lu_blk_var2(), FLA_Symm_lu_blk_var3(), FLA_Symm_lu_blk_var4(), FLA_Symm_lu_blk_var5(), FLA_Symm_lu_blk_var6(), FLA_Symm_lu_blk_var7(), FLA_Symm_lu_blk_var8(), FLA_Symm_lu_unb_var1(), FLA_Symm_lu_unb_var2(), FLA_Symm_lu_unb_var3(), FLA_Symm_lu_unb_var4(), FLA_Symm_lu_unb_var5(), FLA_Symm_lu_unb_var6(), FLA_Symm_lu_unb_var7(), FLA_Symm_lu_unb_var8(), FLA_Symm_rl_blk_var1(), FLA_Symm_rl_blk_var2(), FLA_Symm_rl_blk_var3(), FLA_Symm_rl_blk_var4(), FLA_Symm_rl_blk_var5(), FLA_Symm_rl_blk_var6(), FLA_Symm_rl_blk_var7(), FLA_Symm_rl_blk_var8(), FLA_Symm_rl_unb_var1(), FLA_Symm_rl_unb_var2(), FLA_Symm_rl_unb_var3(), FLA_Symm_rl_unb_var4(), FLA_Symm_rl_unb_var5(), FLA_Symm_rl_unb_var6(), FLA_Symm_rl_unb_var7(), FLA_Symm_rl_unb_var8(), FLA_Symm_ru_blk_var1(), FLA_Symm_ru_blk_var2(), FLA_Symm_ru_blk_var3(), FLA_Symm_ru_blk_var4(), FLA_Symm_ru_blk_var5(), FLA_Symm_ru_blk_var6(), FLA_Symm_ru_blk_var7(), FLA_Symm_ru_blk_var8(), FLA_Symm_ru_unb_var1(), FLA_Symm_ru_unb_var2(), FLA_Symm_ru_unb_var3(), FLA_Symm_ru_unb_var4(), FLA_Symm_ru_unb_var5(), FLA_Symm_ru_unb_var6(), FLA_Symm_ru_unb_var7(), FLA_Symm_ru_unb_var8(), FLA_Syr2k_ln_blk_var1(), FLA_Syr2k_ln_blk_var2(), FLA_Syr2k_ln_blk_var3(), FLA_Syr2k_ln_blk_var4(), FLA_Syr2k_ln_blk_var5(), FLA_Syr2k_ln_blk_var6(), FLA_Syr2k_ln_blk_var7(), FLA_Syr2k_ln_blk_var8(), FLA_Syr2k_ln_unb_var1(), FLA_Syr2k_ln_unb_var2(), FLA_Syr2k_ln_unb_var3(), FLA_Syr2k_ln_unb_var4(), FLA_Syr2k_ln_unb_var5(), FLA_Syr2k_ln_unb_var6(), FLA_Syr2k_ln_unb_var7(), FLA_Syr2k_ln_unb_var8(), FLA_Syr2k_lt_blk_var1(), FLA_Syr2k_lt_blk_var2(), FLA_Syr2k_lt_blk_var3(), FLA_Syr2k_lt_blk_var4(), FLA_Syr2k_lt_blk_var5(), FLA_Syr2k_lt_blk_var6(), FLA_Syr2k_lt_blk_var7(), FLA_Syr2k_lt_blk_var8(), FLA_Syr2k_lt_unb_var1(), FLA_Syr2k_lt_unb_var2(), FLA_Syr2k_lt_unb_var3(), FLA_Syr2k_lt_unb_var4(), FLA_Syr2k_lt_unb_var5(), FLA_Syr2k_lt_unb_var6(), FLA_Syr2k_lt_unb_var7(), FLA_Syr2k_lt_unb_var8(), FLA_Syr2k_un_blk_var1(), FLA_Syr2k_un_blk_var2(), FLA_Syr2k_un_blk_var3(), FLA_Syr2k_un_blk_var4(), FLA_Syr2k_un_blk_var5(), FLA_Syr2k_un_blk_var6(), FLA_Syr2k_un_blk_var7(), FLA_Syr2k_un_blk_var8(), FLA_Syr2k_un_unb_var1(), FLA_Syr2k_un_unb_var2(), FLA_Syr2k_un_unb_var3(), FLA_Syr2k_un_unb_var4(), FLA_Syr2k_un_unb_var5(), FLA_Syr2k_un_unb_var6(), FLA_Syr2k_un_unb_var7(), FLA_Syr2k_un_unb_var8(), FLA_Syr2k_ut_blk_var1(), FLA_Syr2k_ut_blk_var2(), FLA_Syr2k_ut_blk_var3(), FLA_Syr2k_ut_blk_var4(), FLA_Syr2k_ut_blk_var5(), FLA_Syr2k_ut_blk_var6(), FLA_Syr2k_ut_blk_var7(), FLA_Syr2k_ut_blk_var8(), FLA_Syr2k_ut_unb_var1(), FLA_Syr2k_ut_unb_var2(), FLA_Syr2k_ut_unb_var3(), FLA_Syr2k_ut_unb_var4(), FLA_Syr2k_ut_unb_var5(), FLA_Syr2k_ut_unb_var6(), FLA_Syr2k_ut_unb_var7(), FLA_Syr2k_ut_unb_var8(), FLA_Syrk_ln_blk_var1(), FLA_Syrk_ln_blk_var2(), FLA_Syrk_ln_blk_var3(), FLA_Syrk_ln_blk_var4(), FLA_Syrk_ln_unb_var1(), FLA_Syrk_ln_unb_var2(), FLA_Syrk_ln_unb_var3(), FLA_Syrk_ln_unb_var4(), FLA_Syrk_lt_blk_var1(), FLA_Syrk_lt_blk_var2(), FLA_Syrk_lt_blk_var3(), FLA_Syrk_lt_blk_var4(), FLA_Syrk_lt_unb_var1(), FLA_Syrk_lt_unb_var2(), FLA_Syrk_lt_unb_var3(), FLA_Syrk_lt_unb_var4(), FLA_Syrk_un_blk_var1(), FLA_Syrk_un_blk_var2(), FLA_Syrk_un_blk_var3(), FLA_Syrk_un_blk_var4(), FLA_Syrk_un_unb_var1(), FLA_Syrk_un_unb_var2(), FLA_Syrk_un_unb_var3(), FLA_Syrk_un_unb_var4(), FLA_Syrk_ut_blk_var1(), FLA_Syrk_ut_blk_var2(), FLA_Syrk_ut_blk_var3(), FLA_Syrk_ut_blk_var4(), FLA_Syrk_ut_unb_var1(), FLA_Syrk_ut_unb_var2(), FLA_Syrk_ut_unb_var3(), FLA_Syrk_ut_unb_var4(), FLA_Transpose_blk_var1(), FLA_Transpose_blk_var2(), FLA_Transpose_unb_var1(), FLA_Transpose_unb_var2(), FLA_Trinv_l_blk_var1(), FLA_Trinv_l_blk_var2(), FLA_Trinv_l_blk_var3(), FLA_Trinv_l_blk_var4(), FLA_Trinv_l_unb_var1(), FLA_Trinv_l_unb_var2(), FLA_Trinv_l_unb_var3(), FLA_Trinv_l_unb_var4(), FLA_Trinv_u_blk_var1(), FLA_Trinv_u_blk_var2(), FLA_Trinv_u_blk_var3(), FLA_Trinv_u_blk_var4(), FLA_Trinv_u_unb_var1(), FLA_Trinv_u_unb_var2(), FLA_Trinv_u_unb_var3(), FLA_Trinv_u_unb_var4(), FLA_Trmm_llh_blk_var1(), FLA_Trmm_llh_blk_var2(), FLA_Trmm_llh_unb_var1(), FLA_Trmm_llh_unb_var2(), FLA_Trmm_lln_blk_var1(), FLA_Trmm_lln_blk_var2(), FLA_Trmm_lln_unb_var1(), FLA_Trmm_lln_unb_var2(), FLA_Trmm_llt_blk_var1(), FLA_Trmm_llt_blk_var2(), FLA_Trmm_llt_unb_var1(), FLA_Trmm_llt_unb_var2(), FLA_Trmm_luh_blk_var1(), FLA_Trmm_luh_blk_var2(), FLA_Trmm_luh_unb_var1(), FLA_Trmm_luh_unb_var2(), FLA_Trmm_lun_blk_var1(), FLA_Trmm_lun_blk_var2(), FLA_Trmm_lun_unb_var1(), FLA_Trmm_lun_unb_var2(), FLA_Trmm_lut_blk_var1(), FLA_Trmm_lut_blk_var2(), FLA_Trmm_lut_unb_var1(), FLA_Trmm_lut_unb_var2(), FLA_Trmm_rlh_blk_var1(), FLA_Trmm_rlh_blk_var2(), FLA_Trmm_rlh_unb_var1(), FLA_Trmm_rlh_unb_var2(), FLA_Trmm_rln_blk_var1(), FLA_Trmm_rln_blk_var2(), FLA_Trmm_rln_unb_var1(), FLA_Trmm_rln_unb_var2(), FLA_Trmm_rlt_blk_var1(), FLA_Trmm_rlt_blk_var2(), FLA_Trmm_rlt_unb_var1(), FLA_Trmm_rlt_unb_var2(), FLA_Trmm_ruh_blk_var1(), FLA_Trmm_ruh_blk_var2(), FLA_Trmm_ruh_unb_var1(), FLA_Trmm_ruh_unb_var2(), FLA_Trmm_run_blk_var1(), FLA_Trmm_run_blk_var2(), FLA_Trmm_run_unb_var1(), FLA_Trmm_run_unb_var2(), FLA_Trmm_rut_blk_var1(), FLA_Trmm_rut_blk_var2(), FLA_Trmm_rut_unb_var1(), FLA_Trmm_rut_unb_var2(), FLA_Trsm_llh_blk_var1(), FLA_Trsm_llh_blk_var2(), FLA_Trsm_llh_unb_var1(), FLA_Trsm_llh_unb_var2(), FLA_Trsm_lln_blk_var1(), FLA_Trsm_lln_blk_var2(), FLA_Trsm_lln_unb_var1(), FLA_Trsm_lln_unb_var2(), FLA_Trsm_llt_blk_var1(), FLA_Trsm_llt_blk_var2(), FLA_Trsm_llt_unb_var1(), FLA_Trsm_llt_unb_var2(), FLA_Trsm_luh_blk_var1(), FLA_Trsm_luh_blk_var2(), FLA_Trsm_luh_unb_var1(), FLA_Trsm_luh_unb_var2(), FLA_Trsm_lun_blk_var1(), FLA_Trsm_lun_blk_var2(), FLA_Trsm_lun_unb_var1(), FLA_Trsm_lun_unb_var2(), FLA_Trsm_lut_blk_var1(), FLA_Trsm_lut_blk_var2(), FLA_Trsm_lut_unb_var1(), FLA_Trsm_lut_unb_var2(), FLA_Trsm_rlh_blk_var1(), FLA_Trsm_rlh_blk_var2(), FLA_Trsm_rlh_unb_var1(), FLA_Trsm_rlh_unb_var2(), FLA_Trsm_rln_blk_var1(), FLA_Trsm_rln_blk_var2(), FLA_Trsm_rln_unb_var1(), FLA_Trsm_rln_unb_var2(), FLA_Trsm_rlt_blk_var1(), FLA_Trsm_rlt_blk_var2(), FLA_Trsm_rlt_unb_var1(), FLA_Trsm_rlt_unb_var2(), FLA_Trsm_ruh_blk_var1(), FLA_Trsm_ruh_blk_var2(), FLA_Trsm_ruh_unb_var1(), FLA_Trsm_ruh_unb_var2(), FLA_Trsm_run_blk_var1(), FLA_Trsm_run_blk_var2(), FLA_Trsm_run_unb_var1(), FLA_Trsm_run_unb_var2(), FLA_Trsm_rut_blk_var1(), FLA_Trsm_rut_blk_var2(), FLA_Trsm_rut_unb_var1(), FLA_Trsm_rut_unb_var2(), FLA_Trsv_lc_blk_var1(), FLA_Trsv_lc_blk_var2(), FLA_Trsv_ln_blk_var1(), FLA_Trsv_ln_blk_var2(), FLA_Trsv_lt_blk_var1(), FLA_Trsv_lt_blk_var2(), FLA_Trsv_uc_blk_var1(), FLA_Trsv_uc_blk_var2(), FLA_Trsv_un_blk_var1(), FLA_Trsv_un_blk_var2(), FLA_Trsv_ut_blk_var1(), FLA_Trsv_ut_blk_var2(), FLA_Ttmm_l_blk_var1(), FLA_Ttmm_l_blk_var2(), FLA_Ttmm_l_blk_var3(), FLA_Ttmm_l_unb_var1(), FLA_Ttmm_l_unb_var2(), FLA_Ttmm_l_unb_var3(), FLA_Ttmm_u_blk_var1(), FLA_Ttmm_u_blk_var2(), FLA_Ttmm_u_blk_var3(), FLA_Ttmm_u_unb_var1(), FLA_Ttmm_u_unb_var2(), FLA_Ttmm_u_unb_var3(), FLASH_Apply_Q_UT_inc(), FLASH_Apply_Q_UT_inc_create_workspace(), FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_FS_incpiv(), FLASH_FS_incpiv_aux1(), FLASH_LU_incpiv(), FLASH_LU_incpiv_var1(), FLASH_LU_incpiv_var2(), FLASH_QR_UT_inc_noopt(), and FLASH_QR_UT_inc_opt1().

00045 {
00046   FLA_Base_obj *base;
00047   dim_t         m, n, offm, offn;
00048 
00049   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00050     FLA_Part_2x2_check( A,    A11, A12,
00051                               A21, A22,    mb, nb, quadrant );
00052 
00053   // Safeguard: if mb > m, reduce mb to m.
00054   if ( mb > A.m ) mb = A.m;
00055 
00056   // Safeguard: if nb > n, reduce nb to n.
00057   if ( nb > A.n ) nb = A.n;
00058 
00059   m        = A.m;
00060   n        = A.n;
00061   offm     = A.offm;
00062   offn     = A.offn;
00063   base     = A.base;
00064 
00065   // Set mb and nb to be the dimensions of A11.
00066   if ( quadrant == FLA_BL || quadrant == FLA_BR ) mb = m - mb;
00067   if ( quadrant == FLA_TR || quadrant == FLA_BR ) nb = n - nb;
00068 
00069   A11->m    = mb;
00070   A11->n    = nb;
00071   A11->offm = offm;
00072   A11->offn = offn;
00073   A11->base = base;
00074 
00075   A21->m    = m-mb;
00076   A21->n    = nb;
00077   A21->offm = offm + mb;
00078   A21->offn = offn;
00079   A21->base = base;
00080 
00081   A12->m    = mb;
00082   A12->n    = n-nb;
00083   A12->offm = offm;
00084   A12->offn = offn + nb;
00085   A12->base = base;
00086 
00087   A22->m    = m-mb;
00088   A22->n    = n-nb;
00089   A22->offm = offm + mb;
00090   A22->offn = offn + nb;
00091   A22->base = base;
00092 
00093   return FLA_SUCCESS;
00094 }

FLA_Error FLA_Part_2x2_check ( FLA_Obj  A,
FLA_Obj A11,
FLA_Obj A12,
FLA_Obj A21,
FLA_Obj A22,
dim_t  mb,
dim_t  nb,
FLA_Quadrant  quadrant 
)

References FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_quadrant().

Referenced by FLA_Part_2x2().

00038 {
00039   FLA_Error e_val;
00040 
00041   e_val = FLA_Check_valid_object_datatype( A );
00042   FLA_Check_error_code( e_val );
00043 
00044   e_val = FLA_Check_null_pointer( A11 );
00045   FLA_Check_error_code( e_val );
00046 
00047   e_val = FLA_Check_null_pointer( A12 );
00048   FLA_Check_error_code( e_val );
00049 
00050   e_val = FLA_Check_null_pointer( A21 );
00051   FLA_Check_error_code( e_val );
00052 
00053   e_val = FLA_Check_null_pointer( A22 );
00054   FLA_Check_error_code( e_val );
00055 
00056   e_val = FLA_Check_valid_quadrant( quadrant );
00057   FLA_Check_error_code( e_val );
00058 
00059   return FLA_SUCCESS;
00060 }

void FLA_Print_message ( char *  str,
char *  file,
int  line 
)

Referenced by FLA_Check_error_code_helper(), FLASH_Apply_Q_UT_inc_create_workspace(), FLASH_FS_incpiv(), FLASH_LU_incpiv(), FLASH_LU_incpiv_create_hier_matrices(), and FLASH_QR_UT_inc_create_hier_matrices().

00227 {
00228     fprintf( stderr, "\n" );
00229     fprintf( stderr, "libflame: %s (line %d):\n", file, line );
00230     fprintf( stderr, "libflame: %s\n", str );
00231     fflush( stderr );
00232 }

dim_t FLA_Query_blocksize ( FLA_Datatype  dt,
FLA_Dimension  dim 
)

References cgemm_p, cgemm_q, cgemm_r, dgemm_p, dgemm_q, dgemm_r, fla_goto_gemm_blocksize, sgemm_p, sgemm_q, sgemm_r, zgemm_p, zgemm_q, and zgemm_r.

Referenced by FLA_Apply_Q_blk_external(), FLA_Check_householder_panel_dims(), FLA_Hess_blk_external(), FLA_LQ_blk_external(), FLA_LQ_UT_blk_external(), FLA_LQ_UT_create_T(), FLA_QR_blk_external(), FLA_QR_UT_blk_external(), FLA_QR_UT_create_T(), fla_query_blocksize_f(), and FLA_Query_blocksizes().

00184 {
00185     dim_t b_val = 0;
00186 
00187 #ifdef FLA_ENABLE_GOTO_INTERFACES
00188 
00189     int dt_index;
00190     int dim_index;
00191 
00192     if ( first_time )
00193     {
00194         long sgemm_min, dgemm_min, cgemm_min, zgemm_min;
00195         
00196         // Find the blocksizes associated with FLA_DIMENSION_MIN.
00197         sgemm_min = min( sgemm_p, sgemm_q );
00198         dgemm_min = min( dgemm_p, dgemm_q );
00199         cgemm_min = min( cgemm_p, cgemm_q );
00200         zgemm_min = min( zgemm_p, zgemm_q );
00201 
00202         // Set the values for each datatype and dimension constant.
00203         fla_goto_gemm_blocksize[FLA_S_INDEX][FLA_DIM_M_INDEX]   = sgemm_p;
00204         fla_goto_gemm_blocksize[FLA_S_INDEX][FLA_DIM_K_INDEX]   = sgemm_q;
00205         fla_goto_gemm_blocksize[FLA_S_INDEX][FLA_DIM_N_INDEX]   = sgemm_r;
00206         fla_goto_gemm_blocksize[FLA_S_INDEX][FLA_DIM_MIN_INDEX] = sgemm_min;
00207 
00208         fla_goto_gemm_blocksize[FLA_D_INDEX][FLA_DIM_M_INDEX]   = dgemm_p;
00209         fla_goto_gemm_blocksize[FLA_D_INDEX][FLA_DIM_K_INDEX]   = dgemm_q;
00210         fla_goto_gemm_blocksize[FLA_D_INDEX][FLA_DIM_N_INDEX]   = dgemm_r;
00211         fla_goto_gemm_blocksize[FLA_D_INDEX][FLA_DIM_MIN_INDEX] = dgemm_min;
00212 
00213         fla_goto_gemm_blocksize[FLA_C_INDEX][FLA_DIM_M_INDEX]   = cgemm_p;
00214         fla_goto_gemm_blocksize[FLA_C_INDEX][FLA_DIM_K_INDEX]   = cgemm_q;
00215         fla_goto_gemm_blocksize[FLA_C_INDEX][FLA_DIM_N_INDEX]   = cgemm_r;
00216         fla_goto_gemm_blocksize[FLA_C_INDEX][FLA_DIM_MIN_INDEX] = cgemm_min;
00217 
00218         fla_goto_gemm_blocksize[FLA_Z_INDEX][FLA_DIM_M_INDEX]   = zgemm_p;
00219         fla_goto_gemm_blocksize[FLA_Z_INDEX][FLA_DIM_K_INDEX]   = zgemm_q;
00220         fla_goto_gemm_blocksize[FLA_Z_INDEX][FLA_DIM_N_INDEX]   = zgemm_r;
00221         fla_goto_gemm_blocksize[FLA_Z_INDEX][FLA_DIM_MIN_INDEX] = zgemm_min;
00222 
00223         first_time = FALSE;
00224     }
00225 
00226     // Compute the index of the requested datatype.
00227     dt_index  = dt  & FLA_DTYPE_INDEX_MASK;
00228     dim_index = dim & FLA_DIM_INDEX_MASK;
00229 
00230     // Index into the array and choose the appropriate blocksize.
00231     b_val = ( dim_t ) fla_goto_gemm_blocksize[dt_index][dim_index];
00232 
00233 #else
00234 
00235     // Assign the return value to a default sane blocksize in case
00236     // we cannot access the libgoto symbols.
00237     if      ( dim == FLA_DIMENSION_M )
00238         b_val = FLA_DEFAULT_M_BLOCKSIZE;
00239     else if ( dim == FLA_DIMENSION_K )
00240         b_val = FLA_DEFAULT_K_BLOCKSIZE;
00241     else if ( dim == FLA_DIMENSION_N )
00242         b_val = FLA_DEFAULT_N_BLOCKSIZE;
00243     else if ( dim == FLA_DIMENSION_MIN )
00244     {
00245         b_val = min( FLA_DEFAULT_M_BLOCKSIZE, FLA_DEFAULT_K_BLOCKSIZE );
00246         b_val = min( b_val, FLA_DEFAULT_N_BLOCKSIZE );
00247     }
00248 
00249 #endif
00250 
00251     // Return the blocksize.
00252     return b_val;
00253 }

F_INT FLA_F2C() fla_query_blocksize_f ( F_INT *  dt,
F_INT *  dim 
)

References FLA_Query_blocksize().

00257 {
00258   return ( F_INT ) FLA_Query_blocksize( *( ( FLA_Datatype  * ) dt  ),
00259                                         *( ( FLA_Dimension * ) dim ) );
00260 }

fla_blocksize_t* FLA_Query_blocksizes ( FLA_Dimension  dim  ) 

References FLA_Blocksize_s::c, FLA_Blocksize_s::d, FLA_Blocksize_create(), FLA_Query_blocksize(), FLA_Blocksize_s::s, and FLA_Blocksize_s::z.

Referenced by FLA_Apply_Q_UT_cntl_init(), FLA_Apply_Q_UT_UD_cntl_init(), FLA_Chol_cntl_init(), FLA_Gemm_cntl_init(), FLA_Hemm_cntl_init(), FLA_Her2k_cntl_init(), FLA_Herk_cntl_init(), FLA_Hess_cntl_init(), FLA_LQ_UT_cntl_init(), FLA_LU_nopiv_cntl_init(), FLA_LU_piv_cntl_init(), FLA_QR_UT_cntl_init(), FLA_QR_UT_UD_cntl_init(), FLA_SPDinv_cntl_init(), FLA_Sylv_cntl_init(), FLA_Symm_cntl_init(), FLA_Syr2k_cntl_init(), FLA_Syrk_cntl_init(), FLA_Transpose_cntl_init(), FLA_Trinv_cntl_init(), FLA_Trmm_cntl_init(), FLA_Trsm_cntl_init(), FLA_Ttmm_cntl_init(), and FLASH_SPDinv_cntl_init().

00165 {
00166     fla_blocksize_t* bp;
00167     
00168     // Create an FLA_Blocksize_t object.
00169     bp = FLA_Blocksize_create( 0, 0, 0, 0 );
00170     
00171     // Query the requested blocksize (m, k, or n dimension) for all of the
00172     // datatypes and package the results in an FLA_Blocksize_t structure.
00173     bp->s = FLA_Query_blocksize( FLA_FLOAT, dim );
00174     bp->d = FLA_Query_blocksize( FLA_DOUBLE, dim );
00175     bp->c = FLA_Query_blocksize( FLA_COMPLEX, dim );
00176     bp->z = FLA_Query_blocksize( FLA_DOUBLE_COMPLEX, dim );
00177     
00178     // Return a pointer to the structure.
00179     return bp;
00180 }

void* FLA_realloc ( void *  old_ptr,
size_t  size 
)

References FLA_Check_error_level(), FLA_Check_malloc_pointer(), FLA_free(), and FLA_malloc().

00131 {
00132   FLA_Error e_val;
00133   void*     new_ptr;
00134 
00135   // We can't do much if size is zero. To emulate realloc(), we must
00136   // return a NULL pointer, regardless of the value of old_ptr.
00137   if ( size == 0 )
00138   {
00139     // If the pointer is valid, free() it.
00140     if ( old_ptr != NULL )
00141       FLA_free( old_ptr );
00142 
00143     // If size is zero, we should return a NULL pointer.
00144     new_ptr = NULL;
00145   }
00146   else
00147   {
00148     // If old_ptr is NULL, allocate size bytes as if it were a first-time
00149     // FLA_malloc() request. Otherwise, proceed to realloc() the memory.
00150     if ( old_ptr == NULL )
00151     {
00152       new_ptr = FLA_malloc( size );
00153     }
00154     else
00155     {
00156       // At this point, we know that size is non-zero and old_ptr is valid.
00157 
00158       // Since we may need aligned addresses, we don't really want to call
00159       // realloc(), since it does not guarantee arbitrary aligned pointers.
00160       // But we can't implement it ourselves either, because we don't know
00161       // how large the original buffer is, therefor we don't know how much
00162       // to copy over after the new buffer is allocated. So we're stuck with
00163       // the system implementation.
00164       new_ptr = realloc( old_ptr, size );
00165 
00166       if ( FLA_Check_error_level() >= FLA_MIN_ERROR_CHECKING )
00167       {
00168         e_val = FLA_Check_malloc_pointer( new_ptr );
00169         FLA_Check_error_code( e_val );
00170       }
00171     }
00172   }
00173 
00174   // Return the pointer (either NULL, or the return value from FLA_malloc()
00175   // or realloc()).
00176   return new_ptr;
00177 }

FLA_Error FLA_Repart_1x2_to_1x3 ( FLA_Obj  AL,
FLA_Obj  AR,
FLA_Obj A0,
FLA_Obj A1,
FLA_Obj A2,
dim_t  nb,
FLA_Side  side 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Part_1x2(), FLA_Repart_1x2_to_1x3_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var2(), FLA_Apply_Q_UT_UD_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var3(), FLA_Axpy_blk_var3(), FLA_Axpy_blk_var4(), FLA_Copy_blk_var3(), FLA_Copy_blk_var4(), FLA_Gemm_hh_blk_var1(), FLA_Gemm_hh_blk_var2(), FLA_Gemm_hh_blk_var3(), FLA_Gemm_hh_blk_var4(), FLA_Gemm_hh_blk_var5(), FLA_Gemm_hh_blk_var6(), FLA_Gemm_hh_unb_var1(), FLA_Gemm_hh_unb_var2(), FLA_Gemm_hh_unb_var3(), FLA_Gemm_hh_unb_var4(), FLA_Gemm_hh_unb_var5(), FLA_Gemm_hh_unb_var6(), FLA_Gemm_hn_blk_var1(), FLA_Gemm_hn_blk_var2(), FLA_Gemm_hn_blk_var3(), FLA_Gemm_hn_blk_var4(), FLA_Gemm_hn_unb_var1(), FLA_Gemm_hn_unb_var2(), FLA_Gemm_hn_unb_var3(), FLA_Gemm_hn_unb_var4(), FLA_Gemm_ht_blk_var1(), FLA_Gemm_ht_blk_var2(), FLA_Gemm_ht_blk_var3(), FLA_Gemm_ht_blk_var4(), FLA_Gemm_ht_blk_var5(), FLA_Gemm_ht_blk_var6(), FLA_Gemm_ht_unb_var1(), FLA_Gemm_ht_unb_var2(), FLA_Gemm_ht_unb_var3(), FLA_Gemm_ht_unb_var4(), FLA_Gemm_ht_unb_var5(), FLA_Gemm_ht_unb_var6(), FLA_Gemm_nh_blk_var3(), FLA_Gemm_nh_blk_var4(), FLA_Gemm_nh_blk_var5(), FLA_Gemm_nh_blk_var6(), FLA_Gemm_nh_unb_var3(), FLA_Gemm_nh_unb_var4(), FLA_Gemm_nh_unb_var5(), FLA_Gemm_nh_unb_var6(), FLA_Gemm_nn_blk_var3(), FLA_Gemm_nn_blk_var4(), FLA_Gemm_nn_blk_var5(), FLA_Gemm_nn_blk_var6(), FLA_Gemm_nn_unb_var3(), FLA_Gemm_nn_unb_var4(), FLA_Gemm_nn_unb_var5(), FLA_Gemm_nn_unb_var6(), FLA_Gemm_nt_blk_var3(), FLA_Gemm_nt_blk_var4(), FLA_Gemm_nt_blk_var5(), FLA_Gemm_nt_blk_var6(), FLA_Gemm_nt_unb_var3(), FLA_Gemm_nt_unb_var4(), FLA_Gemm_nt_unb_var5(), FLA_Gemm_nt_unb_var6(), FLA_Gemm_th_blk_var1(), FLA_Gemm_th_blk_var2(), FLA_Gemm_th_blk_var3(), FLA_Gemm_th_blk_var4(), FLA_Gemm_th_blk_var5(), FLA_Gemm_th_blk_var6(), FLA_Gemm_th_unb_var1(), FLA_Gemm_th_unb_var2(), FLA_Gemm_th_unb_var3(), FLA_Gemm_th_unb_var4(), FLA_Gemm_th_unb_var5(), FLA_Gemm_th_unb_var6(), FLA_Gemm_tn_blk_var1(), FLA_Gemm_tn_blk_var2(), FLA_Gemm_tn_blk_var3(), FLA_Gemm_tn_blk_var4(), FLA_Gemm_tn_unb_var1(), FLA_Gemm_tn_unb_var2(), FLA_Gemm_tn_unb_var3(), FLA_Gemm_tn_unb_var4(), FLA_Gemm_tt_blk_var1(), FLA_Gemm_tt_blk_var2(), FLA_Gemm_tt_blk_var3(), FLA_Gemm_tt_blk_var4(), FLA_Gemm_tt_blk_var5(), FLA_Gemm_tt_blk_var6(), FLA_Gemm_tt_unb_var1(), FLA_Gemm_tt_unb_var2(), FLA_Gemm_tt_unb_var3(), FLA_Gemm_tt_unb_var4(), FLA_Gemm_tt_unb_var5(), FLA_Gemm_tt_unb_var6(), FLA_Gemv_c_blk_var1(), FLA_Gemv_c_blk_var2(), FLA_Gemv_n_blk_var5(), FLA_Gemv_n_blk_var6(), FLA_Gemv_t_blk_var1(), FLA_Gemv_t_blk_var2(), FLA_Hemm_ll_blk_var10(), FLA_Hemm_ll_blk_var9(), FLA_Hemm_ll_unb_var10(), FLA_Hemm_ll_unb_var9(), FLA_Hemm_lu_blk_var10(), FLA_Hemm_lu_blk_var9(), FLA_Hemm_lu_unb_var10(), FLA_Hemm_lu_unb_var9(), FLA_Hemm_rl_blk_var1(), FLA_Hemm_rl_blk_var2(), FLA_Hemm_rl_blk_var3(), FLA_Hemm_rl_blk_var4(), FLA_Hemm_rl_blk_var5(), FLA_Hemm_rl_blk_var6(), FLA_Hemm_rl_blk_var7(), FLA_Hemm_rl_blk_var8(), FLA_Hemm_rl_unb_var1(), FLA_Hemm_rl_unb_var2(), FLA_Hemm_rl_unb_var3(), FLA_Hemm_rl_unb_var4(), FLA_Hemm_rl_unb_var5(), FLA_Hemm_rl_unb_var6(), FLA_Hemm_rl_unb_var7(), FLA_Hemm_rl_unb_var8(), FLA_Hemm_ru_blk_var1(), FLA_Hemm_ru_blk_var2(), FLA_Hemm_ru_blk_var3(), FLA_Hemm_ru_blk_var4(), FLA_Hemm_ru_blk_var5(), FLA_Hemm_ru_blk_var6(), FLA_Hemm_ru_blk_var7(), FLA_Hemm_ru_blk_var8(), FLA_Hemm_ru_unb_var1(), FLA_Hemm_ru_unb_var2(), FLA_Hemm_ru_unb_var3(), FLA_Hemm_ru_unb_var4(), FLA_Hemm_ru_unb_var5(), FLA_Hemm_ru_unb_var6(), FLA_Hemm_ru_unb_var7(), FLA_Hemm_ru_unb_var8(), FLA_Her2k_lh_blk_var1(), FLA_Her2k_lh_blk_var2(), FLA_Her2k_lh_blk_var3(), FLA_Her2k_lh_blk_var4(), FLA_Her2k_lh_blk_var5(), FLA_Her2k_lh_blk_var6(), FLA_Her2k_lh_blk_var7(), FLA_Her2k_lh_blk_var8(), FLA_Her2k_lh_unb_var1(), FLA_Her2k_lh_unb_var2(), FLA_Her2k_lh_unb_var3(), FLA_Her2k_lh_unb_var4(), FLA_Her2k_lh_unb_var5(), FLA_Her2k_lh_unb_var6(), FLA_Her2k_lh_unb_var7(), FLA_Her2k_lh_unb_var8(), FLA_Her2k_ln_blk_var10(), FLA_Her2k_ln_blk_var9(), FLA_Her2k_ln_unb_var10(), FLA_Her2k_ln_unb_var9(), FLA_Her2k_uh_blk_var1(), FLA_Her2k_uh_blk_var2(), FLA_Her2k_uh_blk_var3(), FLA_Her2k_uh_blk_var4(), FLA_Her2k_uh_blk_var5(), FLA_Her2k_uh_blk_var6(), FLA_Her2k_uh_blk_var7(), FLA_Her2k_uh_blk_var8(), FLA_Her2k_uh_unb_var1(), FLA_Her2k_uh_unb_var2(), FLA_Her2k_uh_unb_var3(), FLA_Her2k_uh_unb_var4(), FLA_Her2k_uh_unb_var5(), FLA_Her2k_uh_unb_var6(), FLA_Her2k_uh_unb_var7(), FLA_Her2k_uh_unb_var8(), FLA_Her2k_un_blk_var10(), FLA_Her2k_un_blk_var9(), FLA_Her2k_un_unb_var10(), FLA_Her2k_un_unb_var9(), FLA_Herk_lh_blk_var1(), FLA_Herk_lh_blk_var2(), FLA_Herk_lh_blk_var3(), FLA_Herk_lh_blk_var4(), FLA_Herk_lh_unb_var1(), FLA_Herk_lh_unb_var2(), FLA_Herk_lh_unb_var3(), FLA_Herk_lh_unb_var4(), FLA_Herk_ln_blk_var5(), FLA_Herk_ln_blk_var6(), FLA_Herk_ln_unb_var5(), FLA_Herk_ln_unb_var6(), FLA_Herk_uh_blk_var1(), FLA_Herk_uh_blk_var2(), FLA_Herk_uh_blk_var3(), FLA_Herk_uh_blk_var4(), FLA_Herk_uh_unb_var1(), FLA_Herk_uh_unb_var2(), FLA_Herk_uh_unb_var3(), FLA_Herk_uh_unb_var4(), FLA_Herk_un_blk_var5(), FLA_Herk_un_blk_var6(), FLA_Herk_un_unb_var5(), FLA_Herk_un_unb_var6(), FLA_LU_piv_blk_var3(), FLA_LU_piv_unb_var3(), FLA_Norm1(), FLA_QR_UT_blk_var2(), FLA_QR_UT_inc_blk_var2(), FLA_QR_UT_recover_tau(), FLA_QR_UT_UD_Accum_T_unb_var1(), FLA_QR_UT_UD_blk_var1(), FLA_SA_FS_blk(), FLA_SA_LU_blk(), FLA_Swap_t_blk_var1(), FLA_Swap_t_blk_var2(), FLA_Sylv_nn_blk_var17(), FLA_Sylv_nn_blk_var18(), FLA_Sylv_nt_blk_var17(), FLA_Sylv_nt_blk_var18(), FLA_Sylv_tn_blk_var17(), FLA_Sylv_tn_blk_var18(), FLA_Sylv_tt_blk_var17(), FLA_Sylv_tt_blk_var18(), FLA_Symm_ll_blk_var10(), FLA_Symm_ll_blk_var9(), FLA_Symm_ll_unb_var10(), FLA_Symm_ll_unb_var9(), FLA_Symm_lu_blk_var10(), FLA_Symm_lu_blk_var9(), FLA_Symm_lu_unb_var10(), FLA_Symm_lu_unb_var9(), FLA_Symm_rl_blk_var1(), FLA_Symm_rl_blk_var2(), FLA_Symm_rl_blk_var3(), FLA_Symm_rl_blk_var4(), FLA_Symm_rl_blk_var5(), FLA_Symm_rl_blk_var6(), FLA_Symm_rl_blk_var7(), FLA_Symm_rl_blk_var8(), FLA_Symm_rl_unb_var1(), FLA_Symm_rl_unb_var2(), FLA_Symm_rl_unb_var3(), FLA_Symm_rl_unb_var4(), FLA_Symm_rl_unb_var5(), FLA_Symm_rl_unb_var6(), FLA_Symm_rl_unb_var7(), FLA_Symm_rl_unb_var8(), FLA_Symm_ru_blk_var1(), FLA_Symm_ru_blk_var2(), FLA_Symm_ru_blk_var3(), FLA_Symm_ru_blk_var4(), FLA_Symm_ru_blk_var5(), FLA_Symm_ru_blk_var6(), FLA_Symm_ru_blk_var7(), FLA_Symm_ru_blk_var8(), FLA_Symm_ru_unb_var1(), FLA_Symm_ru_unb_var2(), FLA_Symm_ru_unb_var3(), FLA_Symm_ru_unb_var4(), FLA_Symm_ru_unb_var5(), FLA_Symm_ru_unb_var6(), FLA_Symm_ru_unb_var7(), FLA_Symm_ru_unb_var8(), FLA_Syr2k_ln_blk_var10(), FLA_Syr2k_ln_blk_var9(), FLA_Syr2k_ln_unb_var10(), FLA_Syr2k_ln_unb_var9(), FLA_Syr2k_lt_blk_var1(), FLA_Syr2k_lt_blk_var2(), FLA_Syr2k_lt_blk_var3(), FLA_Syr2k_lt_blk_var4(), FLA_Syr2k_lt_blk_var5(), FLA_Syr2k_lt_blk_var6(), FLA_Syr2k_lt_blk_var7(), FLA_Syr2k_lt_blk_var8(), FLA_Syr2k_lt_unb_var1(), FLA_Syr2k_lt_unb_var2(), FLA_Syr2k_lt_unb_var3(), FLA_Syr2k_lt_unb_var4(), FLA_Syr2k_lt_unb_var5(), FLA_Syr2k_lt_unb_var6(), FLA_Syr2k_lt_unb_var7(), FLA_Syr2k_lt_unb_var8(), FLA_Syr2k_un_blk_var10(), FLA_Syr2k_un_blk_var9(), FLA_Syr2k_un_unb_var10(), FLA_Syr2k_un_unb_var9(), FLA_Syr2k_ut_blk_var1(), FLA_Syr2k_ut_blk_var2(), FLA_Syr2k_ut_blk_var3(), FLA_Syr2k_ut_blk_var4(), FLA_Syr2k_ut_blk_var5(), FLA_Syr2k_ut_blk_var6(), FLA_Syr2k_ut_blk_var7(), FLA_Syr2k_ut_blk_var8(), FLA_Syr2k_ut_unb_var1(), FLA_Syr2k_ut_unb_var2(), FLA_Syr2k_ut_unb_var3(), FLA_Syr2k_ut_unb_var4(), FLA_Syr2k_ut_unb_var5(), FLA_Syr2k_ut_unb_var6(), FLA_Syr2k_ut_unb_var7(), FLA_Syr2k_ut_unb_var8(), FLA_Syrk_ln_blk_var5(), FLA_Syrk_ln_blk_var6(), FLA_Syrk_ln_unb_var5(), FLA_Syrk_ln_unb_var6(), FLA_Syrk_lt_blk_var1(), FLA_Syrk_lt_blk_var2(), FLA_Syrk_lt_blk_var3(), FLA_Syrk_lt_blk_var4(), FLA_Syrk_lt_unb_var1(), FLA_Syrk_lt_unb_var2(), FLA_Syrk_lt_unb_var3(), FLA_Syrk_lt_unb_var4(), FLA_Syrk_un_blk_var5(), FLA_Syrk_un_blk_var6(), FLA_Syrk_un_unb_var5(), FLA_Syrk_un_unb_var6(), FLA_Syrk_ut_blk_var1(), FLA_Syrk_ut_blk_var2(), FLA_Syrk_ut_blk_var3(), FLA_Syrk_ut_blk_var4(), FLA_Syrk_ut_unb_var1(), FLA_Syrk_ut_unb_var2(), FLA_Syrk_ut_unb_var3(), FLA_Syrk_ut_unb_var4(), FLA_Trmm_llh_blk_var3(), FLA_Trmm_llh_blk_var4(), FLA_Trmm_llh_unb_var3(), FLA_Trmm_llh_unb_var4(), FLA_Trmm_lln_blk_var3(), FLA_Trmm_lln_blk_var4(), FLA_Trmm_lln_unb_var3(), FLA_Trmm_lln_unb_var4(), FLA_Trmm_llt_blk_var3(), FLA_Trmm_llt_blk_var4(), FLA_Trmm_llt_unb_var3(), FLA_Trmm_llt_unb_var4(), FLA_Trmm_luh_blk_var3(), FLA_Trmm_luh_blk_var4(), FLA_Trmm_luh_unb_var3(), FLA_Trmm_luh_unb_var4(), FLA_Trmm_lun_blk_var3(), FLA_Trmm_lun_blk_var4(), FLA_Trmm_lun_unb_var3(), FLA_Trmm_lun_unb_var4(), FLA_Trmm_lut_blk_var3(), FLA_Trmm_lut_blk_var4(), FLA_Trmm_lut_unb_var3(), FLA_Trmm_lut_unb_var4(), FLA_Trmm_rlh_blk_var1(), FLA_Trmm_rlh_blk_var2(), FLA_Trmm_rlh_unb_var1(), FLA_Trmm_rlh_unb_var2(), FLA_Trmm_rln_blk_var1(), FLA_Trmm_rln_blk_var2(), FLA_Trmm_rln_unb_var1(), FLA_Trmm_rln_unb_var2(), FLA_Trmm_rlt_blk_var1(), FLA_Trmm_rlt_blk_var2(), FLA_Trmm_rlt_unb_var1(), FLA_Trmm_rlt_unb_var2(), FLA_Trmm_ruh_blk_var1(), FLA_Trmm_ruh_blk_var2(), FLA_Trmm_ruh_unb_var1(), FLA_Trmm_ruh_unb_var2(), FLA_Trmm_run_blk_var1(), FLA_Trmm_run_blk_var2(), FLA_Trmm_run_unb_var1(), FLA_Trmm_run_unb_var2(), FLA_Trmm_rut_blk_var1(), FLA_Trmm_rut_blk_var2(), FLA_Trmm_rut_unb_var1(), FLA_Trmm_rut_unb_var2(), FLA_Trsm_llh_blk_var3(), FLA_Trsm_llh_blk_var4(), FLA_Trsm_llh_unb_var3(), FLA_Trsm_llh_unb_var4(), FLA_Trsm_lln_blk_var3(), FLA_Trsm_lln_blk_var4(), FLA_Trsm_lln_unb_var3(), FLA_Trsm_lln_unb_var4(), FLA_Trsm_llt_blk_var3(), FLA_Trsm_llt_blk_var4(), FLA_Trsm_llt_unb_var3(), FLA_Trsm_llt_unb_var4(), FLA_Trsm_luh_blk_var3(), FLA_Trsm_luh_blk_var4(), FLA_Trsm_luh_unb_var3(), FLA_Trsm_luh_unb_var4(), FLA_Trsm_lun_blk_var3(), FLA_Trsm_lun_blk_var4(), FLA_Trsm_lun_unb_var3(), FLA_Trsm_lun_unb_var4(), FLA_Trsm_lut_blk_var3(), FLA_Trsm_lut_blk_var4(), FLA_Trsm_lut_unb_var3(), FLA_Trsm_lut_unb_var4(), FLA_Trsm_rlh_blk_var1(), FLA_Trsm_rlh_blk_var2(), FLA_Trsm_rlh_unb_var1(), FLA_Trsm_rlh_unb_var2(), FLA_Trsm_rln_blk_var1(), FLA_Trsm_rln_blk_var2(), FLA_Trsm_rln_unb_var1(), FLA_Trsm_rln_unb_var2(), FLA_Trsm_rlt_blk_var1(), FLA_Trsm_rlt_blk_var2(), FLA_Trsm_rlt_unb_var1(), FLA_Trsm_rlt_unb_var2(), FLA_Trsm_ruh_blk_var1(), FLA_Trsm_ruh_blk_var2(), FLA_Trsm_ruh_unb_var1(), FLA_Trsm_ruh_unb_var2(), FLA_Trsm_run_blk_var1(), FLA_Trsm_run_blk_var2(), FLA_Trsm_run_unb_var1(), FLA_Trsm_run_unb_var2(), FLA_Trsm_rut_blk_var1(), FLA_Trsm_rut_blk_var2(), FLA_Trsm_rut_unb_var1(), FLA_Trsm_rut_unb_var2(), FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_Obj_attach_buffer_hierarchy(), FLASH_Obj_create_hierarchy(), FLASH_Obj_scalar_width(), FLASH_SA_FS(), and FLASH_Trsm_piv().

00305 {
00306   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00307     FLA_Repart_1x2_to_1x3_check( AL, AR,        A0, A1, A2,
00308                                  nb, side );
00309 
00310   if ( side == FLA_LEFT )
00311   {
00312     FLA_Part_1x2( AL,    A0, A1,    nb, FLA_RIGHT );
00313  
00314     A2->m    = AR.m;
00315     A2->n    = AR.n;
00316     A2->offm = AR.offm;
00317     A2->offn = AR.offn;
00318     A2->base = AR.base;
00319   }
00320   else
00321   {
00322     A0->m    = AL.m;
00323     A0->n    = AL.n;
00324     A0->offm = AL.offm;
00325     A0->offn = AL.offn;
00326     A0->base = AL.base;
00327 
00328     FLA_Part_1x2( AR,    A1, A2,    nb, FLA_LEFT );
00329   }
00330 
00331   return FLA_SUCCESS;
00332 }

FLA_Error FLA_Repart_1x2_to_1x3_check ( FLA_Obj  AL,
FLA_Obj  AR,
FLA_Obj A0,
FLA_Obj A1,
FLA_Obj A2,
dim_t  nb,
FLA_Side  side 
)

References FLA_Check_attempted_repart_1x2(), FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_side().

Referenced by FLA_Repart_1x2_to_1x3().

00038 {
00039   FLA_Error e_val;
00040 
00041   e_val = FLA_Check_valid_object_datatype( AL );
00042   FLA_Check_error_code( e_val );
00043 
00044   e_val = FLA_Check_valid_object_datatype( AR );
00045   FLA_Check_error_code( e_val );
00046 
00047   e_val = FLA_Check_null_pointer( A0 );
00048   FLA_Check_error_code( e_val );
00049 
00050   e_val = FLA_Check_null_pointer( A1 );
00051   FLA_Check_error_code( e_val );
00052 
00053   e_val = FLA_Check_null_pointer( A2 );
00054   FLA_Check_error_code( e_val );
00055 
00056   e_val = FLA_Check_valid_side( side );
00057   FLA_Check_error_code( e_val );
00058 
00059   if      ( side == FLA_LEFT )
00060   {
00061     e_val = FLA_Check_attempted_repart_1x2( AL, nb );
00062     FLA_Check_error_code( e_val );
00063   }
00064   else if ( side == FLA_RIGHT )
00065   {
00066     e_val = FLA_Check_attempted_repart_1x2( AR, nb );
00067     FLA_Check_error_code( e_val );
00068   }
00069 
00070   // Needed: check for adjacency, similar to those in FLA_Merge_*().
00071 
00072   return FLA_SUCCESS;
00073 }

FLA_Error FLA_Repart_2x1_to_3x1 ( FLA_Obj  AT,
FLA_Obj A0,
FLA_Obj A1,
FLA_Obj  AB,
FLA_Obj A2,
dim_t  mb,
FLA_Side  side 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Part_2x1(), FLA_Repart_2x1_to_3x1_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Accum_T_UT_fc_unb_var1(), FLA_Apply_Q_UT_inc_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var1(), FLA_Apply_Q_UT_UD_lhc_blk_var2(), FLA_Axpy_blk_var1(), FLA_Axpy_blk_var2(), FLA_Copy_blk_var1(), FLA_Copy_blk_var2(), FLA_Gemm_hh_blk_var1(), FLA_Gemm_hh_blk_var2(), FLA_Gemm_hh_blk_var3(), FLA_Gemm_hh_blk_var4(), FLA_Gemm_hh_blk_var5(), FLA_Gemm_hh_blk_var6(), FLA_Gemm_hh_unb_var1(), FLA_Gemm_hh_unb_var2(), FLA_Gemm_hh_unb_var3(), FLA_Gemm_hh_unb_var4(), FLA_Gemm_hh_unb_var5(), FLA_Gemm_hh_unb_var6(), FLA_Gemm_hn_blk_var1(), FLA_Gemm_hn_blk_var2(), FLA_Gemm_hn_blk_var5(), FLA_Gemm_hn_blk_var6(), FLA_Gemm_hn_unb_var1(), FLA_Gemm_hn_unb_var2(), FLA_Gemm_hn_unb_var5(), FLA_Gemm_hn_unb_var6(), FLA_Gemm_ht_blk_var1(), FLA_Gemm_ht_blk_var2(), FLA_Gemm_ht_blk_var3(), FLA_Gemm_ht_blk_var4(), FLA_Gemm_ht_blk_var5(), FLA_Gemm_ht_blk_var6(), FLA_Gemm_ht_unb_var1(), FLA_Gemm_ht_unb_var2(), FLA_Gemm_ht_unb_var3(), FLA_Gemm_ht_unb_var4(), FLA_Gemm_ht_unb_var5(), FLA_Gemm_ht_unb_var6(), FLA_Gemm_nh_blk_var1(), FLA_Gemm_nh_blk_var2(), FLA_Gemm_nh_blk_var3(), FLA_Gemm_nh_blk_var4(), FLA_Gemm_nh_unb_var1(), FLA_Gemm_nh_unb_var2(), FLA_Gemm_nh_unb_var3(), FLA_Gemm_nh_unb_var4(), FLA_Gemm_nn_blk_var1(), FLA_Gemm_nn_blk_var2(), FLA_Gemm_nn_blk_var5(), FLA_Gemm_nn_blk_var6(), FLA_Gemm_nn_unb_var1(), FLA_Gemm_nn_unb_var2(), FLA_Gemm_nn_unb_var5(), FLA_Gemm_nn_unb_var6(), FLA_Gemm_nt_blk_var1(), FLA_Gemm_nt_blk_var2(), FLA_Gemm_nt_blk_var3(), FLA_Gemm_nt_blk_var4(), FLA_Gemm_nt_unb_var1(), FLA_Gemm_nt_unb_var2(), FLA_Gemm_nt_unb_var3(), FLA_Gemm_nt_unb_var4(), FLA_Gemm_th_blk_var1(), FLA_Gemm_th_blk_var2(), FLA_Gemm_th_blk_var3(), FLA_Gemm_th_blk_var4(), FLA_Gemm_th_blk_var5(), FLA_Gemm_th_blk_var6(), FLA_Gemm_th_unb_var1(), FLA_Gemm_th_unb_var2(), FLA_Gemm_th_unb_var3(), FLA_Gemm_th_unb_var4(), FLA_Gemm_th_unb_var5(), FLA_Gemm_th_unb_var6(), FLA_Gemm_tn_blk_var1(), FLA_Gemm_tn_blk_var2(), FLA_Gemm_tn_blk_var5(), FLA_Gemm_tn_blk_var6(), FLA_Gemm_tn_unb_var1(), FLA_Gemm_tn_unb_var2(), FLA_Gemm_tn_unb_var5(), FLA_Gemm_tn_unb_var6(), FLA_Gemm_tt_blk_var1(), FLA_Gemm_tt_blk_var2(), FLA_Gemm_tt_blk_var3(), FLA_Gemm_tt_blk_var4(), FLA_Gemm_tt_blk_var5(), FLA_Gemm_tt_blk_var6(), FLA_Gemm_tt_unb_var1(), FLA_Gemm_tt_unb_var2(), FLA_Gemm_tt_unb_var3(), FLA_Gemm_tt_unb_var4(), FLA_Gemm_tt_unb_var5(), FLA_Gemm_tt_unb_var6(), FLA_Gemv_c_blk_var1(), FLA_Gemv_c_blk_var2(), FLA_Gemv_c_blk_var5(), FLA_Gemv_c_blk_var6(), FLA_Gemv_n_blk_var1(), FLA_Gemv_n_blk_var2(), FLA_Gemv_n_blk_var5(), FLA_Gemv_n_blk_var6(), FLA_Gemv_t_blk_var1(), FLA_Gemv_t_blk_var2(), FLA_Gemv_t_blk_var5(), FLA_Gemv_t_blk_var6(), FLA_Hemm_ll_blk_var1(), FLA_Hemm_ll_blk_var2(), FLA_Hemm_ll_blk_var3(), FLA_Hemm_ll_blk_var4(), FLA_Hemm_ll_blk_var5(), FLA_Hemm_ll_blk_var6(), FLA_Hemm_ll_blk_var7(), FLA_Hemm_ll_blk_var8(), FLA_Hemm_ll_unb_var1(), FLA_Hemm_ll_unb_var2(), FLA_Hemm_ll_unb_var3(), FLA_Hemm_ll_unb_var4(), FLA_Hemm_ll_unb_var5(), FLA_Hemm_ll_unb_var6(), FLA_Hemm_ll_unb_var7(), FLA_Hemm_ll_unb_var8(), FLA_Hemm_lu_blk_var1(), FLA_Hemm_lu_blk_var2(), FLA_Hemm_lu_blk_var3(), FLA_Hemm_lu_blk_var4(), FLA_Hemm_lu_blk_var5(), FLA_Hemm_lu_blk_var6(), FLA_Hemm_lu_blk_var7(), FLA_Hemm_lu_blk_var8(), FLA_Hemm_lu_unb_var1(), FLA_Hemm_lu_unb_var2(), FLA_Hemm_lu_unb_var3(), FLA_Hemm_lu_unb_var4(), FLA_Hemm_lu_unb_var5(), FLA_Hemm_lu_unb_var6(), FLA_Hemm_lu_unb_var7(), FLA_Hemm_lu_unb_var8(), FLA_Hemm_rl_blk_var10(), FLA_Hemm_rl_blk_var9(), FLA_Hemm_rl_unb_var10(), FLA_Hemm_rl_unb_var9(), FLA_Hemm_ru_blk_var10(), FLA_Hemm_ru_blk_var9(), FLA_Hemm_ru_unb_var10(), FLA_Hemm_ru_unb_var9(), FLA_Her2k_lh_blk_var10(), FLA_Her2k_lh_blk_var9(), FLA_Her2k_lh_unb_var10(), FLA_Her2k_lh_unb_var9(), FLA_Her2k_ln_blk_var1(), FLA_Her2k_ln_blk_var2(), FLA_Her2k_ln_blk_var3(), FLA_Her2k_ln_blk_var4(), FLA_Her2k_ln_blk_var5(), FLA_Her2k_ln_blk_var6(), FLA_Her2k_ln_blk_var7(), FLA_Her2k_ln_blk_var8(), FLA_Her2k_ln_unb_var1(), FLA_Her2k_ln_unb_var2(), FLA_Her2k_ln_unb_var3(), FLA_Her2k_ln_unb_var4(), FLA_Her2k_ln_unb_var5(), FLA_Her2k_ln_unb_var6(), FLA_Her2k_ln_unb_var7(), FLA_Her2k_ln_unb_var8(), FLA_Her2k_uh_blk_var10(), FLA_Her2k_uh_blk_var9(), FLA_Her2k_uh_unb_var10(), FLA_Her2k_uh_unb_var9(), FLA_Her2k_un_blk_var1(), FLA_Her2k_un_blk_var2(), FLA_Her2k_un_blk_var3(), FLA_Her2k_un_blk_var4(), FLA_Her2k_un_blk_var5(), FLA_Her2k_un_blk_var6(), FLA_Her2k_un_blk_var7(), FLA_Her2k_un_blk_var8(), FLA_Her2k_un_unb_var1(), FLA_Her2k_un_unb_var2(), FLA_Her2k_un_unb_var3(), FLA_Her2k_un_unb_var4(), FLA_Her2k_un_unb_var5(), FLA_Her2k_un_unb_var6(), FLA_Her2k_un_unb_var7(), FLA_Her2k_un_unb_var8(), FLA_Herk_lh_blk_var5(), FLA_Herk_lh_blk_var6(), FLA_Herk_lh_unb_var5(), FLA_Herk_lh_unb_var6(), FLA_Herk_ln_blk_var1(), FLA_Herk_ln_blk_var2(), FLA_Herk_ln_blk_var3(), FLA_Herk_ln_blk_var4(), FLA_Herk_ln_unb_var1(), FLA_Herk_ln_unb_var2(), FLA_Herk_ln_unb_var3(), FLA_Herk_ln_unb_var4(), FLA_Herk_uh_blk_var5(), FLA_Herk_uh_blk_var6(), FLA_Herk_uh_unb_var5(), FLA_Herk_uh_unb_var6(), FLA_Herk_un_blk_var1(), FLA_Herk_un_blk_var2(), FLA_Herk_un_blk_var3(), FLA_Herk_un_blk_var4(), FLA_Herk_un_unb_var1(), FLA_Herk_un_unb_var2(), FLA_Herk_un_unb_var3(), FLA_Herk_un_unb_var4(), FLA_LQ_UT_blk_var2(), FLA_LQ_UT_recover_tau(), FLA_LQ_UT_recover_tau_submatrix(), FLA_LU_piv_blk_var3(), FLA_LU_piv_blk_var4(), FLA_LU_piv_blk_var5(), FLA_LU_piv_unb_var3(), FLA_LU_piv_unb_var3b(), FLA_LU_piv_unb_var4(), FLA_LU_piv_unb_var5(), FLA_Norm_inf(), FLA_QR_UT_recover_tau(), FLA_QR_UT_recover_tau_submatrix(), FLA_QR_UT_UD_blk_var2(), FLA_SA_FS_blk(), FLA_SA_LU_blk(), FLA_Swap_t_blk_var1(), FLA_Swap_t_blk_var2(), FLA_Sylv_nn_blk_var15(), FLA_Sylv_nn_blk_var16(), FLA_Sylv_nt_blk_var15(), FLA_Sylv_nt_blk_var16(), FLA_Sylv_tn_blk_var15(), FLA_Sylv_tn_blk_var16(), FLA_Sylv_tt_blk_var15(), FLA_Sylv_tt_blk_var16(), FLA_Symm_ll_blk_var1(), FLA_Symm_ll_blk_var2(), FLA_Symm_ll_blk_var3(), FLA_Symm_ll_blk_var4(), FLA_Symm_ll_blk_var5(), FLA_Symm_ll_blk_var6(), FLA_Symm_ll_blk_var7(), FLA_Symm_ll_blk_var8(), FLA_Symm_ll_unb_var1(), FLA_Symm_ll_unb_var2(), FLA_Symm_ll_unb_var3(), FLA_Symm_ll_unb_var4(), FLA_Symm_ll_unb_var5(), FLA_Symm_ll_unb_var6(), FLA_Symm_ll_unb_var7(), FLA_Symm_ll_unb_var8(), FLA_Symm_lu_blk_var1(), FLA_Symm_lu_blk_var2(), FLA_Symm_lu_blk_var3(), FLA_Symm_lu_blk_var4(), FLA_Symm_lu_blk_var5(), FLA_Symm_lu_blk_var6(), FLA_Symm_lu_blk_var7(), FLA_Symm_lu_blk_var8(), FLA_Symm_lu_unb_var1(), FLA_Symm_lu_unb_var2(), FLA_Symm_lu_unb_var3(), FLA_Symm_lu_unb_var4(), FLA_Symm_lu_unb_var5(), FLA_Symm_lu_unb_var6(), FLA_Symm_lu_unb_var7(), FLA_Symm_lu_unb_var8(), FLA_Symm_rl_blk_var10(), FLA_Symm_rl_blk_var9(), FLA_Symm_rl_unb_var10(), FLA_Symm_rl_unb_var9(), FLA_Symm_ru_blk_var10(), FLA_Symm_ru_blk_var9(), FLA_Symm_ru_unb_var10(), FLA_Symm_ru_unb_var9(), FLA_Syr2k_ln_blk_var1(), FLA_Syr2k_ln_blk_var2(), FLA_Syr2k_ln_blk_var3(), FLA_Syr2k_ln_blk_var4(), FLA_Syr2k_ln_blk_var5(), FLA_Syr2k_ln_blk_var6(), FLA_Syr2k_ln_blk_var7(), FLA_Syr2k_ln_blk_var8(), FLA_Syr2k_ln_unb_var1(), FLA_Syr2k_ln_unb_var2(), FLA_Syr2k_ln_unb_var3(), FLA_Syr2k_ln_unb_var4(), FLA_Syr2k_ln_unb_var5(), FLA_Syr2k_ln_unb_var6(), FLA_Syr2k_ln_unb_var7(), FLA_Syr2k_ln_unb_var8(), FLA_Syr2k_lt_blk_var10(), FLA_Syr2k_lt_blk_var9(), FLA_Syr2k_lt_unb_var10(), FLA_Syr2k_lt_unb_var9(), FLA_Syr2k_un_blk_var1(), FLA_Syr2k_un_blk_var2(), FLA_Syr2k_un_blk_var3(), FLA_Syr2k_un_blk_var4(), FLA_Syr2k_un_blk_var5(), FLA_Syr2k_un_blk_var6(), FLA_Syr2k_un_blk_var7(), FLA_Syr2k_un_blk_var8(), FLA_Syr2k_un_unb_var1(), FLA_Syr2k_un_unb_var2(), FLA_Syr2k_un_unb_var3(), FLA_Syr2k_un_unb_var4(), FLA_Syr2k_un_unb_var5(), FLA_Syr2k_un_unb_var6(), FLA_Syr2k_un_unb_var7(), FLA_Syr2k_un_unb_var8(), FLA_Syr2k_ut_blk_var10(), FLA_Syr2k_ut_blk_var9(), FLA_Syr2k_ut_unb_var10(), FLA_Syr2k_ut_unb_var9(), FLA_Syrk_ln_blk_var1(), FLA_Syrk_ln_blk_var2(), FLA_Syrk_ln_blk_var3(), FLA_Syrk_ln_blk_var4(), FLA_Syrk_ln_unb_var1(), FLA_Syrk_ln_unb_var2(), FLA_Syrk_ln_unb_var3(), FLA_Syrk_ln_unb_var4(), FLA_Syrk_lt_blk_var5(), FLA_Syrk_lt_blk_var6(), FLA_Syrk_lt_unb_var5(), FLA_Syrk_lt_unb_var6(), FLA_Syrk_un_blk_var1(), FLA_Syrk_un_blk_var2(), FLA_Syrk_un_blk_var3(), FLA_Syrk_un_blk_var4(), FLA_Syrk_un_unb_var1(), FLA_Syrk_un_unb_var2(), FLA_Syrk_un_unb_var3(), FLA_Syrk_un_unb_var4(), FLA_Syrk_ut_blk_var5(), FLA_Syrk_ut_blk_var6(), FLA_Syrk_ut_unb_var5(), FLA_Syrk_ut_unb_var6(), FLA_Trmm_llh_blk_var1(), FLA_Trmm_llh_blk_var2(), FLA_Trmm_llh_unb_var1(), FLA_Trmm_llh_unb_var2(), FLA_Trmm_lln_blk_var1(), FLA_Trmm_lln_blk_var2(), FLA_Trmm_lln_unb_var1(), FLA_Trmm_lln_unb_var2(), FLA_Trmm_llt_blk_var1(), FLA_Trmm_llt_blk_var2(), FLA_Trmm_llt_unb_var1(), FLA_Trmm_llt_unb_var2(), FLA_Trmm_luh_blk_var1(), FLA_Trmm_luh_blk_var2(), FLA_Trmm_luh_unb_var1(), FLA_Trmm_luh_unb_var2(), FLA_Trmm_lun_blk_var1(), FLA_Trmm_lun_blk_var2(), FLA_Trmm_lun_unb_var1(), FLA_Trmm_lun_unb_var2(), FLA_Trmm_lut_blk_var1(), FLA_Trmm_lut_blk_var2(), FLA_Trmm_lut_unb_var1(), FLA_Trmm_lut_unb_var2(), FLA_Trmm_rlh_blk_var3(), FLA_Trmm_rlh_blk_var4(), FLA_Trmm_rlh_unb_var3(), FLA_Trmm_rlh_unb_var4(), FLA_Trmm_rln_blk_var3(), FLA_Trmm_rln_blk_var4(), FLA_Trmm_rln_unb_var3(), FLA_Trmm_rln_unb_var4(), FLA_Trmm_rlt_blk_var3(), FLA_Trmm_rlt_blk_var4(), FLA_Trmm_rlt_unb_var3(), FLA_Trmm_rlt_unb_var4(), FLA_Trmm_ruh_blk_var3(), FLA_Trmm_ruh_blk_var4(), FLA_Trmm_ruh_unb_var3(), FLA_Trmm_ruh_unb_var4(), FLA_Trmm_run_blk_var3(), FLA_Trmm_run_blk_var4(), FLA_Trmm_run_unb_var3(), FLA_Trmm_run_unb_var4(), FLA_Trmm_rut_blk_var3(), FLA_Trmm_rut_blk_var4(), FLA_Trmm_rut_unb_var3(), FLA_Trmm_rut_unb_var4(), FLA_Trsm_llh_blk_var1(), FLA_Trsm_llh_blk_var2(), FLA_Trsm_llh_unb_var1(), FLA_Trsm_llh_unb_var2(), FLA_Trsm_lln_blk_var1(), FLA_Trsm_lln_blk_var2(), FLA_Trsm_lln_unb_var1(), FLA_Trsm_lln_unb_var2(), FLA_Trsm_llt_blk_var1(), FLA_Trsm_llt_blk_var2(), FLA_Trsm_llt_unb_var1(), FLA_Trsm_llt_unb_var2(), FLA_Trsm_luh_blk_var1(), FLA_Trsm_luh_blk_var2(), FLA_Trsm_luh_unb_var1(), FLA_Trsm_luh_unb_var2(), FLA_Trsm_lun_blk_var1(), FLA_Trsm_lun_blk_var2(), FLA_Trsm_lun_unb_var1(), FLA_Trsm_lun_unb_var2(), FLA_Trsm_lut_blk_var1(), FLA_Trsm_lut_blk_var2(), FLA_Trsm_lut_unb_var1(), FLA_Trsm_lut_unb_var2(), FLA_Trsm_rlh_blk_var3(), FLA_Trsm_rlh_blk_var4(), FLA_Trsm_rlh_unb_var3(), FLA_Trsm_rlh_unb_var4(), FLA_Trsm_rln_blk_var3(), FLA_Trsm_rln_blk_var4(), FLA_Trsm_rln_unb_var3(), FLA_Trsm_rln_unb_var4(), FLA_Trsm_rlt_blk_var3(), FLA_Trsm_rlt_blk_var4(), FLA_Trsm_rlt_unb_var3(), FLA_Trsm_rlt_unb_var4(), FLA_Trsm_ruh_blk_var3(), FLA_Trsm_ruh_blk_var4(), FLA_Trsm_ruh_unb_var3(), FLA_Trsm_ruh_unb_var4(), FLA_Trsm_run_blk_var3(), FLA_Trsm_run_blk_var4(), FLA_Trsm_run_unb_var3(), FLA_Trsm_run_unb_var4(), FLA_Trsm_rut_blk_var3(), FLA_Trsm_rut_blk_var4(), FLA_Trsm_rut_unb_var3(), FLA_Trsm_rut_unb_var4(), FLA_Trsv_lc_blk_var1(), FLA_Trsv_lc_blk_var2(), FLA_Trsv_ln_blk_var1(), FLA_Trsv_ln_blk_var2(), FLA_Trsv_lt_blk_var1(), FLA_Trsv_lt_blk_var2(), FLA_Trsv_uc_blk_var1(), FLA_Trsv_uc_blk_var2(), FLA_Trsv_un_blk_var1(), FLA_Trsv_un_blk_var2(), FLA_Trsv_ut_blk_var1(), FLA_Trsv_ut_blk_var2(), FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_FS_incpiv_aux1(), FLASH_FS_incpiv_aux2(), FLASH_Obj_attach_buffer_hierarchy(), FLASH_Obj_scalar_length(), and FLASH_SA_LU().

00263 {
00264   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00265     FLA_Repart_2x1_to_3x1_check( AT,     A0, 
00266                                          A1, 
00267                                  AB,     A2,     mb, side );
00268 
00269   if ( side == FLA_TOP )
00270   {
00271     FLA_Part_2x1 ( AT,    A0, 
00272                           A1,    mb, FLA_BOTTOM );
00273  
00274     A2->m    = AB.m;
00275     A2->n    = AB.n;
00276     A2->offm = AB.offm;
00277     A2->offn = AB.offn;
00278     A2->base = AB.base;
00279   }
00280   else
00281   {
00282     A0->m    = AT.m;
00283     A0->n    = AT.n;
00284     A0->offm = AT.offm;
00285     A0->offn = AT.offn;
00286     A0->base = AT.base;
00287 
00288     FLA_Part_2x1 ( AB,    A1, 
00289                           A2,    mb, FLA_TOP );
00290   }
00291 
00292   return FLA_SUCCESS;
00293 }

FLA_Error FLA_Repart_2x1_to_3x1_check ( FLA_Obj  AT,
FLA_Obj A0,
FLA_Obj A1,
FLA_Obj  AB,
FLA_Obj A2,
dim_t  mb,
FLA_Side  side 
)

References FLA_Check_attempted_repart_2x1(), FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_side().

Referenced by FLA_Repart_2x1_to_3x1().

00039 {
00040   FLA_Error e_val;
00041 
00042   e_val = FLA_Check_valid_object_datatype( AT );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_valid_object_datatype( AB );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_null_pointer( A0 );
00049   FLA_Check_error_code( e_val );
00050 
00051   e_val = FLA_Check_null_pointer( A1 );
00052   FLA_Check_error_code( e_val );
00053 
00054   e_val = FLA_Check_null_pointer( A2 );
00055   FLA_Check_error_code( e_val );
00056 
00057   e_val = FLA_Check_valid_side( side );
00058   FLA_Check_error_code( e_val );
00059 
00060   if      ( side == FLA_TOP )
00061   {
00062     e_val = FLA_Check_attempted_repart_2x1( AT, mb );
00063     FLA_Check_error_code( e_val );
00064   }
00065   else if ( side == FLA_BOTTOM )
00066   {
00067     e_val = FLA_Check_attempted_repart_2x1( AB, mb );
00068     FLA_Check_error_code( e_val );
00069   }
00070 
00071   // Needed: check for adjacency, similar to those in FLA_Merge_*().
00072 
00073   return FLA_SUCCESS;
00074 }

FLA_Error FLA_Repart_2x2_to_3x3 ( FLA_Obj  ATL,
FLA_Obj  ATR,
FLA_Obj A00,
FLA_Obj A01,
FLA_Obj A02,
FLA_Obj A10,
FLA_Obj A11,
FLA_Obj A12,
FLA_Obj  ABL,
FLA_Obj  ABR,
FLA_Obj A20,
FLA_Obj A21,
FLA_Obj A22,
dim_t  mb,
dim_t  nb,
FLA_Quadrant  quadrant 
)

References FLA_Obj_view::base, FLA_Check_error_level(), FLA_Part_1x2(), FLA_Part_2x1(), FLA_Part_2x2(), FLA_Repart_2x2_to_3x3_check(), FLA_Obj_view::m, FLA_Obj_view::n, FLA_Obj_view::offm, and FLA_Obj_view::offn.

Referenced by FLA_Accum_T_UT_fc_unb_var1(), FLA_Apply_Q_UT_inc_lhc_blk_var1(), FLA_Apply_Q_UT_lhc_blk_var1(), FLA_Chol_l_blk_var1(), FLA_Chol_l_blk_var2(), FLA_Chol_l_blk_var3(), FLA_Chol_l_unb_var1(), FLA_Chol_l_unb_var2(), FLA_Chol_l_unb_var3(), FLA_Chol_u_blk_var1(), FLA_Chol_u_blk_var2(), FLA_Chol_u_blk_var3(), FLA_Chol_u_unb_var1(), FLA_Chol_u_unb_var2(), FLA_Chol_u_unb_var3(), FLA_Hemm_ll_blk_var1(), FLA_Hemm_ll_blk_var2(), FLA_Hemm_ll_blk_var3(), FLA_Hemm_ll_blk_var4(), FLA_Hemm_ll_blk_var5(), FLA_Hemm_ll_blk_var6(), FLA_Hemm_ll_blk_var7(), FLA_Hemm_ll_blk_var8(), FLA_Hemm_ll_unb_var1(), FLA_Hemm_ll_unb_var2(), FLA_Hemm_ll_unb_var3(), FLA_Hemm_ll_unb_var4(), FLA_Hemm_ll_unb_var5(), FLA_Hemm_ll_unb_var6(), FLA_Hemm_ll_unb_var7(), FLA_Hemm_ll_unb_var8(), FLA_Hemm_lu_blk_var1(), FLA_Hemm_lu_blk_var2(), FLA_Hemm_lu_blk_var3(), FLA_Hemm_lu_blk_var4(), FLA_Hemm_lu_blk_var5(), FLA_Hemm_lu_blk_var6(), FLA_Hemm_lu_blk_var7(), FLA_Hemm_lu_blk_var8(), FLA_Hemm_lu_unb_var1(), FLA_Hemm_lu_unb_var2(), FLA_Hemm_lu_unb_var3(), FLA_Hemm_lu_unb_var4(), FLA_Hemm_lu_unb_var5(), FLA_Hemm_lu_unb_var6(), FLA_Hemm_lu_unb_var7(), FLA_Hemm_lu_unb_var8(), FLA_Hemm_rl_blk_var1(), FLA_Hemm_rl_blk_var2(), FLA_Hemm_rl_blk_var3(), FLA_Hemm_rl_blk_var4(), FLA_Hemm_rl_blk_var5(), FLA_Hemm_rl_blk_var6(), FLA_Hemm_rl_blk_var7(), FLA_Hemm_rl_blk_var8(), FLA_Hemm_rl_unb_var1(), FLA_Hemm_rl_unb_var2(), FLA_Hemm_rl_unb_var3(), FLA_Hemm_rl_unb_var4(), FLA_Hemm_rl_unb_var5(), FLA_Hemm_rl_unb_var6(), FLA_Hemm_rl_unb_var7(), FLA_Hemm_rl_unb_var8(), FLA_Hemm_ru_blk_var1(), FLA_Hemm_ru_blk_var2(), FLA_Hemm_ru_blk_var3(), FLA_Hemm_ru_blk_var4(), FLA_Hemm_ru_blk_var5(), FLA_Hemm_ru_blk_var6(), FLA_Hemm_ru_blk_var7(), FLA_Hemm_ru_blk_var8(), FLA_Hemm_ru_unb_var1(), FLA_Hemm_ru_unb_var2(), FLA_Hemm_ru_unb_var3(), FLA_Hemm_ru_unb_var4(), FLA_Hemm_ru_unb_var5(), FLA_Hemm_ru_unb_var6(), FLA_Hemm_ru_unb_var7(), FLA_Hemm_ru_unb_var8(), FLA_Her2k_lh_blk_var1(), FLA_Her2k_lh_blk_var2(), FLA_Her2k_lh_blk_var3(), FLA_Her2k_lh_blk_var4(), FLA_Her2k_lh_blk_var5(), FLA_Her2k_lh_blk_var6(), FLA_Her2k_lh_blk_var7(), FLA_Her2k_lh_blk_var8(), FLA_Her2k_lh_unb_var1(), FLA_Her2k_lh_unb_var2(), FLA_Her2k_lh_unb_var3(), FLA_Her2k_lh_unb_var4(), FLA_Her2k_lh_unb_var5(), FLA_Her2k_lh_unb_var6(), FLA_Her2k_lh_unb_var7(), FLA_Her2k_lh_unb_var8(), FLA_Her2k_ln_blk_var1(), FLA_Her2k_ln_blk_var2(), FLA_Her2k_ln_blk_var3(), FLA_Her2k_ln_blk_var4(), FLA_Her2k_ln_blk_var5(), FLA_Her2k_ln_blk_var6(), FLA_Her2k_ln_blk_var7(), FLA_Her2k_ln_blk_var8(), FLA_Her2k_ln_unb_var1(), FLA_Her2k_ln_unb_var2(), FLA_Her2k_ln_unb_var3(), FLA_Her2k_ln_unb_var4(), FLA_Her2k_ln_unb_var5(), FLA_Her2k_ln_unb_var6(), FLA_Her2k_ln_unb_var7(), FLA_Her2k_ln_unb_var8(), FLA_Her2k_uh_blk_var1(), FLA_Her2k_uh_blk_var2(), FLA_Her2k_uh_blk_var3(), FLA_Her2k_uh_blk_var4(), FLA_Her2k_uh_blk_var5(), FLA_Her2k_uh_blk_var6(), FLA_Her2k_uh_blk_var7(), FLA_Her2k_uh_blk_var8(), FLA_Her2k_uh_unb_var1(), FLA_Her2k_uh_unb_var2(), FLA_Her2k_uh_unb_var3(), FLA_Her2k_uh_unb_var4(), FLA_Her2k_uh_unb_var5(), FLA_Her2k_uh_unb_var6(), FLA_Her2k_uh_unb_var7(), FLA_Her2k_uh_unb_var8(), FLA_Her2k_un_blk_var1(), FLA_Her2k_un_blk_var2(), FLA_Her2k_un_blk_var3(), FLA_Her2k_un_blk_var4(), FLA_Her2k_un_blk_var5(), FLA_Her2k_un_blk_var6(), FLA_Her2k_un_blk_var7(), FLA_Her2k_un_blk_var8(), FLA_Her2k_un_unb_var1(), FLA_Her2k_un_unb_var2(), FLA_Her2k_un_unb_var3(), FLA_Her2k_un_unb_var4(), FLA_Her2k_un_unb_var5(), FLA_Her2k_un_unb_var6(), FLA_Her2k_un_unb_var7(), FLA_Her2k_un_unb_var8(), FLA_Herk_lh_blk_var1(), FLA_Herk_lh_blk_var2(), FLA_Herk_lh_blk_var3(), FLA_Herk_lh_blk_var4(), FLA_Herk_lh_unb_var1(), FLA_Herk_lh_unb_var2(), FLA_Herk_lh_unb_var3(), FLA_Herk_lh_unb_var4(), FLA_Herk_ln_blk_var1(), FLA_Herk_ln_blk_var2(), FLA_Herk_ln_blk_var3(), FLA_Herk_ln_blk_var4(), FLA_Herk_ln_unb_var1(), FLA_Herk_ln_unb_var2(), FLA_Herk_ln_unb_var3(), FLA_Herk_ln_unb_var4(), FLA_Herk_uh_blk_var1(), FLA_Herk_uh_blk_var2(), FLA_Herk_uh_blk_var3(), FLA_Herk_uh_blk_var4(), FLA_Herk_uh_unb_var1(), FLA_Herk_uh_unb_var2(), FLA_Herk_uh_unb_var3(), FLA_Herk_uh_unb_var4(), FLA_Herk_un_blk_var1(), FLA_Herk_un_blk_var2(), FLA_Herk_un_blk_var3(), FLA_Herk_un_blk_var4(), FLA_Herk_un_unb_var1(), FLA_Herk_un_unb_var2(), FLA_Herk_un_unb_var3(), FLA_Herk_un_unb_var4(), FLA_LQ_UT_Accum_T_blk_var1(), FLA_LQ_UT_blk_var2(), FLA_LQ_UT_recover_tau_submatrix(), FLA_LU_nopiv_blk_var1(), FLA_LU_nopiv_blk_var2(), FLA_LU_nopiv_blk_var3(), FLA_LU_nopiv_blk_var4(), FLA_LU_nopiv_blk_var5(), FLA_LU_nopiv_unb_var1(), FLA_LU_nopiv_unb_var2(), FLA_LU_nopiv_unb_var3(), FLA_LU_nopiv_unb_var4(), FLA_LU_nopiv_unb_var5(), FLA_LU_piv_blk_var3(), FLA_LU_piv_blk_var4(), FLA_LU_piv_blk_var5(), FLA_LU_piv_unb_var3(), FLA_LU_piv_unb_var3b(), FLA_LU_piv_unb_var4(), FLA_LU_piv_unb_var5(), FLA_QR_UT_Accum_T_blk_var1(), FLA_QR_UT_Accum_T_unb_var1(), FLA_QR_UT_blk_var2(), FLA_QR_UT_inc_blk_var1(), FLA_QR_UT_inc_blk_var2(), FLA_QR_UT_recover_tau_submatrix(), FLA_QR_UT_UD_Accum_T_unb_var1(), FLA_QR_UT_UD_blk_var1(), FLA_SA_LU_blk(), FLA_Sylv_nn_blk_var1(), FLA_Sylv_nn_blk_var10(), FLA_Sylv_nn_blk_var11(), FLA_Sylv_nn_blk_var12(), FLA_Sylv_nn_blk_var13(), FLA_Sylv_nn_blk_var14(), FLA_Sylv_nn_blk_var15(), FLA_Sylv_nn_blk_var16(), FLA_Sylv_nn_blk_var17(), FLA_Sylv_nn_blk_var18(), FLA_Sylv_nn_blk_var2(), FLA_Sylv_nn_blk_var3(), FLA_Sylv_nn_blk_var4(), FLA_Sylv_nn_blk_var5(), FLA_Sylv_nn_blk_var6(), FLA_Sylv_nn_blk_var7(), FLA_Sylv_nn_blk_var8(), FLA_Sylv_nn_blk_var9(), FLA_Sylv_nt_blk_var1(), FLA_Sylv_nt_blk_var10(), FLA_Sylv_nt_blk_var11(), FLA_Sylv_nt_blk_var12(), FLA_Sylv_nt_blk_var13(), FLA_Sylv_nt_blk_var14(), FLA_Sylv_nt_blk_var15(), FLA_Sylv_nt_blk_var16(), FLA_Sylv_nt_blk_var17(), FLA_Sylv_nt_blk_var18(), FLA_Sylv_nt_blk_var2(), FLA_Sylv_nt_blk_var3(), FLA_Sylv_nt_blk_var4(), FLA_Sylv_nt_blk_var5(), FLA_Sylv_nt_blk_var6(), FLA_Sylv_nt_blk_var7(), FLA_Sylv_nt_blk_var8(), FLA_Sylv_nt_blk_var9(), FLA_Sylv_tn_blk_var1(), FLA_Sylv_tn_blk_var10(), FLA_Sylv_tn_blk_var11(), FLA_Sylv_tn_blk_var12(), FLA_Sylv_tn_blk_var13(), FLA_Sylv_tn_blk_var14(), FLA_Sylv_tn_blk_var15(), FLA_Sylv_tn_blk_var16(), FLA_Sylv_tn_blk_var17(), FLA_Sylv_tn_blk_var18(), FLA_Sylv_tn_blk_var2(), FLA_Sylv_tn_blk_var3(), FLA_Sylv_tn_blk_var4(), FLA_Sylv_tn_blk_var5(), FLA_Sylv_tn_blk_var6(), FLA_Sylv_tn_blk_var7(), FLA_Sylv_tn_blk_var8(), FLA_Sylv_tn_blk_var9(), FLA_Sylv_tt_blk_var1(), FLA_Sylv_tt_blk_var10(), FLA_Sylv_tt_blk_var11(), FLA_Sylv_tt_blk_var12(), FLA_Sylv_tt_blk_var13(), FLA_Sylv_tt_blk_var14(), FLA_Sylv_tt_blk_var15(), FLA_Sylv_tt_blk_var16(), FLA_Sylv_tt_blk_var17(), FLA_Sylv_tt_blk_var18(), FLA_Sylv_tt_blk_var2(), FLA_Sylv_tt_blk_var3(), FLA_Sylv_tt_blk_var4(), FLA_Sylv_tt_blk_var5(), FLA_Sylv_tt_blk_var6(), FLA_Sylv_tt_blk_var7(), FLA_Sylv_tt_blk_var8(), FLA_Sylv_tt_blk_var9(), FLA_Symm_ll_blk_var1(), FLA_Symm_ll_blk_var2(), FLA_Symm_ll_blk_var3(), FLA_Symm_ll_blk_var4(), FLA_Symm_ll_blk_var5(), FLA_Symm_ll_blk_var6(), FLA_Symm_ll_blk_var7(), FLA_Symm_ll_blk_var8(), FLA_Symm_ll_unb_var1(), FLA_Symm_ll_unb_var2(), FLA_Symm_ll_unb_var3(), FLA_Symm_ll_unb_var4(), FLA_Symm_ll_unb_var5(), FLA_Symm_ll_unb_var6(), FLA_Symm_ll_unb_var7(), FLA_Symm_ll_unb_var8(), FLA_Symm_lu_blk_var1(), FLA_Symm_lu_blk_var2(), FLA_Symm_lu_blk_var3(), FLA_Symm_lu_blk_var4(), FLA_Symm_lu_blk_var5(), FLA_Symm_lu_blk_var6(), FLA_Symm_lu_blk_var7(), FLA_Symm_lu_blk_var8(), FLA_Symm_lu_unb_var1(), FLA_Symm_lu_unb_var2(), FLA_Symm_lu_unb_var3(), FLA_Symm_lu_unb_var4(), FLA_Symm_lu_unb_var5(), FLA_Symm_lu_unb_var6(), FLA_Symm_lu_unb_var7(), FLA_Symm_lu_unb_var8(), FLA_Symm_rl_blk_var1(), FLA_Symm_rl_blk_var2(), FLA_Symm_rl_blk_var3(), FLA_Symm_rl_blk_var4(), FLA_Symm_rl_blk_var5(), FLA_Symm_rl_blk_var6(), FLA_Symm_rl_blk_var7(), FLA_Symm_rl_blk_var8(), FLA_Symm_rl_unb_var1(), FLA_Symm_rl_unb_var2(), FLA_Symm_rl_unb_var3(), FLA_Symm_rl_unb_var4(), FLA_Symm_rl_unb_var5(), FLA_Symm_rl_unb_var6(), FLA_Symm_rl_unb_var7(), FLA_Symm_rl_unb_var8(), FLA_Symm_ru_blk_var1(), FLA_Symm_ru_blk_var2(), FLA_Symm_ru_blk_var3(), FLA_Symm_ru_blk_var4(), FLA_Symm_ru_blk_var5(), FLA_Symm_ru_blk_var6(), FLA_Symm_ru_blk_var7(), FLA_Symm_ru_blk_var8(), FLA_Symm_ru_unb_var1(), FLA_Symm_ru_unb_var2(), FLA_Symm_ru_unb_var3(), FLA_Symm_ru_unb_var4(), FLA_Symm_ru_unb_var5(), FLA_Symm_ru_unb_var6(), FLA_Symm_ru_unb_var7(), FLA_Symm_ru_unb_var8(), FLA_Syr2k_ln_blk_var1(), FLA_Syr2k_ln_blk_var2(), FLA_Syr2k_ln_blk_var3(), FLA_Syr2k_ln_blk_var4(), FLA_Syr2k_ln_blk_var5(), FLA_Syr2k_ln_blk_var6(), FLA_Syr2k_ln_blk_var7(), FLA_Syr2k_ln_blk_var8(), FLA_Syr2k_ln_unb_var1(), FLA_Syr2k_ln_unb_var2(), FLA_Syr2k_ln_unb_var3(), FLA_Syr2k_ln_unb_var4(), FLA_Syr2k_ln_unb_var5(), FLA_Syr2k_ln_unb_var6(), FLA_Syr2k_ln_unb_var7(), FLA_Syr2k_ln_unb_var8(), FLA_Syr2k_lt_blk_var1(), FLA_Syr2k_lt_blk_var2(), FLA_Syr2k_lt_blk_var3(), FLA_Syr2k_lt_blk_var4(), FLA_Syr2k_lt_blk_var5(), FLA_Syr2k_lt_blk_var6(), FLA_Syr2k_lt_blk_var7(), FLA_Syr2k_lt_blk_var8(), FLA_Syr2k_lt_unb_var1(), FLA_Syr2k_lt_unb_var2(), FLA_Syr2k_lt_unb_var3(), FLA_Syr2k_lt_unb_var4(), FLA_Syr2k_lt_unb_var5(), FLA_Syr2k_lt_unb_var6(), FLA_Syr2k_lt_unb_var7(), FLA_Syr2k_lt_unb_var8(), FLA_Syr2k_un_blk_var1(), FLA_Syr2k_un_blk_var2(), FLA_Syr2k_un_blk_var3(), FLA_Syr2k_un_blk_var4(), FLA_Syr2k_un_blk_var5(), FLA_Syr2k_un_blk_var6(), FLA_Syr2k_un_blk_var7(), FLA_Syr2k_un_blk_var8(), FLA_Syr2k_un_unb_var1(), FLA_Syr2k_un_unb_var2(), FLA_Syr2k_un_unb_var3(), FLA_Syr2k_un_unb_var4(), FLA_Syr2k_un_unb_var5(), FLA_Syr2k_un_unb_var6(), FLA_Syr2k_un_unb_var7(), FLA_Syr2k_un_unb_var8(), FLA_Syr2k_ut_blk_var1(), FLA_Syr2k_ut_blk_var2(), FLA_Syr2k_ut_blk_var3(), FLA_Syr2k_ut_blk_var4(), FLA_Syr2k_ut_blk_var5(), FLA_Syr2k_ut_blk_var6(), FLA_Syr2k_ut_blk_var7(), FLA_Syr2k_ut_blk_var8(), FLA_Syr2k_ut_unb_var1(), FLA_Syr2k_ut_unb_var2(), FLA_Syr2k_ut_unb_var3(), FLA_Syr2k_ut_unb_var4(), FLA_Syr2k_ut_unb_var5(), FLA_Syr2k_ut_unb_var6(), FLA_Syr2k_ut_unb_var7(), FLA_Syr2k_ut_unb_var8(), FLA_Syrk_ln_blk_var1(), FLA_Syrk_ln_blk_var2(), FLA_Syrk_ln_blk_var3(), FLA_Syrk_ln_blk_var4(), FLA_Syrk_ln_unb_var1(), FLA_Syrk_ln_unb_var2(), FLA_Syrk_ln_unb_var3(), FLA_Syrk_ln_unb_var4(), FLA_Syrk_lt_blk_var1(), FLA_Syrk_lt_blk_var2(), FLA_Syrk_lt_blk_var3(), FLA_Syrk_lt_blk_var4(), FLA_Syrk_lt_unb_var1(), FLA_Syrk_lt_unb_var2(), FLA_Syrk_lt_unb_var3(), FLA_Syrk_lt_unb_var4(), FLA_Syrk_un_blk_var1(), FLA_Syrk_un_blk_var2(), FLA_Syrk_un_blk_var3(), FLA_Syrk_un_blk_var4(), FLA_Syrk_un_unb_var1(), FLA_Syrk_un_unb_var2(), FLA_Syrk_un_unb_var3(), FLA_Syrk_un_unb_var4(), FLA_Syrk_ut_blk_var1(), FLA_Syrk_ut_blk_var2(), FLA_Syrk_ut_blk_var3(), FLA_Syrk_ut_blk_var4(), FLA_Syrk_ut_unb_var1(), FLA_Syrk_ut_unb_var2(), FLA_Syrk_ut_unb_var3(), FLA_Syrk_ut_unb_var4(), FLA_Transpose_blk_var1(), FLA_Transpose_blk_var2(), FLA_Transpose_unb_var1(), FLA_Transpose_unb_var2(), FLA_Trinv_l_blk_var1(), FLA_Trinv_l_blk_var2(), FLA_Trinv_l_blk_var3(), FLA_Trinv_l_blk_var4(), FLA_Trinv_l_unb_var1(), FLA_Trinv_l_unb_var2(), FLA_Trinv_l_unb_var3(), FLA_Trinv_l_unb_var4(), FLA_Trinv_u_blk_var1(), FLA_Trinv_u_blk_var2(), FLA_Trinv_u_blk_var3(), FLA_Trinv_u_blk_var4(), FLA_Trinv_u_unb_var1(), FLA_Trinv_u_unb_var2(), FLA_Trinv_u_unb_var3(), FLA_Trinv_u_unb_var4(), FLA_Trmm_llh_blk_var1(), FLA_Trmm_llh_blk_var2(), FLA_Trmm_llh_unb_var1(), FLA_Trmm_llh_unb_var2(), FLA_Trmm_lln_blk_var1(), FLA_Trmm_lln_blk_var2(), FLA_Trmm_lln_unb_var1(), FLA_Trmm_lln_unb_var2(), FLA_Trmm_llt_blk_var1(), FLA_Trmm_llt_blk_var2(), FLA_Trmm_llt_unb_var1(), FLA_Trmm_llt_unb_var2(), FLA_Trmm_luh_blk_var1(), FLA_Trmm_luh_blk_var2(), FLA_Trmm_luh_unb_var1(), FLA_Trmm_luh_unb_var2(), FLA_Trmm_lun_blk_var1(), FLA_Trmm_lun_blk_var2(), FLA_Trmm_lun_unb_var1(), FLA_Trmm_lun_unb_var2(), FLA_Trmm_lut_blk_var1(), FLA_Trmm_lut_blk_var2(), FLA_Trmm_lut_unb_var1(), FLA_Trmm_lut_unb_var2(), FLA_Trmm_rlh_blk_var1(), FLA_Trmm_rlh_blk_var2(), FLA_Trmm_rlh_unb_var1(), FLA_Trmm_rlh_unb_var2(), FLA_Trmm_rln_blk_var1(), FLA_Trmm_rln_blk_var2(), FLA_Trmm_rln_unb_var1(), FLA_Trmm_rln_unb_var2(), FLA_Trmm_rlt_blk_var1(), FLA_Trmm_rlt_blk_var2(), FLA_Trmm_rlt_unb_var1(), FLA_Trmm_rlt_unb_var2(), FLA_Trmm_ruh_blk_var1(), FLA_Trmm_ruh_blk_var2(), FLA_Trmm_ruh_unb_var1(), FLA_Trmm_ruh_unb_var2(), FLA_Trmm_run_blk_var1(), FLA_Trmm_run_blk_var2(), FLA_Trmm_run_unb_var1(), FLA_Trmm_run_unb_var2(), FLA_Trmm_rut_blk_var1(), FLA_Trmm_rut_blk_var2(), FLA_Trmm_rut_unb_var1(), FLA_Trmm_rut_unb_var2(), FLA_Trsm_llh_blk_var1(), FLA_Trsm_llh_blk_var2(), FLA_Trsm_llh_unb_var1(), FLA_Trsm_llh_unb_var2(), FLA_Trsm_lln_blk_var1(), FLA_Trsm_lln_blk_var2(), FLA_Trsm_lln_unb_var1(), FLA_Trsm_lln_unb_var2(), FLA_Trsm_llt_blk_var1(), FLA_Trsm_llt_blk_var2(), FLA_Trsm_llt_unb_var1(), FLA_Trsm_llt_unb_var2(), FLA_Trsm_luh_blk_var1(), FLA_Trsm_luh_blk_var2(), FLA_Trsm_luh_unb_var1(), FLA_Trsm_luh_unb_var2(), FLA_Trsm_lun_blk_var1(), FLA_Trsm_lun_blk_var2(), FLA_Trsm_lun_unb_var1(), FLA_Trsm_lun_unb_var2(), FLA_Trsm_lut_blk_var1(), FLA_Trsm_lut_blk_var2(), FLA_Trsm_lut_unb_var1(), FLA_Trsm_lut_unb_var2(), FLA_Trsm_rlh_blk_var1(), FLA_Trsm_rlh_blk_var2(), FLA_Trsm_rlh_unb_var1(), FLA_Trsm_rlh_unb_var2(), FLA_Trsm_rln_blk_var1(), FLA_Trsm_rln_blk_var2(), FLA_Trsm_rln_unb_var1(), FLA_Trsm_rln_unb_var2(), FLA_Trsm_rlt_blk_var1(), FLA_Trsm_rlt_blk_var2(), FLA_Trsm_rlt_unb_var1(), FLA_Trsm_rlt_unb_var2(), FLA_Trsm_ruh_blk_var1(), FLA_Trsm_ruh_blk_var2(), FLA_Trsm_ruh_unb_var1(), FLA_Trsm_ruh_unb_var2(), FLA_Trsm_run_blk_var1(), FLA_Trsm_run_blk_var2(), FLA_Trsm_run_unb_var1(), FLA_Trsm_run_unb_var2(), FLA_Trsm_rut_blk_var1(), FLA_Trsm_rut_blk_var2(), FLA_Trsm_rut_unb_var1(), FLA_Trsm_rut_unb_var2(), FLA_Trsv_lc_blk_var1(), FLA_Trsv_lc_blk_var2(), FLA_Trsv_ln_blk_var1(), FLA_Trsv_ln_blk_var2(), FLA_Trsv_lt_blk_var1(), FLA_Trsv_lt_blk_var2(), FLA_Trsv_uc_blk_var1(), FLA_Trsv_uc_blk_var2(), FLA_Trsv_un_blk_var1(), FLA_Trsv_un_blk_var2(), FLA_Trsv_ut_blk_var1(), FLA_Trsv_ut_blk_var2(), FLA_Ttmm_l_blk_var1(), FLA_Ttmm_l_blk_var2(), FLA_Ttmm_l_blk_var3(), FLA_Ttmm_l_unb_var1(), FLA_Ttmm_l_unb_var2(), FLA_Ttmm_l_unb_var3(), FLA_Ttmm_u_blk_var1(), FLA_Ttmm_u_blk_var2(), FLA_Ttmm_u_blk_var3(), FLA_Ttmm_u_unb_var1(), FLA_Ttmm_u_unb_var2(), FLA_Ttmm_u_unb_var3(), FLASH_Axpy_hierarchy_r(), FLASH_Copy_hierarchy_r(), FLASH_FS_incpiv_aux1(), FLASH_LU_incpiv_var1(), and FLASH_LU_incpiv_var2().

00177 {
00178   if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
00179     FLA_Repart_2x2_to_3x3_check( ATL, ATR,       A00, A01, A02,
00180                                                  A10, A11, A12,
00181                                  ABL, ABR,       A20, A21, A22,
00182                                  mb, nb, quadrant );
00183 
00184   if ( quadrant == FLA_BR )
00185   { 
00186     FLA_Part_2x2( ABR,    A11, A12,
00187                           A21, A22,    mb, nb, FLA_TL );
00188  
00189     FLA_Part_1x2( ATR,    A01, A02,    nb, FLA_LEFT );
00190  
00191     FLA_Part_2x1( ABL,    A10, 
00192                           A20,         mb, FLA_TOP );
00193 
00194     A00->m    = ATL.m;
00195     A00->n    = ATL.n;
00196     A00->offm = ATL.offm;
00197     A00->offn = ATL.offn;
00198     A00->base = ATL.base;
00199   }
00200   else if ( quadrant == FLA_BL )
00201   {
00202     FLA_Part_2x2( ABL,    A10, A11,
00203                           A20, A21,    mb, nb, FLA_TR );
00204  
00205     FLA_Part_1x2( ATL,    A00, A01,    nb, FLA_RIGHT );
00206  
00207     FLA_Part_2x1( ABR,    A12, 
00208                           A22,         mb, FLA_TOP );
00209 
00210     A02->m    = ATR.m;
00211     A02->n    = ATR.n;
00212     A02->offm = ATR.offm;
00213     A02->offn = ATR.offn;
00214     A02->base = ATR.base;
00215   }
00216   else if ( quadrant == FLA_TL )
00217   {
00218     FLA_Part_2x2( ATL,    A00, A01,
00219                           A10, A11,    mb, nb, FLA_BR );
00220  
00221     FLA_Part_1x2( ABL,    A20, A21,    nb, FLA_RIGHT );
00222  
00223     FLA_Part_2x1( ATR,    A02, 
00224                           A12,         mb, FLA_BOTTOM );
00225 
00226     A22->m    = ABR.m;
00227     A22->n    = ABR.n;
00228     A22->offm = ABR.offm;
00229     A22->offn = ABR.offn;
00230     A22->base = ABR.base;
00231   }
00232   else if ( quadrant == FLA_TR )
00233   {
00234     FLA_Part_2x2( ATR,    A01, A02,
00235                           A11, A12,    mb, nb, FLA_BL );
00236 
00237     FLA_Part_1x2( ABR,    A21, A22,    nb, FLA_LEFT );
00238 
00239     FLA_Part_2x1( ATL,    A00,
00240                           A10,         mb, FLA_BOTTOM );
00241 
00242     A20->m    = ABL.m;
00243     A20->n    = ABL.n;
00244     A20->offm = ABL.offm;
00245     A20->offn = ABL.offn;
00246     A20->base = ABL.base;
00247   }
00248 
00249   return FLA_SUCCESS;
00250 }

FLA_Error FLA_Repart_2x2_to_3x3_check ( FLA_Obj  ATL,
FLA_Obj  ATR,
FLA_Obj A00,
FLA_Obj A01,
FLA_Obj A02,
FLA_Obj A10,
FLA_Obj A11,
FLA_Obj A12,
FLA_Obj  ABL,
FLA_Obj  ABR,
FLA_Obj A20,
FLA_Obj A21,
FLA_Obj A22,
dim_t  mb,
dim_t  nb,
FLA_Quadrant  quadrant 
)

References FLA_Check_attempted_repart_2x2(), FLA_Check_null_pointer(), FLA_Check_valid_object_datatype(), and FLA_Check_valid_quadrant().

Referenced by FLA_Repart_2x2_to_3x3().

00039 {
00040   FLA_Error e_val;
00041 
00042   e_val = FLA_Check_valid_object_datatype( ATL );
00043   FLA_Check_error_code( e_val );
00044 
00045   e_val = FLA_Check_valid_object_datatype( ABL );
00046   FLA_Check_error_code( e_val );
00047 
00048   e_val = FLA_Check_valid_object_datatype( ATR );
00049   FLA_Check_error_code( e_val );
00050 
00051   e_val = FLA_Check_valid_object_datatype( ABR );
00052   FLA_Check_error_code( e_val );
00053 
00054   e_val = FLA_Check_null_pointer( A00 );
00055   FLA_Check_error_code( e_val );
00056 
00057   e_val = FLA_Check_null_pointer( A10 );
00058   FLA_Check_error_code( e_val );
00059 
00060   e_val = FLA_Check_null_pointer( A20 );
00061   FLA_Check_error_code( e_val );
00062 
00063   e_val = FLA_Check_null_pointer( A01 );
00064   FLA_Check_error_code( e_val );
00065 
00066   e_val = FLA_Check_null_pointer( A11 );
00067   FLA_Check_error_code( e_val );
00068 
00069   e_val = FLA_Check_null_pointer( A21 );
00070   FLA_Check_error_code( e_val );
00071 
00072   e_val = FLA_Check_null_pointer( A02 );
00073   FLA_Check_error_code( e_val );
00074 
00075   e_val = FLA_Check_null_pointer( A12 );
00076   FLA_Check_error_code( e_val );
00077 
00078   e_val = FLA_Check_null_pointer( A22 );
00079   FLA_Check_error_code( e_val );
00080 
00081   e_val = FLA_Check_valid_quadrant( quadrant );
00082   FLA_Check_error_code( e_val );
00083 
00084   if      ( quadrant == FLA_TL )
00085   {
00086     e_val = FLA_Check_attempted_repart_2x2( ATL, mb, nb );
00087     FLA_Check_error_code( e_val );
00088   }
00089   else if ( quadrant == FLA_TR )
00090   {
00091     e_val = FLA_Check_attempted_repart_2x2( ATR, mb, nb );
00092     FLA_Check_error_code( e_val );
00093   }
00094   else if ( quadrant == FLA_BL )
00095   {
00096     e_val = FLA_Check_attempted_repart_2x2( ABL, mb, nb );
00097     FLA_Check_error_code( e_val );
00098   }
00099   else if ( quadrant == FLA_BR )
00100   {
00101     e_val = FLA_Check_attempted_repart_2x2( ABR, mb, nb );
00102     FLA_Check_error_code( e_val );
00103   }
00104 
00105   // Needed: check for adjacency, similar to those in FLA_Merge_*().
00106 
00107   return FLA_SUCCESS;
00108 }


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