3 #include <vnl/vnl_matrix.h> 4 #include <vnl/vnl_diag_matrix.h> 9 #include <AnimaMCMExport.h> 41 double GetCurrentCostValue() ITK_OVERRIDE;
49 std::vector <
double> &GetOptimalWeights() {
return m_OptimalWeights;}
55 m_leCalculator = LECalculatorType::New();
61 void SolveLinearLeastSquares();
63 bool CheckBoundaryConditions();
64 void PrepareDataForLLS();
65 void PrepareDataForDerivative();
69 void operator=(
const Self&);
72 vnl_matrix <double> m_FMatrixInverseG;
73 std::vector <double> m_OptimalWeights;
75 vnl_matrix <double> m_GramMatrix, m_InverseGramMatrix;
79 std::vector <unsigned int> m_IndexesUsefulCompartments;
80 std::vector <bool> m_CompartmentSwitches;
81 vnl_matrix <double> m_PredictedSignalAttenuations, m_CholeskyMatrix;
82 std::vector< vnl_matrix<double> > m_SignalAttenuationsJacobian;
itk::SmartPointer< Self > Pointer
itk::OptimizerParameters< double > ParametersType
GaussianMCMVariableProjectionCost Self
Class for computing variable projection costs and derivatives. Right now, it is only available for Ga...
LECalculatorType::Pointer LECalculatorPointer
GaussianMCMVariableProjectionCost()
virtual ~GaussianMCMVariableProjectionCost() ITK_OVERRIDE
itk::SmartPointer< const Self > ConstPointer
Base cost function class to handle maximum likelihood estimation.
itk::SmartPointer< Self > Pointer
itk::Array2D< double > DerivativeMatrixType
itk::Array< double > MeasureType
itk::Array< double > DerivativeType
Cholesky decomposition: decomposes a symmetric matrix A in the form L D L^T, where L is lower triangu...
anima::BaseMCMCost Superclass