3#ifndef pRC_ALGORITHMS_OPTIMIZE_H
4#define pRC_ALGORITHMS_OPTIMIZE_H
13 template<
class Optimizer,
class XX,
class RX = RemoveReference<XX>,
14 class TX =
typename RX::Type,
class VX =
typename TX::Value,
15 If<IsTensorish<RX>> = 0,
16 class RXE = RemoveConstReference<ResultOf<Eval, XX>>,
class FF,
17 If<IsInvocable<FF, RXE const &, RXE &>> = 0,
18 If<IsFloat<ResultOf<FF, RXE const &, RXE &>>> = 0,
class FC,
19 If<IsInvocable<FC, RXE &>> = 0,
class VT = VX,
20 If<All<IsFloat<VX>, IsFloat<VT>>> = 0,
21 If<IsInvocable<Optimizer, XX, FF, FC, VT>> = 0>
30 template<
class Optimizer,
class XX,
class RX = RemoveReference<XX>,
31 class TX =
typename RX::Type,
class VX =
typename TX::Value,
32 If<IsTensorish<RX>> = 0,
33 class RXE = RemoveConstReference<ResultOf<Eval, XX>>,
class FF,
34 If<IsInvocable<FF, RXE const &, RXE &>> = 0,
35 If<IsFloat<ResultOf<FF, RXE const &, RXE &>>> = 0,
class VT = VX,
36 If<All<IsFloat<VX>, IsFloat<VT>>> = 0,
37 If<IsInvocable<Optimizer, XX, FF,
void(RXE const), VT>> = 0>
50 template<
class Optimizer,
class XX,
class RX = RemoveReference<XX>,
51 class TX =
typename RX::Type,
class VX =
typename TX::Value,
52 If<IsTensorish<RX>> = 0,
53 class RXE = RemoveConstReference<ResultOf<Eval, XX>>,
class FF,
54 If<IsInvocable<FF, RXE const &, RXE &>> = 0,
55 If<IsFloat<ResultOf<FF, RXE const &, RXE &>>> = 0,
class FC,
56 If<IsInvocable<FC, RXE &>> = 0,
class VT = VX,
57 If<All<IsFloat<VX>, IsFloat<VT>>> = 0,
58 If<IsInvocable<Optimizer, XX, FF, FC, VT>> = 0>
66 template<
class Optimizer,
class XX,
class RX = RemoveReference<XX>,
67 class TX =
typename RX::Type,
class VX =
typename TX::Value,
68 If<IsTensorish<RX>> = 0,
69 class RXE = RemoveConstReference<ResultOf<Eval, XX>>,
class FF,
70 If<IsInvocable<FF, RXE const &, RXE &>> = 0,
71 If<IsFloat<ResultOf<FF, RXE const &, RXE &>>> = 0,
class VT = VX,
72 If<All<IsFloat<VX>, IsFloat<VT>>> = 0,
73 If<IsInvocable<Optimizer, XX, FF,
void(RXE const), VT>> = 0>
Definition cholesky.hpp:18
static constexpr auto optimize(Optimizer &&optimizer, XX &&x, FF &&function, FC &&callback, VT const &tolerance=NumericLimits< VT >::tolerance())
Definition optimize.hpp:22
static constexpr auto makeConstantSequence()
Definition sequence.hpp:402