libflame
revision_anchor
|
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 #include "FLA_Tevd_iteracc_n.h" 00034 #include "FLA_Tevd_eigval_n.h" 00035 #include "FLA_Tevd_francis_n.h" 00036 00037 // --- FLA_Tevd_find_submatrix() ----------------------------------------------- 00038 00039 FLA_Error FLA_Tevd_find_submatrix_ops( int m_A, 00040 int ij_begin, 00041 float* buff_d, int inc_d, 00042 float* buff_e, int inc_e, 00043 int* ijTL, 00044 int* ijBR ); 00045 FLA_Error FLA_Tevd_find_submatrix_opd( int m_A, 00046 int ij_begin, 00047 double* buff_d, int inc_d, 00048 double* buff_e, int inc_e, 00049 int* ijTL, 00050 int* ijBR ); 00051 00052 // --- FLA_Norm1_tridiag() ----------------------------------------------------- 00053 00054 FLA_Error FLA_Norm1_tridiag( FLA_Obj d, FLA_Obj e, FLA_Obj norm ); 00055 FLA_Error FLA_Norm1_tridiag_ops( int m_A, 00056 float* buff_d, int inc_d, 00057 float* buff_e, int inc_e, 00058 float* norm ); 00059 FLA_Error FLA_Norm1_tridiag_opd( int m_A, 00060 double* buff_d, int inc_d, 00061 double* buff_e, int inc_e, 00062 double* norm ); 00063 00064 // --- FLA_Tevd_n_opt_var1() --------------------------------------------------- 00065 00066 FLA_Error FLA_Tevd_n_opt_var1( dim_t n_iter_max, FLA_Obj d, FLA_Obj e, FLA_Obj G, FLA_Obj U ); 00067 FLA_Error FLA_Tevd_n_ops_var1( int m_A, 00068 int m_U, 00069 int n_G, 00070 int n_iter_max, 00071 float* buff_d, int inc_d, 00072 float* buff_e, int inc_e, 00073 scomplex* buff_G, int rs_G, int cs_G ); 00074 FLA_Error FLA_Tevd_n_opd_var1( int m_A, 00075 int m_U, 00076 int n_G, 00077 int n_iter_max, 00078 double* buff_d, int inc_d, 00079 double* buff_e, int inc_e, 00080 dcomplex* buff_G, int rs_G, int cs_G ); 00081 FLA_Error FLA_Tevd_n_opc_var1( int m_A, 00082 int m_U, 00083 int n_G, 00084 int n_iter_max, 00085 float* buff_d, int inc_d, 00086 float* buff_e, int inc_e, 00087 scomplex* buff_G, int rs_G, int cs_G ); 00088 FLA_Error FLA_Tevd_n_opz_var1( int m_A, 00089 int m_U, 00090 int n_G, 00091 int n_iter_max, 00092 double* buff_d, int inc_d, 00093 double* buff_e, int inc_e, 00094 dcomplex* buff_G, int rs_G, int cs_G ); 00095 00096