Glas :Re: [glas] dotc and dotu in glas |
From: Karl Meerbergen (Karl.Meerbergen_at_[hidden])
Date: 2006-05-04 02:49:42
Hello,
Where could a vectorspace concept be used?
Iterative methods, time integration.
When I look at my own implementations for those, I think the following
list is pretty complete for linear system solvers with a single
right-hand side. (Although, for efficient implementation of gmres and
bicgstab(ell), we also need matrices for storing basis vectors and
matrix vector operations)
Operations:
Let v, and w be vectors, s a scalar.
v += w
v -= w
v += s*w
v -= s*w
v *= s
v /= s
s * v returning a vector expression
v / s returning a vector expression
v = vector expression
The following operations can be written as a combination of the previous
ones.
v - w returning a vector expression
v + w returning a vector expression
-v returning a vector expression
Creation of new containers (vectors in the vector space) for auxiliary
results.
inner_product(x,y) (can be implemented via dotc() or dotu() or dot() or
x^HERM * y or whathever syntax we decide to use when a Euclidean
vectorspace is used), where x and y belong to the same vectorspace.
bilinear_form(x,y) for x and y in a different vectorspace.
norm(x) (can be implemented using norm_2(x) when a Euclidean vectorspace
is used)
Can vectors x and y of different types below to the same vectorspace?
What about subspaces, etc.?
Karl