VTK  9.0.1
vtkHighestDensityRegionsStatistics.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: Visualization Toolkit
4 Module: vtkHighestDensityRegionsStatistics.h
5 
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 
39 #ifndef vtkHighestDensityRegionsStatistics_h
40 #define vtkHighestDensityRegionsStatistics_h
41 
42 #include "vtkFiltersStatisticsModule.h" // For export macro
43 #include "vtkStatisticsAlgorithm.h"
44 
46 class vtkVariant;
47 
48 class VTKFILTERSSTATISTICS_EXPORT vtkHighestDensityRegionsStatistics : public vtkStatisticsAlgorithm
49 {
50 public:
52  void PrintSelf(ostream& os, vtkIndent indent) override;
54 
59 
63  void SetSigma(double sigma);
64 
68  void SetSigmaMatrix(double s11, double s12, double s21, double s22);
69 
77  double ComputeHDR(vtkDataArray* inObservations, vtkDataArray* outDensity);
78 
86  double ComputeHDR(vtkDataArray* inObs, vtkDataArray* inPOI, vtkDataArray* outDensity);
87 
88 protected:
91 
95  void Learn(vtkTable*, vtkTable*, vtkMultiBlockDataSet*) override;
96 
100  void Derive(vtkMultiBlockDataSet*) override;
101 
105  void Assess(vtkTable*, vtkMultiBlockDataSet*, vtkTable*) override { return; }
106 
110  void Test(vtkTable*, vtkMultiBlockDataSet*, vtkTable*) override { return; }
111 
116  {
117  return;
118  }
119 
121 
125  double SmoothHC1[2];
126  double SmoothHC2[2];
127  double InvSigmaC1[2];
128  double InvSigmaC2[2];
129  double Determinant;
131 
136 
137 private:
144  double ComputeSmoothGaussianKernel(int dimension, double khx, double khy);
145 
146 private:
148  void operator=(const vtkHighestDensityRegionsStatistics&) = delete;
149 };
150 
151 #endif
vtkStatisticsAlgorithm.h
vtkIdType
int vtkIdType
Definition: vtkType.h:338
vtkHighestDensityRegionsStatistics::SelectAssessFunctor
void SelectAssessFunctor(vtkTable *, vtkDataObject *, vtkStringArray *, AssessFunctor *&) override
Provide the appropriate assessment functor.
Definition: vtkHighestDensityRegionsStatistics.h:115
vtkDataObjectCollection
maintain an unordered list of data objects
Definition: vtkDataObjectCollection.h:31
vtkTable
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:62
vtkHighestDensityRegionsStatistics::Test
void Test(vtkTable *, vtkMultiBlockDataSet *, vtkTable *) override
Execute the calculations required by the Test option.
Definition: vtkHighestDensityRegionsStatistics.h:110
vtkHighestDensityRegionsStatistics
Compute a random vector of density f from input observations points. f is computed using a smooth ker...
Definition: vtkHighestDensityRegionsStatistics.h:48
vtkStatisticsAlgorithm::AssessFunctor
A base class for a functor that assesses data.
Definition: vtkStatisticsAlgorithm.h:185
vtkDataArray
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:49
vtkMultiBlockDataSet
Composite dataset that organizes datasets into blocks.
Definition: vtkMultiBlockDataSet.h:45
vtkHighestDensityRegionsStatistics::NumberOfRequestedColumnsPair
vtkIdType NumberOfRequestedColumnsPair
Store the number of requested columns pair computed by learn method.
Definition: vtkHighestDensityRegionsStatistics.h:135
vtkHighestDensityRegionsStatistics::Assess
void Assess(vtkTable *, vtkMultiBlockDataSet *, vtkTable *) override
Execute the calculations required by the Assess option.
Definition: vtkHighestDensityRegionsStatistics.h:105
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkVariant
A atomic type representing the union of many types.
Definition: vtkVariant.h:65
vtkStatisticsAlgorithm::Learn
virtual void Learn(vtkTable *, vtkTable *, vtkMultiBlockDataSet *)=0
Execute the calculations required by the Learn option, given some input Data.
vtkStatisticsAlgorithm::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkHighestDensityRegionsStatistics::Determinant
double Determinant
Definition: vtkHighestDensityRegionsStatistics.h:129
vtkStatisticsAlgorithm::Derive
virtual void Derive(vtkMultiBlockDataSet *)=0
Execute the calculations required by the Derive option.
vtkStringArray
a vtkAbstractArray subclass for strings
Definition: vtkStringArray.h:36
vtkStatisticsAlgorithm
Base class for statistics algorithms.
Definition: vtkStatisticsAlgorithm.h:71
vtkDataObject
general representation of visualization data
Definition: vtkDataObject.h:59
vtkHighestDensityRegionsStatistics::Aggregate
void Aggregate(vtkDataObjectCollection *, vtkMultiBlockDataSet *) override
Given a collection of models, calculate aggregate model.
Definition: vtkHighestDensityRegionsStatistics.h:58
vtkTableAlgorithm::New
static vtkTableAlgorithm * New()