MPAS-JEDI
ModelBiasCovarianceMPAS.h
Go to the documentation of this file.
1 /*
2  * (C) Copyright 2017 UCAR
3  *
4  * This software is licensed under the terms of the Apache Licence Version 2.0
5  * which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
6  */
7 
8 #ifndef MPASJEDI_MODELBIASCOVARIANCEMPAS_H_
9 #define MPASJEDI_MODELBIASCOVARIANCEMPAS_H_
10 
11 #include <ostream>
12 #include <string>
13 
14 #include "eckit/config/LocalConfiguration.h"
15 #include "eckit/memory/NonCopyable.h"
16 
17 #include "oops/util/ObjectCounter.h"
18 #include "oops/util/Printable.h"
19 
20 namespace mpas {
21  class ModelBiasMPAS;
22  class ModelBiasIncrementMPAS;
23  class GeometryMPAS;
24 
25 // -----------------------------------------------------------------------------
26 
27 class ModelBiasCovarianceMPAS : public util::Printable,
28  private eckit::NonCopyable,
29  private util::ObjectCounter<ModelBiasCovarianceMPAS> {
30  public:
31  static const std::string classname() {return "mpas::ModelBiasCovarianceMPAS";}
32 
33 /// Constructor, destructor
34  ModelBiasCovarianceMPAS(const eckit::Configuration & conf,
35  const GeometryMPAS &): conf_(conf) {}
37 
38 /// Linear algebra operators
39  void linearize(const ModelBiasMPAS &, const GeometryMPAS &) {}
41  ModelBiasIncrementMPAS &) const {}
43  ModelBiasIncrementMPAS &) const {}
45 
46  const eckit::Configuration & config() const {return conf_;}
47 
48  private:
49  void print(std::ostream & os) const {}
50  const eckit::LocalConfiguration conf_;
51 };
52 
53 // -----------------------------------------------------------------------------
54 
55 } // namespace mpas
56 
57 #endif // MPASJEDI_MODELBIASCOVARIANCEMPAS_H_
GeometryMPAS handles geometry for MPAS model.
Definition: GeometryMPAS.h:37
void print(std::ostream &os) const
ModelBiasCovarianceMPAS(const eckit::Configuration &conf, const GeometryMPAS &)
Constructor, destructor.
void randomize(ModelBiasIncrementMPAS &) const
const eckit::LocalConfiguration conf_
void linearize(const ModelBiasMPAS &, const GeometryMPAS &)
Linear algebra operators.
const eckit::Configuration & config() const
void inverseMultiply(const ModelBiasIncrementMPAS &, ModelBiasIncrementMPAS &) const
void multiply(const ModelBiasIncrementMPAS &, ModelBiasIncrementMPAS &) const
static const std::string classname()
Model error for the MPAS model.
Definition: ModelBiasMPAS.h:38