MultiSeedModel Class Reference

Inherits DifferentialModel, ml::filter::UnscentedKalmanFilterModel, and ml::filter::ParticleSmootherModel.

Inheritance diagram for MultiSeedModel:

Inheritance graph
[legend]
List of all members.

Detailed Description

Multiple seed time-series model combining indii::fmri::neural::MultiSeedNeuralModel for neural interactions, indii::fmri::hemodynamic::LogNeuralBalloonModel for independent hemodynamic activity at each seed and indii::fmri::hemodynamic::LogBOLDCalculator for predicted measurements.

Author:
Lawrence Murray <lawrence@indii.org>
Version:
Rev
317
Date:
Date
2007-10-05 17:18:14 +0100 (Fri, 05 Oct 2007)
Parameters of the model may be estimated using indii::ml::filter::UnscentedKalmanFilter<double>, indii::ml::filter::ParticleFilter<double> or indii::ml::filter::ParticleSmoother<double>. When retrieving the state at any time from one of these methods, it will be arranged as follows (for $N$ seeds):

Definition at line 47 of file MultiSeedModel.hpp.

Public Types

enum  SeedVariables {
  LN_Q, LN_V, LN_F, S,
  U, B, SEED_SIZE
}
 Order of state variables within each seed block of the state vector. More...

Public Member Functions

 MultiSeedModel (unsigned int N)
 Construct new model.
 MultiSeedModel (unsigned int N, const indii::ml::aux::GaussianPdf &w, const indii::ml::aux::GaussianPdf &v, const indii::ml::aux::GaussianPdf &r)
 Construct new model.
virtual ~MultiSeedModel ()
 Destructor.
virtual unsigned int getStateSize ()
 Get state size.
virtual unsigned int getMeasurementSize ()
 Get measurement size.
indii::fmri::neural::MultiSeedNeuralModelgetNeuralModel ()
 Get the neural model.
indii::fmri::hemodynamic::LogNeuralBalloonModelgetHemodynamicModel (const unsigned int seed)
 Get the hemodynamic model for a particular seed.
indii::fmri::hemodynamic::LogBOLDCalculatorgetBOLDCalculator (const unsigned int seed)
 Get the BOLD calculator for a particular seed.
void setSystemNoise (const indii::ml::aux::GaussianPdf &w)
 Set system noise structure.
void setMeasurementNoise (const indii::ml::aux::GaussianPdf &v)
 Set measurement noise structure.
void setResamplingNoise (const indii::ml::aux::GaussianPdf &r)
 Set resampling noise structure.
indii::ml::aux::GaussianPdf suggestPrior ()
 Calculate a suggested prior over the initial state of the system.
indii::ml::aux::GaussianPdf suggestSystemNoise ()
 Calculate a suggested system noise structure.
indii::ml::aux::GaussianPdf suggestMeasurementNoise ()
 Calculate a suggested measurement noise structure.
indii::ml::aux::GaussianPdf suggestResamplingNoise ()
 Calculate a suggested resampling noise structure.
virtual indii::ml::aux::vector transition (const indii::ml::aux::vector &x, const indii::ml::aux::vector &w, double delta)
 
See also:
indii::ml::model::UnscentedKalmanFilterModel

virtual indii::ml::aux::vector transition (const indii::ml::aux::vector &x, const double start, const double delta)
 
See also:
indii::ml::model::ParticleFilterModel

virtual indii::ml::aux::vector measure (const indii::ml::aux::vector &x, const indii::ml::aux::vector &v)
 
See also:
indii::ml::model::UnscentedKalmanFilterModel

virtual indii::ml::aux::vector measure (const indii::ml::aux::vector &x)
 
See also:
indii::ml::model::ParticleFilterModel

virtual double weight (const indii::ml::aux::vector &x, const indii::ml::aux::vector &y)
 
See also:
indii::ml::model::ParticleFilterModel

virtual indii::ml::aux::vector resample (const indii::ml::aux::vector &x)
 
See also:
indii::ml::model::ParticleFilterModel

virtual indii::ml::aux::sparse_matrix alpha (const indii::ml::aux::DiracMixturePdf &p_xtn_ytn, const indii::ml::aux::DiracMixturePdf &p_xtnp1_ytnp1, const double start, const double delta)
 
See also:
indii::ml::model::ParticleSmootherModel

virtual void calculateDerivatives (double t, const double y[], double dydt[])
 
See also:
indii::ml::ode::DifferentialModel


Member Enumeration Documentation

enum SeedVariables

Order of state variables within each seed block of the state vector.

Enumerator:
LN_Q 
LN_V 
LN_F 
S 
U 
B 
SEED_SIZE  Number of state variables for each seed.

Definition at line 55 of file MultiSeedModel.hpp.


Constructor & Destructor Documentation

MultiSeedModel ( unsigned int  N  ) 

