18 #include "eckit/config/Configuration.h" 26 #include "oops/util/DateTime.h" 27 #include "oops/util/Logger.h" 33 const util::DateTime &
time):
40 : geom_(other.geom_), vars_(other.vars_), time_(other.time_)
51 : geom_(other.geom_), vars_(other.vars_), time_(other.time_)
58 : geom_(new
GeometryQG(geom)), vars_(other.vars_), time_(other.time_)
65 : geom_(other.geom_), vars_(
vars), time_(other.time_)
124 const eckit::Configuration *
conf = &config;
171 const eckit::Configuration *
conf = &config;
172 util::DateTime * dtp = &
time_;
178 const eckit::Configuration *
conf = &config;
179 util::DateTime * dtp = &
time_;
184 const eckit::Configuration *
conf = &config;
185 const util::DateTime * dtp = &
time_;
202 os << std::endl <<
" Resolution = " <<
nx <<
", " <<
ny 203 <<
", Fields = " << nf <<
", " << nb;
205 std::vector<double> zstat(3*nf);
207 for (
int jj = 0; jj < nf; ++jj) {
208 os << std::endl <<
" Min=" << zstat[3*jj]
209 <<
", Max=" << zstat[3*jj+1] <<
", RMS=" << zstat[3*jj+2];
221 if (nonlinear) ok = ok && (nb == 2);
232 std::vector<int> varlens(nf,
nl);
233 std::vector<double> values(nf*
nl);
GomQG class to handle local model values for QG model.
void read(const eckit::Configuration &)
void qg_field_interp_ad_f90(const F90flds &, const F90locs &, const F90vars *, const F90goms &)
double dot_product_with(const FieldsQG &) const
void qg_field_change_resol_f90(const F90flds &, const F90flds &)
void print(std::ostream &) const
void qg_field_self_mul_f90(const F90flds &, const double &)
void getValuesAD(const LocationsQG &, const oops::Variables &, const GomQG &)
void qg_field_add_incr_f90(const F90flds &, const F90flds &)
void qg_field_analytic_init_f90(const F90flds &, const F90geom &, const eckit::Configuration *const *, util::DateTime *const *)
void qg_field_axpy_f90(const F90flds &, const double &, const F90flds &)
Class to represent a FieldSet for the QG model.
subroutine, public copy(self, rhs)
void dirac(const eckit::Configuration &)
void write(const eckit::Configuration &) const
void qg_field_field_to_ug_f90(const F90flds &, const int &, const int &)
void field_to_ug(oops::UnstructuredGrid &, const int &) const
void getValuesTL(const LocationsQG &, const oops::Variables &, GomQG &) const
void qg_field_field_from_ug_f90(const F90flds &, const int &)
FieldsQG(const GeometryQG &, const oops::Variables &, const util::DateTime &)
void qg_field_random_f90(const F90flds &)
void qg_field_self_add_f90(const F90flds &, const F90flds &)
void add(const FieldsQG &)
bool isForModel(const bool &) const
void schur_product_with(const FieldsQG &)
FieldsQG & operator+=(const FieldsQG &)
const int * toFortran() const
const oops::Variables & toOopsVariables() const
void changeResolution(const FieldsQG &)
void qg_field_dirac_f90(const F90flds &, const eckit::Configuration *const *)
void axpy(const double &, const FieldsQG &)
void qg_field_ug_coord_f90(const F90flds &, const int &, const int &)
void qg_field_dot_prod_f90(const F90flds &, const F90flds &, double &)
void qg_field_gpnorm_f90(const F90flds &, const int &, double &)
void qg_field_delete_f90(F90flds &)
void ug_coord(oops::UnstructuredGrid &, const int &) const
void field_from_ug(const oops::UnstructuredGrid &)
oops::GridPoint getPoint(const GeometryQGIterator &) const
void qg_field_diff_incr_f90(const F90flds &, const F90flds &, const F90flds &)
void qg_field_read_file_f90(const F90flds &, const eckit::Configuration *const *, util::DateTime *const *)
void qg_field_sizes_f90(const F90flds &, int &, int &, int &, int &, int &)
GeometryQG handles geometry for QG model.
void getValues(const LocationsQG &, const oops::Variables &, GomQG &) const
void qg_field_create_f90(F90flds &, const F90geom &, const F90vars *)
LocationsQG class to handle locations for QG model.
void qg_field_write_file_f90(const F90flds &, const eckit::Configuration *const *, const util::DateTime *const *)
void qg_field_interp_tl_f90(const F90flds &, const F90locs &, const F90vars *, const F90goms &)
const util::DateTime & time() const
void qg_field_getpoint_f90(const F90flds &, const F90iter &, const int &, double &)
FieldsQG & operator-=(const FieldsQG &)
void qg_field_zero_f90(const F90flds &)
void qg_field_rms_f90(const F90flds &, double &)
void diff(const FieldsQG &, const FieldsQG &)
boost::shared_ptr< const GeometryQG > geom_
FieldsQG & operator=(const FieldsQG &)
void analytic_init(const eckit::Configuration &, const GeometryQG &)
void qg_field_self_sub_f90(const F90flds &, const F90flds &)
The namespace for the qg model.
void qg_field_copy_f90(const F90flds &, const F90flds &)
void qg_field_self_schur_f90(const F90flds &, const F90flds &)
FieldsQG & operator*=(const double &)