20template<
typename InputT,
typename OutputT>
42 const OutputT& target,
43 double tolerance = 1e-3,
44 int maxIterations = 30,
45 double jacobianStep = 0.01,
46 double damping = 1.0);
71 enum class SolverState {
72 WaitingForBase, PerturbComponent, WaitingForPerturbed, ComputeJacobian
84 std::array<glm::vec3, 3> fPerturbed;
86 int currentPerturbation = -1;
87 int iterationCount = 0;
Abstract interface for numerical solvers.
Abstract base class for all numerical solvers.
A vector-valued root solver using Newton's method.
std::function< void(const InputT &)> InitialGuessSetter
std::function< OutputT()> ResultExtractor
bool stepFrame() override
Performs one iteration of the vector root-finding solver.
std::function< bool()> StopCondition