IODA Bundle
lorenz95::ObsTable Class Reference

A Simple Observation Data Handler. More...

#include <ObsTable.h>

Inheritance diagram for lorenz95::ObsTable:
[legend]
Collaboration diagram for lorenz95::ObsTable:
[legend]

Public Member Functions

 ObsTable (const eckit::Configuration &, const eckit::mpi::Comm &, const util::DateTime &, const util::DateTime &, const eckit::mpi::Comm &)
 
 ~ObsTable ()
 
void save () const
 
void putdb (const std::string &, const std::vector< int > &) const
 
void putdb (const std::string &, const std::vector< float > &) const
 
void putdb (const std::string &, const std::vector< double > &) const
 
void getdb (const std::string &, std::vector< int > &) const
 
void getdb (const std::string &, std::vector< float > &) const
 
void getdb (const std::string &, std::vector< double > &) const
 
bool has (const std::string &col) const
 
void generateDistribution (const eckit::Configuration &)
 
void random (std::vector< double > &) const
 
unsigned int nobs () const
 
const std::vector< double > & locations () const
 
const std::vector< util::DateTime > & times () const
 
const oops::Variablesobsvariables () const
 
const std::string & obsname () const
 
ObsIterator begin () const
 iterator to the first observation More...
 
ObsIterator end () const
 iterator to the observation past-the-last More...
 
- Public Member Functions inherited from oops::ObsSpaceBase
 ObsSpaceBase (const eckit::Configuration &, const eckit::mpi::Comm &, const util::DateTime &, const util::DateTime &)
 
virtual ~ObsSpaceBase ()
 
const util::DateTime & windowStart () const
 Access information. More...
 
const util::DateTime & windowEnd () const
 
int64_t getSeed () const
 

Static Public Member Functions

static const std::string classname ()
 

Private Member Functions

void print (std::ostream &) const
 
void otOpen (const std::string &)
 
void otWrite (const std::string &) const
 

Private Attributes

const util::DateTime winbgn_
 
const util::DateTime winend_
 
std::vector< util::DateTime > times_
 
std::vector< double > locations_
 
std::map< std::string, std::vector< double > > data_
 
const eckit::mpi::Comm & comm_
 
const oops::Variables obsvars_
 
std::string nameIn_
 
std::string nameOut_
 
const std::string obsname_ = "Lorenz 95"
 

Detailed Description

A Simple Observation Data Handler.

ObsTable defines a simple observation handler that mimicks the interfaces required from ODB.

Definition at line 40 of file ObsTable.h.

Constructor & Destructor Documentation

◆ ObsTable()

lorenz95::ObsTable::ObsTable ( const eckit::Configuration &  config,
const eckit::mpi::Comm &  comm,
const util::DateTime &  bgn,
const util::DateTime &  end,
const eckit::mpi::Comm &  timeComm 
)

Definition at line 42 of file ObsTable.cc.

Here is the call graph for this function:

◆ ~ObsTable()

lorenz95::ObsTable::~ObsTable ( )

Definition at line 69 of file ObsTable.cc.

Member Function Documentation

◆ begin()

ObsIterator lorenz95::ObsTable::begin ( ) const

iterator to the first observation

Definition at line 347 of file ObsTable.cc.

◆ classname()

static const std::string lorenz95::ObsTable::classname ( )
inlinestatic

Definition at line 43 of file ObsTable.h.

◆ end()

ObsIterator lorenz95::ObsTable::end ( ) const

iterator to the observation past-the-last

Definition at line 351 of file ObsTable.cc.

◆ generateDistribution()

void lorenz95::ObsTable::generateDistribution ( const eckit::Configuration &  config)

Definition at line 179 of file ObsTable.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getdb() [1/3]

void lorenz95::ObsTable::getdb ( const std::string &  col,
std::vector< double > &  vec 
) const

Definition at line 165 of file ObsTable.cc.

Here is the call graph for this function:

◆ getdb() [2/3]

void lorenz95::ObsTable::getdb ( const std::string &  col,
std::vector< float > &  vec 
) const

