FV3-JEDI
VarChaColdStartWinds.cc
Go to the documentation of this file.
1 /*
2  * (C) Copyright 2017-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 <ostream>
9 #include <string>
10 
11 #include "eckit/config/Configuration.h"
12 
13 #include "oops/interface/VariableChange.h"
14 #include "oops/util/Logger.h"
15 #include "oops/util/Timer.h"
16 
18 #include "fv3jedi/State/State.h"
22 
23 namespace fv3jedi {
24 // -------------------------------------------------------------------------------------------------
25 static oops::VariableChangeMaker<Traits, oops::VariableChange<Traits, VarChaColdStartWinds>>
26  makerVarChaColdStartWinds_("ColdStartWinds");
27 // -------------------------------------------------------------------------------------------------
29  const eckit::Configuration & conf) {
30  util::Timer timer(classname(), "VarChaColdStartWinds");
31  oops::Log::trace() << classname() << " constructor starting" << std::endl;
32  const eckit::Configuration * configc = &conf;
34  oops::Log::trace() << classname() << " constructor done" << std::endl;
35 }
36 // -------------------------------------------------------------------------------------------------
38  util::Timer timer(classname(), "~VarChaColdStartWinds");
39  oops::Log::trace() << classname() << " destructor starting" << std::endl;
41  oops::Log::trace() << classname() << " destructor done" << std::endl;
42 }
43 // -------------------------------------------------------------------------------------------------
44 void VarChaColdStartWinds::changeVar(const State & xin, State & xout) const {
45  util::Timer timer(classname(), "changeVar");
46  oops::Log::trace() << classname() << " changeVar starting" << std::endl;
48  xout.validTime() = xin.validTime();
49  oops::Log::trace() << classname() << " changeVar done" << std::endl;
50 }
51 // -------------------------------------------------------------------------------------------------
52 void VarChaColdStartWinds::changeVarInverse(const State & xin, State & xout) const {
53  util::Timer timer(classname(), "changeVarInverse");
54  oops::Log::trace() << classname() << " changeVarInverse starting" << std::endl;
55  xout = xin; // No inverse required
56  xout.validTime() = xin.validTime();
57  oops::Log::trace() << classname() << " changeVarInverse done" << std::endl;
58 }
59 // -------------------------------------------------------------------------------------------------
60 void VarChaColdStartWinds::print(std::ostream & os) const {
61  os << classname() << " variable change";
62 }
63 // -------------------------------------------------------------------------------------------------
64 } // namespace fv3jedi
Traits.h
fv3jedi::VarChaColdStartWinds::changeVar
void changeVar(const State &, State &) const
Definition: VarChaColdStartWinds.cc:44
fv3jedi::fv3jedi_vc_coldstartwinds_create_f90
void fv3jedi_vc_coldstartwinds_create_f90(const F90vc_CSW &, const F90geom &, const eckit::Configuration *const *)
Utilities.h
fv3jedi::VarChaColdStartWinds::print
void print(std::ostream &) const override
Definition: VarChaColdStartWinds.cc:60
fv3jedi::VarChaColdStartWinds::classname
static const std::string classname()
Definition: VarChaColdStartWinds.h:25
fv3jedi::Geometry::toFortran
F90geom & toFortran()
Definition: Geometry.h:53
fv3jedi::makerVarChaColdStartWinds_
static oops::VariableChangeMaker< Traits, oops::VariableChange< Traits, VarChaColdStartWinds > > makerVarChaColdStartWinds_("ColdStartWinds")
Geometry.h
VarChaColdStartWinds.h
fv3jedi::VarChaColdStartWinds::VarChaColdStartWinds
VarChaColdStartWinds(const Geometry &, const eckit::Configuration &)
Definition: VarChaColdStartWinds.cc:28
fv3jedi::VarChaColdStartWinds::keyFtn_
F90vc_CSW keyFtn_
Definition: VarChaColdStartWinds.h:32
fv3jedi::fv3jedi_vc_coldstartwinds_delete_f90
void fv3jedi_vc_coldstartwinds_delete_f90(F90vc_CSW &)
fv3jedi::State::toFortran
int & toFortran()
Definition: State.h:87
fv3jedi::State::validTime
const util::DateTime & validTime() const
Definition: State.h:83
fv3jedi::fv3jedi_vc_coldstartwinds_changevar_f90
void fv3jedi_vc_coldstartwinds_changevar_f90(const F90vc_CSW &, const F90state &, const F90state &)
fv3jedi::Geometry
Geometry handles geometry for FV3JEDI model.
Definition: Geometry.h:41
fv3jedi::State
Definition: State.h:45
fv3jedi::VarChaColdStartWinds::changeVarInverse
void changeVarInverse(const State &, State &) const
Definition: VarChaColdStartWinds.cc:52
fv3jedi::VarChaColdStartWinds::~VarChaColdStartWinds
~VarChaColdStartWinds()
Definition: VarChaColdStartWinds.cc:37
fv3jedi
Configuration files should be formatted as e.g.
Definition: ErrorCovariance.cc:20
State.h