* all elements of the matrix to zero, but keep the sparsity pattern
* previously used.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded by splitting the work over matrix rows.
+ * @dealiiOperationIsMultithreaded
*/
SparseMatrix &operator = (const double d);
*
* Source and destination must not be the same vector.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded by splitting the work over matrix rows.
+ * @dealiiOperationIsMultithreaded
*/
template <class OutVector, class InVector>
void vmult (OutVector &dst,
*
* Source and destination must not be the same vector.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded by splitting the work over matrix rows.
+ * @dealiiOperationIsMultithreaded
*/
template <class OutVector, class InVector>
void vmult_add (OutVector &dst,
* should either both be real or complex-valued, but not mixed, for this
* function to make sense.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded by splitting the work over matrix rows.
+ * @dealiiOperationIsMultithreaded
*/
template <typename somenumber>
somenumber matrix_norm_square (const Vector<somenumber> &v) const;
/**
* Compute the matrix scalar product $\left(u,Mv\right)$.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded by splitting the work over matrix rows.
+ * @dealiiOperationIsMultithreaded
*/
template <typename somenumber>
somenumber matrix_scalar_product (const Vector<somenumber> &u,
*
* Source <i>x</i> and destination <i>dst</i> must not be the same vector.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded by splitting the work over matrix rows.
+ * @dealiiOperationIsMultithreaded
*/
template <typename somenumber>
somenumber residual (Vector<somenumber> &dst,
* <tt>v=0</tt>. Assigning other values is deprecated and may be disallowed
* in the future.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
Vector<Number> &operator = (const Number s);
/**
* Copy the given vector. Resize the present vector if necessary.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
Vector<Number> &operator= (const Vector<Number> &v);
/**
* Copy the given vector. Resize the present vector if necessary.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
template <typename Number2>
Vector<Number> &operator= (const Vector<Number2> &v);
* For complex vectors, the scalar product is implemented as
* $\left<v,w\right>=\sum_i v_i \bar{w_i}$.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector. The algorithm uses pairwise
+ * @dealiiOperationIsMultithreaded The algorithm uses pairwise
* summation with the same order of summation in every run, which gives
* fully repeatable results from one run to another.
*/
/**
* Return square of the $l_2$-norm.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector. The algorithm uses pairwise
+ * @dealiiOperationIsMultithreaded The algorithm uses pairwise
* summation with the same order of summation in every run, which gives
* fully repeatable results from one run to another.
*/
/**
* Mean value of the elements of this vector.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector. The algorithm uses pairwise
+ * @dealiiOperationIsMultithreaded The algorithm uses pairwise
* summation with the same order of summation in every run, which gives
* fully repeatable results from one run to another.
*/
/**
* $l_1$-norm of the vector. The sum of the absolute values.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector. The algorithm uses pairwise
+ * @dealiiOperationIsMultithreaded The algorithm uses pairwise
* summation with the same order of summation in every run, which gives
* fully repeatable results from one run to another.
*/
* $l_2$-norm of the vector. The square root of the sum of the squares of
* the elements.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector. The algorithm uses pairwise
+ * @dealiiOperationIsMultithreaded The algorithm uses pairwise
* summation with the same order of summation in every run, which gives
* fully repeatable results from one run to another.
*/
* $l_p$-norm of the vector. The pth root of the sum of the pth powers of
* the absolute values of the elements.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector. The algorithm uses pairwise
+ * @dealiiOperationIsMultithreaded The algorithm uses pairwise
* summation with the same order of summation in every run, which gives
* fully repeatable results from one run to another.
*/
/**
* Add the given vector to the present one.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
Vector<Number> &operator += (const Vector<Number> &V);
/**
* Subtract the given vector from the present one.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
Vector<Number> &operator -= (const Vector<Number> &V);
* Addition of @p s to all components. Note that @p s is a scalar and not a
* vector.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void add (const Number s);
/**
* Simple vector addition, equal to the <tt>operator +=</tt>.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void add (const Vector<Number> &V);
/**
* Simple addition of a multiple of a vector, i.e. <tt>*this += a*V</tt>.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void add (const Number a, const Vector<Number> &V);
/**
* Multiple addition of scaled vectors, i.e. <tt>*this += a*V+b*W</tt>.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void add (const Number a, const Vector<Number> &V,
const Number b, const Vector<Number> &W);
/**
* Scaling and simple vector addition, i.e. <tt>*this = s*(*this)+V</tt>.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void sadd (const Number s,
const Vector<Number> &V);
/**
* Scaling and simple addition, i.e. <tt>*this = s*(*this)+a*V</tt>.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void sadd (const Number s,
const Number a,
/**
* Scaling and multiple addition.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void sadd (const Number s,
const Number a,
* Scaling and multiple addition. <tt>*this = s*(*this)+a*V + b*W +
* c*X</tt>.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void sadd (const Number s,
const Number a,
/**
* Scale each element of the vector by a constant value.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
Vector<Number> &operator *= (const Number factor);
/**
* Scale each element of the vector by the inverse of the given value.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
Vector<Number> &operator /= (const Number factor);
* argument. This function is mostly meant to simulate multiplication (and
* immediate re-assignment) by a diagonal scaling matrix.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void scale (const Vector<Number> &scaling_factors);
/**
* Assignment <tt>*this = a*u</tt>.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void equ (const Number a, const Vector<Number> &u);
/**
* Assignment <tt>*this = a*u + b*v</tt>.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void equ (const Number a, const Vector<Number> &u,
const Number b, const Vector<Number> &v);
/**
* Assignment <tt>*this = a*u + b*v + b*w</tt>.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void equ (const Number a, const Vector<Number> &u,
const Number b, const Vector<Number> &v,
* If any of the <tt>b[i]</tt> is zero, the result is undefined. No attempt
* is made to catch such situations.
*
- * @note If deal.II is configured with threads, this operation will run
- * multi-threaded over subranges of the vector.
+ * @dealiiOperationIsMultithreaded
*/
void ratio (const Vector<Number> &a,
const Vector<Number> &b);