580 lines
		
	
	
		
			32 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			580 lines
		
	
	
		
			32 KiB
		
	
	
	
		
			C
		
	
	
	
| /*****************************************************************************
 | |
|   Copyright (c) 2010, Intel Corp.
 | |
|   All rights reserved.
 | |
| 
 | |
|   Redistribution and use in source and binary forms, with or without
 | |
|   modification, are permitted provided that the following conditions are met:
 | |
| 
 | |
|     * Redistributions of source code must retain the above copyright notice,
 | |
|       this list of conditions and the following disclaimer.
 | |
|     * Redistributions in binary form must reproduce the above copyright
 | |
|       notice, this list of conditions and the following disclaimer in the
 | |
|       documentation and/or other materials provided with the distribution.
 | |
|     * Neither the name of Intel Corporation nor the names of its contributors
 | |
|       may be used to endorse or promote products derived from this software
 | |
|       without specific prior written permission.
 | |
| 
 | |
|   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 | |
|   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | |
|   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | |
|   ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 | |
|   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 | |
|   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 | |
|   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 | |
|   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 | |
|   CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 | |
|   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 | |
|   THE POSSIBILITY OF SUCH DAMAGE.
 | |
| ******************************************************************************
 | |
| * Contents: Native C interface to LAPACK utility functions
 | |
| * Author: Intel Corporation
 | |
| * Created in January, 2010
 | |
| *****************************************************************************/
 | |
| 
 | |
| #ifndef _LAPACKE_UTILS_H_
 | |
| #define _LAPACKE_UTILS_H_
 | |
| 
 | |
| #include "lapacke.h"
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif /* __cplusplus */
 | |
| 
 | |
| #ifndef ABS
 | |
| #define ABS(x) (((x) < 0) ? -(x) : (x))
 | |
| #endif
 | |
| #ifndef MAX
 | |
| #define MAX(x,y) (((x) > (y)) ? (x) : (y))
 | |
| #endif
 | |
| #ifndef MIN
 | |
| #define MIN(x,y) (((x) < (y)) ? (x) : (y))
 | |
| #endif
 | |
| #ifndef MAX3
 | |
| #define MAX3(x,y,z) (((x) > MAX(y,z)) ? (x) : MAX(y,z))
 | |
| #endif
 | |
| #ifndef MIN3
 | |
| #define MIN3(x,y,z) (((x) < MIN(y,z)) ? (x) : MIN(y,z))
 | |
| #endif
 | |
| 
 | |
| #define IS_S_NONZERO(x) ( (x) < 0 || (x) > 0 )
 | |
| #define IS_D_NONZERO(x) ( (x) < 0 || (x) > 0 )
 | |
| #define IS_C_NONZERO(x) ( IS_S_NONZERO(*((float*)&x)) ||  \
 | |
|                           IS_S_NONZERO(*(((float*)&x)+1)) )
 | |
| #define IS_Z_NONZERO(x) ( IS_D_NONZERO(*((double*)&x)) || \
 | |
|                           IS_D_NONZERO(*(((double*)&x)+1)) )
 | |
| 
 | |
| /* Error handler */
 | |
| void LAPACKE_xerbla( const char *name, lapack_int info );
 | |
| 
 | |
| /* Compare two chars (case-insensitive) */
 | |
| lapack_logical LAPACKE_lsame( char ca,  char cb );
 | |
| 
 | |
| /* Functions to convert column-major to row-major 2d arrays and vice versa. */
 | |
| void LAPACKE_cgb_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         lapack_int kl, lapack_int ku,
 | |
|                         const lapack_complex_float *in, lapack_int ldin,
 | |
|                         lapack_complex_float *out, lapack_int ldout );
 | |
| void LAPACKE_cge_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         const lapack_complex_float* in, lapack_int ldin,
 | |
|                         lapack_complex_float* out, lapack_int ldout );
 | |
| void LAPACKE_cgg_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         const lapack_complex_float* in, lapack_int ldin,
 | |
