11 #ifndef OOPS_GENERIC_OBSERRORDIAG_H_    12 #define OOPS_GENERIC_OBSERRORDIAG_H_    17 #include <boost/scoped_ptr.hpp>    20 #include "oops/util/Logger.h"    31 template<
typename MODEL>
    56   void print(std::ostream &) 
const;
    64 template<
typename MODEL>
    66   : stddev_(), inverseVariance_()
    69   const std::string col = config.getString(
"obserror");
    76   Log::trace() << 
"ObsErrorDiag:ObsErrorDiag constructed" << std::endl;
    81 template<
typename MODEL>
    83   Log::trace() << 
"ObsErrorDiag:~ObsErrorDiag destructed" << std::endl;
    88 template<
typename MODEL>
    91   *res /= *inverseVariance_;
    97 template<
typename MODEL>
   100   *res *= *inverseVariance_;
   106 template<
typename MODEL>
   114 template<
typename MODEL>
   116   os << 
"ObsErrorDiag<MODEL>::print not implemeted yet";
   124 #endif  // OOPS_GENERIC_OBSERRORDIAG_H_ double getRMSE() const
Get mean error for Jo table. 
 
boost::scoped_ptr< ObsVector_ > inverseVariance_
 
MODEL::ObsSpace ObsSpace_
 
MODEL::ObsVector ObsVector_
 
ObsErrorDiag(const ObsSpace_ &, const eckit::Configuration &)
 
The namespace for the main oops code. 
 
void randomize(ObsVector_ &) const
Generate random perturbation. 
 
void print(std::ostream &) const
 
ObsVector_ * inverseMultiply(const ObsVector_ &) const
Multiply a Departure by . 
 
Diagonal observation error covariance matrix. 
 
ObsVector_ * multiply(const ObsVector_ &) const
Multiply a Departure by . 
 
Base class for observation error covariance matrices. 
 
void linearize(const ObsVector_ &)
Linearize and reset for inner loop (nothing in this simple case) 
 
boost::scoped_ptr< ObsVector_ > stddev_