/// <summary> /// Initializes a new instance of the <see cref="TestableMatrixOperation" /> class. /// </summary> /// <param name="expected">The expected result.</param> /// <param name="operand">The operand.</param> /// <param name="operandWritableOps">The ops having writable operands.</param> /// <param name="operandReadOnlyOps">The ops having read only operands.</param> protected TestableComplexMatrixOperation( TExpected expected, TestableComplexMatrix operand, Func <ComplexMatrix, ComplexMatrix>[] operandWritableOps, Func <ReadOnlyComplexMatrix, ComplexMatrix>[] operandReadOnlyOps) { this.Expected = expected; this.Operand = operand; this.OperandWritableOps = operandWritableOps; this.OperandReadOnlyOps = operandReadOnlyOps; }
/// <summary> /// Initializes a new instance of the <see cref="TestableComplexScalarComplexMatrixOperation" /> class. /// </summary> /// <param name="expected">The expected result.</param> /// <param name="left">The left operand.</param> /// <param name="right">The right operand.</param> /// <param name="leftWritableRightWritableOps">The left complex, right writable matrix ops.</param> /// <param name="leftRightReadOnlyOps">The left complex, right read only matrix ops.</param> protected TestableComplexScalarComplexMatrixOperation( TExpected expected, Complex left, TestableComplexMatrix right, Func <Complex, ComplexMatrix, ComplexMatrix>[] leftScalarRightWritableOps, Func <Complex, ReadOnlyComplexMatrix, ComplexMatrix>[] leftScalarRightReadOnlyOps) { this.Expected = expected; this.Left = left; this.Right = right; this.LeftScalarRightWritableOps = leftScalarRightWritableOps; this.LeftScalarRightReadOnlyOps = leftScalarRightReadOnlyOps; }
/// <summary> /// Initializes a new instance of the <see cref="TestableComplexMatrixDoubleScalarOperation" /> class. /// </summary> /// <param name="expected">The expected result.</param> /// <param name="left">The left operand.</param> /// <param name="right">The right operand.</param> /// <param name="leftWritableRightWritableOps">The left writable matrix, right ops.</param> /// <param name="leftRightReadOnlyOps">The left read only matrix, right ops.</param> protected TestableComplexMatrixDoubleScalarOperation( TExpected expected, TestableComplexMatrix left, double right, Func <ComplexMatrix, double, ComplexMatrix>[] leftWritableRightScalarOps, Func <ReadOnlyComplexMatrix, double, ComplexMatrix>[] leftReadOnlyRightScalarOps) { this.Expected = expected; this.Left = left; this.Right = right; this.LeftWritableRightScalarOps = leftWritableRightScalarOps; this.LeftReadOnlyRightScalarOps = leftReadOnlyRightScalarOps; }
/// <summary> /// Initializes a new instance of /// the <see cref="TestableComplexMatrixDoubleMatrixOperation" /> class. /// </summary> /// <param name="expected">The expected result.</param> /// <param name="left">The left operand.</param> /// <param name="right">The right operand.</param> /// <param name="leftWritableRightWritableOps">The left writable, right writable ops.</param> /// <param name="leftReadOnlyRightWritableOps">The left read only, right writable ops.</param> /// <param name="leftWritableRightReadOnlyOps">The left writable, right read only ops.</param> /// <param name="leftReadOnlyRightReadOnlyOps">The left read only, right read only ops.</param> protected TestableComplexMatrixDoubleMatrixOperation( TExpected expected, TestableComplexMatrix left, TestableDoubleMatrix right, Func <ComplexMatrix, DoubleMatrix, ComplexMatrix>[] leftWritableRightWritableOps, Func <ReadOnlyComplexMatrix, DoubleMatrix, ComplexMatrix>[] leftReadOnlyRightWritableOps, Func <ComplexMatrix, ReadOnlyDoubleMatrix, ComplexMatrix>[] leftWritableRightReadOnlyOps, Func <ReadOnlyComplexMatrix, ReadOnlyDoubleMatrix, ComplexMatrix>[] leftReadOnlyRightReadOnlyOps) { this.Expected = expected; this.Left = left; this.Right = right; this.LeftWritableRightWritableOps = leftWritableRightWritableOps; this.LeftReadOnlyRightWritableOps = leftReadOnlyRightWritableOps; this.LeftWritableRightReadOnlyOps = leftWritableRightReadOnlyOps; this.LeftReadOnlyRightReadOnlyOps = leftReadOnlyRightReadOnlyOps; }