|                         lapack_complex_float* out, lapack_int ldout );
 | |
| void LAPACKE_chb_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         lapack_int kd,
 | |
|                         const lapack_complex_float *in, lapack_int ldin,
 | |
|                         lapack_complex_float *out, lapack_int ldout );
 | |
| void LAPACKE_che_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_float *in, lapack_int ldin,
 | |
|                         lapack_complex_float *out, lapack_int ldout );
 | |
| void LAPACKE_chp_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_float *in,
 | |
|                         lapack_complex_float *out );
 | |
| void LAPACKE_chs_trans( int matrix_order, lapack_int n,
 | |
|                         const lapack_complex_float *in, lapack_int ldin,
 | |
|                         lapack_complex_float *out, lapack_int ldout );
 | |
| void LAPACKE_cpb_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         lapack_int kd,
 | |
|                         const lapack_complex_float *in, lapack_int ldin,
 | |
|                         lapack_complex_float *out, lapack_int ldout );
 | |
| void LAPACKE_cpf_trans( int matrix_order, char transr, char uplo,
 | |
|                         lapack_int n, const lapack_complex_float *in,
 | |
|                         lapack_complex_float *out );
 | |
| void LAPACKE_cpo_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_float *in, lapack_int ldin,
 | |
|                         lapack_complex_float *out, lapack_int ldout );
 | |
| void LAPACKE_cpp_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_float *in,
 | |
|                         lapack_complex_float *out );
 | |
| void LAPACKE_csp_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_float *in,
 | |
|                         lapack_complex_float *out );
 | |
| void LAPACKE_csy_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_float *in, lapack_int ldin,
 | |
|                         lapack_complex_float *out, lapack_int ldout );
 | |
| void LAPACKE_ctb_trans( int matrix_order, char uplo, char diag,
 | |
|                         lapack_int n, lapack_int kd,
 | |
|                         const lapack_complex_float *in, lapack_int ldin,
 | |
|                         lapack_complex_float *out, lapack_int ldout );
 | |
| void LAPACKE_ctf_trans( int matrix_order, char transr, char uplo, char diag,
 | |
|                         lapack_int n, const lapack_complex_float *in,
 | |
|                         lapack_complex_float *out );
 | |
| void LAPACKE_ctp_trans( int matrix_order, char uplo, char diag,
 | |
|                         lapack_int n, const lapack_complex_float *in,
 | |
|                         lapack_complex_float *out );
 | |
| void LAPACKE_ctr_trans( int matrix_order, char uplo, char diag, lapack_int n,
 | |
|                         const lapack_complex_float *in, lapack_int ldin,
 | |
|                         lapack_complex_float *out, lapack_int ldout );
 | |
| 
 | |
| void LAPACKE_dgb_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         lapack_int kl, lapack_int ku,
 | |
|                         const double *in, lapack_int ldin,
 | |
|                         double *out, lapack_int ldout );
 | |
| void LAPACKE_dge_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         const double* in, lapack_int ldin,
 | |
|                         double* out, lapack_int ldout );
 | |
| void LAPACKE_dgg_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         const double* in, lapack_int ldin,
 | |
|                         double* out, lapack_int ldout );
 | |
| void LAPACKE_dhs_trans( int matrix_order, lapack_int n,
 | |
|                         const double *in, lapack_int ldin,
 | |
|                         double *out, lapack_int ldout );
 | |
| void LAPACKE_dpb_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         lapack_int kd,
 | |
|                         const double *in, lapack_int ldin,
 | |
|                         double *out, lapack_int ldout );
 | |
| void LAPACKE_dpf_trans( int matrix_order, char transr, char uplo,
 | |
|                         lapack_int n, const double *in,
 | |
|                         double *out );
 | |
| void LAPACKE_dpo_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const double *in, lapack_int ldin,
 | |
|                         double *out, lapack_int ldout );
 | |
| void LAPACKE_dpp_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const double *in,
 | |
