public void Multiply_FloatMatrix_ReturnsMatrix() { // Arrange MathNetQuantitiesCatalog.Setup(); IUnit unit = new Mock <IUnit>().Object; Matrix <double> rightMatrix = new DenseMatrix(10, 15); Quantity <float> left = new Quantity <float>(2.0f, unit); Quantity <Matrix <double> > right = new Quantity <Matrix <double> >(rightMatrix, unit); // Act Quantity <Matrix <double> > result = left * right as Quantity <Matrix <double> >; // Assert Assert.NotNull(result); Assert.NotNull(result.Value); Assert.AreEqual(rightMatrix.RowCount, result.Value.RowCount); Assert.AreEqual(rightMatrix.ColumnCount, result.Value.ColumnCount); }
public void Multiply_VectorMatrix_ReturnsVector() { // Arrange MathNetQuantitiesCatalog.Setup(); IUnit unit = new Mock <IUnit>().Object; Vector <double> leftVector = new DenseVector(10); Matrix <double> rightMatrix = new DenseMatrix(10, 15); Quantity <Vector <double> > left = new Quantity <Vector <double> >(leftVector, unit); Quantity <Matrix <double> > right = new Quantity <Matrix <double> >(rightMatrix, unit); // Act Quantity <Vector <double> > result = left * right as Quantity <Vector <double> >; // Assert Assert.NotNull(result); Assert.NotNull(result.Value); Assert.AreEqual(15, result.Value.Count); }