FV3 Bundle
LinearObsOperator.cc
Go to the documentation of this file.
1 /*
2  * (C) Copyright 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 
9 
11 
12 namespace ufo {
13 
14 // -----------------------------------------------------------------------------
15 
16 LinearObsOperator::LinearObsOperator(const ioda::ObsSpace & os, const eckit::Configuration & conf)
17  : oper_(LinearObsOperatorFactory::create(os, conf))
18 {}
19 
20 // -----------------------------------------------------------------------------
21 
23 
24 // -----------------------------------------------------------------------------
25 
26 void LinearObsOperator::setTrajectory(const GeoVaLs & gvals, const ObsBias & bias) {
27  oper_->setTrajectory(gvals, bias);
28 }
29 
30 // -----------------------------------------------------------------------------
31 
33  const ObsBiasIncrement & bias) const {
34  oper_->simulateObsTL(gvals, yy, bias);
35 }
36 
37 // -----------------------------------------------------------------------------
38 
40  ObsBiasIncrement & bias) const {
41  oper_->simulateObsAD(gvals, yy, bias);
42 }
43 
44 // -----------------------------------------------------------------------------
45 
47  return oper_->variables();
48 }
49 
50 // -----------------------------------------------------------------------------
51 
52 void LinearObsOperator::print(std::ostream & os) const {
53  os << *oper_;
54 }
55 
56 // -----------------------------------------------------------------------------
57 
58 } // namespace ufo
const oops::Variables & variables() const
Operator input required from Model.
ObsVector class to handle vectors in observation space for IODA.
void print(std::ostream &) const
LinearObsOperator(const ioda::ObsSpace &, const eckit::Configuration &)
Definition: conf.py:1
void simulateObsTL(const GeoVaLs &, ioda::ObsVector &, const ObsBiasIncrement &) const
subroutine, public create(self, c_conf)
Wrapper around ObsHelpQG, mostly to hide the factory.
GeoVaLs: geophysical values at locations.
boost::scoped_ptr< LinearObsOperatorBase > oper_
void setTrajectory(const GeoVaLs &, const ObsBias &)
Obs Operator.
Class to handle observation bias parameters.
void simulateObsAD(GeoVaLs &, const ioda::ObsVector &, ObsBiasIncrement &) const