|                         double *out );
 | |
| void LAPACKE_dsb_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         lapack_int kd,
 | |
|                         const double *in, lapack_int ldin,
 | |
|                         double *out, lapack_int ldout );
 | |
| void LAPACKE_dsp_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const double *in,
 | |
|                         double *out );
 | |
| void LAPACKE_dsy_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const double *in, lapack_int ldin,
 | |
|                         double *out, lapack_int ldout );
 | |
| void LAPACKE_dtb_trans( int matrix_order, char uplo, char diag,
 | |
|                         lapack_int n, lapack_int kd,
 | |
|                         const double *in, lapack_int ldin,
 | |
|                         double *out, lapack_int ldout );
 | |
| void LAPACKE_dtf_trans( int matrix_order, char transr, char uplo, char diag,
 | |
|                         lapack_int n, const double *in,
 | |
|                         double *out );
 | |
| void LAPACKE_dtp_trans( int matrix_order, char uplo, char diag,
 | |
|                         lapack_int n, const double *in,
 | |
|                         double *out );
 | |
| void LAPACKE_dtr_trans( int matrix_order, char uplo, char diag, lapack_int n,
 | |
|                         const double *in, lapack_int ldin,
 | |
|                         double *out, lapack_int ldout );
 | |
| 
 | |
| void LAPACKE_sgb_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         lapack_int kl, lapack_int ku,
 | |
|                         const float *in, lapack_int ldin,
 | |
|                         float *out, lapack_int ldout );
 | |
| void LAPACKE_sge_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         const float* in, lapack_int ldin,
 | |
|                         float* out, lapack_int ldout );
 | |
| void LAPACKE_sgg_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         const float* in, lapack_int ldin,
 | |
|                         float* out, lapack_int ldout );
 | |
| void LAPACKE_shs_trans( int matrix_order, lapack_int n,
 | |
|                         const float *in, lapack_int ldin,
 | |
|                         float *out, lapack_int ldout );
 | |
| void LAPACKE_spb_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         lapack_int kd,
 | |
|                         const float *in, lapack_int ldin,
 | |
|                         float *out, lapack_int ldout );
 | |
| void LAPACKE_spf_trans( int matrix_order, char transr, char uplo,
 | |
|                         lapack_int n, const float *in,
 | |
|                         float *out );
 | |
| void LAPACKE_spo_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const float *in, lapack_int ldin,
 | |
|                         float *out, lapack_int ldout );
 | |
| void LAPACKE_spp_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const float *in,
 | |
|                         float *out );
 | |
| void LAPACKE_ssb_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         lapack_int kd,
 | |
|                         const float *in, lapack_int ldin,
 | |
|                         float *out, lapack_int ldout );
 | |
| void LAPACKE_ssp_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const float *in,
 | |
|                         float *out );
 | |
| void LAPACKE_ssy_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const float *in, lapack_int ldin,
 | |
|                         float *out, lapack_int ldout );
 | |
| void LAPACKE_stb_trans( int matrix_order, char uplo, char diag,
 | |
|                         lapack_int n, lapack_int kd,
 | |
|                         const float *in, lapack_int ldin,
 | |
|                         float *out, lapack_int ldout );
 | |
| void LAPACKE_stf_trans( int matrix_order, char transr, char uplo, char diag,
 | |
|                         lapack_int n, const float *in,
 | |
|                         float *out );
 | |
| void LAPACKE_stp_trans( int matrix_order, char uplo, char diag,
 | |
|                         lapack_int n, const float *in,
 | |
|                         float *out );
 | |
| void LAPACKE_str_trans( int matrix_order, char uplo, char diag, lapack_int n,
 | |
|                         const float *in, lapack_int ldin,
 | |
|                         float *out, lapack_int ldout );
 | |
| 
 | |
| void LAPACKE_zgb_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         lapack_int kl, lapack_int ku,
 | |
|                         const lapack_complex_double *in, lapack_int ldin,
 | |
