FV3 Bundle
ObsCheck.cc
Go to the documentation of this file.
1 /*
2  * (C) Copyright 2017-2018 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 #include "ufo/ObsCheck.h"
9 
10 #include "eckit/config/Configuration.h"
11 
12 #include "ioda/ObsSpace.h"
13 #include "ioda/ObsVector.h"
14 
15 #include "oops/util/Logger.h"
16 
17 #include "ufo/Fortran.h"
18 #include "ufo/FortranObsCheck.h"
19 #include "ufo/GeoVaLs.h"
20 
21 namespace ufo {
22 
23 // -----------------------------------------------------------------------------
24 
26  const util::DateTime & t1, const util::DateTime & t2) {
27  oops::Log::trace() << "ObsCheck contructor starting " << t1 << " " << t2 << std::endl;
28  const util::DateTime * p1 = &t1;
29  const util::DateTime * p2 = &t2;
30 // ufo_obsdb_getobscheck_f90(obsdb, var.toFortran(), &p1, &p2, keyObsCheck_);
31  oops::Log::trace() << "ObsCheck contructor key = " << keyObsCheck_ << std::endl;
32 }
33 
34 // -----------------------------------------------------------------------------
35 
36 ObsCheck::ObsCheck(const eckit::Configuration & config) {
37  oops::Log::trace() << "ObsCheck contructor config starting" << std::endl;
38  const eckit::Configuration * conf = &config;
40  oops::Log::trace() << "ObsCheck contructor config key = " << keyObsCheck_ << std::endl;
41 }
42 
43 // -----------------------------------------------------------------------------
44 
46  oops::Log::trace() << "ObsCheck ObsSpace starting" << std::endl;
47  oops::Log::trace() << "ObsCheck ObsSpace end " << std::endl;
48 }
49 
50 // -----------------------------------------------------------------------------
51 
54  oops::Log::trace() << "ObsCheck destructed" << std::endl;
55 }
56 
57 // -----------------------------------------------------------------------------
58 
59 void ObsCheck::print(std::ostream & os) const {
60  os << "ObsCheck::print not implemented";
61 }
62 
63 // -----------------------------------------------------------------------------
64 
65 void ObsCheck::postFilter(const GeoVaLs & gv, const ioda::ObsVector & ov,
66  const ioda::ObsSpace & os) const {
67  oops::Log::trace() << "ObsCheck postFilter starting" << std::endl;
68 // ufo_postFilter_f90(gv.toFortran(), ov.toFortran(), os);
69  oops::Log::trace() << "ObsCheck postFilter end" << std::endl;
70 }
71 
72 // -----------------------------------------------------------------------------
73 
74 void ObsCheck::priorFilter(const ioda::ObsSpace & os) const {
75  oops::Log::trace() << "ObsCheck priorFilter starting" << std::endl;
76 // ufo_priorFilter_f90(os);
77  oops::Log::trace() << "ObsCheck priorFilter end" << std::endl;
78 }
79 
80 // -----------------------------------------------------------------------------
81 } // namespace ufo
ObsVector class to handle vectors in observation space for IODA.
void ufo_obscheck_delete_f90(F90ocheck &)
Definition: conf.py:1
void print(std::ostream &) const
Definition: ObsCheck.cc:59
real, parameter t2
void priorFilter(const ioda::ObsSpace &) const
Definition: ObsCheck.cc:74
Wrapper around ObsHelpQG, mostly to hide the factory.
GeoVaLs: geophysical values at locations.
real, parameter t1
void postFilter(const GeoVaLs &, const ioda::ObsVector &, const ioda::ObsSpace &) const
Definition: ObsCheck.cc:65
ObsCheck(const ioda::ObsSpace &, const oops::Variables &, const util::DateTime &, const util::DateTime &)
Definition: ObsCheck.cc:25
void ufo_obscheck_setup_f90(F90ocheck &, const eckit::Configuration *const *)
Interface to Fortran UFO routines.
real, parameter p2
Definition: sw_core_nlm.F90:47
real, parameter p1
Definition: sw_core_nlm.F90:46