libflame revision_anchor
FLA_util_base_prototypes.h
Go to the documentation of this file.
00001 /*
00002    libflame
00003    An object-based infrastructure for developing high-performance
00004    dense linear algebra libraries.
00005 
00006    Copyright (C) 2011, The University of Texas
00007 
00008    libflame is free software; you can redistribute it and/or modify
00009    it under the terms of the GNU Lesser General Public License as
00010    published by the Free Software Foundation; either version 2.1 of
00011    the License, or (at your option) any later version.
00012 
00013    libflame is distributed in the hope that it will be useful, but
00014    WITHOUT ANY WARRANTY; without even the implied warranty of
00015    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00016    Lesser General Public License for more details.
00017 
00018    You should have received a copy of the GNU Lesser General Public
00019    License along with libflame; if you did not receive a copy, see
00020    http://www.gnu.org/licenses/.
00021 
00022    For more information, please contact us at flame@cs.utexas.edu or
00023    send mail to:
00024 
00025    Field G. Van Zee and/or
00026    Robert A. van de Geijn
00027    The University of Texas at Austin
00028    Department of Computer Sciences
00029    1 University Station C0500
00030    Austin TX 78712
00031 */
00032 
00033 float     FLA_random_float( void );
00034 double    FLA_random_double( void );
00035 scomplex  FLA_random_scomplex( void );
00036 dcomplex  FLA_random_dcomplex( void );
00037 
00038 FLA_Error FLA_Absolute_square( FLA_Obj alpha );
00039 FLA_Error FLA_Absolute_value( FLA_Obj alpha );
00040 double    FLA_Clock( void );
00041 FLA_Error FLA_Conjugate( FLA_Obj A );
00042 FLA_Error FLA_Conjugate_r( FLA_Uplo uplo, FLA_Obj A );
00043 FLA_Error FLA_Hermitianize( FLA_Uplo uplo, FLA_Obj A );
00044 FLA_Error FLA_Invert( FLA_Conj conj, FLA_Obj x );
00045 FLA_Error FLA_Max_abs_value( FLA_Obj A, FLA_Obj amax );
00046 double    FLA_Max_elemwise_diff( FLA_Obj A, FLA_Obj B );
00047 FLA_Error FLA_Mult_add( FLA_Obj alpha, FLA_Obj beta, FLA_Obj gamma );
00048 FLA_Error FLA_Negate( FLA_Obj x );
00049 FLA_Error FLA_Norm1( FLA_Obj A, FLA_Obj norm );
00050 FLA_Error FLA_Norm_inf( FLA_Obj A, FLA_Obj norm );
00051 FLA_Error FLA_Norm_frob( FLA_Obj A, FLA_Obj norm );
00052 FLA_Error FLA_Random_matrix( FLA_Obj A );
00053 FLA_Error FLA_Random_herm_matrix( FLA_Uplo uplo, FLA_Obj A );
00054 FLA_Error FLA_Random_symm_matrix( FLA_Uplo uplo, FLA_Obj A );
00055 FLA_Error FLA_Random_spd_matrix( FLA_Uplo uplo, FLA_Obj A );
00056 FLA_Error FLA_Random_tri_matrix( FLA_Uplo uplo, FLA_Diag diag, FLA_Obj A );
00057 FLA_Error FLA_Scal_elemwise( FLA_Trans trans, FLA_Obj A, FLA_Obj B );
00058 FLA_Error FLA_Shift_pivots_to_check( FLA_Pivot_type ptype, FLA_Obj p );
00059 FLA_Error FLA_Sqrt( FLA_Obj alpha );
00060 FLA_Error FLA_Symmetrize( FLA_Uplo uplo, FLA_Obj A );
00061 FLA_Error FLA_Triangularize( FLA_Uplo uplo, FLA_Diag diag, FLA_Obj A );
00062 FLA_Error FLA_Transpose( FLA_Obj A );
00063 
00064 // -----------------------------------------------------------------------------
00065 
00066 FLA_Error FLA_Absolute_square_check( FLA_Obj alpha );
00067 FLA_Error FLA_Absolute_value_check( FLA_Obj alpha );
00068 FLA_Error FLA_Conjugate_check( FLA_Obj A );
00069 FLA_Error FLA_Conjugate_r_check( FLA_Uplo uplo, FLA_Obj A );
00070 FLA_Error FLA_Hermitianize_check( FLA_Uplo uplo, FLA_Obj A );
00071 FLA_Error FLA_Invert_check( FLA_Conj conj, FLA_Obj x );
00072 FLA_Error FLA_Max_abs_value_check( FLA_Obj A, FLA_Obj amax );
00073 FLA_Error FLA_Max_elemwise_diff_check( FLA_Obj A, FLA_Obj B );
00074 FLA_Error FLA_Mult_add_check( FLA_Obj alpha, FLA_Obj beta, FLA_Obj gamma );
00075 FLA_Error FLA_Negate_check( FLA_Obj x );
00076 FLA_Error FLA_Norm1_check( FLA_Obj A, FLA_Obj norm );
00077 FLA_Error FLA_Norm_inf_check( FLA_Obj A, FLA_Obj norm );
00078 FLA_Error FLA_Norm_frob_check( FLA_Obj A, FLA_Obj norm );
00079 FLA_Error FLA_Random_matrix_check( FLA_Obj A );
00080 FLA_Error FLA_Random_herm_matrix_check( FLA_Uplo uplo, FLA_Obj A );
00081 FLA_Error FLA_Random_symm_matrix_check( FLA_Uplo uplo, FLA_Obj A );
00082 FLA_Error FLA_Random_spd_matrix_check( FLA_Uplo uplo, FLA_Obj A );
00083 FLA_Error FLA_Random_tri_matrix_check( FLA_Uplo uplo, FLA_Diag diag, FLA_Obj A );
00084 FLA_Error FLA_Scal_elemwise_check( FLA_Trans trans, FLA_Obj A, FLA_Obj B );
00085 FLA_Error FLA_Sqrt_check( FLA_Obj alpha );
00086 FLA_Error FLA_Symmetrize_check( FLA_Uplo uplo, FLA_Obj A );
00087 FLA_Error FLA_Triangularize_check( FLA_Uplo uplo, FLA_Diag diag, FLA_Obj A );
00088 FLA_Error FLA_Transpose_check( FLA_Obj A );
00089 
00090 // -----------------------------------------------------------------------------
00091 
00092 FLA_Error FLA_Transpose_blk_var1( FLA_Obj A, fla_tpose_t* cntl );
00093 FLA_Error FLA_Transpose_blk_var2( FLA_Obj A, fla_tpose_t* cntl );
00094 FLA_Error FLA_Transpose_unb_var1( FLA_Obj A );
00095 FLA_Error FLA_Transpose_unb_var2( FLA_Obj A );
00096 FLA_Error FLA_Swap_t_blk_var1( FLA_Obj A, FLA_Obj B, fla_swap_t* cntl );
00097 FLA_Error FLA_Swap_t_blk_var2( FLA_Obj A, FLA_Obj B, fla_swap_t* cntl );
00098