26 #ifndef OOMPH_DOUBLE_VECTOR_CLASS_HEADER
27 #define OOMPH_DOUBLE_VECTOR_CLASS_HEADER
31 #include <oomph-lib-config.h>
67 const double&
v = 0.0)
96 this->
build(new_vector);
102 this->
build(old_vector);
168 double* external_values,
169 bool delete_external_values)
192 bool delete_external_values)
202 std::ostringstream error_message;
203 error_message <<
"The distribution of the vector must be setup before "
204 <<
"external values can be set";
266 void output(std::ostream& outfile,
const int& output_precision = -1)
const;
272 std::ofstream some_file;
274 output(some_file, output_precision);
280 const int& output_precision = -1)
const;
284 const int& output_precision = -1)
const
287 std::ofstream some_file;
295 std::ostream& outfile,
const int& output_precision = -1)
const;
299 const int& output_precision = -1)
const
302 std::ofstream some_file;
333 namespace DoubleVectorHelpers
Array< int, Dynamic, 1 > v
Definition: Array_initializer_list_vector_cxx11.cpp:1
int i
Definition: BiCGSTAB_step_by_step.cpp:9
Definition: matrices.h:888
Definition: linear_algebra_distribution.h:435
void clear_distribution()
Definition: linear_algebra_distribution.h:522
bool distribution_built() const
Definition: linear_algebra_distribution.h:500
void build_distribution(const LinearAlgebraDistribution *const dist_pt)
Definition: linear_algebra_distribution.h:507
Definition: double_vector.h:58
void set_external_values(double *external_values, bool delete_external_values)
Definition: double_vector.h:191
void initialise(const double &v)
initialise the whole vector with value v
Definition: double_vector.cc:123
void output_local_values(std::string filename, const int &output_precision=-1) const
output the local contents of the vector
Definition: double_vector.h:283
DoubleVector(const LinearAlgebraDistribution *const &dist_pt, const double &v=0.0)
Definition: double_vector.h:66
void operator+=(const DoubleVector &v)
+= operator with another vector
Definition: double_vector.cc:459
DoubleVector(const LinearAlgebraDistribution &dist, const double &v=0.0)
Definition: double_vector.h:76
void output_local_values(std::ostream &outfile, const int &output_precision=-1) const
output the local contents of the vector
Definition: double_vector.cc:742
void set_external_values(const LinearAlgebraDistribution *const &dist_pt, double *external_values, bool delete_external_values)
Definition: double_vector.h:167
double max() const
returns the maximum coefficient
Definition: double_vector.cc:604
bool operator==(const DoubleVector &v)
== operator
Definition: double_vector.cc:426
~DoubleVector()
Definition: double_vector.h:84
void operator*=(const double &d)
multiply by a double
Definition: double_vector.cc:550
void build(const LinearAlgebraDistribution &dist, const Vector< double > &v)
Definition: double_vector.h:123
friend std::ostream & operator<<(std::ostream &out, const DoubleVector &v)
Ouput operator for DoubleVector.
Definition: double_vector.cc:949
DoubleVector()
Constructor for an uninitialized DoubleVector.
Definition: double_vector.h:61
void build(const DoubleVector &old_vector)
Just copys the argument DoubleVector.
Definition: double_vector.cc:35
double * values_pt()
access function to the underlying values
Definition: double_vector.h:254
void redistribute(const LinearAlgebraDistribution *const &dist_pt)
Definition: double_vector.cc:164
double norm() const
compute the 2 norm of this vector
Definition: double_vector.cc:867
bool Internal_values
Definition: double_vector.h:323
void output(std::ostream &outfile, const int &output_precision=-1) const
output the global contents of the vector
Definition: double_vector.cc:653
void output_local_values_with_offset(std::string filename, const int &output_precision=-1) const
output the local contents of the vector
Definition: double_vector.h:298
bool built() const
Definition: double_vector.h:154
void operator-=(const DoubleVector &v)
-= operator with another vector
Definition: double_vector.cc:504
void output(std::string filename, const int &output_precision=-1) const
output the global contents of the vector
Definition: double_vector.h:269
void operator/=(const double &d)
divide by a double
Definition: double_vector.cc:573
void operator=(const DoubleVector &old_vector)
assignment operator
Definition: double_vector.h:100
bool Built
indicates that the vector has been built and is usable
Definition: double_vector.h:326
double * values_pt() const
access function to the underlying values (const version)
Definition: double_vector.h:260
double * Values_pt
the local vector
Definition: double_vector.h:319
double dot(const DoubleVector &vec) const
compute the dot product of this vector with the vector vec.
Definition: double_vector.cc:805
double & operator[](int i)
[] access function to the (local) values of this vector
Definition: double_vector.cc:408
void build(const LinearAlgebraDistribution &dist, const double &v)
Definition: double_vector.h:110
void clear()
wipes the DoubleVector
Definition: double_vector.h:142
DoubleVector(const DoubleVector &new_vector)
Copy constructor.
Definition: double_vector.h:90
void output_local_values_with_offset(std::ostream &outfile, const int &output_precision=-1) const
output the local contents of the vector
Definition: double_vector.cc:772
Definition: linear_algebra_distribution.h:64
Definition: oomph_definitions.h:222
string filename
Definition: MergeRestartFiles.py:39
void split(const DoubleVector &in_vector, Vector< DoubleVector * > &out_vector_pt)
Definition: double_vector.cc:1413
void concatenate_without_communication(const Vector< DoubleVector * > &in_vector_pt, DoubleVector &out_vector)
Definition: double_vector.cc:1856
void split_without_communication(const DoubleVector &in_vector, Vector< DoubleVector * > &out_vector_pt)
Definition: double_vector.cc:2075
void concatenate(const Vector< DoubleVector * > &in_vector_pt, DoubleVector &out_vector)
Definition: double_vector.cc:993
std::string string(const unsigned &i)
Definition: oomph_definitions.cc:286
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).
Definition: AnisotropicHookean.h:10
#define OOMPH_EXCEPTION_LOCATION
Definition: oomph_definitions.h:61
#define OOMPH_CURRENT_FUNCTION
Definition: oomph_definitions.h:86
std::ofstream out("Result.txt")