Extreme Optimization™: Complexity made simple.

Math and Statistics
Libraries for .NET

  • Home
  • Features
    • Math Library
    • Vector and Matrix Library
    • Statistics Library
    • Performance
    • Usability
  • Documentation
    • Introduction
    • Math Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • Resources
    • Downloads
    • QuickStart Samples
    • Sample Applications
    • Frequently Asked Questions
    • Technical Support
  • Blog
  • Order
  • Company
    • About us
    • Testimonials
    • Customers
    • Press Releases
    • Careers
    • Partners
    • Contact us
Introduction
Deployment Guide
Configuration
Using Parallelism
Expand Mathematics Library User's GuideMathematics Library User's Guide
Expand Vector and Matrix Library User's GuideVector and Matrix Library User's Guide
Expand Data Analysis Library User's GuideData Analysis Library User's Guide
Expand Statistics Library User's GuideStatistics Library User's Guide
Expand Data Access Library User's GuideData Access Library User's Guide
Expand ReferenceReference
  • Extreme Optimization
    • Features
    • Solutions
    • Documentation
    • QuickStart Samples
    • Sample Applications
    • Downloads
    • Technical Support
    • Download trial
    • How to buy
    • Blog
    • Company
    • Resources
  • Documentation
    • Introduction
    • Deployment Guide
    • Configuration
    • Using Parallelism
    • Mathematics Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Data Access Library User's Guide
    • Reference
  • Reference
    • Extreme
    • Extreme.Collections
    • Extreme.Data
    • Extreme.Data.Json
    • Extreme.Data.Matlab
    • Extreme.Data.R
    • Extreme.Data.Stata
    • Extreme.Data.Text
    • Extreme.DataAnalysis
    • Extreme.DataAnalysis.Linq
    • Extreme.Mathematics
    • Extreme.Mathematics.Algorithms
    • Extreme.Mathematics.Calculus
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations
    • Extreme.Mathematics.Curves
    • Extreme.Mathematics.Curves.Nonlinear
    • Extreme.Mathematics.Distributed
    • Extreme.Mathematics.Distributed.Cuda
    • Extreme.Mathematics.EquationSolvers
    • Extreme.Mathematics.FSharp
    • Extreme.Mathematics.Generic
    • Extreme.Mathematics.Generic.LinearAlgebra
    • Extreme.Mathematics.Generic.LinearAlgebra.Implementation
    • Extreme.Mathematics.Generic.LinearAlgebra.Providers
    • Extreme.Mathematics.Generic.SignalProcessing
    • Extreme.Mathematics.Implementation
    • Extreme.Mathematics.LinearAlgebra
    • Extreme.Mathematics.LinearAlgebra.Complex
    • Extreme.Mathematics.LinearAlgebra.Complex.Decompositions
    • Extreme.Mathematics.LinearAlgebra.Implementation
    • Extreme.Mathematics.LinearAlgebra.IO
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners
    • Extreme.Mathematics.LinearAlgebra.Providers
    • Extreme.Mathematics.LinearAlgebra.Sparse
    • Extreme.Mathematics.Optimization
    • Extreme.Mathematics.Optimization.Genetic
    • Extreme.Mathematics.Optimization.LineSearches
    • Extreme.Mathematics.Random
    • Extreme.Mathematics.SignalProcessing
    • Extreme.Numerics.FSharp
    • Extreme.Statistics
    • Extreme.Statistics.Distributions
    • Extreme.Statistics.IO
    • Extreme.Statistics.Linq
    • Extreme.Statistics.Multivariate
    • Extreme.Statistics.Random
    • Extreme.Statistics.Tests
    • Extreme.Statistics.TimeSeriesAnalysis
  • Extreme.Mathematics.LinearAlgebra
    • BandMatrix Class
    • BandMatrix(T) Class
    • BandVector Class
    • BlockVector(T) Class
    • CholeskyDecomposition Class
    • CholeskyDecomposition(T) Class
    • CloningMethod Enumeration
    • ColumnCollection Structure
    • ColumnCollection(T) Structure
    • ComplexEigenvalueDecomposition Class
    • ComplexSingularValueDecomposition(T) Class
    • ComponentReadOnlyException Class
    • ComposedComplexMatrix(T) Class
    • ComposedComplexVector(T) Class
    • ConstantMatrix Class
    • ConstantMatrix(T) Class
    • ConstantVector Class
    • ConstantVector(T) Class
    • Decomposition Class
    • Decomposition(T) Class
    • DenseMatrix Class
    • DenseMatrix(T) Class
    • DenseVector Class
    • DenseVector(T) Class
    • DiagonalMatrix Class
    • DiagonalMatrix(T) Class
    • EigenvalueDecomposition Class
    • EigenvalueDecomposition(T) Class
    • EigenvalueRange Enumeration
    • GeneralizedDecomposition(T) Class
    • GeneralizedEigenvalueDecomposition(T) Class
    • GeneralizedSingularValueDecomposition(T) Class
    • GeneralizedSingularValueDecompositionFactors Enumeration
    • HermitianEigenvalueDecomposition Class
    • HermitianMatrix(T) Class
    • IDoubleStorage Interface
    • ILeastSquaresSolver Interface
    • IndexedVector Class
    • IndexedVector(T) Class
    • IndexValuePair Structure
    • IndexValuePair(T) Structure
    • IResizableMatrix Interface
    • IResizableMatrix(T) Interface
    • ISingleLeastSquaresSolver Interface
    • ISingleResizableMatrix Interface
    • ISingleStorage Interface
    • Kernel Class
    • LeastSquaresSolutionMethod Enumeration
    • LeastSquaresSolver Class
    • LeastSquaresSolver(T) Class
    • LinearAlgebraOperations Class
    • LinearOperator Class
    • LinearOperator(T) Class
    • LQDecomposition(T) Class
    • LUDecomposition Class
    • LUDecomposition(T) Class
    • MatrixNotPositiveDefiniteException Class
    • MatrixSingularException Class
    • MatrixStructure Enumeration
    • MatrixView Class
    • MatrixView(T) Class
    • NonHermitianEigenvalueDecomposition Class
    • NonHermitianEigenvalueDecomposition(T) Class
    • NonNegativeMatrixFactorization Class
    • NonNegativeMatrixFactorization(T) Class
    • NonsymmetricEigenvalueDecomposition Class
    • PermutationMatrix Class
    • PivotVector Structure
    • QLDecomposition(T) Class
    • QRDecomposition Class
    • QRDecomposition(T) Class
    • Range Structure
    • RowCollection Structure
    • RowCollection(T) Structure
    • RowColumnValueTriplet Structure
    • RowColumnValueTriplet(T) Structure
    • RQDecomposition(T) Class
    • SingleBandCholeskyDecomposition Class
    • SingleBandLUDecomposition Class
    • SingleBandMatrix Class
    • SingleBandVector Class
    • SingleBandVector.BandVectorEnumerator Structure
    • SingleCholeskyDecomposition Class
    • SingleColumnCollection Structure
    • SingleConstantMatrix Class
    • SingleConstantVector Class
    • SingleDecomposition Class
    • SingleDenseMatrix Class
    • SingleDenseVector Class
    • SingleDiagonalMatrix Class
    • SingleEigenvalueDecomposition Class
    • SingleIndexedVector Class
    • SingleIndexValuePair Structure
    • SingleKernel Class
    • SingleLeastSquaresSolver Class
    • SingleLinearTransformation Class
    • SingleLUDecomposition Class
    • SingleMatrixView Class
    • SinglePermutationMatrix Class
    • SingleQRDecomposition Class
    • SingleRowCollection Structure
    • SingleRowColumnValueTriplet Structure
    • SingleSingularValueDecomposition Class
    • SingleSparseLUDecomposition Class
    • SingleSparseMatrix Class
    • SingleSparseVector Class
    • SingleSymmetricEigenvalueDecomposition Class
    • SingleSymmetricMatrix Class
    • SingleTriangularMatrix Class
    • SingularValueDecomposition Class
    • SingularValueDecomposition(T) Class
    • SingularValueDecompositionFactors Enumeration
    • SparseCompressedColumnMatrix Class
    • SparseCompressedColumnMatrix(T) Class
    • SparseMatrix Class
    • SparseMatrix(T) Class
    • SparseVector Class
    • SparseVector(T) Class
    • SymmetricEigenvalueDecomposition Class
    • SymmetricIndefiniteDecomposition Class
    • SymmetricIndefiniteDecomposition(T) Class
    • SymmetricMatrix Class
    • SymmetricMatrix(T) Class
    • TriangularMatrix Class
    • TriangularMatrix(T) Class
  • DiagonalMatrix Class
    • DiagonalMatrix Constructors
    • Properties
    • Methods
    • Operators
  • Methods
    • AddProductToVector Method
    • CloneData Method
    • CreateIdentity Method
    • EstimateConditionNumber Method
    • GetColumn Method Overloads
    • GetConditionNumber Method
    • GetDeterminant Method
    • GetDiagonal Method Overloads
    • GetInverse Method Overloads
    • GetLUDecomposition Method Overloads
    • GetObjectData Method
    • GetRow Method Overloads
    • GetSubmatrix Method Overloads
    • GetValue Method
    • IsElementWritable Method
    • IsSingular Method
    • Multiply Method Overloads
    • Rank Method Overloads
    • SetValue Method Overloads
    • Solve Method Overloads
    • SolveTranspose Method Overloads
    • ToArray Method Overloads
    • Transpose Method
  • Multiply Method Overloads
    • Multiply Method (Double)
    • Multiply Method (MatrixOperationSide, TransposeOperation, TransposeOperation, Matrix)
  • Multiply Method (MatrixOperationSide, TransposeOperation, TransposeOperation, Matrix)