Definition at line 148 of file ObsTable.cc.

Here is the call graph for this function:

◆ getdb() [3/3]

void lorenz95::ObsTable::getdb ( const std::string &  col,
std::vector< int > &  vec 
) const

Definition at line 131 of file ObsTable.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ has()

bool lorenz95::ObsTable::has ( const std::string &  col) const

Definition at line 81 of file ObsTable.cc.

◆ locations()

const std::vector<double>& lorenz95::ObsTable::locations ( ) const
inline

Definition at line 62 of file ObsTable.h.

Here is the caller graph for this function:

◆ nobs()

unsigned int lorenz95::ObsTable::nobs ( ) const
inline

Definition at line 61 of file ObsTable.h.

Here is the caller graph for this function:

◆ obsname()

const std::string& lorenz95::ObsTable::obsname ( ) const
inline

Definition at line 65 of file ObsTable.h.

◆ obsvariables()

const oops::Variables& lorenz95::ObsTable::obsvariables ( ) const
inline

Definition at line 64 of file ObsTable.h.

◆ otOpen()

void lorenz95::ObsTable::otOpen ( const std::string &  filename)
private

Definition at line 240 of file ObsTable.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ otWrite()

void lorenz95::ObsTable::otWrite ( const std::string &  filename) const
private

Definition at line 291 of file ObsTable.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ print()

void lorenz95::ObsTable::print ( std::ostream &  os) const
private

Definition at line 356 of file ObsTable.cc.

◆ putdb() [1/3]

void lorenz95::ObsTable::putdb ( const std::string &  col,
const std::vector< double > &  vec 
) const

Definition at line 119 of file ObsTable.cc.

Here is the call graph for this function:

◆ putdb() [2/3]

void lorenz95::ObsTable::putdb ( const std::string &  col,
const std::vector< float > &  vec 
) const

Definition at line 103 of file ObsTable.cc.

Here is the call graph for this function:

◆ putdb() [3/3]

void lorenz95::ObsTable::putdb ( const std::string &  col,
const std::vector< int > &  vec 
) const

Definition at line 87 of file ObsTable.cc.

Here is the caller graph for this function:

◆ random()

void lorenz95::ObsTable::random ( std::vector< double > &  data) const

Definition at line 231 of file ObsTable.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ save()

void lorenz95::ObsTable::save ( ) const

Definition at line 75 of file ObsTable.cc.

Here is the call graph for this function:

◆ times()

const std::vector<util::DateTime>& lorenz95::ObsTable::times ( ) const
inline

Definition at line 63 of file ObsTable.h.

Here is the caller graph for this function:

Member Data Documentation

◆ comm_

const eckit::mpi::Comm& lorenz95::ObsTable::comm_
private

Definition at line 84 of file ObsTable.h.

◆ data_

std::map<std::string, std::vector<double> > lorenz95::ObsTable::data_
mutableprivate

Definition at line 82 of file ObsTable.h.

◆ locations_

std::vector<double> lorenz95::ObsTable::locations_
private

Definition at line 81 of file ObsTable.h.

◆ nameIn_

std::string lorenz95::ObsTable::nameIn_
private

Definition at line 86 of file ObsTable.h.

◆ nameOut_

std::string lorenz95::ObsTable::nameOut_
private

Definition at line 87 of file ObsTable.h.

◆ obsname_

const std::string lorenz95::ObsTable::obsname_ = "Lorenz 95"
private

Definition at line 88 of file ObsTable.h.

◆ obsvars_

const oops::Variables lorenz95::ObsTable::obsvars_
private

Definition at line 85 of file ObsTable.h.

◆ times_

std::vector<util::DateTime> lorenz95::ObsTable::times_
private

Definition at line 80 of file ObsTable.h.

◆ winbgn_

const util::DateTime lorenz95::ObsTable::winbgn_
private

Definition at line 77 of file ObsTable.h.

◆ winend_

const util::DateTime lorenz95::ObsTable::winend_
private

Definition at line 78 of file ObsTable.h.


The documentation for this class was generated from the following files: