VERB_code_2.3
_dcovector-calc.hpp
1 //=============================================================================
3 inline drovector t(const _dcovector& covec)
4 {
5 #ifdef CPPL_VERBOSE
6  std::cerr << "# [MARK] t(const _dcovector&)"
7  << std::endl;
8 #endif//CPPL_VERBOSE
9 
10  _drovector rovec;
11  rovec.L =covec.L;
12  delete [] rovec.Array;
13  rovec.Array =covec.Array;
14 
15  return rovec;
16 }
17 
18 //=============================================================================
20 inline double nrm2(const _dcovector& vec)
21 {
22 #ifdef CPPL_VERBOSE
23  std::cerr << "# [MARK] nrm2(const _dcovector&)"
24  << std::endl;
25 #endif//CPPL_VERBOSE
26 
27  double val( dnrm2_(vec.L, vec.Array, 1) );
28  vec.destroy();
29  return val;
30 }
31 
32 //=============================================================================
35 inline long idamax(const _dcovector& vec)
36 {
37 #ifdef CPPL_VERBOSE
38  std::cerr << "# [MARK] idamax(const _dcovector&)"
39  << std::endl;
40 #endif//CPPL_VERBOSE
41 
42  long i( idamax_(vec.L, vec.Array, 1) -1 );
43  vec.destroy();
44  return i;
45 }
46 
47 //=============================================================================
49 inline double damax(const _dcovector& vec)
50 {
51 #ifdef CPPL_VERBOSE
52  std::cerr << "# [MARK] damax(const _dcovector&)"
53  << std::endl;
54 #endif//CPPL_VERBOSE
55 
56  double val( vec.Array[idamax_(vec.L, vec.Array, 1)-1] );
57  vec.destroy();
58  return val;
59 }
Real Double-precision Row Vector Class.
Definition: drovector.hpp:3
(DO NOT USE) Smart-temporary Real Double-precision Row Vector Class
Definition: _drovector.hpp:3
double * Array
1D Array to store vector data
Definition: _dcovector.hpp:8
long L
vector size
Definition: _dcovector.hpp:7
void destroy() const
Definition: _dcovector-misc.hpp:3
long L
vector size
Definition: _drovector.hpp:7
double * Array
1D Array to store vector data
Definition: _drovector.hpp:8
(DO NOT USE) Smart-temporary Real Double-precision Column Vector Class
Definition: _dcovector.hpp:3