Class Calculus
java.lang.Object
org.mariuszgromada.math.mxparser.mathcollection.Calculus
Calculus - numerical integration, differentiation, etc...
- Version:
- 4.3.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
Derivative type specificationstatic final int
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic final double
backwardDifference
(Expression f, double h, Argument x) Backward difference(h) operator (at the current value of the argument x)static final double
backwardDifference
(Expression f, double h, Argument x, double x0) Backward difference(h) operator (at x = x0)static final double
Backward difference(1) operator (at current value of argument x)static final double
backwardDifference
(Expression f, Argument x, double x0) Backward difference(1) operator (at x = x0).static final double
derivative
(Expression f, Argument x, double x0, int derType, double eps, int maxSteps) Numerical derivative at x = x0static final double
derivativeNth
(Expression f, double n, Argument x, double x0, int derType, double eps, int maxSteps) Numerical n-th derivative at x = x0 (you should avoid calculation of derivatives with order higher than 2).static final double
forwardDifference
(Expression f, double h, Argument x) Forward difference(h) operator (at the current value of the argument x)static final double
forwardDifference
(Expression f, double h, Argument x, double x0) Forward difference(h) operator (at x = x0)static final double
Forward difference(1) operator (at current value of argument x)static final double
forwardDifference
(Expression f, Argument x, double x0) Forward difference(1) operator (at x = x0)static final double
integralTrapezoid
(Expression f, Argument x, double a, double b, double eps, int maxSteps) Trapezoid numerical integrationstatic final double
solveBrent
(Expression f, Argument x, double a, double b, double eps, double maxSteps) Brent solver (Brent root finder)
-
Field Details
-
LEFT_DERIVATIVE
public static final int LEFT_DERIVATIVEDerivative type specification- See Also:
-
RIGHT_DERIVATIVE
public static final int RIGHT_DERIVATIVE- See Also:
-
GENERAL_DERIVATIVE
public static final int GENERAL_DERIVATIVE- See Also:
-
-
Constructor Details
-
Calculus
public Calculus()
-
-
Method Details
-
integralTrapezoid
public static final double integralTrapezoid(Expression f, Argument x, double a, double b, double eps, int maxSteps) Trapezoid numerical integration- Parameters:
f
- the expressionx
- the argumenta
- form a ...b
- ... to beps
- the epsilon (error)maxSteps
- the maximum number of steps- Returns:
- Integral value as double.
- See Also:
-
derivative
public static final double derivative(Expression f, Argument x, double x0, int derType, double eps, int maxSteps) Numerical derivative at x = x0- Parameters:
f
- the expressionx
- the argumentx0
- at point x = x0derType
- derivative type (LEFT_DERIVATIVE, RIGHT_DERIVATIVE, GENERAL_DERIVATIVEeps
- the epsilon (error)maxSteps
- the maximum number of steps- Returns:
- Derivative value as double.
- See Also:
-
derivativeNth
public static final double derivativeNth(Expression f, double n, Argument x, double x0, int derType, double eps, int maxSteps) Numerical n-th derivative at x = x0 (you should avoid calculation of derivatives with order higher than 2).- Parameters:
f
- the expressionn
- the deriviative orderx
- the argumentx0
- at point x = x0derType
- derivative type (LEFT_DERIVATIVE, RIGHT_DERIVATIVE, GENERAL_DERIVATIVEeps
- the epsilon (error)maxSteps
- the maximum number of steps- Returns:
- Derivative value as double.
- See Also:
-
forwardDifference
Forward difference(1) operator (at x = x0)- Parameters:
f
- the expressionx
- the argument namex0
- x = x0- Returns:
- Forward difference(1) value calculated at x0.
- See Also:
-
forwardDifference
Forward difference(1) operator (at current value of argument x)- Parameters:
f
- the expressionx
- the argument name- Returns:
- Forward difference(1) value calculated at the current value of argument x.
- See Also:
-
backwardDifference
Backward difference(1) operator (at x = x0).- Parameters:
f
- the expressionx
- the argument namex0
- x = x0- Returns:
- Backward difference value calculated at x0.
- See Also:
-
backwardDifference
Backward difference(1) operator (at current value of argument x)- Parameters:
f
- the expressionx
- the argument name- Returns:
- Backward difference(1) value calculated at the current value of argument x.
- See Also:
-
forwardDifference
Forward difference(h) operator (at x = x0)- Parameters:
f
- the expressionh
- the differencex
- the argument namex0
- x = x0- Returns:
- Forward difference(h) value calculated at x0.
- See Also:
-
forwardDifference
Forward difference(h) operator (at the current value of the argument x)- Parameters:
f
- the expressionh
- the differencex
- the argument name- Returns:
- Forward difference(h) value calculated at at the current value of the argument x.
- See Also:
-
backwardDifference
Backward difference(h) operator (at x = x0)- Parameters:
f
- the expressionh
- the differencex
- the argument namex0
- x = x0- Returns:
- Backward difference(h) value calculated at x0.
- See Also:
-
backwardDifference
Backward difference(h) operator (at the current value of the argument x)- Parameters:
f
- the expressionh
- the differencex
- the argument name- Returns:
- Backward difference(h) value calculated at at the current value of the argument x.
- See Also:
-
solveBrent
public static final double solveBrent(Expression f, Argument x, double a, double b, double eps, double maxSteps) Brent solver (Brent root finder)- Parameters:
f
- Function given in the Expression formx
- Argumenta
- Left limitb
- Right limiteps
- Epsilon value (accuracy)maxSteps
- Maximum number of iterations- Returns:
- Function root - if found, otherwise Double.NaN.
-