1 /*! 2 * \file include/TFEL/Math/FactorizedKriging1D1D.hxx 3 * \brief 4 * \author Thomas Helfer 5 * \brief 18 mai 2010 6 * \copyright Copyright (C) 2006-2018 CEA/DEN, EDF R&D. All rights 7 * reserved. 8 * This project is publicly released under either the GNU GPL Licence 9 * or the CECILL-A licence. A copy of thoses licences are delivered 10 * with the sources of TFEL. CEA or EDF may also distribute this 11 * project under specific licensing conditions. 12 */ 13 14 #ifndef LIB_TFEL_MATH_FACTORIZEDKRIGING1D1D_HXX 15 #define LIB_TFEL_MATH_FACTORIZEDKRIGING1D1D_HXX 16 17 #include"TFEL/Config/TFELConfig.hxx" 18 #include"TFEL/Math/vector.hxx" 19 #include"TFEL/Math/Kriging/KrigingUtilities.hxx" 20 #include"TFEL/Math/FactorizedKriging.hxx" 21 #include"TFEL/Math/Kriging/KrigingPieceWiseLinearModel1D.hxx" 22 23 namespace tfel 24 { 25 26 namespace math 27 { 28 29 struct TFELMATHKRIGING_VISIBILITY_EXPORT FactorizedKriging1D1D 30 : private FactorizedKriging<1u,1u,double, 31 KrigingPieceWiseLinearModel1D<double>, 32 KrigingModelAdaptator<KrigingDefaultModel<1u,double>>>, 33 private KrigingUtilities 34 { 35 36 FactorizedKriging1D1D(const std::vector<double>&, 37 const std::vector<double>&, 38 const std::vector<double>&); 39 40 FactorizedKriging1D1D(const tfel::math::vector<double>&, 41 const tfel::math::vector<double>&, 42 const tfel::math::vector<double>&); 43 44 double operator()(const double, 45 const double) const; 46 47 ~FactorizedKriging1D1D(); 48 49 private: 50 51 //! a simple alias 52 using FK = FactorizedKriging<1u,1u,double, 53 KrigingPieceWiseLinearModel1D<double>, 54 KrigingModelAdaptator<KrigingDefaultModel<1u,double>>>; 55 //! normalisation coefficient 56 double a0; 57 //! normalisation coefficient 58 double b0; 59 //! normalisation coefficient 60 double a1; 61 //! normalisation coefficient 62 double b1; 63 64 }; // end of struct FactorizedKriging1D1D 65 66 } // end of namespace math 67 68 } // end of namespace tfel 69 70 #endif /* LIB_TFEL_MATH_FACTORIZEDKRIGING1D1D_HXX */ 71 72