vtkPSciVizPCAStats.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
34 #ifndef vtkPSciVizPCAStats_h
35 #define vtkPSciVizPCAStats_h
36 
37 #include "vtkPVVTKExtensionsFiltersStatisticsModule.h" //needed for exports
38 #include "vtkSciVizStatistics.h"
39 
41 {
42 public:
43  static vtkPSciVizPCAStats* New();
45  void PrintSelf(ostream& os, vtkIndent indent) override;
46 
47  vtkSetMacro(NormalizationScheme, int);
48  vtkGetMacro(NormalizationScheme, int);
49 
50  vtkSetMacro(BasisScheme, int);
51  vtkGetMacro(BasisScheme, int);
52 
53  vtkSetMacro(FixedBasisSize, int);
54  vtkGetMacro(FixedBasisSize, int);
55 
56  vtkSetClampMacro(FixedBasisEnergy, double, 0., 1.);
57  vtkGetMacro(FixedBasisEnergy, double);
58 
59  vtkSetMacro(RobustPCA, bool);
60  vtkGetMacro(RobustPCA, bool);
61  vtkBooleanMacro(RobustPCA, bool);
62 
63 protected:
65  ~vtkPSciVizPCAStats() override;
66 
67  int LearnAndDerive(vtkMultiBlockDataSet* model, vtkTable* inData) override;
68  int AssessData(
69  vtkTable* observations, vtkDataObject* dataset, vtkMultiBlockDataSet* model) override;
70 
75  bool RobustPCA;
76 
77 private:
78  vtkPSciVizPCAStats(const vtkPSciVizPCAStats&) = delete;
79  void operator=(const vtkPSciVizPCAStats&) = delete;
80 };
81 
82 #endif // vtkPSciVizPCAStats_h
virtual int AssessData(vtkTable *observations, vtkDataObject *dataset, vtkMultiBlockDataSet *model)=0
Method subclasses must override to assess an input table given a model of the proper type...
#define VTKPVVTKEXTENSIONSFILTERSSTATISTICS_EXPORT
static vtkTableAlgorithm * New()
virtual int LearnAndDerive(vtkMultiBlockDataSet *model, vtkTable *inData)=0
Method subclasses must override to calculate a full model from the given input data.
Abstract base class for computing statistics with vtkStatistics.
Perform PCA on data and/or project data into a subspace defined by the PCA.
void PrintSelf(ostream &os, vtkIndent indent) override