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
Nuget packages
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
    • Nuget packages
    • 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.DataAnalysis.Models
    • Extreme.Mathematics
    • Extreme.Mathematics.Algorithms
    • Extreme.Mathematics.Calculus
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations
    • Extreme.Mathematics.Curves
    • Extreme.Mathematics.Curves.Nonlinear
    • Extreme.Mathematics.Distributed
    • Extreme.Mathematics.EquationSolvers
    • Extreme.Mathematics.Generic
    • Extreme.Mathematics.LinearAlgebra
    • Extreme.Mathematics.LinearAlgebra.Implementation
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners
    • Extreme.Mathematics.Optimization
    • Extreme.Mathematics.Optimization.LineSearches
    • Extreme.Mathematics.Random
    • Extreme.Mathematics.SignalProcessing
    • Extreme.Providers
    • Extreme.Providers.InteropServices
    • Extreme.Statistics
    • Extreme.Statistics.Distributions
    • Extreme.Statistics.Multivariate
    • Extreme.Statistics.Tests
    • Extreme.Statistics.TimeSeriesAnalysis
  • Extreme.Mathematics
    • AccuracyGoal Structure
    • AlgorithmStatus Enumeration
    • ArrayAttributes Structure
    • ArrayMath Class
    • ArrayMutability Enumeration
    • BigFloat Class
    • BigInteger Structure
    • BigRational Structure
    • CategoricalVector(T) Class
    • Complex(T) Structure
    • Constants Class
    • ConvergenceCriterion Enumeration
    • CoreImplementations(T) Class
    • DecimalMath Class
    • Dimension Enumeration
    • DimensionMismatchException Class
    • DimensionType Enumeration
    • DistributedDataLocation Enumeration
    • DoubleComparer Class
    • Elementary Class
    • ElementType(T) Class
    • FunctionMath Class
    • FunctionWithDerivative Delegate
    • GenericCoreProvider(T) Class
    • GenericImplementations Class
    • ICategoricalVector Interface
    • IDistributed Interface
    • InsufficientDataException Class
    • IntegerMath Class
    • Intent Enumeration
    • Interval Structure
    • Interval(T) Structure
    • IPermutable Interface
    • ISummarizable Interface
    • Iterators Class
    • IVector Interface
    • MachineConstants Class
    • ManagedCoreProviderOfSingle Class
    • Math(T) Class
    • Matrix Class
    • Matrix(T) Class
    • MatrixDiagonal Enumeration
    • MatrixElementOrder Enumeration
    • MatrixExtensions Class
    • MatrixNorm Enumeration
    • MatrixOperationSide Enumeration
    • MatrixStructure Enumeration
    • MatrixTriangle Enumeration
    • MutabilityBehaviour Enumeration
    • NumericsConfiguration Class
    • Operations(T) Class
    • Permutation Class
    • Quad Structure
    • RandomExtensions Class
    • Range Structure
    • RoundingMode Enumeration
    • SingleConstants Class
    • SinglePrecisionImplementations Class
    • Slice Structure
    • SolutionReport(T) Class
    • SolutionReport(T, TError) Class
    • Special Class
    • SummaryOptions Class
    • SymbolicMath Class
    • TotalLossOfPrecisionException Class
    • TransposeOperation Enumeration
    • TypedVectorWrapper(K, T) Structure
    • Vector Class
    • Vector(T) Class
    • VectorExtensions Class
  • DimensionMismatchException Class
    • DimensionMismatchException Constructors
    • Properties
    • Methods
    • DimensionMismatchException Events

DimensionMismatchException Class

Extreme Optimization Numerical Libraries for .NET Professional
Represents an exception that is thrown when the dimensions of a matrix or vector are not compatible for the requested operation.
Inheritance Hierarchy

SystemObject
  SystemException
    SystemSystemException
      SystemArgumentException
        Extreme.MathematicsDimensionMismatchException

Namespace:  Extreme.Mathematics
Assembly:  Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.1
Syntax

C#
VB
C++
F#
Copy
[SerializableAttribute]
public class DimensionMismatchException : ArgumentException
<SerializableAttribute>
Public Class DimensionMismatchException
	Inherits ArgumentException
[SerializableAttribute]
public ref class DimensionMismatchException : public ArgumentException
[<SerializableAttribute>]
type DimensionMismatchException =  
    class
        inherit ArgumentException
    end

The DimensionMismatchException type exposes the following members.

Constructors

  NameDescription
Public methodDimensionMismatchException
Constructs a new DimensionMismatchException.
Public methodDimensionMismatchException(String)
Constructs a new DimensionMismatchException.
Protected methodDimensionMismatchException(SerializationInfo, StreamingContext)
Initializes a new instance of the MatrixNotPositiveDefiniteException class with serialized data.
Public methodDimensionMismatchException(String, Exception)
Constructs a new DimensionMismatchException.
Public methodDimensionMismatchException(DimensionType, String, DimensionType)
Constructs a new DimensionMismatchException.
Public methodDimensionMismatchException(DimensionType, String, String)
Constructs a new DimensionMismatchException.
Public methodDimensionMismatchException(DimensionType, String, DimensionType, String)
Constructs a new DimensionMismatchException.
Public methodDimensionMismatchException(String, Exception, DimensionType, String, DimensionType, String)
Constructs a new DimensionMismatchException.
Top
Properties

  NameDescription
Public propertyData
Gets a collection of key/value pairs that provide additional user-defined information about the exception.
(Inherited from Exception.)
Public propertyFirstDimensionType
Gets which dimension of the first object was mismatched.
Public propertyFirstParameterName
Gets the name of the first parameter whose dimensions were mismatched.
Public propertyHelpLink
Gets or sets a link to the help file associated with this exception.
(Inherited from Exception.)
Public propertyHResult
Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.
(Inherited from Exception.)
Public propertyInnerException
Gets the Exception instance that caused the current exception.
(Inherited from Exception.)
Public propertyMessage
Gets the error message and the parameter name, or only the error message if no parameter name is set.
(Inherited from ArgumentException.)
Public propertyParamName
Gets the name of the parameter that causes this exception.
(Inherited from ArgumentException.)
Public propertySecondDimensionType
Gets which dimension of the second object was mismatched.
Public propertySecondParameterName
Gets the name of the second parameter whose dimensions were mismatched.
Public propertySource
Gets or sets the name of the application or the object that causes the error.
(Inherited from Exception.)
Public propertyStackTrace
Gets a string representation of the immediate frames on the call stack.
(Inherited from Exception.)
Public propertyTargetSite
Gets the method that throws the current exception.
(Inherited from Exception.)
Top
Methods

  NameDescription
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetBaseException
When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.
(Inherited from Exception.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetObjectData
Populates a SerializationInfo with the data needed to serialize the target object.
(Overrides ArgumentExceptionGetObjectData(SerializationInfo, StreamingContext).)
Public methodGetType
Gets the runtime type of the current instance.
(Inherited from Exception.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodToString
Creates and returns a string representation of the current exception.
(Inherited from Exception.)
Top
Events

  NameDescription
Protected eventSerializeObjectState
Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.
(Inherited from Exception.)
Top
Remarks

There are many reasons why a DimensionMismatchException may be thrown. In every case, the dimensions of some or all of the VectorT or MatrixT arguments involved in an operation are not compatible. Some examples of requirements that may be violated, resulting in a DimensionMismatchException, are:

  • A method requires a MatrixT to be square. The matrix that was supplied is rectangular.
  • An operation on two VectorT objects requires that the two vectors have the same length. Most operations on vectors have this requirement.
  • A multiplication of a MatrixT and a VectorT requires that either the number of rows or the number of columns in the matrix equals the length of the vector.
  • A multiplication of two matrices requires that the 'inner' dimensions are the same.

A number of properties give more information about the cause of the exception: FirstDimensionType, FirstParameterName, SecondDimensionType and SecondParameterName.

You can avoid this exception by verifying that the dimensions of the objects (RowCount, ColumnCount and/or Length) are compatible for the operation you want to perform.

See Also

Reference

Extreme.Mathematics Namespace

Copyright (c) 2004-2021 ExoAnalytics Inc.

Send comments on this topic to support@extremeoptimization.com

Copyright © 2004-2021, 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.