Skip to content

Namespace emulator::impl

Namespace List > emulator > impl

Classes

Type Name
struct AtmCouplingIndices
Coupling field indices for atmosphere component.
class AtmFieldDataProvider
Adapter implementing FieldDataProvider forAtmFieldManager .
class AtmFieldManager
Field storage container for atmosphere emulator.

Public Functions

Type Name
void export_atm_fields (double * export_data, int ncols, int nfields, const AtmCouplingIndices & idx, const AtmFieldManager & fields)
Export fields from field manager to MCT buffer.
void import_atm_fields (const double * import_data, int ncols, int nfields, const AtmCouplingIndices & idx, AtmFieldManager & fields)
Import fields from MCT buffer to field manager.
bool read_atm_initial_conditions (const std::string & filename, int num_global_cols, int num_local_cols, const std::vector< int > & col_gids, const std::vector< double > & lat, AtmFieldManager & fields, const std::vector< std::string > & required_vars, Logger & logger, bool is_root)
Read initial conditions from a NetCDF file.

Public Functions Documentation

function export_atm_fields

Export fields from field manager to MCT buffer.

void emulator::impl::export_atm_fields (
    double * export_data,
    int ncols,
    int nfields,
    const AtmCouplingIndices & idx,
    const AtmFieldManager & fields
) 

Export fields from local field manager to MCT buffer.

Copies data from the AtmFieldManager vectors to the MCT export buffer (a2x fields).

Parameters:

  • export_data Pointer to MCT export buffer (column-major layout)
  • ncols Number of local columns
  • nfields Number of export fields
  • idx Coupling indices
  • fields Field manager with data to export

function import_atm_fields

Import fields from MCT buffer to field manager.

void emulator::impl::import_atm_fields (
    const double * import_data,
    int ncols,
    int nfields,
    const AtmCouplingIndices & idx,
    AtmFieldManager & fields
) 

Import fields from MCT buffer to local field manager.

MCT aVect layout is column-major (Fortran): rAttr(nfields, lsize) In C this translates to: data[col * nfields + field_idx]

Copies data from the MCT import buffer (x2a fields) to the corresponding vectors in the AtmFieldManager.

Parameters:

  • import_data Pointer to MCT import buffer (column-major layout)
  • ncols Number of local columns
  • nfields Number of import fields
  • idx Coupling indices
  • fields Field manager to populate

Note:

MCT uses column-major (Fortran) layout: data[col * nfields + field_idx]


function read_atm_initial_conditions

Read initial conditions from a NetCDF file.

bool emulator::impl::read_atm_initial_conditions (
    const std::string & filename,
    int num_global_cols,
    int num_local_cols,
    const std::vector< int > & col_gids,
    const std::vector< double > & lat,
    AtmFieldManager & fields,
    const std::vector< std::string > & required_vars,
    Logger & logger,
    bool is_root
) 



The documentation for this class was generated from the following file components/emulator_comps/eatm/src/impl/atm_coupling.cpp