Construct new model.

Parameters:
N Number of seeds.

Definition at line 16 of file MultiSeedModel.cpp.

MultiSeedModel ( unsigned int  N,
const indii::ml::aux::GaussianPdf &  w,
const indii::ml::aux::GaussianPdf &  v,
const indii::ml::aux::GaussianPdf &  r 
)

Construct new model.

Parameters:
N Number of seeds.
w System noise.
v Measurement noise.
r Resampling noise.

~MultiSeedModel (  )  [virtual]

Destructor.

Definition at line 32 of file MultiSeedModel.cpp.


Member Function Documentation

unsigned int getStateSize (  )  [virtual]

Get state size.

Definition at line 53 of file MultiSeedModel.cpp.

unsigned int getMeasurementSize (  )  [virtual]

Get measurement size.

Definition at line 57 of file MultiSeedModel.cpp.

MultiSeedNeuralModel * getNeuralModel (  ) 

Get the neural model.

Settings of this model may be adjusted.

Returns:
The neural model.

Definition at line 84 of file MultiSeedModel.cpp.

LogNeuralBalloonModel * getHemodynamicModel ( const unsigned int  seed  ) 

Get the hemodynamic model for a particular seed.

Settings of this model may be adjusted.

Parameters:
seed The seed.
Returns:
The hemodynamic model for the given seed.

Definition at line 95 of file MultiSeedModel.cpp.

LogBOLDCalculator * getBOLDCalculator ( const unsigned int  seed  ) 

Get the BOLD calculator for a particular seed.

Settings of this may be adjusted.

Parameters:
seed The seed.
Returns:
The BOLD calculator for the given seed.

Definition at line 88 of file MultiSeedModel.cpp.

void setSystemNoise ( const indii::ml::aux::GaussianPdf &  w  ) 

Set system noise structure.

Parameters:
w System noise.

void setMeasurementNoise ( const indii::ml::aux::GaussianPdf &  v  ) 

Set measurement noise structure.

Parameters:
v Measurement noise.

void setResamplingNoise ( const indii::ml::aux::GaussianPdf &  r  ) 

Set resampling noise structure.

Parameters:
r Resampling noise.

aux::GaussianPdf suggestPrior (  ) 

Calculate a suggested prior over the initial state of the system.

Returns:
Suggested prior over the initial state of the system.

Definition at line 115 of file MultiSeedModel.cpp.

aux::GaussianPdf suggestSystemNoise (  ) 

Calculate a suggested system noise structure.

Returns:
Suggested system noise.

Definition at line 154 of file MultiSeedModel.cpp.

aux::GaussianPdf suggestMeasurementNoise (  ) 

Calculate a suggested measurement noise structure.

Returns:
Suggested measurement noise.

Definition at line 189 of file MultiSeedModel.cpp.

aux::GaussianPdf suggestResamplingNoise (  ) 

Calculate a suggested resampling noise structure.

Returns:
Suggested resampling noise.

Definition at line 201 of file MultiSeedModel.cpp.

virtual indii::ml::aux::vector transition ( const indii::ml::aux::vector &  x,
const indii::ml::aux::vector &  w,
double  delta 
) [virtual]

See also:
indii::ml::model::UnscentedKalmanFilterModel

virtual indii::ml::aux::vector transition ( const indii::ml::aux::vector &  x,
const double  start,
const double  delta 
) [virtual]

See also:
indii::ml::model::ParticleFilterModel

virtual indii::ml::aux::vector measure ( const indii::ml::aux::vector &  x,
const indii::ml::aux::vector &  v 
) [virtual]

See also:
indii::ml::model::UnscentedKalmanFilterModel

virtual indii::ml::aux::vector measure ( const indii::ml::aux::vector &  x  )  [virtual]

See also:
indii::ml::model::ParticleFilterModel

virtual double weight ( const indii::ml::aux::vector &  x,
const indii::ml::aux::vector &  y 
) [virtual]

See also:
indii::ml::model::ParticleFilterModel

virtual indii::ml::aux::vector resample ( const indii::ml::aux::vector &  x  )  [virtual]

See also:
indii::ml::model::ParticleFilterModel

virtual indii::ml::aux::sparse_matrix alpha ( const indii::ml::aux::DiracMixturePdf &  p_xtn_ytn,
const indii::ml::aux::DiracMixturePdf &  p_xtnp1_ytnp1,
const double  start,
const double  delta 
) [virtual]

See also:
indii::ml::model::ParticleSmootherModel

void calculateDerivatives ( double  t,
const double  y[],
double  dydt[] 
) [virtual]

See also:
indii::ml::ode::DifferentialModel

Definition at line 366 of file MultiSeedModel.cpp.


The documentation for this class was generated from the following files:
Generated on Tue Oct 9 22:02:12 2007 for fmrii fMRI Modelling Library by  doxygen 1.5.2