10 #ifndef __GSL_BLAS_H__
11 #include <gsl/gsl_blas.h>
13 #ifndef GSLPP_VECTOR_DOUBLE_H
16 #ifndef GSLPP_VECTOR_COMPLEX_H
25 _vector = gsl_vector_alloc(size);
26 gsl_vector_set_all(_vector, a);
31 _vector = gsl_vector_alloc(size);
32 gsl_vector_set_all(_vector, 0.);
38 _vector = gsl_vector_alloc(v.
size());
44 _vector = gsl_vector_alloc(v.size);
45 gsl_vector_memcpy(_vector, &v);
50 _vector = gsl_vector_alloc(v->size);
51 gsl_vector_memcpy(_vector, v);
57 gsl_vector_free(_vector);
63 const double *x = gsl_vector_const_ptr(_vector, i);
70 double *x = gsl_vector_ptr(_vector, i);
90 return gsl_blas_dnrm2(_vector);
96 return gsl_vector_max(_vector);
102 return gsl_vector_min(_vector);
113 return const_cast<gsl_vector&
>(*_vector);
118 return const_cast<gsl_vector&
>(*_vector);
127 std::cout <<
"\n Error in vector<double> unary -" << std::endl;
139 std::cout <<
"\n Error in vector<double> +" << std::endl;
150 std::cout <<
"\n Error in vector<double> -" << std::endl;
162 std::cout <<
"\n Error in vector<double> *" << std::endl;
193 std::cout <<
"\n Error in vector<double> + (double)" << std::endl;
204 std::cout <<
"\n Error in vector<double> - (double)" << std::endl;
215 std::cout <<
"\n Error in vector<double> * (double)" << std::endl;
226 std::cout <<
"\n Error in vector<double> / (double)" << std::endl;
280 std::ostream& operator<<(std::ostream& output, const vector<double>& v)
284 for (i=0; i<v.size()-1; i++)
285 output << v(i) <<
",";
286 output << v(i) <<
")";
vector< complex > operator+(const complex &z, vector< double > v)
complex operator*(const double &x1, const complex &z2)
A class for constructing and defining operations on complex vectors.
vector< complex > operator*(const complex &z, vector< double > v)
complex operator/(const double &x1, const complex &z2)
vector< complex > operator-(const complex &z, vector< double > v)
A class for constructing and defining operations on real vectors.
A base class for defining operations on vectors, both real and complex.
complex operator+(const double &x1, const complex &z2)
A class for defining operations on and functions of complex numbers.
complex operator-(const double &x1, const complex &z2)
Complex number, vector and matrix manipulation using GSL.
gsl_vector * as_gsl_type_ptr() const