Vector [ITL Home] Programmers Guide
  Contents | Index |  Search 


Category:containers Component type:concept
Description
ITL Vector is a Hilbert space which requires:
Dimension:
size(x)
Inner product:
dot(x, y)
dot_conj(x, y)
Two norm:
two_norm(x)
Scaling:
scaled(x, alpha) //return an object to hold scaling until next time an actual operation is performed on x.
scale(x, alpha) //scaling x with alpha
Addition:
add(x, y) //y += x
add(x, y, z) //z = x + y
add(x, y, z, r) //r = x + y + z
Element type:
typename itl_traits<Vec>::value_type

Internal Vector

This is Vector used inside ITL iterative solvers for temporary vectors. It needs to be arithmetically compatible with the input vector of iterative solvers. Usually It is the same as the type of the input vector. However, the type is accessed through the traits: typename itl_traits<Vec>::internal_vector; where Vec is the type of the input vector.

If macro ITL_GMRES_USING_MATRIX is not defined, and if internal vector is a referencing object(handle), macro ITL_VEC_IS_HANDLE should be defined. On the other hand, if internal vector has deep-copy semantics, resize(v, some_size) should be defined. More details see grmes.

GMRES Internal Vector

Please do not confuse it with above concept. This is Vector used inside of GMRES. It requires one more specification:
x[i] //to access ith element.
Notes
See also

[ITL Home] Copyright © 1998,1999 University of Notre Dame. All Rights Reserved.