BCLS: Bound Constrained Least Squares

Version 0.1

cblas.h

Go to the documentation of this file.
00001 /* cblas.h
00002    $Revision: 273 $ $Date: 2006-09-04 15:59:04 -0700 (Mon, 04 Sep 2006) $
00003 
00004    ----------------------------------------------------------------------
00005    This file is part of BCLS (Bound-Constrained Least Squares).
00006 
00007    Copyright (C) 2006 Michael P. Friedlander, Department of Computer
00008    Science, University of British Columbia, Canada. All rights
00009    reserved. E-mail: <mpf@cs.ubc.ca>.
00010    
00011    BCLS is free software; you can redistribute it and/or modify it
00012    under the terms of the GNU Lesser General Public License as
00013    published by the Free Software Foundation; either version 2.1 of the
00014    License, or (at your option) any later version.
00015    
00016    BCLS is distributed in the hope that it will be useful, but WITHOUT
00017    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
00018    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General
00019    Public License for more details.
00020    
00021    You should have received a copy of the GNU Lesser General Public
00022    License along with BCLS; if not, write to the Free Software
00023    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
00024    USA
00025    ----------------------------------------------------------------------
00026 */
00032 #ifndef _CBLAS_H
00033 #define _CBLAS_H
00034 
00035 #include <math.h>
00036 #include <stddef.h>
00037 
00038 #define OFFSET(N, incX) ((incX) > 0 ?  0 : ((N) - 1) * (-(incX)))
00039 
00040 enum CBLAS_ORDER    {CblasRowMajor=101, CblasColMajor=102};
00041 enum CBLAS_TRANSPOSE {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113};
00042 
00043 void
00044 cblas_daxpy(const int N, const double alpha, const double *X,
00045             const int incX, double *Y, const int incY);
00046 
00047 void
00048 cblas_dcopy(const int N, const double *X, const int incX, 
00049             double *Y, const int incY);
00050 
00051 
00052 double
00053 cblas_ddot(const int N, const double *X, const int incX,
00054            const double *Y, const int incY);
00055 
00056 double
00057 cblas_dnrm2(const int N, const double *X, const int incX);
00058 
00059 void
00060 cblas_dscal(const int N, const double alpha, double *X, const int incX);
00061 
00062 void
00063 cblas_dgemv(const enum CBLAS_ORDER order,
00064             const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
00065             const double alpha, const double  *A, const int lda,
00066             const double  *X, const int incX, const double beta,
00067             double  *Y, const int incY);
00068 
00069 #endif /* _CBLAS_H */

Generated on Sun Mar 4 22:50:03 2007 by Doxygen 1.5.1