FunctionMath.GetEquationSolver Method

Definition

Namespace: Numerics.NET
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 9.0.4

Overload List

GetEquationSolver(Func<Double, Double>, Double) Returns an EquationSolver suitable for solving an equation using the specified information.
GetEquationSolver(Func<Vector<Double>, Double>[], Func<Vector<Double>, Vector<Double>, Vector<Double>>[], Vector<Double>) Finds a zero of a function starting from an initial guess.
GetEquationSolver(Func<Double, Double>, Double, Double) Finds a zero of a function when the solution is known to lie within a specified interval.
GetEquationSolver(Func<Double, Double>, Func<Double, Double>, Double) Finds a zero of a function starting from an initial guess.
GetEquationSolver(Func<Vector<Double>, Vector<Double>, Vector<Double>>, Func<Vector<Double>, Matrix<Double>, Matrix<Double>>, Vector<Double>) Finds a zero of a function starting from an initial guess.

GetEquationSolver(Func<Double, Double>, Double)

Returns an EquationSolver suitable for solving an equation using the specified information.
C#
public static EquationSolver GetEquationSolver(
	this Func<double, double> targetFunction,
	double initialGuess
)

Parameters

targetFunction  Func<Double, Double>
A delegate that represents a function of one variable that specifies the function on the left-hand side of the equation.
initialGuess  Double
An initial guess for ther zero.

Return Value

EquationSolver
An EquationSolver object that is set up to solve an equation for the specifed target function.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type Func<Double, Double>. 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.

GetEquationSolver(Func<Vector<Double>, Double>[], Func<Vector<Double>, Vector<Double>, Vector<Double>>[], Vector<Double>)

Finds a zero of a function starting from an initial guess.
C#
public static EquationSystemSolver GetEquationSolver(
	this Func<Vector<double>, double>[] targetFunctions,
	Func<Vector<double>, Vector<double>?, Vector<double>>[] gradientsOfTargetFunctions,
	Vector<double> initialGuess
)

Parameters

targetFunctions  Func<Vector<Double>, Double>[]
A delegate that represents a multivariate function returning a vector that specifies the function on the left-hand side of the equation.
gradientsOfTargetFunctions  Func<Vector<Double>, Vector<Double>, Vector<Double>>[]
A delegate that represents a multivariate function that specifies the gradient function of targetFunctions.
initialGuess  Vector<Double>
An initial guess for ther zero.

Return Value

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 Func<Vector<Double>, Double>[]. 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.

GetEquationSolver(Func<Double, Double>, Double, Double)

Finds a zero of a function when the solution is known to lie within a specified interval.
C#
public static EquationSolver GetEquationSolver(
	this Func<double, double> targetFunction,
	double lowerBound,
	double upperBound
)

Parameters

targetFunction  Func<Double, Double>
A delegate that represents a function of one variable that specifies the function on the left-hand side of the equation.
lowerBound  Double
The lower bound of the interval that contains the root.
upperBound  Double
The upper bound of the interval that contains the root.

Return Value

EquationSolver
The best approximation to a zero of targetFunction, but you need more control over the solution process. For example, you may want to specify a different RelativeTolerance.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type Func<Double, Double>. 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).

GetEquationSolver(Func<Double, Double>, Func<Double, Double>, Double)

Finds a zero of a function starting from an initial guess.
C#
public static EquationSolver GetEquationSolver(
	this Func<double, double> targetFunction,
	Func<double, double> derivativeOfTargetFunction,
	double initialGuess
)

Parameters

targetFunction  Func<Double, Double>
A delegate that represents a function of one variable that specifies the function on the left-hand side of the equation.
derivativeOfTargetFunction  Func<Double, Double>
A delegate that represents a function of one variable that specifies the derivative function of targetFunction.
initialGuess  Double
An initial guess for ther zero.

Return Value

EquationSolver
The best approximation to a zero of targetFunction.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type Func<Double, Double>. 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.

GetEquationSolver(Func<Vector<Double>, Vector<Double>, Vector<Double>>, Func<Vector<Double>, Matrix<Double>, Matrix<Double>>, Vector<Double>)

Finds a zero of a function starting from an initial guess.
C#
public static EquationSystemSolver GetEquationSolver(
	this Func<Vector<double>, Vector<double>?, Vector<double>> targetFunction,
	Func<Vector<double>, Matrix<double>?, Matrix<double>> jacobianFunction,
	Vector<double> initialGuess
)

Parameters

targetFunction  Func<Vector<Double>, Vector<Double>, Vector<Double>>
A delegate that represents a multivariate function returning a vector that computes the values on the left-hand side of the equations.
jacobianFunction  Func<Vector<Double>, Matrix<Double>, Matrix<Double>>
A delegate that represents a multivariate function returning a matrix in its second argument that computes the Jacobian of targetFunction.
initialGuess  Vector<Double>
An initial guess for the solution.

Return Value

EquationSystemSolver
The best approximation to a zero of targetFunction.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type Func<Vector<Double>, Vector<Double>, Vector<Double>>. 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).

See Also