|                         lapack_complex_double *out, lapack_int ldout );
 | |
| void LAPACKE_zge_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         const lapack_complex_double* in, lapack_int ldin,
 | |
|                         lapack_complex_double* out, lapack_int ldout );
 | |
| void LAPACKE_zgg_trans( int matrix_order, lapack_int m, lapack_int n,
 | |
|                         const lapack_complex_double* in, lapack_int ldin,
 | |
|                         lapack_complex_double* out, lapack_int ldout );
 | |
| void LAPACKE_zhb_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         lapack_int kd,
 | |
|                         const lapack_complex_double *in, lapack_int ldin,
 | |
|                         lapack_complex_double *out, lapack_int ldout );
 | |
| void LAPACKE_zhe_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_double *in, lapack_int ldin,
 | |
|                         lapack_complex_double *out, lapack_int ldout );
 | |
| void LAPACKE_zhp_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_double *in,
 | |
|                         lapack_complex_double *out );
 | |
| void LAPACKE_zhs_trans( int matrix_order, lapack_int n,
 | |
|                         const lapack_complex_double *in, lapack_int ldin,
 | |
|                         lapack_complex_double *out, lapack_int ldout );
 | |
| void LAPACKE_zpb_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         lapack_int kd,
 | |
|                         const lapack_complex_double *in, lapack_int ldin,
 | |
|                         lapack_complex_double *out, lapack_int ldout );
 | |
| void LAPACKE_zpf_trans( int matrix_order, char transr, char uplo,
 | |
|                         lapack_int n, const lapack_complex_double *in,
 | |
|                         lapack_complex_double *out );
 | |
| void LAPACKE_zpo_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_double *in, lapack_int ldin,
 | |
|                         lapack_complex_double *out, lapack_int ldout );
 | |
| void LAPACKE_zpp_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_double *in,
 | |
|                         lapack_complex_double *out );
 | |
| void LAPACKE_zsp_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_double *in,
 | |
|                         lapack_complex_double *out );
 | |
| void LAPACKE_zsy_trans( int matrix_order, char uplo, lapack_int n,
 | |
|                         const lapack_complex_double *in, lapack_int ldin,
 | |
|                         lapack_complex_double *out, lapack_int ldout );
 | |
| void LAPACKE_ztb_trans( int matrix_order, char uplo, char diag,
 | |
|                         lapack_int n, lapack_int kd,
 | |
|                         const lapack_complex_double *in, lapack_int ldin,
 | |
|                         lapack_complex_double *out, lapack_int ldout );
 | |
| void LAPACKE_ztf_trans( int matrix_order, char transr, char uplo, char diag,
 | |
|                         lapack_int n, const lapack_complex_double *in,
 | |
|                         lapack_complex_double *out );
 | |
| void LAPACKE_ztp_trans( int matrix_order, char uplo, char diag,
 | |
|                         lapack_int n, const lapack_complex_double *in,
 | |
|                         lapack_complex_double *out );
 | |
| void LAPACKE_ztr_trans( int matrix_order, char uplo, char diag, lapack_int n,
 | |
|                         const lapack_complex_double *in, lapack_int ldin,
 | |
|                         lapack_complex_double *out, lapack_int ldout );
 | |
| 
 | |
| /* NaN checkers */
 | |
| #define LAPACK_SISNAN( x ) ( x != x )
 | |
| #define LAPACK_DISNAN( x ) ( x != x )
 | |
| #define LAPACK_CISNAN( x ) ( LAPACK_SISNAN(*((float*) &x)) || \
 | |
|                               LAPACK_SISNAN(*(((float*) &x)+1)) )
 | |
| #define LAPACK_ZISNAN( x ) ( LAPACK_DISNAN(*((double*)&x)) || \
 | |
|                               LAPACK_DISNAN(*(((double*)&x)+1)) )
 | |
| 
 | |
| /* NaN checkers for vectors */
 | |
