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
    • AccuracyGoal Structure
    • AlgorithmStatus Enumeration
    • ArrayAttributes Structure
    • ArrayMath Class
    • ArrayMutability Enumeration
    • BigFloat Class
    • BigInteger Structure
    • BigRational Structure
    • CategoricalVector(T) Class
    • Complex(T) Structure
    • ComplexMatrix Class
    • ComplexVector Class
    • Constants Class
    • ConvergenceCriterion Enumeration
    • CoreImplementations Class
    • CoreImplementations(T) Class
    • CoreProvider Class
    • CoreProvider(T) Class
    • DecimalMath Class
    • Dimension Enumeration
    • DimensionMismatchException Class
    • DimensionType Enumeration
    • DistributedDataLocation Enumeration
    • DoubleComparer Class
    • DoubleComplex Structure
    • Elementary Class
    • ElementType(T) Class
    • EquationSolving Class
    • FunctionMath Class
    • 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
    • ManagedCoreProvider 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
    • NumericalDifferentiation Class
    • NumericalIntegration Class
    • NumericsConfiguration Class
    • Operations(T) Class
    • Permutation Class
    • Quad Structure
    • RandomExtensions Class
    • Range Structure
    • RoundingMode Enumeration
    • SingleComparer Class
    • SingleComplex Structure
    • SingleComplexMatrix Class
    • SingleComplexVector Class
    • SingleConstants Class
    • SingleInterval Structure
    • SingleMatrix Class
    • SingleMatrixFiller Delegate
    • SinglePrecisionImplementations Class
    • SingleVector Class
    • SingleVectorFiller Delegate
    • 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
  • FunctionMath Class
    • Methods
  • Methods
    • BackwardDerivative Method Overloads
    • CentralDerivative Method Overloads
    • Combine Method Overloads
    • CombineFast Method Overloads
    • Derivative Method Overloads
    • FindMaximum Method Overloads
    • FindMinimum Method Overloads
    • FindZero Method Overloads
    • ForwardDerivative Method Overloads
    • GetBackwardDifferentiator Method
    • GetEquationSolver Method Overloads
    • GetForwardDifferentiator Method
    • GetIntegrator Method Overloads
    • GetMaximizer Method Overloads
    • GetMinimizer Method Overloads
    • GetNumericalDifferentiator Method
    • GetNumericalGradient Method Overloads
    • GetNumericalJacobian Method Overloads
    • Integrate Method Overloads
    • Product Method
    • Sum Method Overloads
    • SumIf(T) Method
    • SumSeries Method Overloads
  • GetEquationSolver Method Overloads
    • GetEquationSolver Method (Func(Double, Double), Double)
    • GetEquationSolver Method (Func(Double, Double), Double, Double)
    • GetEquationSolver Method (Func(Double, Double), Func(Double, Double), Double)
    • GetEquationSolver Method (Func(Vector(Double), Double)[], Func(Vector(Double), Vector(Double), Vector(Double))[], Vector(Double))
    • GetEquationSolver Method (Func(Vector(Double), Vector(Double), Vector(Double)), Func(Vector(Double), Matrix(Double), Matrix(Double)), Vector(Double))
    • GetEquationSolver Method (Func(Vector, Double)[], Func(Vector, Vector, Vector)[], Vector)
    • GetEquationSolver Method (Func(Vector, Vector, Vector), Func(Vector, Matrix, Matrix), Vector)
  • GetEquationSolver Method (Func(Vector(Double), Double)[], Func(Vector(Double), Vector(Double), Vector(Double))[], Vector(Double))
FunctionMathGetEquationSolver Method (FuncVectorDouble, Double, FuncVectorDouble, VectorDouble, VectorDouble, VectorDouble)Extreme Optimization Numerical Libraries for .NET Professional
Finds a zero of a function starting from an initial guess.

Namespace: Extreme.Mathematics
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 static EquationSystemSolver GetEquationSolver(
	this Func<Vector<double>, double>[] targetFunctions,
	Func<Vector<double>, Vector<double>, Vector<double>>[] gradientsOfTargetFunctions,
	Vector<double> initialGuess
)
<ExtensionAttribute>
Public Shared Function GetEquationSolver ( 
	targetFunctions As Func(Of Vector(Of Double), Double)(),
	gradientsOfTargetFunctions As Func(Of Vector(Of Double), Vector(Of Double), Vector(Of Double))(),
	initialGuess As Vector(Of Double)
) As EquationSystemSolver
public:
[ExtensionAttribute]
static EquationSystemSolver^ GetEquationSolver(
	array<Func<Vector<double>^, double>^>^ targetFunctions, 
	array<Func<Vector<double>^, Vector<double>^, Vector<double>^>^>^ gradientsOfTargetFunctions, 
	Vector<double>^ initialGuess
)
[<ExtensionAttribute>]
static member GetEquationSolver : 
        targetFunctions : Func<Vector<float>, float>[] * 
        gradientsOfTargetFunctions : Func<Vector<float>, Vector<float>, Vector<float>>[] * 
        initialGuess : Vector<float> -> EquationSystemSolver 

Parameters

targetFunctions
Type: SystemFuncVectorDouble, Double
A delegate that represents a multivariate function returning a vector that specifies the function on the left-hand side of the equation.
gradientsOfTargetFunctions
Type: SystemFuncVectorDouble, VectorDouble, VectorDouble
A delegate that represents a multivariate function that specifies the gradient function of targetFunctions.
initialGuess
Type: Extreme.MathematicsVectorDouble
An initial guess for ther zero.

Return Value

Type: EquationSystemSolver
The best approximation to a zero of targetFunctions.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type . When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).
Remarks

Use this method when you have very little information about the location of the zero, but you need more control over the solution process. For example, you may want to specify a different RelativeTolerance.

Version Information

Numerical Libraries

Supported in: 6.0
See Also

Reference

FunctionMath Class
GetEquationSolver Overload
Extreme.Mathematics 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.