Newer
Older
/* glim.h
Mark Woolrich, FMRIB Image Analysis Group
Copyright (C) 1999-2000 University of Oxford */
/* CCOPYRIGHT */
#include <iostream>
#include <fstream>
#include "newmat/newmatap.h"
#include "newmat/newmatio.h"
#include "VolumeSeries.h"
#include "Volume.h"
using namespace NEWMAT;
#if !defined(__glim_h)
#define __glim_h
#define BATCHSIZE 50
class Glim
{
public:
void ComputePes();
void SetVrow(const ColumnVector& p_vrow, const int ind);
void SetGlobalVrow(const ColumnVector& p_vrow);
void ComputeSigmaSquared(const int ind);
void UseGlobalVrow();
private:
Glim();
Glim(const Glim&);
Glim& operator=(const Glim& p_glim);
void SetCorrection(const Matrix& corr, const int ind);
void ConstructV(const ColumnVector& p_vrow);
const Matrix& x;
int numTS;
int sizeTS;
int numParams;
VolumeSeries r;
Matrix pinv_x;
Matrix V;
Matrix RV;
Matrix RMat;
int batch_size;
// Data to be saved:
Matrix corrections;
Matrix b;
Volume sigmaSquareds;
float dof;
};
#ifndef NO_NAMESPACE
}
#endif
#endif