public final class Numeric extends Object
| Constructor and Description |
|---|
Numeric() |
| Modifier and Type | Method and Description |
|---|---|
static double |
adaptive(F1D func,
double a,
double b)
In adaptive quadrature we estimate the area
under a curve in the interval from a to b twice,
one using Q1 and once using Q2.
|
static double[][] |
differentiate(F1D func,
double[] x,
double[] dx)
Numerical differentiation in multiple dimensions.
|
static double[] |
differentiate(int N,
F1D func,
double a,
double b)
Numerical differentiation.
|
static double[] |
euler(double[] y,
F1D func,
double dt)
Uses the Euler method to solve an ODE.
|
static double |
gaussian4(int N,
F1D func,
double a,
double b)
Numerical integration using the Gaussian integration formula (4 points).
|
static double |
gaussian8(int N,
F1D func,
double a,
double b)
Numerical integration using the Gaussian integration formula (8 points).
|
static double[] |
leapFrog(double[] y,
F1D func,
double dt)
Uses the Leap-Frog method to solve an ODE.
|
static double[] |
metropolis(double[] list,
F1D func,
double dx)
The Metropolis algorithm.
|
static double |
richardson(int N,
F1D func,
double a,
double b)
Numerical integration using the Richardson extrapolation.
|
static double[] |
rungeKutta2(double[] y,
F1D func,
double dt)
Uses the 2nd order Runge-Kutta method to solve an ODE.
|
static double[] |
rungeKutta4(double[] y,
F1D func,
double dt)
Uses the 4th order Runge-Kutta method to solve an ODE.
|
static double |
simpson(int N,
F1D func,
double a,
double b)
Numerical integration using Simpson's rule.
|
static double[] |
solveCubic(double a,
double b,
double c,
double d)
Calculates the roots of the cubic equation, a must be different from 0 (or use quadratic equation solver).
|
static double[] |
solveLinear(double a,
double b)
Calculates the roots of the linear equation, a must be different from 0.
|
static double[] |
solveQuadratic(double a,
double b,
double c)
Calculates the roots of the quadratic equation, a must be different from 0 (or use linear equation solver).
|
static double[] |
solveQuartic(double a,
double b,
double c,
double d,
double e)
Calculates the roots of the quartics equation, a must be different from 0 (or use cubic equation solver).
|
static double |
trapezium(int N,
F1D func,
double a,
double b)
Numerical integration using the trapezium rule.
|
static double |
trapezium2D(int N,
F2D func,
double a1,
double b1,
double a2,
double b2)
Numerical integration using the trapezium rule.
|
public static double[] solveLinear(double a,
double b)
public static double[] solveQuadratic(double a,
double b,
double c)
public static double[] solveCubic(double a,
double b,
double c,
double d)
public static double[] solveQuartic(double a,
double b,
double c,
double d,
double e)
public static double[] euler(double[] y,
F1D func,
double dt)
y - an array to be filled with y values, set y[0] to initial condition.func - dy/dt as a function of y.dt - step size.public static double[] leapFrog(double[] y,
F1D func,
double dt)
y - an array to be filled with y values, set y[0], y[1] to initial conditions.func - dy/dt as a function of y.dt - step size.public static double[] rungeKutta2(double[] y,
F1D func,
double dt)
y - an array to be filled with y values, set y[0] to initial condition.func - dy/dt as a function of y.dt - step size.public static double[] rungeKutta4(double[] y,
F1D func,
double dt)
y - an array to be filled with y values, set y[0] to initial condition.func - dy/dt as a function of y.dt - step size.public static double trapezium(int N,
F1D func,
double a,
double b)
N - the number of strips to use.func - a function.a - the first ordinate.b - the last ordinate.public static double trapezium2D(int N,
F2D func,
double a1,
double b1,
double a2,
double b2)
N - the number of strips to use.func - a function.a1 - the first ordinate in X.b1 - the last ordinate in X.a2 - the first ordinate in Y.b2 - the last ordinate in Y.public static double simpson(int N,
F1D func,
double a,
double b)
N - the number of strip pairs to use.func - a function.a - the first ordinate.b - the last ordinate.public static double richardson(int N,
F1D func,
double a,
double b)
N - the number of strip pairs to use (lower value).func - a function.a - the first ordinate.b - the last ordinate.public static double adaptive(F1D func, double a, double b)
F1D - input functiona - min Xb - max Xpublic static double gaussian4(int N,
F1D func,
double a,
double b)
N - the number of strips to use.func - a function.a - the first ordinate.b - the last ordinate.public static double gaussian8(int N,
F1D func,
double a,
double b)
N - the number of strips to use.func - a function.a - the first ordinate.b - the last ordinate.public static double[] differentiate(int N,
F1D func,
double a,
double b)
N - the number of points to use.func - a function.a - the first ordinate.b - the last ordinate.public static double[][] differentiate(F1D func, double[] x, double[] dx)
func - a function.x - coordinates at which to differentiate about.dx - step size.public static double[] metropolis(double[] list,
F1D func,
double dx)
list - an array to be filled with values distributed according to func, set list[0] to initial value.func - distribution function.dx - step size.DMelt 2.0 © DataMelt by jWork.ORG