示例#1
0
        private vector CountV(vector b, int firstToCount)
        {
            var e = vector.IdentityVector(firstToCount, b.Length);
            var v = new vector(Enumerable.Repeat(0.0, firstToCount).ToList());

            b.Elements = b.Skip(firstToCount).ToList();
            v.Elements.AddRange(b);

            return(v + e * Sign(b[0]) * b.Rate2());
        }
示例#2
0
        private Matrix GetHouseholderMatrix(vector v)
        {
            var E = Matrix.IdentityMatrix(v.Length);

            return(E + (v.Transpose() * v * (-2.0 / vector.ScalarMultiply(v, v))));
        }