IODA
ObsLocGC99.h
Go to the documentation of this file.
1 /*
2  * (C) Copyright 2020 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 CORE_OBSLOCGC99_H_
9 #define CORE_OBSLOCGC99_H_
10 
11 #include <ostream>
12 #include <string>
13 #include <vector>
14 #include <boost/noncopyable.hpp>
15 
16 #include "eckit/config/Configuration.h"
17 #include "oops/util/DateTime.h"
18 #include "oops/util/Printable.h"
19 
20 #include "ioda/IodaTrait.h"
21 
22 // Forward declarations
23 namespace ioda {
24  class ObsVector;
25 
26 /// ObsLocalization matrix for IODA model.
27 
28 // -----------------------------------------------------------------------------
29 class ObsLocGC99: public util::Printable {
30  public:
31  static const std::string classname() {return "ioda::ObsLocGC99";}
32 
33  ObsLocGC99(const eckit::Configuration &, const ObsSpace &);
34  ~ObsLocGC99();
35  void multiply(ObsVector &) const;
36 
37  private:
38  void print(std::ostream &) const;
39  const ObsSpace & obsdb_;
40  const double rscale_;
41 };
42 // -----------------------------------------------------------------------------
43 } // namespace ioda
44 
45 #endif // CORE_OBSLOCGC99_H_
ioda::ObsLocGC99
ObsLocalization matrix for IODA model.
Definition: ObsLocGC99.h:29
ioda::ObsLocGC99::classname
static const std::string classname()
Definition: ObsLocGC99.h:31
ioda::ObsLocGC99::rscale_
const double rscale_
Definition: ObsLocGC99.h:40
ioda::ObsLocGC99::print
void print(std::ostream &) const
Definition: ObsLocGC99.cc:58
ioda::ObsLocGC99::multiply
void multiply(ObsVector &) const
Definition: ObsLocGC99.cc:36
ioda
Definition: IodaUtils.cc:13
ioda::ObsVector
ObsVector class to handle vectors in observation space for IODA.
Definition: src/ObsVector.h:34
ioda::ObsLocGC99::~ObsLocGC99
~ObsLocGC99()
Definition: ObsLocGC99.cc:32
ioda::ObsLocGC99::obsdb_
const ObsSpace & obsdb_
Definition: ObsLocGC99.h:39
ioda::ObsLocGC99::ObsLocGC99
ObsLocGC99(const eckit::Configuration &, const ObsSpace &)
Definition: ObsLocGC99.cc:24
ioda::ObsSpace
Observation Space View.
Definition: src/ObsSpace.h:35