ANIMA  4.0
Public Types | Public Member Functions | Protected Member Functions | List of all members
anima::BaseIsotropicCompartment Class Reference

#include <animaBaseIsotropicCompartment.h>

+ Inheritance diagram for anima::BaseIsotropicCompartment:
+ Collaboration diagram for anima::BaseIsotropicCompartment:

Public Types

typedef Superclass::Pointer BasePointer
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef Superclass::Matrix3DType Matrix3DType
 
typedef Superclass::ModelOutputVectorType ModelOutputVectorType
 
typedef itk::SmartPointer< SelfPointer
 
typedef BaseIsotropicCompartment Self
 
typedef BaseCompartment Superclass
 
typedef Superclass::Vector3DType Vector3DType
 
- Public Types inherited from anima::BaseCompartment
typedef itk::SmartPointer< const SelfConstPointer
 
typedef std::vector< double > ListType
 
typedef itk::Matrix< double, 3, 3 > Matrix3DType
 
typedef itk::VariableLengthVector< double > ModelOutputVectorType
 
typedef itk::SmartPointer< SelfPointer
 
typedef BaseCompartment Self
 
typedef itk::LightObject Superclass
 
typedef vnl_vector_fixed< double, 3 > Vector3DType
 

Public Member Functions

double GetApparentFractionalAnisotropy () ITK_OVERRIDE
 
double GetApparentMeanDiffusivity () ITK_OVERRIDE
 
double GetApparentParallelDiffusivity () ITK_OVERRIDE
 Get approximation to parallel diffusivity of the compartment (may be different from axial diffusivity which is an internal parameter of the model) More...
 
double GetApparentPerpendicularDiffusivity () ITK_OVERRIDE
 Get approximation to perpendicular diffusivity of the compartment (may be different from radial diffusivities which are internal parameters of the model) More...
 
unsigned int GetCompartmentSize () ITK_OVERRIDE
 Number of parameters to describe the model, these parameters will be self-contained, i.e. include fixed parameters for example. More...
 
ModelOutputVectorTypeGetCompartmentVector () ITK_OVERRIDE
 Get compartment overall description vector, mainly for writing, should be self-contained. More...
 
const Matrix3DTypeGetDiffusionTensor () ITK_OVERRIDE
 Get compartment as a 3D tensor (default behavior: throw exception if not supported by the compartment model) More...
 
bool GetEstimateAxialDiffusivity ()
 
virtual double GetFourierTransformedDiffusionProfile (double smallDelta, double bigDelta, double gradientStrength, const Vector3DType &gradient) ITK_OVERRIDE
 
virtual double GetLogDiffusionProfile (const Vector3DType &sample) ITK_OVERRIDE
 
virtual const char * GetNameOfClass () const
 
unsigned int GetNumberOfParameters () ITK_OVERRIDE
 Number of optimized parameters: smaller than total number of parameters. More...
 
virtual ListTypeGetParametersAsVector () ITK_OVERRIDE
 
virtual ListTypeGetSignalAttenuationJacobian (double smallDelta, double bigDelta, double gradientStrength, const Vector3DType &gradient) ITK_OVERRIDE
 
void Reorient (vnl_matrix< double > &orientationMatrix, bool affineTransform) ITK_OVERRIDE
 Reimplements re-orientation, useless in isotropic water compartment. More...
 
void SetCompartmentVector (ModelOutputVectorType &compartmentVector) ITK_OVERRIDE
 Set compartment overall description vector, for setting automatically the individual parameters when reading from disk. More...
 
void SetEstimateAxialDiffusivity (bool arg)
 
virtual void SetParametersFromVector (const ListType &params) ITK_OVERRIDE
 Various methods for optimization parameters setting and getting. More...
 
- Public Member Functions inherited from anima::BaseCompartment
virtual void CopyFromOther (Self *rhs)
 Copy internal parameters from another compartment, faster than a set/get compartment vector. More...
 
virtual double GetAxialDiffusivity ()
 
virtual DiffusionModelCompartmentType GetCompartmentType ()=0
 Utility function to return compartment type without needing dynamic casts. More...
 
virtual double GetExtraAxonalFraction ()
 
virtual double GetOrientationConcentration ()
 
virtual double GetOrientationPhi ()
 
virtual double GetOrientationTheta ()
 
virtual ListTypeGetParameterLowerBounds ()=0
 
virtual ListTypeGetParameterUpperBounds ()=0
 
virtual double GetPerpendicularAngle ()
 
double GetPredictedSignal (double smallDelta, double bigDelta, double gradientStrength, const Vector3DType &gradient)
 
virtual double GetRadialDiffusivity1 ()
 
