import org.apache.commons.math3.analysis.UnivariateFunction;
import org.apache.commons.math3.analysis.solvers.NewtonRaphsonSolver;
import org.apache.commons.math3.analysis.solvers.UnivariateSolver;
import org.apache.commons.math3.analysis.solvers.UnivariateSolverUtils;
import org.apache.commons.math3.exception.NoBracketingException;
public class EquationSolver {
public static void main(String[] args) {
UnivariateFunction function = x -> Math.pow(x, 3) - 2 * x - 5;
UnivariateSolver solver = new NewtonRaphsonSolver();
double solution;
try {
solution = solver.solve(100, function, -10, 10);
System.out.println("Solution: " + solution);
} catch (NoBracketingException e) {
System.out.println("No bracketing found for the solution.");
}
}
}
import org.apache.commons.math3.fitting.PolynomialCurveFitter;
import org.apache.commons.math3.fitting.WeightedObservedPoints;
public class FunctionFitter {
public static void main(String[] args) {
WeightedObservedPoints points = new WeightedObservedPoints();
points.add(1, 2);
points.add(2, 3);
points.add(3, 5);
points.add(4, 8);
points.add(5, 10);
PolynomialCurveFitter fitter = PolynomialCurveFitter.create(2);
double[] coefficients = fitter.fit(points.toList());
System.out.println("Fitted polynomial coefficients:");
for (double coefficient : coefficients) {
System.out.println(coefficient);
}
}
}
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-math3</artifactId>
<version>3.6.1</version>
</dependency>