Solves the given initial value problem of ordinary differential equation of the form y' = f(t,y) or y' = M(t,y)*f(t,y) for problems that involve a mass matrix M.

Namespace:  CenterSpace.NMath.Analysis
Assembly:  NMath (in NMath.dll) Version: 5.1.0.0

Syntax

C#
public RungeKutta45OdeSolver..::.Solution<DoubleVector> Solve(
	Func<double, double, double> odeFunction,
	DoubleVector timeSpan,
	double y0,
	RungeKutta45OdeSolver..::.Options solverOptions
)
Visual Basic (Declaration)
Public Function Solve ( _
	odeFunction As Func(Of Double, Double, Double), _
	timeSpan As DoubleVector, _
	y0 As Double, _
	solverOptions As RungeKutta45OdeSolver..::.Options _
) As RungeKutta45OdeSolver..::.Solution(Of DoubleVector)
Visual C++
public:
RungeKutta45OdeSolver..::.Solution<DoubleVector^>^ Solve(
	Func<double, double, double>^ odeFunction, 
	DoubleVector^ timeSpan, 
	double y0, 
	RungeKutta45OdeSolver..::.Options^ solverOptions
)

Parameters

odeFunction
Type: System..::.Func<(Of <(Double, Double, Double>)>)
A delegate which evaluates the right hand side of the differential equations.
timeSpan
Type: CenterSpace.NMath.Core..::.DoubleVector
A vector specifying the interval if integration [t0, tf]. The solver imposes intitial conditions at t0 and integrates from t0 to tf If the timeSpan vector contains two elements, the solver returns the solution evaluated at every integration step. If the timeSpan vector contains more than two points the solver returns the solution evaluated at the given points. The time values must be in order, either increasing or decreasing.
y0
Type: System..::.Double
Initial value for problem. It is the value of the unknown function y at the initial time value timeSpan[0].
solverOptions
Type: CenterSpace.NMath.Analysis..::.RungeKutta45OdeSolver..::.Options
User settable options used while solviong.

Return Value

The solution as a key-value pair. The Key value is a vector of time values, and the Value is a vector of state values. The ith value of the Value vector is the state corresponding to the ith time value in the Key vector.

See Also