virtual double GetRadialDiffusivity2 ()
 
virtual bool GetTensorCompatible ()
 
virtual double GetTissueRadius ()
 
virtual bool IsEqual (Self *rhs, double tolerance=1.0e-2, double absoluteTolerance=1.0e-8)
 Tests equality to another compartment up to a constant (relative and absolute tolerances) More...
 
virtual void SetAxialDiffusivity (double num)
 
virtual void SetExtraAxonalFraction (double num)
 
virtual void SetOrientationConcentration (double num)
 
virtual void SetOrientationPhi (double num)
 
virtual void SetOrientationTheta (double num)
 
virtual void SetPerpendicularAngle (double num)
 
virtual void SetRadialDiffusivity1 (double num)
 
virtual void SetRadialDiffusivity2 (double num)
 
virtual void SetTissueRadius (double num)
 

Protected Member Functions

 BaseIsotropicCompartment ()
 
virtual ~BaseIsotropicCompartment ()
 
- Protected Member Functions inherited from anima::BaseCompartment
 BaseCompartment ()
 
virtual ~BaseCompartment ()
 

Additional Inherited Members

- Protected Attributes inherited from anima::BaseCompartment
ModelOutputVectorType m_CompartmentVector
 Vector to hold working value of compartment vector. More...
 
Matrix3DType m_DiffusionTensor
 Matrix to hold working value of diffusion tensor approximation to the model. More...
 
ListType m_JacobianVector
 Vector holding current jacobian value. More...
 
ListType m_ParametersLowerBoundsVector
 Vector holding current parameters lower bounds. More...
 
ListType m_ParametersUpperBoundsVector
 Vector holding current parameters upper bounds. More...
 
ListType m_ParametersVector
 Vector holding current parameters vector. More...
 
- Static Protected Attributes inherited from anima::BaseCompartment
static const unsigned int m_SpaceDimension = 3
 

Detailed Description

Definition at line 9 of file animaBaseIsotropicCompartment.h.

Member Typedef Documentation

◆ BasePointer

Definition at line 15 of file animaBaseIsotropicCompartment.h.

◆ ConstPointer

typedef itk::SmartPointer<const Self> anima::BaseIsotropicCompartment::ConstPointer

Definition at line 17 of file animaBaseIsotropicCompartment.h.

◆ Matrix3DType

Definition at line 20 of file animaBaseIsotropicCompartment.h.

◆ ModelOutputVectorType

typedef Superclass::ModelOutputVectorType anima::BaseIsotropicCompartment::ModelOutputVectorType

Definition at line 18 of file animaBaseIsotropicCompartment.h.

◆ Pointer

typedef itk::SmartPointer<Self> anima::BaseIsotropicCompartment::Pointer

Definition at line 16 of file animaBaseIsotropicCompartment.h.

◆ Self

Definition at line 13 of file animaBaseIsotropicCompartment.h.

◆ Superclass

Definition at line 14 of file animaBaseIsotropicCompartment.h.

◆ Vector3DType

typedef Superclass::Vector3DType anima::BaseIsotropicCompartment::Vector3DType

Definition at line 19 of file animaBaseIsotropicCompartment.h.

Constructor & Destructor Documentation

◆ BaseIsotropicCompartment()

anima::BaseIsotropicCompartment::BaseIsotropicCompartment ( )
inlineprotected

Definition at line 52 of file animaBaseIsotropicCompartment.h.

◆ ~BaseIsotropicCompartment()

virtual anima::BaseIsotropicCompartment::~BaseIsotropicCompartment ( )
inlineprotectedvirtual

Definition at line 60 of file animaBaseIsotropicCompartment.h.

Member Function Documentation

◆ GetApparentFractionalAnisotropy()

double anima::BaseIsotropicCompartment::GetApparentFractionalAnisotropy ( )
virtual

Reimplemented from anima::BaseCompartment.

Definition at line 113 of file animaBaseIsotropicCompartment.cxx.

◆ GetApparentMeanDiffusivity()

double anima::BaseIsotropicCompartment::GetApparentMeanDiffusivity ( )
virtual

◆ GetApparentParallelDiffusivity()

double anima::BaseIsotropicCompartment::GetApparentParallelDiffusivity ( )
virtual

Get approximation to parallel diffusivity of the compartment (may be different from axial diffusivity which is an internal parameter of the model)

Reimplemented from anima::BaseCompartment.

Definition at line 123 of file animaBaseIsotropicCompartment.cxx.

References anima::BaseCompartment::GetAxialDiffusivity().

◆ GetApparentPerpendicularDiffusivity()

double anima::BaseIsotropicCompartment::GetApparentPerpendicularDiffusivity ( )
virtual

