queso-0.51.1
VectorSequence.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------Bl-
2 //--------------------------------------------------------------------------
3 //
4 // QUESO - a library to support the Quantification of Uncertainty
5 // for Estimation, Simulation and Optimization
6 //
7 // Copyright (C) 2008,2009,2010,2011,2012 The PECOS Development Team
8 //
9 // This library is free software; you can redistribute it and/or
10 // modify it under the terms of the Version 2.1 GNU Lesser General
11 // Public License as published by the Free Software Foundation.
12 //
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // Lesser General Public License for more details.
17 //
18 // You should have received a copy of the GNU Lesser General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc. 51 Franklin Street, Fifth Floor,
21 // Boston, MA 02110-1301 USA
22 //
23 //-----------------------------------------------------------------------el-
24 
25 #ifndef UQ_VECTOR_SEQUENCE_H
26 #define UQ_VECTOR_SEQUENCE_H
27 
28 #undef UQ_CODE_HAS_MONITORS
29 
30 #include <queso/VectorSpace.h>
31 #include <queso/BoxSubset.h>
32 #include <queso/ScalarSequence.h>
33 #include <queso/SequenceStatisticalOptions.h>
34 #include <queso/ArrayOfOneDGrids.h>
35 #include <queso/ArrayOfOneDTables.h>
36 #include <queso/2dArrayOfStuff.h>
37 #include <sys/time.h>
38 #include <fstream>
39 
40 namespace QUESO {
41 
53 template <class V, class M>
55 {
56 public:
58 
61  unsigned int subSequenceSize,
62  const std::string& name);
64  virtual ~BaseVectorSequence();
66 
68 
69  virtual unsigned int subSequenceSize () const = 0;
71 
73 
74  unsigned int unifiedSequenceSize () const;
75 
77  unsigned int vectorSizeLocal () const;
78 
80  unsigned int vectorSizeGlobal () const;
81 
83  const VectorSpace<V,M>& vectorSpace () const;
84 
86 
88  const std::string& name () const;
89 
91  void setName (const std::string& newName);
92 
94  void clear ();
95 
97  const V& subMinPlain () const;
98 
100  const V& unifiedMinPlain () const;
101 
103  const V& subMaxPlain () const;
104 
106  const V& unifiedMaxPlain () const;
107 
109  const V& subMeanPlain () const;
110 
112  const V& unifiedMeanPlain () const;
113 
115  const V& subMedianPlain () const;
116 
118  const V& unifiedMedianPlain () const;
119 
121  const V& subSampleVariancePlain () const;
122 
124  const V& unifiedSampleVariancePlain () const;
125 
127  const BoxSubset<V,M>& subBoxPlain () const;
128 
130  const BoxSubset<V,M>& unifiedBoxPlain () const;
131 
133 
137  void deleteStoredVectors ();
138 
140 
141  void append (const BaseVectorSequence<V,M>& src,
142  unsigned int initialPos,
143  unsigned int numPos);
145  double subPositionsOfMaximum (const ScalarSequence<double>& subCorrespondingScalarValues,
147 
149 
159  double unifiedPositionsOfMaximum (const ScalarSequence<double>& subCorrespondingScalarValues,
161 
162 
164 
165  virtual void resizeSequence (unsigned int newSubSequenceSize) = 0;
166 
168 
169  virtual void resetValues (unsigned int initialPos, unsigned int numPos) = 0;
170 
172 
173  virtual void erasePositions (unsigned int initialPos, unsigned int numPos) = 0;
174 
175 
177  virtual void getPositionValues (unsigned int posId, V& vec) const = 0;
178 
180 
181  virtual void setPositionValues (unsigned int posId, const V& vec) = 0;
182 
184 
185  void setGaussian (const V& meanVec, const V& stdDevVec);
186 
188 
189  void setUniform (const V& aVec, const V& bVec );
190 
192  virtual void subMeanExtra (unsigned int initialPos,
193  unsigned int numPos,
194  V& meanVec) const = 0;
195 
197  virtual void unifiedMeanExtra (unsigned int initialPos,
198  unsigned int numPos,
199  V& unifiedMeanVec) const = 0;
201  virtual void subMedianExtra (unsigned int initialPos,
202  unsigned int numPos,
203  V& medianVec) const = 0;
205  virtual void unifiedMedianExtra (unsigned int initialPos,
206  unsigned int localNumPos,
207  V& unifiedMedianVec) const = 0;
209  virtual void subSampleVarianceExtra (unsigned int initialPos,
210  unsigned int numPos,
211  const V& meanVec,
212  V& samVec) const = 0;
214  virtual void unifiedSampleVarianceExtra (unsigned int initialPos,
215  unsigned int numPos,
216  const V& unifiedMeanVec,
217  V& unifiedSamVec) const = 0;
219  virtual void subPopulationVariance (unsigned int initialPos,
220  unsigned int numPos,
221  const V& meanVec,
222  V& popVec) const = 0;
224  virtual void unifiedPopulationVariance (unsigned int initialPos,
225  unsigned int numPos,
226  const V& unifiedMeanVec,
227  V& unifiedPopVec) const = 0;
228 
230 
234  virtual void autoCovariance (unsigned int initialPos,
235  unsigned int numPos,
236  const V& meanVec,
237  unsigned int lag,
238  V& covVec) const = 0;
240  virtual void autoCorrViaDef (unsigned int initialPos,
241  unsigned int numPos,
242  unsigned int lag,
243  V& corrVec) const = 0;
245  virtual void autoCorrViaFft (unsigned int initialPos,
246  unsigned int numPos,
247  const std::vector<unsigned int>& lags,
248  std::vector<V*>& corrVecs) const = 0;
250  virtual void autoCorrViaFft (unsigned int initialPos,
251  unsigned int numPos,
252  unsigned int numSum,
253  V& autoCorrsSumVec) const = 0;
254 
255 
257  virtual void subMinMaxExtra (unsigned int initialPos,
258  unsigned int numPos,
259  V& minVec,
260  V& maxVec) const = 0;
262  virtual void unifiedMinMaxExtra (unsigned int initialPos,
263  unsigned int numPos,
264  V& unifiedMinVec,
265  V& unifiedMaxVec) const = 0;
267 
272  virtual void subHistogram (unsigned int initialPos,
273  const V& minVec,
274  const V& maxVec,
275  std::vector<V*>& centersForAllBins,
276  std::vector<V*>& quanttsForAllBins) const = 0;
278  virtual void unifiedHistogram (unsigned int initialPos,
279  const V& unifiedMinVec,
280  const V& unifiedMaxVec,
281  std::vector<V*>& unifiedCentersForAllBins,
282  std::vector<V*>& unifiedQuanttsForAllBins) const = 0;
283 
285  virtual void subInterQuantileRange (unsigned int initialPos,
286  V& iqrVec) const = 0;
288  virtual void unifiedInterQuantileRange (unsigned int initialPos,
289  V& unifiedIqrVec) const = 0;
290 
292 
300  virtual void subScalesForKde (unsigned int initialPos,
301  const V& iqrVec,
302  unsigned int kdeDimension,
303  V& scaleVec) const = 0;
305  virtual void unifiedScalesForKde (unsigned int initialPos,
306  const V& unifiedIqrVec,
307  unsigned int kdeDimension,
308  V& unifiedScaleVec) const = 0;
310 
314  virtual void subGaussian1dKde (unsigned int initialPos,
315  const V& scaleVec,
316  const std::vector<V*>& evaluationParamVecs,
317  std::vector<V*>& densityVecs) const = 0;
319  virtual void unifiedGaussian1dKde (unsigned int initialPos,
320  const V& unifiedScaleVec,
321  const std::vector<V*>& unifiedEvaluationParamVecs,
322  std::vector<V*>& unifiedDensityVecs) const = 0;
324  virtual void subWriteContents (unsigned int initialPos,
325  unsigned int numPos,
326  const std::string& fileName,
327  const std::string& fileType,
328  const std::set<unsigned int>& allowedSubEnvIds) const = 0;
330  virtual void subWriteContents (unsigned int initialPos,
331  unsigned int numPos,
332  std::ofstream& ofsvar,
333  const std::string& fileType) const = 0;
335  virtual void unifiedWriteContents (const std::string& fileName,
336  const std::string& fileType) const = 0;
338  virtual void unifiedReadContents (const std::string& fileName,
339  const std::string& fileType,
340  const unsigned int subSequenceSize) = 0;
342  virtual void select (const std::vector<unsigned int>& idsOfUniquePositions) = 0;
343 
345  virtual void filter (unsigned int initialPos,
346  unsigned int spacing) = 0;
348  void computeFilterParams (std::ofstream* passedOfs,
349  unsigned int & initialPos,
350  unsigned int & spacing);
352  virtual double estimateConvBrooksGelman (unsigned int initialPos,
353  unsigned int numPos) const = 0;
355  virtual void extractScalarSeq (unsigned int initialPos,
356  unsigned int spacing,
357  unsigned int numPos,
358  unsigned int paramId,
359  ScalarSequence<double>& scalarSeq) const = 0;
360 
361 #ifdef QUESO_COMPUTES_EXTRA_POST_PROCESSING_STATISTICS
362  virtual void subUniformlySampledCdf (const V& numEvaluationPointsVec,
363  ArrayOfOneDGrids <V,M>& cdfGrids,
364  ArrayOfOneDTables<V,M>& cdfValues) const = 0;
365  virtual void unifiedUniformlySampledCdf (const V& numEvaluationPointsVec,
366  ArrayOfOneDGrids <V,M>& unifiedCdfGrids,
367  ArrayOfOneDTables<V,M>& unifieddfValues) const = 0;
368  virtual void bmm (unsigned int initialPos,
369  unsigned int batchLength,
370  V& bmmVec) const = 0;
371  virtual void fftForward (unsigned int initialPos,
372  unsigned int fftSize,
373  unsigned int paramId,
374  std::vector<std::complex<double> >& fftResult) const = 0;
375 //virtual void fftInverse (unsigned int fftSize) = 0;
376  virtual void psd (unsigned int initialPos,
377  unsigned int numBlocks,
378  double hopSizeRatio,
379  unsigned int paramId,
380  std::vector<double>& psdResult) const = 0;
381  virtual void psdAtZero (unsigned int initialPos,
382  unsigned int numBlocks,
383  double hopSizeRatio,
384  V& psdVec) const = 0;
385  virtual void geweke (unsigned int initialPos,
386  double ratioNa,
387  double ratioNb,
388  V& gewVec) const = 0;
389  virtual void meanStacc (unsigned int initialPos,
390  V& meanStaccVec) const = 0;
391  virtual void subCdfStacc (unsigned int initialPos,
392  const std::vector<V*>& evalPositionsVecs, std::vector<V*>& cdfStaccVecs) const = 0;
393 #endif //QUESO_COMPUTES_EXTRA_POST_PROCESSING_STATISTICS
394 
395 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
396  void computeHistCdfstaccKde (const SequenceStatisticalOptions& statisticalOptions,
397  std::ofstream* passedOfs);
398 
399  void computeStatistics (const SequenceStatisticalOptions& statisticalOptions,
400  std::ofstream* passedOfs);
401 #endif //QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
402 
403 #ifdef UQ_ALSO_COMPUTE_MDFS_WITHOUT_KDE
404  virtual void subUniformlySampledMdf (const V& numEvaluationPointsVec,
405  ArrayOfOneDGrids <V,M>& mdfGrids,
406  ArrayOfOneDTables<V,M>& mdfValues) const = 0;
407 #endif //UQ_ALSO_COMPUTE_MDFS_WITHOUT_KDE
408 
410 
411 protected:
413 
414  void copy (const BaseVectorSequence<V,M>& src);
415 
417  virtual void extractRawData (unsigned int initialPos,
418  unsigned int spacing,
419  unsigned int numPos,
420  unsigned int paramId,
421  std::vector<double>& rawData) const = 0;
422 
425  std::string m_name;
426 
428  mutable V* m_subMinPlain;
429  mutable V* m_unifiedMinPlain;
430  mutable V* m_subMaxPlain;
431  mutable V* m_unifiedMaxPlain;
432  mutable V* m_subMeanPlain;
433  mutable V* m_unifiedMeanPlain;
434  mutable V* m_subMedianPlain;
440 
441 
442 #ifdef UQ_CODE_HAS_MONITORS
443  virtual void subMeanMonitorAlloc (unsigned int numberOfMonitorPositions) = 0;
444  virtual void subMeanInter0MonitorAlloc (unsigned int numberOfMonitorPositions) = 0;
445  virtual void unifiedMeanMonitorAlloc (unsigned int numberOfMonitorPositions) = 0;
446 
447  virtual void subMeanMonitorRun (unsigned int monitorPosition,
448  V& subMeanVec,
449  V& subMeanCltStd) = 0;
450  virtual void subMeanInter0MonitorRun (unsigned int monitorPosition,
451  V& subMeanInter0Mean,
452  V& subMeanInter0Clt95,
453  V& subMeanInter0Empirical90,
454  V& subMeanInter0Min,
455  V& subMeanInter0Max) = 0;
456  virtual void unifiedMeanMonitorRun (unsigned int monitorPosition,
457  V& unifiedMeanVec,
458  V& unifiedMeanCltStd) = 0;
459 
460  virtual void subMeanMonitorStore (unsigned int i,
461  unsigned int monitorPosition,
462  const V& subMeanVec,
463  const V& subMeanCltStd) = 0;
464  virtual void subMeanInter0MonitorStore (unsigned int i,
465  unsigned int monitorPosition,
466  const V& subMeanInter0Mean,
467  const V& subMeanInter0Clt95,
468  const V& subMeanInter0Empirical90,
469  const V& subMeanInter0Min,
470  const V& subMeanInter0Max) = 0;
471  virtual void unifiedMeanMonitorStore (unsigned int i,
472  unsigned int monitorPosition,
473  V& unifiedMeanVec,
474  V& unifiedMeanCltStd) = 0;
475 
476  virtual void subMeanMonitorWrite (std::ofstream& ofs) = 0;
477  virtual void subMeanInter0MonitorWrite (std::ofstream& ofs) = 0;
478  virtual void unifiedMeanMonitorWrite (std::ofstream& ofs) = 0;
479 
480  virtual void subMeanMonitorFree () = 0;
481  virtual void subMeanInter0MonitorFree () = 0;
482  virtual void unifiedMeanMonitorFree () = 0;
483 
484  void computeMeanEvolution (const SequenceStatisticalOptions& statisticalOptions,
485  std::ofstream* passedOfs);
486 #endif
487 
488 #ifdef QUESO_COMPUTES_EXTRA_POST_PROCESSING_STATISTICS
489  void computeBMM (const SequenceStatisticalOptions& statisticalOptions,
490  const std::vector<unsigned int>& initialPosForStatistics,
491  std::ofstream* passedOfs);
492  void computeFFT (const SequenceStatisticalOptions& statisticalOptions,
493  const std::vector<unsigned int>& initialPosForStatistics,
494  std::ofstream* passedOfs);
495  void computePSD (const SequenceStatisticalOptions& statisticalOptions,
496  const std::vector<unsigned int>& initialPosForStatistics,
497  std::ofstream* passedOfs);
498  void computePSDAtZero (const SequenceStatisticalOptions& statisticalOptions,
499  const std::vector<unsigned int>& initialPosForStatistics,
500  std::ofstream* passedOfs);
501  void computeGeweke (const SequenceStatisticalOptions& statisticalOptions,
502  const std::vector<unsigned int>& initialPosForStatistics,
503  std::ofstream* passedOfs);
504  void computeMeanStacc (const SequenceStatisticalOptions& statisticalOptions,
505  const std::vector<unsigned int>& initialPosForStatistics,
506  std::ofstream* passedOfs);
507 #endif
508 
509 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
510  void computeMeanVars (const SequenceStatisticalOptions& statisticalOptions,
511  std::ofstream* passedOfs,
512  V* subMeanPtr,
513  V* subMedianPtr,
514  V* subSampleVarPtr,
515  V* subPopulVarPtr);
516  void computeAutoCorrViaDef (const SequenceStatisticalOptions& statisticalOptions,
517  const std::vector<unsigned int>& initialPosForStatistics,
518  const std::vector<unsigned int>& lagsForCorrs,
519  std::ofstream* passedOfs);
520  void computeAutoCorrViaFFT (const SequenceStatisticalOptions& statisticalOptions,
521  const std::vector<unsigned int>& initialPosForStatistics,
522  const std::vector<unsigned int>& lagsForCorrs,
523  std::ofstream* passedOfs);
524  void computeCovCorrMatrices (const SequenceStatisticalOptions& statisticalOptions,
525  std::ofstream* passedOfs);
526 #endif
527 
528 };
529 
530 // --------------------------------------------------
531 // Additional methods --------------------------------
532 // (outside class declaration) ----------------------
533 //---------------------------------------------------
534 template <class P_V, class P_M, class Q_V, class Q_M>
535 void
537  const BaseVectorSequence<P_V,P_M>& subPSeq,
538  const BaseVectorSequence<Q_V,Q_M>& subQSeq,
539  unsigned int subNumSamples,
540  P_M& pqCovMatrix,
541  P_M& pqCorrMatrix);
542 
543 } // End namespace QUESO
544 
545 #endif // UQ_VECTOR_SEQUENCE_H
virtual void unifiedGaussian1dKde(unsigned int initialPos, const V &unifiedScaleVec, const std::vector< V * > &unifiedEvaluationParamVecs, std::vector< V * > &unifiedDensityVecs) const =0
Gaussian kernel for the KDE estimate of the unified sequence. See template specialization.
void clear()
Reset the values and the size of the sequence of vectors.
virtual void extractRawData(unsigned int initialPos, unsigned int spacing, unsigned int numPos, unsigned int paramId, std::vector< double > &rawData) const =0
Extracts the raw data. See template specialization.
Class to accommodate arrays of one-dimensional grid.
void append(const BaseVectorSequence< V, M > &src, unsigned int initialPos, unsigned int numPos)
Appends the vector src to this vector.
void deleteStoredVectors()
Deletes all the stored vectors.
virtual void subScalesForKde(unsigned int initialPos, const V &iqrVec, unsigned int kdeDimension, V &scaleVec) const =0
Selects the scales (bandwidth, scaleVec) for the kernel density estimation, considering only the sub-...
virtual void subMedianExtra(unsigned int initialPos, unsigned int numPos, V &medianVec) const =0
Finds the median value of the sub-sequence, considering numPos positions starting at position initial...
void setGaussian(const V &meanVec, const V &stdDevVec)
Sets the values of the sequence as a Gaussian distribution of mean given by meanVec and standard devi...
virtual void unifiedMeanExtra(unsigned int initialPos, unsigned int numPos, V &unifiedMeanVec) const =0
Finds the mean value of the unified sequence of numPos positions starting at position initialPos...
const V & unifiedSampleVariancePlain() const
Finds the variance of a sample of the unified sequence.
virtual void subSampleVarianceExtra(unsigned int initialPos, unsigned int numPos, const V &meanVec, V &samVec) const =0
Finds the sample variance of the sub-sequence, considering numPos positions starting at position init...
virtual void unifiedMedianExtra(unsigned int initialPos, unsigned int localNumPos, V &unifiedMedianVec) const =0
Finds the median value of the unified sequence, considering numPos positions starting at position ini...
BoxSubset< V, M > * m_subBoxPlain
virtual ~BaseVectorSequence()
Destructor.
const V & subMaxPlain() const
Finds the maximum value of the sub-sequence.
const V & unifiedMaxPlain() const
Finds the maximum value of the unified sequence.
double unifiedPositionsOfMaximum(const ScalarSequence< double > &subCorrespondingScalarValues, BaseVectorSequence< V, M > &unifiedPositionsOfMaximum)
Finds the positions where the maximum element occurs in the unified sequence.
virtual void unifiedScalesForKde(unsigned int initialPos, const V &unifiedIqrVec, unsigned int kdeDimension, V &unifiedScaleVec) const =0
Selects the scales (bandwidth) for the kernel density estimation, considering the unified sequence...
virtual void erasePositions(unsigned int initialPos, unsigned int numPos)=0
Erase numPos positions in the sequence, starting at position initialPos.
const VectorSpace< V, M > & m_vectorSpace
virtual double estimateConvBrooksGelman(unsigned int initialPos, unsigned int numPos) const =0
Estimates convergence rate using Brooks &amp; Gelman method. See template specialization.
virtual void unifiedMinMaxExtra(unsigned int initialPos, unsigned int numPos, V &unifiedMinVec, V &unifiedMaxVec) const =0
Finds the minimum and the maximum values of the unified sequence, considering numPos positions starti...
virtual void unifiedHistogram(unsigned int initialPos, const V &unifiedMinVec, const V &unifiedMaxVec, std::vector< V * > &unifiedCentersForAllBins, std::vector< V * > &unifiedQuanttsForAllBins) const =0
Calculates the histogram of the unified sequence. See template specialization.
virtual void unifiedReadContents(const std::string &fileName, const std::string &fileType, const unsigned int subSequenceSize)=0
Reads info of the unified sequence from a file. See template specialization.
This (virtual) class sets up the environment underlying the use of the QUESO library by an executable...
Definition: Environment.h:187
const V & unifiedMinPlain() const
Finds the minimum value of the unified sequence.
void setUniform(const V &aVec, const V &bVec)
Sets the values of the sequence as a uniform distribution between the values given by vectors aVec an...
void computeFilterParams(std::ofstream *passedOfs, unsigned int &initialPos, unsigned int &spacing)
Computes the filtering parameters spacing for the sequence of vectors.
virtual void setPositionValues(unsigned int posId, const V &vec)=0
Set the values in vec at position posId of the sequence. See template specialization.
virtual void unifiedSampleVarianceExtra(unsigned int initialPos, unsigned int numPos, const V &unifiedMeanVec, V &unifiedSamVec) const =0
Finds the sample variance of the unified sequence, considering numPos positions starting at position ...
const BaseEnvironment & m_env
void ComputeCovCorrMatricesBetweenVectorSequences(const BaseVectorSequence< P_V, P_M > &subPSeq, const BaseVectorSequence< Q_V, Q_M > &subQSeq, unsigned int subNumSamples, P_M &pqCovMatrix, P_M &pqCorrMatrix)
virtual void resizeSequence(unsigned int newSubSequenceSize)=0
Resize the sequence. See template specialization.
virtual void subMinMaxExtra(unsigned int initialPos, unsigned int numPos, V &minVec, V &maxVec) const =0
Finds the minimum and the maximum values of the sub-sequence, considering numPos positions starting a...
const V & subMedianPlain() const
Finds the median value of the sub-sequence.
const std::string & name() const
Access to protected attribute m_name: name of the sequence of vectors.
const BoxSubset< V, M > & unifiedBoxPlain() const
Finds a box subset of the unified-sequence (given by the min and max values of the unified sequence c...
virtual void subWriteContents(unsigned int initialPos, unsigned int numPos, const std::string &fileName, const std::string &fileType, const std::set< unsigned int > &allowedSubEnvIds) const =0
Writes info of the sub-sequence to a file. See template specialization.
const V & unifiedMedianPlain() const
Finds the median value of the unified sequence.
virtual void unifiedPopulationVariance(unsigned int initialPos, unsigned int numPos, const V &unifiedMeanVec, V &unifiedPopVec) const =0
Finds the population variance of the unified-sequence, considering numPos positions starting at posit...
virtual void extractScalarSeq(unsigned int initialPos, unsigned int spacing, unsigned int numPos, unsigned int paramId, ScalarSequence< double > &scalarSeq) const =0
Extracts a sequence of scalars of size numPos, starting at position initialPos, given spacing spacing...
Base class for handling vector and array samples (sequence of vectors or arrays). ...
const BoxSubset< V, M > & subBoxPlain() const
Finds a box subset of the sub-sequence (given by its min and max values calculated via subMinPlain an...
virtual unsigned int subSequenceSize() const =0
Size of the sub-sequence of vectors. See template specialization.
virtual void subInterQuantileRange(unsigned int initialPos, V &iqrVec) const =0
Returns the interquartile range of the values in the sub-sequence. See template specialization.
virtual void subGaussian1dKde(unsigned int initialPos, const V &scaleVec, const std::vector< V * > &evaluationParamVecs, std::vector< V * > &densityVecs) const =0
Gaussian kernel for the KDE estimate of the sub-sequence. See template specialization.
double subPositionsOfMaximum(const ScalarSequence< double > &subCorrespondingScalarValues, BaseVectorSequence< V, M > &subPositionsOfMaximum)
Finds the positions where the maximum element occurs in the sub-sequence.
unsigned int vectorSizeLocal() const
Local dimension (size) of the vector space.
virtual void filter(unsigned int initialPos, unsigned int spacing)=0
Filters positions in the sequence of vectors, starting at initialPos, and with spacing given by spaci...
virtual void subPopulationVariance(unsigned int initialPos, unsigned int numPos, const V &meanVec, V &popVec) const =0
Finds the population variance of the sub-sequence, considering numPos positions starting at position ...
const V & subSampleVariancePlain() const
Finds the variance of a sample of the sub-sequence.
virtual void subHistogram(unsigned int initialPos, const V &minVec, const V &maxVec, std::vector< V * > &centersForAllBins, std::vector< V * > &quanttsForAllBins) const =0
Calculates the histogram of the sub-sequence. See template specialization.
unsigned int vectorSizeGlobal() const
Global dimension (size) of the vector space.
virtual void autoCorrViaDef(unsigned int initialPos, unsigned int numPos, unsigned int lag, V &corrVec) const =0
Calculates autocorrelation via definition. See template specialization.
Class representing a subset of a vector space shaped like a hypercube.
Definition: BoxSubset.h:41
const VectorSpace< V, M > & vectorSpace() const
Vector space; access to protected attribute VectorSpace&lt;V,M&gt;&amp; m_vectorSpace.
Class to accommodate arrays of one-dimensional tables.
virtual void resetValues(unsigned int initialPos, unsigned int numPos)=0
Reset the values of the sequence. See template specialization.
A class representing a vector space.
Definition: VectorSet.h:46
void copy(const BaseVectorSequence< V, M > &src)
Copies vector sequence src to this.
BaseVectorSequence(const VectorSpace< V, M > &vectorSpace, unsigned int subSequenceSize, const std::string &name)
Default constructor.
const V & subMinPlain() const
Finds the minimum value of the sub-sequence.
virtual void select(const std::vector< unsigned int > &idsOfUniquePositions)=0
Select positions in the sequence of vectors. See template specialization.
const V & subMeanPlain() const
Finds the mean value of the sub-sequence.
virtual void unifiedWriteContents(const std::string &fileName, const std::string &fileType) const =0
Writes info of the unified sequence to a file. See template specialization.
const V & unifiedMeanPlain() const
Finds the mean value of the unified sequence.
BoxSubset< V, M > * m_unifiedBoxPlain
virtual void subMeanExtra(unsigned int initialPos, unsigned int numPos, V &meanVec) const =0
Finds the mean value of the sub-sequence, considering numPos positions starting at position initialPo...
unsigned int unifiedSequenceSize() const
Calculates the size of the unified sequence of vectors.
virtual void unifiedInterQuantileRange(unsigned int initialPos, V &unifiedIqrVec) const =0
Returns the interquartile range of the values in the unified sequence. See template specialization...
void setName(const std::string &newName)
Changes the name of the sequence of vectors.
virtual void getPositionValues(unsigned int posId, V &vec) const =0
Gets the values of the sequence at position posId and stores them at vec. See template specialization...
virtual void autoCovariance(unsigned int initialPos, unsigned int numPos, const V &meanVec, unsigned int lag, V &covVec) const =0
Calculates the autocovariance. See template specialization.
virtual void autoCorrViaFft(unsigned int initialPos, unsigned int numPos, const std::vector< unsigned int > &lags, std::vector< V * > &corrVecs) const =0
Calculates autocorrelation via Fast Fourier transforms (FFT). See template specialization.

Generated on Thu Apr 23 2015 19:26:14 for queso-0.51.1 by  doxygen 1.8.5