|
liblapackwrap 0.1
|
00001 /* 00002 *Macro definitions for the core LAPACK functions. 00003 00004 Copyright (C) 2010 Joseph Pingenot 00005 00006 This program is free software: you can redistribute it and/or modify 00007 it under the terms of the GNU Lesser General Public License as published by 00008 the Free Software Foundation, either version 3 of the License, or 00009 (at your option) any later version. 00010 00011 This program is distributed in the hope that it will be useful, 00012 but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 GNU Lesser General Public License for more details. 00015 00016 You should have received a copy of the GNU Lesser General Public License 00017 along with this program. If not, see <http://www.gnu.org/licenses/>. 00018 00019 */ 00020 00021 #define ACML 0 00022 #define CELL 1 00023 00024 void llw_lw_real_double_set_from_double(double *item, double value) { 00025 *item = value; 00026 } 00027 00028 void llw_lw_real_double_no_such_function_filler(char thing, ...) {} 00029 void llw_lw_real_double_no_such_function_filler_(char* thing, ...) {} 00030 00031 /*Pull in the header and define the actual function names we need to call*/ 00032 #if LAPACK == CELL 00033 #define FCALL 00034 #define LAPACK_COMPLEX_TYPENAME double 00035 #define LAPACK_COMPLEXDOUBLEONLY_TYPENAME double 00036 #define LAPACK_COMPLEXSINGLEONLY_TYPENAME double 00037 #include <lapack.h> 00038 #define STEGR dstegr_ 00039 #define SBTRD dsbtrd_ 00040 #define SYTRD dsytrd_ 00041 #define ORGTR dorgtr_ 00042 #elif LAPACK == ACML 00043 #define LAPACK_COMPLEX_TYPENAME double 00044 #define LAPACK_COMPLEXDOUBLEONLY_TYPENAME double 00045 #define LAPACK_COMPLEXSINGLEONLY_TYPENAME double 00046 #include <acml.h> 00047 #define STEGR dstegr 00048 #define SBTRD dsbtrd 00049 #define SYTRD dsytrd 00050 #define ORGTR dorgtr 00051 #else 00052 #error Unsupported (or no) LAPACK implementation! 00053 #endif