-
Henry Weller authored
Provides '(i, j)' element access and general forms of inner and outer products, transpose etc. for square and rectangular VectorSpaces. VectorSpaces default to be column-vectors as before whereas row-vectors may be represented as 1xn MatrixSpaces. In the future it may be preferable to create a specializations of VectorSpace for column- and maybe row-vectors but it would add complexity to MatrixSpace to handle all the type combinations. Tensor is now a 3x3 specialization of MatrixSpace. Sub-block const and non-const access is provided via the '.block<SubTensor, RowStart, ColStart>()' member functions. Consistent sub-block access is also provide for VectorSpace so that columns of MatrixSpaces may be accessed and substituted. These new classes will be used to create a more extensive set of primitive vector and tensor types over the next few weeks. Henry G. Weller CFD Direct
c14ee0ad