Extreme Optimization™: Complexity made simple.

Numerical Components
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
    • 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
    • Contact us
Introduction
Deployment Guide
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 Statistics Library User's GuideStatistics Library User's Guide
Expand ReferenceReference
  • Home
    • Features
    • Solutions
    • Documentation
    • QuickStart Samples
    • Sample Applications
    • Downloads
    • Technical Support
    • Download trial
    • How to buy
    • Blog
    • Company
    • Resources
  • Documentation
    • Introduction
    • Deployment Guide
    • Using Parallelism
    • Mathematics Library User's Guide
    • Vector and Matrix Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • Reference
    • Extreme.Mathematics Namespace
    • Extreme.Mathematics.Algorithms Namespace
    • Extreme.Mathematics.Calculus Namespace
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations Namespace
    • Extreme.Mathematics.Curves Namespace
    • Extreme.Mathematics.Curves.Nonlinear Namespace
    • Extreme.Mathematics.EquationSolvers Namespace
    • Extreme.Mathematics.Generic Namespace
    • Extreme.Mathematics.Generic.LinearAlgebra Namespace
    • Extreme.Mathematics.Generic.LinearAlgebra.Providers Namespace
    • Extreme.Mathematics.LinearAlgebra Namespace
    • Extreme.Mathematics.LinearAlgebra.Complex Namespace
    • Extreme.Mathematics.LinearAlgebra.Complex.Decompositions Namespace
    • Extreme.Mathematics.LinearAlgebra.IO Namespace
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers Namespace
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners Namespace
    • Extreme.Mathematics.LinearAlgebra.Providers Namespace
    • Extreme.Mathematics.LinearAlgebra.Sparse Namespace
    • Extreme.Mathematics.Optimization Namespace
    • Extreme.Mathematics.Optimization.LineSearches Namespace
    • Extreme.Mathematics.SignalProcessing Namespace
    • Extreme.Statistics Namespace
    • Extreme.Statistics.Distributions Namespace
    • Extreme.Statistics.IO Namespace
    • Extreme.Statistics.Multivariate Namespace
    • Extreme.Statistics.Random Namespace
    • Extreme.Statistics.Tests Namespace
    • Extreme.Statistics.TimeSeriesAnalysis Namespace
  • Extreme.Mathematics.LinearAlgebra Namespace
    • BandMatrix Class
    • BandVector Class
    • CholeskyDecomposition Class
    • CloningMethod Enumeration
    • ColumnCollection Structure
    • ComponentReadOnlyException Class
    • ConstantMatrix Class
    • ConstantVector Class
    • Decomposition Class
    • DenseMatrix Class
    • DenseVector Class
    • DiagonalMatrix Class
    • EigenvalueDecomposition Class
    • IDoubleStorage Interface
    • ILeastSquaresSolver Interface
    • IndexedVector Class
    • IndexValuePair Structure
    • IResizableMatrix Interface
    • ISingleLeastSquaresSolver Interface
    • ISingleResizableMatrix Interface
    • ISingleStorage Interface
    • Kernel Class
    • LeastSquaresSolutionMethod Enumeration
    • LeastSquaresSolver Class
    • LinearOperator Class
    • LUDecomposition Class
    • MatrixNotPositiveDefiniteException Class
    • MatrixSingularException Class
    • MatrixStructure Enumeration
    • MatrixView Class
    • NonNegativeMatrixFactorization Class
    • NonsymmetricEigenvalueDecomposition Class
    • PermutationMatrix Class
    • PivotVector Structure
    • QRDecomposition Class
    • Range Structure
    • RowCollection Structure
    • RowColumnValueTriplet Structure
    • 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
    • SingularValueDecompositionFactors Enumeration
    • SparseCompressedColumnMatrix Class
    • SparseMatrix Class
    • SparseVector Class
    • SymmetricEigenvalueDecomposition Class
    • SymmetricMatrix Class
    • TriangularMatrix Class
  • Kernel Class
    • Members
    • Methods
    • Properties
Collapse image Expand Image Copy image CopyHover image
         




Kernel Class

Members See Also 
Encapsulates the currently active BLAS implementation.

Namespace: Extreme.Mathematics.LinearAlgebra
Assembly: Extreme.Numerics.Net40 (in Extreme.Numerics.Net40.dll) Version: 4.2.11333.0 (4.2.12253.0)

Syntax

C#
                      public class Kernel : ProviderManager<LinearAlgebraProvider, ManagedLinearAlgebraProvider>
Visual Basic (Declaration)
                      Public Class Kernel _
	Inherits ProviderManager(Of LinearAlgebraProvider, ManagedLinearAlgebraProvider)
Visual C++
                      public ref class Kernel : public ProviderManager<LinearAlgebraProvider^, ManagedLinearAlgebraProvider^>
F#
                      type Kernel =  
    class
        inherit ProviderManager<LinearAlgebraProvider, ManagedLinearAlgebraProvider>
    end

Remarks

The classes in the Extreme.Mathematics.LinearAlgebra namespace use the standard Basic Linear Algebra Subroutines (BLAS) whenever possible. The Extreme Optimization Mathematics Library for .NET provides two implementations. One is in 100% managed code. The other calls a native, highly optimized, processor-specific kernel.

This class exposes static properties that allow you to specify the BLAS objects that are to be used by the classes in this namespace.

You can select the managed implementation by calling the UseManaged()()()() method. To select the native implementation, call the UseNative()()()() method. The native kernel is used by default. This is the fastest option, especially for larger matrices, but also has a larger memory footprint.

Alternatively, you can plug in platform optimized versions by inheriting from the BlasLevel1, BlasLevel2, and BlasLevel3 abstract base classes. You can then supply an instance of your class or classes as parameters to the [!:UseCustom] method.

Inheritance Hierarchy

System..::..Object
  ProviderManager<(Of <(<'LinearAlgebraProvider, ManagedLinearAlgebraProvider>)>)>
    Extreme.Mathematics.LinearAlgebra..::..Kernel

See Also

Kernel Members
Extreme.Mathematics.LinearAlgebra Namespace
Extreme.Mathematics.LinearAlgebra.Providers..::..BlasLevel1
Extreme.Mathematics.LinearAlgebra.Providers..::..BlasLevel2
Extreme.Mathematics.LinearAlgebra.Providers..::..BlasLevel3

Send comments on this topic to support@extremeoptimization.com

Copyright (c) 2004-2011 ExoAnalytics Inc.

Copyright © 2003-2013, 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.