Go to the source code of this file.
Functions | |
| _dcovector | operator * (const _dgematrix &mat, const _dcovector &vec) |
|
||||||||||||
|
_dgematrix*_dcovector operator Definition at line 3 of file _dgematrix-_dcovector.hpp. References _dcovector::Array, _dgematrix::Array, _dcovector::Desc, _dgematrix::Desc, _dcovector::destroy(), _dgematrix::destroy(), _dcovector::L, _dgematrix::M, and _dgematrix::N.
00004 {
00005 #ifdef CPPSL_DEBUG
00006 if(mat.N!=vec.L){
00007 std::cerr << "[ERROR] operator*(const _dgematrix&, const _dcovector&)"
00008 << std::endl
00009 << "These matrix and vector can not make a product." << std::endl
00010 << "Your input was (" << mat.M << "x" << mat.N << ") * ("
00011 << vec.L << ")." << std::endl;
00012 exit(1);
00013 }
00014 #endif//CPPSL_DEBUG
00015
00016 _dcovector newvec(mat.M);
00017 pdgemv_( 'N', mat.M, mat.N, 1.0, mat.Array, 1, 1, mat.Desc,
00018 vec.Array, 1, 1, vec.Desc, 1, 0.0,
00019 newvec.Array, 1, 1, newvec.Desc, 1 );
00020
00021 mat.destroy();
00022 vec.destroy();
00023 return newvec;
00024 }
|
1.3.5