Vector.Multiply and Vector.Add do not modify the vector "in place", they return a copy.
In the end I did the following:
In the end I did the following:
// Replaces Vector.ScaleInplace (double)double scalar = 2; v1.MapInPlace (value => value * scalar); // Replaces Vector.AddInplace (Vector) v1.MapIndexedInplace ((index, value) => value + v2[index]);