#include <alpaqa/include/alpaqa/accelerators/steihaugcg.hpp>
template<Config Conf>
struct alpaqa::SteihaugCG< Conf >
Steihaug conjugate gradients procedure based on https://github.com/scipy/scipy/blob/583e70a50573169fc352b5dc6d94588a97c7389a/scipy/optimize/_trustregion_ncg.py#L44.
Definition at line 20 of file steihaugcg.hpp.
◆ Params
◆ SteihaugCG() [1/2]
◆ SteihaugCG() [2/2]
◆ resize()
◆ solve()
real_t solve |
( |
const auto & |
grad, |
|
|
const HessFun & |
hess_prod, |
|
|
real_t |
trust_radius, |
|
|
rvec |
step |
|
) |
| const |
|
inline |
◆ get_boundaries_intersections()
static auto get_boundaries_intersections |
( |
crvec |
z, |
|
|
crvec |
d, |
|
|
real_t |
trust_radius |
|
) |
| |
|
inlinestatic |
Solve the scalar quadratic equation ||z + t d|| == trust_radius.
This is like a line-sphere intersection. Return the two values of t, sorted from low to high.
Definition at line 122 of file steihaugcg.hpp.
◆ params
◆ Bd
◆ work_eval
The documentation for this struct was generated from the following file: