public void TestOperator_Multiplication_ii ()
{
for(Int32 i = 0; i < 100; ++i)
{
var a = GetNextRandomMatrix44();
var b = GetNextRandomMatrix44();
var c = new Matrix44(
(a.R0C0 * b.R0C0) + (a.R0C1 * b.R1C0) +
(a.R0C2 * b.R2C0) + (a.R0C3 * b.R3C0),
(a.R0C0 * b.R0C1) + (a.R0C1 * b.R1C1) +
(a.R0C2 * b.R2C1) + (a.R0C3 * b.R3C1),
(a.R0C0 * b.R0C2) + (a.R0C1 * b.R1C2) +
(a.R0C2 * b.R2C2) + (a.R0C3 * b.R3C2),
(a.R0C0 * b.R0C3) + (a.R0C1 * b.R1C3) +
(a.R0C2 * b.R2C3) + (a.R0C3 * b.R3C3),
(a.R1C0 * b.R0C0) + (a.R1C1 * b.R1C0) +
(a.R1C2 * b.R2C0) + (a.R1C3 * b.R3C0),
(a.R1C0 * b.R0C1) + (a.R1C1 * b.R1C1) +
(a.R1C2 * b.R2C1) + (a.R1C3 * b.R3C1),
(a.R1C0 * b.R0C2) + (a.R1C1 * b.R1C2) +
(a.R1C2 * b.R2C2) + (a.R1C3 * b.R3C2),
(a.R1C0 * b.R0C3) + (a.R1C1 * b.R1C3) +
(a.R1C2 * b.R2C3) + (a.R1C3 * b.R3C3),
(a.R2C0 * b.R0C0) + (a.R2C1 * b.R1C0) +
(a.R2C2 * b.R2C0) + (a.R2C3 * b.R3C0),
(a.R2C0 * b.R0C1) + (a.R2C1 * b.R1C1) +
(a.R2C2 * b.R2C1) + (a.R2C3 * b.R3C1),
(a.R2C0 * b.R0C2) + (a.R2C1 * b.R1C2) +
(a.R2C2 * b.R2C2) + (a.R2C3 * b.R3C2),
(a.R2C0 * b.R0C3) + (a.R2C1 * b.R1C3) +
(a.R2C2 * b.R2C3) + (a.R2C3 * b.R3C3),
(a.R3C0 * b.R0C0) + (a.R3C1 * b.R1C0) +
(a.R3C2 * b.R2C0) + (a.R3C3 * b.R3C0),
(a.R3C0 * b.R0C1) + (a.R3C1 * b.R1C1) +
(a.R3C2 * b.R2C1) + (a.R3C3 * b.R3C1),
(a.R3C0 * b.R0C2) + (a.R3C1 * b.R1C2) +
(a.R3C2 * b.R2C2) + (a.R3C3 * b.R3C2),
(a.R3C0 * b.R0C3) + (a.R3C1 * b.R1C3) +
(a.R3C2 * b.R2C3) + (a.R3C3 * b.R3C3));
this.TestMultiplication(a, b, c);
}
}