DiagonalMatrixMultiply Method (MatrixOperationSide, TransposeOperation, TransposeOperation, Matrix)Extreme Optimization Numerical Libraries for .NET Professional
Multiplies this matrix by another matrix and returns the result.

Namespace: Extreme.Mathematics.LinearAlgebra
Assembly: Extreme.Numerics.Net40 (in Extreme.Numerics.Net40.dll) Version: 6.0.16073.0 (6.0.16312.0)
Syntax

C#
VB
C++
F#
Copy
public override Matrix Multiply(
	MatrixOperationSide side,
	TransposeOperation transposeA,
	TransposeOperation transposeB,
	Matrix matrix
)
Public Overrides Function Multiply ( 
	side As MatrixOperationSide,
	transposeA As TransposeOperation,
	transposeB As TransposeOperation,
	matrix As Matrix
) As Matrix
public:
virtual Matrix^ Multiply(
	MatrixOperationSide side, 
	TransposeOperation transposeA, 
	TransposeOperation transposeB, 
	Matrix^ matrix
) override
abstract Multiply : 
        side : MatrixOperationSide * 
        transposeA : TransposeOperation * 
        transposeB : TransposeOperation * 
        matrix : Matrix -> Matrix 
override Multiply : 
        side : MatrixOperationSide * 
        transposeA : TransposeOperation * 
        transposeB : TransposeOperation * 
        matrix : Matrix -> Matrix 

