16#ifndef ADOLC_SPARSE_FO_REV_H
17#define ADOLC_SPARSE_FO_REV_H
72template <ControlFlowMode CFM>
74 std::vector<bitword_t *> &X,
double *y,
75 std::vector<bitword_t *> &Y) {
85 static_assert(is_dependent_v<CFM>,
86 "Mode must be either 'safe' or 'tight'!");
118template <ControlFlowMode CFM>
120 std::vector<bitword_t *> &X,
121 std::vector<bitword_t *> &Y) {
125 static_assert(is_dependent_v<CFM>,
"Mode has to be 'safe'!");
162template <ControlFlowMode CFM>
164 std::vector<bitword_t *> &U,
165 std::vector<bitword_t *> &Z) {
171 static_assert(is_dependent_v<CFM>,
172 "Mode must be either 'safe' or 'tight'!");
#define CURRENT_LOCATION
Definition adolcerror.h:26
#define ADOLC_API
Definition adolcexport.h:16
uint32_t bitword_t
Definition common.h:37
ADOLC_API int int_forward_tight(short, int, int, int, const double *, const bitword_t *const *, double *, bitword_t **)
ADOLC_API int int_reverse_safe(short, int, int, int, const bitword_t *const *, bitword_t **)
ADOLC_API int int_reverse_tight(short, int, int, int, const bitword_t *const *, bitword_t **)
ADOLC_API int int_forward_safe(short, int, int, int, const bitword_t *const *, bitword_t **)
void ADOLC_API fail(ErrorType error, const source_location LocInfo, const FailInfo &failinfo=FailInfo())
Definition adtl_indo.h:46
@ Tight
Tight (basepoint-dependent) control-flow handling.
@ Safe
Safe (conservative) control-flow handling.
ADOLC_API int reverse(short tag, int m, int n, int q, std::vector< bitword_t * > &U, std::vector< bitword_t * > &Z)
Reverse-mode bit-pattern propagation (safe or tight control-flow).
Definition sparse_fo_rev.h:163
ADOLC_API int forward(short tag, int m, int n, int p, double *x, std::vector< bitword_t * > &X, double *y, std::vector< bitword_t * > &Y)
Forward-mode bit-pattern propagation (safe or tight control-flow).
Definition sparse_fo_rev.h:73