| lapack_logical LAPACKE_c_nancheck( lapack_int n,
 | |
|                                     const lapack_complex_float *x,
 | |
|                                     lapack_int incx );
 | |
| lapack_logical LAPACKE_d_nancheck( lapack_int n,
 | |
|                                     const double *x,
 | |
|                                     lapack_int incx );
 | |
| lapack_logical LAPACKE_s_nancheck( lapack_int n,
 | |
|                                     const float *x,
 | |
|                                     lapack_int incx );
 | |
| lapack_logical LAPACKE_z_nancheck( lapack_int n,
 | |
|                                     const lapack_complex_double *x,
 | |
|                                     lapack_int incx );
 | |
| /* NaN checkers for matrices */
 | |
| lapack_logical LAPACKE_cgb_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n, lapack_int kl,
 | |
|                                       lapack_int ku,
 | |
|                                       const lapack_complex_float *ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_cge_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_cgg_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_cgt_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_float *dl,
 | |
|                                       const lapack_complex_float *d,
 | |
|                                       const lapack_complex_float *du );
 | |
| lapack_logical LAPACKE_chb_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const lapack_complex_float* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_che_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_chp_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_float *ap );
 | |
| lapack_logical LAPACKE_chs_nancheck( int matrix_order, lapack_int n,
 | |
|                                       const lapack_complex_float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_cpb_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const lapack_complex_float* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_cpf_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_float *a );
 | |
| lapack_logical LAPACKE_cpo_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_cpp_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_float *ap );
 | |
| lapack_logical LAPACKE_cpt_nancheck( lapack_int n,
 | |
|                                       const float *d,
 | |
|                                       const lapack_complex_float *e );
 | |
| lapack_logical LAPACKE_csp_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_float *ap );
 | |
| lapack_logical LAPACKE_cst_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_float *d,
 | |
|                                       const lapack_complex_float *e );
 | |
| lapack_logical LAPACKE_csy_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_ctb_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const lapack_complex_float* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_ctf_nancheck( int matrix_order, char transr,
 | |
|                                       char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_float *a );
 | |
| lapack_logical LAPACKE_ctp_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_float *ap );
 | |
| lapack_logical LAPACKE_ctr_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_float *a,
 | |
|                                       lapack_int lda );
 | |
| 
 | |
| lapack_logical LAPACKE_dgb_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n, lapack_int kl,
 | |
|                                       lapack_int ku,
 | |
|                                       const double *ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_dge_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n,
 | |
|                                       const double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_dgg_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n,
 | |
|                                       const double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_dgt_nancheck( lapack_int n,
 | |
|                                       const double *dl,
 | |
|                                       const double *d,
 | |
|                                       const double *du );
 | |
| lapack_logical LAPACKE_dhs_nancheck( int matrix_order, lapack_int n,
 | |
|                                       const double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_dpb_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const double* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_dpf_nancheck( lapack_int n,
 | |
|                                       const double *a );
 | |
| lapack_logical LAPACKE_dpo_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n,
 | |
|                                       const double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_dpp_nancheck( lapack_int n,
 | |
|                                       const double *ap );
 | |
| lapack_logical LAPACKE_dpt_nancheck( lapack_int n,
 | |
|                                       const double *d,
 | |
|                                       const double *e );
 | |
| lapack_logical LAPACKE_dsb_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const double* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_dsp_nancheck( lapack_int n,
 | |
|                                       const double *ap );
 | |
| lapack_logical LAPACKE_dst_nancheck( lapack_int n,
 | |
|                                       const double *d,
 | |
|                                       const double *e );
 | |
| lapack_logical LAPACKE_dsy_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n,
 | |
|                                       const double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_dtb_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const double* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_dtf_nancheck( int matrix_order, char transr,
 | |
|                                       char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const double *a );
 | |
| lapack_logical LAPACKE_dtp_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const double *ap );
 | |
| lapack_logical LAPACKE_dtr_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const double *a,
 | |
