/usr/include/openturns/KrigingAlgorithm.hxx is in libopenturns-dev 1.3-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | // -*- C++ -*-
/**
* @file KrigingAlgorithm.hxx
* @brief The class building gaussian process regression
*
* Copyright (C) 2005-2014 Airbus-EDF-Phimeca
*
* This library is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* along with this library. If not, see <http://www.gnu.org/licenses/>.
*
* @author schueller
*/
#ifndef OPENTURNS_KRIGINGALGORITHM_HXX
#define OPENTURNS_KRIGINGALGORITHM_HXX
#include "MetaModelAlgorithm.hxx"
#include "Basis.hxx"
#include "CovarianceModel.hxx"
#include "BoundConstrainedAlgorithm.hxx"
#include "TriangularMatrix.hxx"
BEGIN_NAMESPACE_OPENTURNS
/**
* @class KrigingAlgorithm
*
* The class building chaos expansions
*/
class KrigingAlgorithm
: public MetaModelAlgorithm
{
CLASSNAME;
public:
/** Default constructor */
KrigingAlgorithm();
/** Constructor */
KrigingAlgorithm (const NumericalSample & inputSample,
const NumericalSample & outputSample,
const Basis & basis,
const CovarianceModel & covarianceModel);
/** Constructor */
KrigingAlgorithm (const NumericalSample & inputSample,
const Distribution & inputDistribution,
const NumericalSample & outputSample,
const Basis & basis,
const CovarianceModel & covarianceModel);
/** Virtual constructor */
virtual KrigingAlgorithm * clone() const;
/** String converter */
virtual String __repr__() const;
/** likelihood optimization algorithm */
void setOptimizer(const BoundConstrainedAlgorithm & optimizer);
BoundConstrainedAlgorithm getOptimizer() const;
/** Perform regression */
void run();
/** input transformation accessor */
void setInputTransformation(const NumericalMathFunction & inputTransformation);
NumericalMathFunction getInputTransformation() const;
/** conditional covariance model accessor */
CovarianceModel getConditionalCovarianceModel() const;
/** Sample accessors */
virtual NumericalSample getInputSample() const;
virtual NumericalSample getOutputSample() const;
/** result accessor */
virtual MetaModelResult getResult();
/** Method save() stores the object through the StorageManager */
virtual void save(Advocate & adv) const;
/** Method load() reloads the object from the StorageManager */
virtual void load(Advocate & adv);
protected:
NumericalPoint optimizeLikelihood();
NumericalScalar computeLogLikelihood(const NumericalPoint & theta) const;
friend class Factory<KrigingAlgorithm>;
private:
// The input data
NumericalSample inputSample_;
// Standardized version of the input data
NumericalSample normalizedInputSample_;
// Standardization funtion
NumericalMathFunction inputTransformation_;
// The associated output data
NumericalSample outputSample_;
// The basis used for the trend modeling
Basis basis_;
// The covariance model parametric family
CovarianceModel covarianceModel_;
// The member of the covariance model fitted to the data
CovarianceModel conditionalCovarianceModel_;
// The optimization algorithm used for the meta-parameters estimation
BoundConstrainedAlgorithm optimizer_;
Bool optimizerProvided_;
// Attributes used to exchange data between the different methods
// The current output index
mutable UnsignedLong outputIndex_;
// The coefficients of the current output conditional expectation part
mutable NumericalPoint beta_;
// The coefficients of the current output deterministic trend
mutable NumericalPoint gamma_;
// The current output Cholesky factor of the covariance matrix
// mutable TriangularMatrix C_;
// The current output Gram matrix
mutable Matrix F_;
/** Result */
MetaModelResult result_;
}; // class KrigingAlgorithm
END_NAMESPACE_OPENTURNS
#endif
|