Newer
Older
/* samples.h
Tim Behrens, Saad Jbabdi, Stam Sotiropoulos, Moises Hernandez - FMRIB Image Analysis Group
Copyright (C) 2005 University of Oxford */
/* CCOPYRIGHT */
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
#include "newmat.h"
#include "newimage/newimageall.h"
#include "xfibresoptions.h"
using namespace Xfibres;
////////////////////////////////////////////
// MCMC SAMPLE STORAGE
////////////////////////////////////////////
class Samples{
xfibresOptions& opts;
Matrix m_dsamples;
Matrix m_d_stdsamples;
Matrix m_S0samples;
Matrix m_f0samples;
// // storing signal
// Matrix m_mean_sig;
// Matrix m_std_sig;
// Matrix m_sig2;
vector<Matrix> m_thsamples;
vector<Matrix> m_phsamples;
vector<Matrix> m_fsamples;
vector<Matrix> m_lamsamples;
//for storing means
RowVector m_mean_dsamples;
RowVector m_mean_d_stdsamples;
RowVector m_mean_S0samples;
RowVector m_mean_f0samples;
RowVector m_mean_tausamples;
vector<Matrix> m_dyadic_vectors;
vector<RowVector> m_mean_fsamples;
vector<RowVector> m_mean_lamsamples;
//float m_sum_d; changed GPU version
//float m_sum_d_std; changed GPU version
//float m_sum_S0; changed GPU version
//float m_sum_f0; changed GPU version
//float m_sum_tau; changed GPU version
//vector<SymmetricMatrix> m_dyad; changed GPU version
//vector<float> m_sum_f; changed GPU version
//vector<float> m_sum_lam; changed GPU version
//ColumnVector m_vec; changed GPU version
/////////////// GPU version /////////////////////
float *m_sum_d;
float *m_sum_S0;
float *m_sum_d_std;
float *m_sum_f0;
float *m_sum_tau;
vector<SymmetricMatrix> *m_dyad;
vector<float> *m_sum_f;
vector<float> *m_sum_lam;
ColumnVector *m_vec;
////////////////////////////////////////////////
int m_nsamps;
public:
void record(float rd,float rf0,float rtau,float rdstd,float rs0,float *rth,float *rph, float *rf, int vox, int samp);
void finish_voxel(int vox);