|                                       lapack_int lda );
 | |
| 
 | |
| lapack_logical LAPACKE_sgb_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n, lapack_int kl,
 | |
|                                       lapack_int ku,
 | |
|                                       const float *ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_sge_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n,
 | |
|                                       const float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_sgg_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n,
 | |
|                                       const float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_sgt_nancheck( lapack_int n,
 | |
|                                       const float *dl,
 | |
|                                       const float *d,
 | |
|                                       const float *du );
 | |
| lapack_logical LAPACKE_shs_nancheck( int matrix_order, lapack_int n,
 | |
|                                       const float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_spb_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const float* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_spf_nancheck( lapack_int n,
 | |
|                                       const float *a );
 | |
| lapack_logical LAPACKE_spo_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n,
 | |
|                                       const float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_spp_nancheck( lapack_int n,
 | |
|                                       const float *ap );
 | |
| lapack_logical LAPACKE_spt_nancheck( lapack_int n,
 | |
|                                       const float *d,
 | |
|                                       const float *e );
 | |
| lapack_logical LAPACKE_ssb_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const float* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_ssp_nancheck( lapack_int n,
 | |
|                                       const float *ap );
 | |
| lapack_logical LAPACKE_sst_nancheck( lapack_int n,
 | |
|                                       const float *d,
 | |
|                                       const float *e );
 | |
| lapack_logical LAPACKE_ssy_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n,
 | |
|                                       const float *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_stb_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const float* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_stf_nancheck( int matrix_order, char transr,
 | |
|                                       char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const float *a );
 | |
| lapack_logical LAPACKE_stp_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const float *ap );
 | |
| lapack_logical LAPACKE_str_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const float *a,
 | |
|                                       lapack_int lda );
 | |
| 
 | |
| lapack_logical LAPACKE_zgb_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n, lapack_int kl,
 | |
|                                       lapack_int ku,
 | |
|                                       const lapack_complex_double *ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_zge_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_zgg_nancheck( int matrix_order, lapack_int m,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_zgt_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_double *dl,
 | |
|                                       const lapack_complex_double *d,
 | |
|                                       const lapack_complex_double *du );
 | |
| lapack_logical LAPACKE_zhb_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const lapack_complex_double* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_zhe_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_zhp_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_double *ap );
 | |
| lapack_logical LAPACKE_zhs_nancheck( int matrix_order, lapack_int n,
 | |
|                                       const lapack_complex_double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_zpb_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const lapack_complex_double* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_zpf_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_double *a );
 | |
| lapack_logical LAPACKE_zpo_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_zpp_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_double *ap );
 | |
| lapack_logical LAPACKE_zpt_nancheck( lapack_int n,
 | |
|                                       const double *d,
 | |
|                                       const lapack_complex_double *e );
 | |
| lapack_logical LAPACKE_zsp_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_double *ap );
 | |
| lapack_logical LAPACKE_zst_nancheck( lapack_int n,
 | |
|                                       const lapack_complex_double *d,
 | |
|                                       const lapack_complex_double *e );
 | |
| lapack_logical LAPACKE_zsy_nancheck( int matrix_order, char uplo,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_double *a,
 | |
|                                       lapack_int lda );
 | |
| lapack_logical LAPACKE_ztb_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n, lapack_int kd,
 | |
|                                       const lapack_complex_double* ab,
 | |
|                                       lapack_int ldab );
 | |
| lapack_logical LAPACKE_ztf_nancheck( int matrix_order, char transr,
 | |
|                                       char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_double *a );
 | |
| lapack_logical LAPACKE_ztp_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_double *ap );
 | |
| lapack_logical LAPACKE_ztr_nancheck( int matrix_order, char uplo, char diag,
 | |
|                                       lapack_int n,
 | |
|                                       const lapack_complex_double *a,
 | |
|                                       lapack_int lda );
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif /* __cplusplus */
 | |
| 
 | |
| #endif  /* _LAPACKE_UTILS_H_ */
 |