Get approximation to perpendicular diffusivity of the compartment (may be different from radial diffusivities which are internal parameters of the model)

Reimplemented from anima::BaseCompartment.

Definition at line 128 of file animaBaseIsotropicCompartment.cxx.

References anima::BaseCompartment::GetAxialDiffusivity().

◆ GetCompartmentSize()

unsigned int anima::BaseIsotropicCompartment::GetCompartmentSize ( )
virtual

Number of parameters to describe the model, these parameters will be self-contained, i.e. include fixed parameters for example.

Implements anima::BaseCompartment.

Definition at line 74 of file animaBaseIsotropicCompartment.cxx.

Referenced by GetCompartmentVector(), GetNumberOfParameters(), and SetCompartmentVector().

◆ GetCompartmentVector()

BaseIsotropicCompartment::ModelOutputVectorType & anima::BaseIsotropicCompartment::GetCompartmentVector ( )
virtual

Get compartment overall description vector, mainly for writing, should be self-contained.

Implements anima::BaseCompartment.

Definition at line 93 of file animaBaseIsotropicCompartment.cxx.

References anima::BaseCompartment::GetAxialDiffusivity(), GetCompartmentSize(), and anima::BaseCompartment::m_CompartmentVector.

◆ GetDiffusionTensor()

const BaseIsotropicCompartment::Matrix3DType & anima::BaseIsotropicCompartment::GetDiffusionTensor ( )
virtual

Get compartment as a 3D tensor (default behavior: throw exception if not supported by the compartment model)

Reimplemented from anima::BaseCompartment.

Definition at line 103 of file animaBaseIsotropicCompartment.cxx.

References anima::BaseCompartment::GetAxialDiffusivity(), and anima::BaseCompartment::m_SpaceDimension.

◆ GetEstimateAxialDiffusivity()

bool anima::BaseIsotropicCompartment::GetEstimateAxialDiffusivity ( )
inline

◆ GetFourierTransformedDiffusionProfile()

double anima::BaseIsotropicCompartment::GetFourierTransformedDiffusionProfile ( double  smallDelta,
double  bigDelta,
double  gradientStrength,
const Vector3DType gradient 
)
virtual

◆ GetLogDiffusionProfile()

double anima::BaseIsotropicCompartment::GetLogDiffusionProfile ( const Vector3DType sample)
virtual

◆ GetNameOfClass()

virtual const char* anima::BaseIsotropicCompartment::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods)

Reimplemented from anima::BaseCompartment.

Reimplemented in anima::FreeWaterCompartment, anima::IsotropicRestrictedWaterCompartment, and anima::StationaryWaterCompartment.

◆ GetNumberOfParameters()

unsigned int anima::BaseIsotropicCompartment::GetNumberOfParameters ( )
virtual

◆ GetParametersAsVector()

BaseCompartment::ListType & anima::BaseIsotropicCompartment::GetParametersAsVector ( )
virtual

◆ GetSignalAttenuationJacobian()

BaseCompartment::ListType & anima::BaseIsotropicCompartment::GetSignalAttenuationJacobian ( double  smallDelta,
double  bigDelta,
double  gradientStrength,
const Vector3DType gradient 
)
virtual

◆ Reorient()

void anima::BaseIsotropicCompartment::Reorient ( vnl_matrix< double > &  orientationMatrix,
bool  affineTransform 
)
inlinevirtual

Reimplements re-orientation, useless in isotropic water compartment.

Reimplemented from anima::BaseCompartment.

Definition at line 43 of file animaBaseIsotropicCompartment.h.

◆ SetCompartmentVector()

void anima::BaseIsotropicCompartment::SetCompartmentVector ( ModelOutputVectorType compartmentVector)
virtual

Set compartment overall description vector, for setting automatically the individual parameters when reading from disk.

Implements anima::BaseCompartment.

Definition at line 66 of file animaBaseIsotropicCompartment.cxx.

References GetCompartmentSize(), and anima::BaseCompartment::SetAxialDiffusivity().

◆ SetEstimateAxialDiffusivity()

void anima::BaseIsotropicCompartment::SetEstimateAxialDiffusivity ( bool  arg)

Definition at line 57 of file animaBaseIsotropicCompartment.cxx.

◆ SetParametersFromVector()

void anima::BaseIsotropicCompartment::SetParametersFromVector ( const ListType params)
virtual

Various methods for optimization parameters setting and getting.

Implements anima::BaseCompartment.

Definition at line 38 of file animaBaseIsotropicCompartment.cxx.

References GetNumberOfParameters(), and anima::BaseCompartment::SetAxialDiffusivity().


The documentation for this class was generated from the following files: