ParaView
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
vtkPSciVizMultiCorrelativeStats Class Reference

Fit a multivariate Gaussian to data and/or assess Mahalanobis distance of each datum from the mean. More...

#include <vtkPSciVizMultiCorrelativeStats.h>

Inheritance diagram for vtkPSciVizMultiCorrelativeStats:
Inheritance graph
[legend]
Collaboration diagram for vtkPSciVizMultiCorrelativeStats:
Collaboration graph
[legend]

Public Types

typedef vtkSciVizStatistics Superclass
 
- Public Types inherited from vtkSciVizStatistics
enum  Tasks { MODEL_INPUT, CREATE_MODEL, ASSESS_INPUT, MODEL_AND_ASSESS }
 Possible tasks the filter can perform. More...
 
typedef vtkTableAlgorithm Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
virtual void PrintSelf (ostream &os, vtkIndent indent)
 
- Public Member Functions inherited from vtkSciVizStatistics
int GetNumberOfAttributeArrays ()
 Return the number of columns available for the current value of AttributeMode. More...
 
const char * GetAttributeArrayName (int n)
 Get the name of the n-th array ffor the current value of AttributeMode. More...
 
int GetAttributeArrayStatus (const char *arrName)
 Get the status of the specified array (i.e., whether or not it is a column of interest). More...
 
vtkInformationIntegerKey * MULTIPLE_MODELS ()
 A key used to mark the output model data object (output port 0) when it is a multiblock of models (any of which may be multiblock dataset themselves) as opposed to a multiblock dataset containing a single model. More...
 
virtual int GetAttributeMode ()
 Set/get the type of field attribute (cell, point, field) More...
 
virtual void SetAttributeMode (int)
 Set/get the type of field attribute (cell, point, field) More...
 
void EnableAttributeArray (const char *arrName)
 An alternate interface for preparing a selection of arrays in ParaView. More...
 
void ClearAttributeArrays ()
 An alternate interface for preparing a selection of arrays in ParaView. More...
 
virtual void SetTrainingFraction (double)
 Set/get the amount of data to be used for training. More...
 
virtual double GetTrainingFraction ()
 Set/get the amount of data to be used for training. More...
 
virtual void SetTask (int)
 Set/get whether this filter should create a model of the input or assess the input or both. More...
 
virtual int GetTask ()
 Set/get whether this filter should create a model of the input or assess the input or both. More...
 

Static Public Member Functions

static vtkPSciVizMultiCorrelativeStatsNew ()
 
static int IsTypeOf (const char *type)
 
static vtkPSciVizMultiCorrelativeStatsSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkSciVizStatistics
static int IsTypeOf (const char *type)
 
static vtkSciVizStatisticsSafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkPSciVizMultiCorrelativeStats ()
 
virtual ~vtkPSciVizMultiCorrelativeStats ()
 
virtual int LearnAndDerive (vtkMultiBlockDataSet *model, vtkTable *inData)
 Method subclasses must override to calculate a full model from the given input data. More...
 
virtual int AssessData (vtkTable *observations, vtkDataObject *dataset, vtkMultiBlockDataSet *model)
 Method subclasses must override to assess an input table given a model of the proper type. More...
 
- Protected Member Functions inherited from vtkSciVizStatistics
 vtkSciVizStatistics ()
 
virtual ~vtkSciVizStatistics ()
 
virtual int FillInputPortInformation (int port, vtkInformation *info)
 
virtual int FillOutputPortInformation (int port, vtkInformation *info)
 
virtual int ProcessRequest (vtkInformation *request, vtkInformationVector **input, vtkInformationVector *output)
 
virtual int RequestDataObject (vtkInformation *request, vtkInformationVector **input, vtkInformationVector *output)
 
virtual int RequestData (vtkInformation *request, vtkInformationVector **input, vtkInformationVector *output)
 
virtual int RequestData (vtkCompositeDataSet *compDataOu, vtkCompositeDataSet *compModelOu, vtkCompositeDataSet *compDataIn, vtkCompositeDataSet *compModelIn, vtkDataObject *singleModel)
 
virtual int RequestData (vtkDataObject *observationsOut, vtkDataObject *modelOut, vtkDataObject *observationsIn, vtkDataObject *modelIn)
 
virtual int PrepareFullDataTable (vtkTable *table, vtkFieldData *dataAttrIn)
 
virtual int PrepareTrainingTable (vtkTable *trainingTable, vtkTable *fullDataTable, vtkIdType numObservations)
 
virtual vtkIdType GetNumberOfObservationsForTraining (vtkTable *observations)
 Subclasses may (but need not) override this function to guarantee that some minimum number of observations are included in the training data. More...
 

Additional Inherited Members

- Protected Attributes inherited from vtkSciVizStatistics
int AttributeMode
 
int Task
 
double TrainingFraction
 
vtkSciVizStatisticsPP
 

Detailed Description

Fit a multivariate Gaussian to data and/or assess Mahalanobis distance of each datum from the mean.

This filter either computes a statistical model of a dataset or takes such a model as its second input. Then, the model (however it is obtained) may optionally be used to assess the input dataset.

This filter computes the covariance matrix for all the arrays you select plus the mean of each array. The model is thus a multivariate Gaussian distribution with the mean vector and variances provided. Data is assessed using this model by computing the Mahalanobis distance for each input point. This distance will always be positive.

The learned model output format is rather dense and can be confusing, so it is discussed here. The first filter output is a multiblock dataset consisting of 2 tables:

  1. Raw covariance data.
  2. Covariance matrix and its Cholesky decomposition.

    raw covariance table has 3 meaningful columns: 2 titled "Column1" and "Column2" whose entries generally refer to the N arrays you selected when preparing the filter and 1 column titled "Entries" that contains numeric values. The first row will always contain the number of observations in the statistical analysis. The next N rows contain the mean for each of the N arrays you selected. The remaining rows contain covariances of pairs of arrays.

    The second table (covariance matrix and Cholesky decomposition) contains information derived from the raw covariance data of the first table. The first N rows of the first column contain the name of one array you selected for analysis. These rows are followed by a single entry labeled "Cholesky" for a total of N+1 rows. The second column, Mean contains the mean of each variable in the first N entries and the number of observations processed in the final (N+1) row.

    The remaining columns (there are N, one for each array) contain 2 matrices in triangular format. The upper right triangle contains the covariance matrix (which is symmetric, so its lower triangle may be inferred). The lower left triangle contains the Cholesky decomposition of the covariance matrix (which is triangular, so its upper triangle is zero). Because the diagonal must be stored for both matrices, an additional row is required - hence the N+1 rows and the final entry of the column named "Column".

Definition at line 75 of file vtkPSciVizMultiCorrelativeStats.h.

Member Typedef Documentation

§ Superclass

Definition at line 79 of file vtkPSciVizMultiCorrelativeStats.h.

Constructor & Destructor Documentation

§ vtkPSciVizMultiCorrelativeStats()

vtkPSciVizMultiCorrelativeStats::vtkPSciVizMultiCorrelativeStats ( )
protected

§ ~vtkPSciVizMultiCorrelativeStats()

virtual vtkPSciVizMultiCorrelativeStats::~vtkPSciVizMultiCorrelativeStats ( )
protectedvirtual

Member Function Documentation

§ New()

static vtkPSciVizMultiCorrelativeStats* vtkPSciVizMultiCorrelativeStats::New ( )
static

§ GetClassName()

virtual const char* vtkPSciVizMultiCorrelativeStats::GetClassName ( )
virtual

Reimplemented from vtkSciVizStatistics.

§ IsTypeOf()

static int vtkPSciVizMultiCorrelativeStats::IsTypeOf ( const char *  type)
static

§ IsA()

virtual int vtkPSciVizMultiCorrelativeStats::IsA ( const char *  type)
virtual

Reimplemented from vtkSciVizStatistics.

§ SafeDownCast()

static vtkPSciVizMultiCorrelativeStats* vtkPSciVizMultiCorrelativeStats::SafeDownCast ( vtkObject *  o)
static

§ PrintSelf()

virtual void vtkPSciVizMultiCorrelativeStats::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual

Reimplemented from vtkSciVizStatistics.

§ LearnAndDerive()

virtual int vtkPSciVizMultiCorrelativeStats::LearnAndDerive ( vtkMultiBlockDataSet *  model,
vtkTable *  inData 
)
protectedvirtual

Method subclasses must override to calculate a full model from the given input data.

The model should be placed on the first output port of the passed vtkInformationVector as well as returned in the model parameter.

Implements vtkSciVizStatistics.

§ AssessData()

virtual int vtkPSciVizMultiCorrelativeStats::AssessData ( vtkTable *  observations,
vtkDataObject *  dataset,
vtkMultiBlockDataSet *  model 
)
protectedvirtual

Method subclasses must override to assess an input table given a model of the proper type.

The dataset parameter contains a shallow copy of input port 0 and should be modified to include the assessment.

Adding new arrays to point/cell/vertex/edge data should not pose a problem, but any alterations to the dataset itself will probably require that you create a deep copy before modification.

Parameters
observations- a table containing the field data of the dataset converted to a table
dataset- a shallow copy of the input dataset that should be altered to include an assessment of the output.
model- the statistical model with which to assess the observations.

Implements vtkSciVizStatistics.


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