// // Created by dawsh on 2/8/24. // namespace J3ML::Algorithm { /// Implementations for a variety of Differential Equation Solving algorithms namespace Solvers { // Consider a differential equation // dy/dx = (x + y + xy) float eq(float x, float y) { return (x + y + x*y); } // Accelleration = Velocity / Time // Velocity = Position / Time // Position = Vector3 // float euler(float x0, float y, float h, float x) { float temp = -0.f; // Iterating till the point at which we need approximation while (x0 < x) { temp = y; y = y + h * eq(x0, y); x0 = x0 + h; } return y; } class EulerMethodSolver {}; class SemiImplicitEulerMethodSolver {}; class GaussSeidelMethodSolver {}; class GradientDescentSolver {}; class VerletIntegrationSolver {}; } }