Parameters

side
Type: Extreme.MathematicsMatrixOperationSide
A MatrixOperationSide value that specifies whether the matrix matrix is the left or right operand of the multiplication.
transposeA
Type: Extreme.MathematicsTransposeOperation
A TransposeOperation value that indicates which operation, if any, should be performed on this instance before multiplying.
transposeB
Type: Extreme.MathematicsTransposeOperation
A TransposeOperation value that indicates which operation, if any, should be performed on the matrix matrix before multiplying.
matrix
Type: Extreme.MathematicsMatrix
A Matrix.

Return Value

Type: Matrix
A Matrix that is the product of this matrix and the matrix matrix.
Exceptions

ExceptionCondition
ArgumentNullException

matrix is .

Remarks

This method calculates the matrix product of this instance with the matrix matrix. The exact form of the operation is determined by the other parameters. The dimensions of the two matrices must be compatible with this form.

Version Information

Numerical Libraries

Supported in: 5.x, 4.x
See Also

Reference

DiagonalMatrix Class
Multiply Overload
Extreme.Mathematics.LinearAlgebra Namespace

Copyright (c) 2004-2016 ExoAnalytics Inc.

Send comments on this topic to support@extremeoptimization.com

Copyright © 2004-2018, Extreme Optimization. All rights reserved.
Extreme Optimization, Complexity made simple, M#, and M Sharp are trademarks of ExoAnalytics Inc.
Microsoft, Visual C#, Visual Basic, Visual Studio, Visual Studio.NET, and the Optimized for Visual Studio logo
are registered trademarks of Microsoft Corporation.