/home/coin/SVN-release/CoinAll-1.1.0/Ipopt/src/LinAlg/IpBlas.hpp

Go to the documentation of this file.
00001 // Copyright (C) 2004, 2006 International Business Machines and others.
00002 // All Rights Reserved.
00003 // This code is published under the Common Public License.
00004 //
00005 // $Id: IpBlas.hpp 1102 2007-09-29 14:28:11Z andreasw $
00006 //
00007 // Authors:  Carl Laird, Andreas Waechter     IBM    2004-08-13
00008 
00009 #ifndef __IPBLAS_HPP__
00010 #define __IPBLAS_HPP__
00011 
00012 #include "IpUtils.hpp"
00013 
00014 namespace Ipopt
00015 {
00016   // If CBLAS is not available, this is our own interface to the Fortran
00017   // implementation
00018 
00021   Number IpBlasDdot(Index size, const Number *x, Index incX, const Number *y,
00022                     Index incY);
00023 
00025   Number IpBlasDnrm2(Index size, const Number *x, Index incX);
00026 
00028   Number IpBlasDasum(Index size, const Number *x, Index incX);
00029 
00032   Index IpBlasIdamax(Index size, const Number *x, Index incX);
00033 
00036   void IpBlasDcopy(Index size, const Number *x, Index incX, Number *y,
00037                    Index incY);
00038 
00041   void IpBlasDaxpy(Index size, Number alpha, const Number *x, Index incX,
00042                    Number *y, Index incY);
00043 
00046   void IpBlasDscal(Index size, Number alpha, Number *x, Index incX);
00047 
00050   void IpBlasDgemv(bool trans, Index nRows, Index nCols, Number alpha,
00051                    const Number* A, Index ldA, const Number* x,
00052                    Index incX, Number beta, Number* y, Index incY);
00053 
00056   void IpBlasDsymv(Index n, Number alpha, const Number* A, Index ldA,
00057                    const Number* x, Index incX, Number beta, Number* y,
00058                    Index incY);
00059 
00061   void IpBlasDgemm(bool transa, bool transb, Index m, Index n, Index k,
00062                    Number alpha, const Number* A, Index ldA, const Number* B,
00063                    Index ldB, Number beta, Number* C, Index ldC);
00064 
00067   void IpBlasDsyrk(bool trans, Index ndim, Index nrank,
00068                    Number alpha, const Number* A, Index ldA,
00069                    Number beta, Number* C, Index ldC);
00070 
00073   void IpBlasDtrsm(bool trans, Index ndim, Index nrhs, Number alpha,
00074                    const Number* A, Index ldA, Number* B, Index ldB);
00075 
00076 } // namespace Ipopt
00077 
00078 #endif

Generated on Sun Nov 14 14:06:36 2010 for Coin-All by  doxygen 1.4.7