/usr/include/bart/iter/iter.h is in libbart-dev 0.4.00-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 | /* Copyright 2013-2014. The Regents of the University of California.
* Copyright 2016. Martin Uecker.
* All rights reserved. Use of this source code is governed by
* a BSD-style license which can be found in the LICENSE file.
*/
#ifndef __ITER_H
#define __ITER_H
struct operator_s;
struct operator_p_s;
#include "misc/types.h"
#ifndef ITER_CONF_S
#define ITER_CONF_S
typedef struct iter_conf_s { TYPEID* TYPEID; } iter_conf;
#endif
struct iter_monitor_s;
typedef void italgo_fun_f(iter_conf* conf,
const struct operator_s* normaleq_op,
const struct operator_p_s* thresh_prox,
long size, float* image, const float* image_adj,
struct iter_monitor_s* monitor);
typedef italgo_fun_f* italgo_fun_t;
struct iter_conjgrad_conf {
INTERFACE(iter_conf);
unsigned int maxiter;
float l2lambda;
float tol;
};
extern DEF_TYPEID(iter_conjgrad_conf);
struct iter_landweber_conf {
INTERFACE(iter_conf);
unsigned int maxiter;
float step;
float tol;
};
extern DEF_TYPEID(iter_landweber_conf);
struct iter_ist_conf {
INTERFACE(iter_conf);
unsigned int maxiter;
float step;
float continuation;
_Bool hogwild;
float tol;
};
extern DEF_TYPEID(iter_ist_conf);
struct iter_fista_conf {
INTERFACE(iter_conf);
unsigned int maxiter;
float step;
float continuation;
_Bool hogwild;
float tol;
};
extern DEF_TYPEID(iter_fista_conf);
struct iter_admm_conf {
INTERFACE(iter_conf);
unsigned int maxiter;
unsigned int maxitercg;
float rho;
_Bool do_warmstart;
_Bool dynamic_rho;
_Bool hogwild;
double ABSTOL;
double RELTOL;
float alpha;
float tau;
float mu;
float cg_eps;
_Bool fast;
};
extern DEF_TYPEID(iter_admm_conf);
struct iter_pocs_conf {
INTERFACE(iter_conf);
unsigned int maxiter;
};
extern DEF_TYPEID(iter_pocs_conf);
extern const struct iter_conjgrad_conf iter_conjgrad_defaults;
extern const struct iter_landweber_conf iter_landweber_defaults;
extern const struct iter_ist_conf iter_ist_defaults;
extern const struct iter_fista_conf iter_fista_defaults;
extern const struct iter_admm_conf iter_admm_defaults;
extern const struct iter_pocs_conf iter_pocs_defaults;
italgo_fun_f iter_conjgrad;
italgo_fun_f iter_landweber;
italgo_fun_f iter_ist;
italgo_fun_f iter_fista;
italgo_fun_f iter_admm;
// use with iter2_call_s from iter2.h as _conf
italgo_fun_f iter_call_iter2;
struct iter_call_s {
INTERFACE(iter_conf);
italgo_fun_t fun;
iter_conf* _conf;
};
extern DEF_TYPEID(iter_call_s);
#endif
|