UFO
AnalyticInit.cc
Go to the documentation of this file.
1
/*
2
* (C) Copyright 2020-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
#include "
ufo/AnalyticInit.h
"
9
10
#include "eckit/config/Configuration.h"
11
12
#include "oops/util/Logger.h"
13
14
#include "ufo/GeoVaLs.h"
15
#include "ufo/Locations.h"
16
17
namespace
ufo
{
18
19
// -----------------------------------------------------------------------------
20
/// \brief Constructor for tests
21
AnalyticInit::AnalyticInit
(
const
eckit::Configuration & config) : config_(config)
22
{ }
23
// -----------------------------------------------------------------------------
24
/*! \brief Analytic initialization for GeoVaLs
25
*
26
* \details This ufo::AnalyticInit constructor was introduced in May, 2018 for use with
27
* the interpolation test. If "analytic_init" is not specified in the
28
* configuration then this does nothing. If "analytic_init" **is** specified, then
29
* the values are replaced by values computed directly from one of several idealized
30
* analytic states.
31
*
32
* \date May, 2018: Created (M. Miesch, JCSDA)
33
* \date June, 2018: Split off from constructor into independent method
34
* (M. Miesch, JCSDA)
35
*/
36
void
AnalyticInit::fillGeoVaLs
(
const
Locations
& locs,
GeoVaLs
& geovals)
const
37
{
38
oops::Log::trace() <<
"AnalyticInit::analytic_init starting"
<< std::endl;
39
if
(
config_
.has(
"analytic_init"
)) {
40
ufo_geovals_analytic_init_f90
(geovals.
toFortran
(), locs.
toFortran
(),
config_
);
41
}
42
oops::Log::trace() <<
"AnalyticInit::analytic_init done"
<< std::endl;
43
}
44
// -----------------------------------------------------------------------------
45
}
// namespace ufo
ufo::Locations
Locations class to handle locations for UFO.
Definition:
src/ufo/Locations.h:32
ufo::ufo_geovals_analytic_init_f90
void ufo_geovals_analytic_init_f90(F90goms &, const F90locs &, const eckit::Configuration &)
ufo::AnalyticInit::config_
const eckit::LocalConfiguration config_
Definition:
AnalyticInit.h:29
ufo
Definition:
RunCRTM.h:27
ufo::GeoVaLs::toFortran
int & toFortran()
Definition:
src/ufo/GeoVaLs.h:80
AnalyticInit.h
ufo::GeoVaLs
GeoVaLs: geophysical values at locations.
Definition:
src/ufo/GeoVaLs.h:39
ufo::AnalyticInit::fillGeoVaLs
void fillGeoVaLs(const Locations &, GeoVaLs &) const
Analytic initialization for GeoVaLs.
Definition:
AnalyticInit.cc:36
ufo::Locations::toFortran
int toFortran() const
Definition:
src/ufo/Locations.h:45
ufo::AnalyticInit::AnalyticInit
AnalyticInit(const eckit::Configuration &)
Constructor for tests.
Definition:
AnalyticInit.cc:21
fv3-bundle
ufo
src
ufo
AnalyticInit.cc
Generated on Sat Oct 24 2020 19:14:54 for UFO by
1.8.18