OOPS
GetValuesQG.h
Go to the documentation of this file.
1
/*
2
* (C) Copyright 2019-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 QG_MODEL_GETVALUESQG_H_
9
#define QG_MODEL_GETVALUESQG_H_
10
11
#include <memory>
12
#include <ostream>
13
#include <string>
14
15
#include "oops/util/DateTime.h"
16
#include "oops/util/ObjectCounter.h"
17
#include "oops/util/Printable.h"
18
19
#include "oops/qg/LocationsQG.h"
20
#include "oops/qg/QgFortran.h"
21
22
namespace
qg
{
23
class
GomQG;
24
class
GeometryQG;
25
class
StateQG;
26
27
/// \brief used for getting state values at observation locations
28
// -----------------------------------------------------------------------------
29
class
GetValuesQG
:
public
util::Printable,
30
private
util::ObjectCounter<GetValuesQG> {
31
public
:
32
static
const
std::string
classname
() {
return
"qg::GetValuesQG"
;}
33
34
/// \brief saves all locations \p locs to use during filling GeoVaLs
35
GetValuesQG
(
const
GeometryQG
&,
const
LocationsQG
& locs);
36
~GetValuesQG
() {}
37
38
/// \brief fills in \p geovals for all observations in the timeframe (\p t1, \p t2],
39
/// \p geovals are interpolated trilinearly from \p state at the nearest gridpoints
40
void
fillGeoVaLs
(
const
StateQG
&,
const
util::DateTime & t1,
41
const
util::DateTime & t2,
GomQG
&)
const
;
42
43
private
:
44
void
print
(std::ostream &)
const
;
45
LocationsQG
locs_
;
46
};
47
// -----------------------------------------------------------------------------
48
49
}
// namespace qg
50
51
#endif // QG_MODEL_GETVALUESQG_H_
qg
The namespace for the qg model.
Definition:
qg/model/AnalyticInit.cc:13
qg::StateQG
QG model state.
Definition:
StateQG.h:42
qg::GetValuesQG
used for getting state values at observation locations
Definition:
GetValuesQG.h:30
qg::GetValuesQG::fillGeoVaLs
void fillGeoVaLs(const StateQG &, const util::DateTime &t1, const util::DateTime &t2, GomQG &) const
fills in geovals for all observations in the timeframe (t1, t2], geovals are interpolated trilinearly...
Definition:
GetValuesQG.cc:30
qg::LocationsQG
LocationsQG class to handle locations for QG model.
Definition:
LocationsQG.h:36
qg::GetValuesQG::print
void print(std::ostream &) const
Definition:
GetValuesQG.cc:36
qg::GomQG
GomQG class to handle local model values for QG model.
Definition:
GomQG.h:33
qg::GetValuesQG::locs_
LocationsQG locs_
Definition:
GetValuesQG.h:45
qg::GetValuesQG::classname
static const std::string classname()
Definition:
GetValuesQG.h:32
qg::GeometryQG
GeometryQG handles geometry for QG model.
Definition:
GeometryQG.h:54
qg::GetValuesQG::~GetValuesQG
~GetValuesQG()
Definition:
GetValuesQG.h:36
qg::GetValuesQG::GetValuesQG
GetValuesQG(const GeometryQG &, const LocationsQG &locs)
saves all locations locs to use during filling GeoVaLs
Definition:
GetValuesQG.cc:25
fv3-bundle
oops
qg
model
GetValuesQG.h
Generated on Sun Oct 25 2020 12:42:57 for OOPS by
1.8.18