nk
1.0.0
C++ Numerical Computing Runtime
Toggle main menu visibility
Loading...
Searching...
No Matches
root_solve.hpp
1
// ops/root_solve.hpp
2
//
3
// Scalar / low-dim iterative solver KERNELS (raw double precision, FnHandle
4
// objective) — the numerical core behind fzero / fminbnd / fminsearch. Core-free
5
// (value layer only); the toolbox Value-API wrappers and the engine adapters live
6
// above. Solver kernels belong in ops per LAYERING_TARGET_ARCHITECTURE §2/§3/§9.
7
8
#pragma once
9
10
#include <cstddef>
11
#include <memory_resource>
12
#include <nk/value/fn_handle.hpp>
13
#include <nk/value/scratch.hpp>
14
#include <utility>
15
16
namespace
nk::ops {
17
21
std::pair<double, double> findBracket(FnHandle fn,
double
x0, std::pmr::memory_resource *mr);
22
24
double
brent(FnHandle fn,
double
a,
double
b, std::pmr::memory_resource *mr);
25
28
double
brentMin(FnHandle fn,
double
a,
double
b,
double
tol, std::pmr::memory_resource *mr);
29
32
ScratchVec<double> nelderMead(FnHandle fn,
const
double
*x0, std::size_t n,
double
tol,
33
std::pmr::memory_resource *mr);
34
35
}
// namespace nk::ops
src
ops
include
nk
ops
root_solve.hpp
Generated by
1.17.0