Go to the documentation of this file.
12 #ifndef QG_MODEL_OBSVECQG_H_
13 #define QG_MODEL_OBSVECQG_H_
15 #include <Eigen/Dense>
19 #include "oops/util/ObjectCounter.h"
20 #include "oops/util/Printable.h"
22 #include "oops/qg/QgFortran.h"
27 template<
typename DATATYPE>
34 private util::ObjectCounter<ObsVecQG> {
36 static const std::string
classname() {
return "qg::ObsVecQG";}
39 const std::string & name =
"",
const bool fail =
true);
60 unsigned int nobs()
const;
65 void save(
const std::string &)
const;
66 void read(
const std::string &);
69 void print(std::ostream &)
const;
78 #endif // QG_MODEL_OBSVECQG_H_
void read(const std::string &)
double dot_product_with(const ObsVecQG &) const
The namespace for the qg model.
void print(std::ostream &) const
const ObsSpaceQG & obsdb_
void mask(const ObsDataQG< int > &)
Data in observation space.
unsigned int nobs() const
ObsVecQG(const ObsSpaceQG &, const std::string &name="", const bool fail=true)
void axpy(const double &, const ObsVecQG &)
ObsVecQG & operator+=(const ObsVecQG &)
Eigen::VectorXd packEigen() const
void save(const std::string &) const
ObsVecQG & operator*=(const double &)
ObsVecQG & operator/=(const ObsVecQG &)
ObsVecQG class to handle vectors in observation space for QG model.
static const std::string classname()
const int & toFortran() const
ObsVecQG & operator=(const ObsVecQG &)
ObsVecQG & operator-=(const ObsVecQG &)