FV3-JEDI
Geometry.interface.h
Go to the documentation of this file.
1 /*
2  * (C) Copyright 2017 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 FV3JEDI_GEOMETRY_GEOMETRY_INTERFACE_H_
9 #define FV3JEDI_GEOMETRY_GEOMETRY_INTERFACE_H_
10 
11 #include "atlas/field.h"
12 #include "atlas/functionspace.h"
13 
14 #include "eckit/mpi/Comm.h"
15 
18 
19 // Forward declarations
20 namespace eckit {
21  class Configuration;
22 }
23 
24 namespace util {
25  class DateTime;
26  class Duration;
27 }
28 
29 namespace fv3jedi {
30 
31 extern "C" {
32 
33  void fv3jedi_geom_initialize_f90(const eckit::Configuration * const *, const eckit::mpi::Comm *);
34  void fv3jedi_geom_setup_f90(F90geom &, const eckit::Configuration * const *,
35  const eckit::mpi::Comm *, const FieldsMetadata *);
37  atlas::field::FieldSetImpl *);
39  atlas::functionspace::FunctionSpaceImpl *);
41  atlas::field::FieldSetImpl *);
43  void fv3jedi_geom_print_f90(const F90geom &, int &);
45  void fv3jedi_geom_start_end_f90(const F90geom &, int &, int &, int &, int &,
46  int &);
47  void fv3jedi_geom_verticalCoord_f90(const F90geom &, double &, int &, double &);
48 
49 } // extern "C"
50 // -----------------------------------------------------------------------------
51 
52 } // namespace fv3jedi
53 #endif // FV3JEDI_GEOMETRY_GEOMETRY_INTERFACE_H_
fv3jedi::fv3jedi_geom_set_atlas_lonlat_f90
void fv3jedi_geom_set_atlas_lonlat_f90(const F90geom &, atlas::field::FieldSetImpl *)
fv3jedi::fv3jedi_geom_clone_f90
void fv3jedi_geom_clone_f90(F90geom &, const F90geom &, const FieldsMetadata *)
fv3jedi::fv3jedi_geom_initialize_f90
void fv3jedi_geom_initialize_f90(const eckit::Configuration *const *, const eckit::mpi::Comm *)
fv3jedi::F90geom
int F90geom
Definition: interface.h:24
eckit
Definition: FieldsMetadata.h:25
FieldsMetadata.h
interface.h
fv3jedi::fv3jedi_geom_verticalCoord_f90
void fv3jedi_geom_verticalCoord_f90(const F90geom &, double &, int &, double &)
fv3jedi::fv3jedi_geom_setup_f90
void fv3jedi_geom_setup_f90(F90geom &, const eckit::Configuration *const *, const eckit::mpi::Comm *, const FieldsMetadata *)
fv3jedi::fv3jedi_geom_start_end_f90
void fv3jedi_geom_start_end_f90(const F90geom &, int &, int &, int &, int &, int &)
fv3jedi::fv3jedi_geom_delete_f90
void fv3jedi_geom_delete_f90(F90geom &)
fv3jedi::fv3jedi_geom_set_atlas_functionspace_pointer_f90
void fv3jedi_geom_set_atlas_functionspace_pointer_f90(const F90geom &, atlas::functionspace::FunctionSpaceImpl *)
fv3jedi
Configuration files should be formatted as e.g.
Definition: ErrorCovariance.cc:20
fv3jedi::fv3jedi_geom_fill_atlas_fieldset_f90
void fv3jedi_geom_fill_atlas_fieldset_f90(const F90geom &, atlas::field::FieldSetImpl *)
fv3jedi::FieldsMetadata
Definition: FieldsMetadata.h:159
util
Definition: Geometry.interface.h:24
fv3jedi::fv3jedi_geom_print_f90
void fv3jedi_geom_print_f90(const F90geom &, int &)