54 double incrementCount = 0.;
57 std::vector<double> np, gam, dis;
63 for(std::size_t lag = 0; lag <
m_nLags; ++ lag)
67 double minDistance = incrementCount - incrementTolerance;
68 double maxDistance = incrementCount + incrementTolerance;
73 for(std::size_t column = 0; column <
m_dataMatrix.size2() - 1; ++column)
79 np[lag] = np[lag] + 1.;
85 np[lag] = np[lag] + 1.;
94 np[lag] = np[lag] + 1.;
100 np[lag] = np[lag] + 1.;
110 boost::numeric::ublas::matrix<double> matrix(m_nLags, 2);
112 for(std::size_t lag = 0; lag <
m_nLags; ++ lag)
116 dis[lag] = dis[lag] / np[lag];
117 gam[lag] = (gam[lag] / np[lag]) * .5;
120 matrix(lag,0) = dis[lag];
121 matrix(lag,1) = gam[lag];
GeostatisticalMethodSemivariogram()
Default constructor.
double m_lagIncrement
Attribute used to define the distance between each lag.
virtual boost::numeric::ublas::matrix< double > calculate()
Function to calculate the geostatistical information.
boost::numeric::ublas::matrix< double > m_dataMatrix
Matrix with input data information.
std::size_t m_nLags
Attribute used to specifies the basic distance unit.
This file contains a class that represents the geostatistical semivariogram method.
double m_angleTolerance
Attribute used to define the minimum and maximum angular direction.
virtual ~GeostatisticalMethodSemivariogram()
Virtual destructor.
double m_angleDirection
Attribute used to define the direction used to calculate the variogram.