OOPS
oops::ObsVector< OBS > Class Template Reference

#include <ObsSpace.h>

Public Member Functions

 ObsVector (const ObsSpace< OBS > &, const std::string name="", const bool fail=true)
 
 ObsVector (const ObsVector &)
 
 ObsVector (const ObsSpace< OBS > &, const ObsVector &)
 
 ~ObsVector ()
 
ObsVector_obsvector ()
 Interfacing. More...
 
const ObsVector_obsvector () const
 
ObsVectoroperator= (const ObsVector &)
 
ObsVectoroperator*= (const double &)
 
ObsVectoroperator+= (const ObsVector &)
 
ObsVectoroperator-= (const ObsVector &)
 
ObsVectoroperator*= (const ObsVector &)
 
ObsVectoroperator/= (const ObsVector &)
 
Eigen::VectorXd packEigen () const
 Pack into an Eigen vector (excluding vector elements that are masked out) More...
 
void zero ()
 
void axpy (const double &, const ObsVector &)
 
void invert ()
 
void random ()
 
double dot_product_with (const ObsVector &) const
 
double rms () const
 
void mask (const ObsDataVector< OBS, int > &)
 Mask out elements of the vector where the passed in flags are > 0. More...
 
void save (const std::string &) const
 
void read (const std::string &)
 
unsigned int nobs () const
 

Static Public Member Functions

static const std::string classname ()
 

Private Types

typedef OBS::ObsVector ObsVector_
 

Private Member Functions

void print (std::ostream &) const
 

Private Attributes

std::unique_ptr< ObsVector_data_
 
const eckit::mpi::Comm & commTime_
 

Detailed Description

template<typename OBS>
class oops::ObsVector< OBS >

Definition at line 36 of file oops/interface/ObsSpace.h.

Member Typedef Documentation

◆ ObsVector_

template<typename OBS >
typedef OBS::ObsVector oops::ObsVector< OBS >::ObsVector_
private

Definition at line 43 of file oops/interface/ObsVector.h.

Constructor & Destructor Documentation

◆ ObsVector() [1/3]

template<typename OBS >
oops::ObsVector< OBS >::ObsVector ( const ObsSpace< OBS > &  os,
const std::string  name = "",
const bool  fail = true 
)
explicit

Definition at line 91 of file oops/interface/ObsVector.h.

Here is the call graph for this function:

◆ ObsVector() [2/3]

template<typename OBS >
oops::ObsVector< OBS >::ObsVector ( const ObsVector< OBS > &  other)
explicit

Definition at line 102 of file oops/interface/ObsVector.h.

Here is the call graph for this function:

◆ ObsVector() [3/3]

template<typename OBS >
oops::ObsVector< OBS >::ObsVector ( const ObsSpace< OBS > &  os,
const ObsVector< OBS > &  other 
)

Definition at line 112 of file oops/interface/ObsVector.h.

Here is the call graph for this function:

◆ ~ObsVector()

template<typename OBS >
oops::ObsVector< OBS >::~ObsVector

Definition at line 124 of file oops/interface/ObsVector.h.

Member Function Documentation

◆ axpy()

template<typename OBS >
void oops::ObsVector< OBS >::axpy ( const double &  zz,
const ObsVector< OBS > &  rhs 
)

Definition at line 210 of file oops/interface/ObsVector.h.

◆ classname()

template<typename OBS >
static const std::string oops::ObsVector< OBS >::classname ( )
inlinestatic

Definition at line 46 of file oops/interface/ObsVector.h.

Here is the caller graph for this function:

◆ dot_product_with()

template<typename OBS >
double oops::ObsVector< OBS >::dot_product_with ( const ObsVector< OBS > &  other) const

Definition at line 240 of file oops/interface/ObsVector.h.

◆ invert()

template<typename OBS >
void oops::ObsVector< OBS >::invert

Definition at line 220 of file oops/interface/ObsVector.h.

Here is the caller graph for this function:

◆ mask()

template<typename OBS >
void oops::ObsVector< OBS >::mask ( const ObsDataVector< OBS, int > &  qc)

Mask out elements of the vector where the passed in flags are > 0.

Definition at line 252 of file oops/interface/ObsVector.h.

Here is the call graph for this function:

◆ nobs()

template<typename OBS >
unsigned int oops::ObsVector< OBS >::nobs

Definition at line 279 of file oops/interface/ObsVector.h.

Here is the caller graph for this function:

◆ obsvector() [1/2]

template<typename OBS >
ObsVector_& oops::ObsVector< OBS >::obsvector ( )
inline

Interfacing.

Definition at line 54 of file oops/interface/ObsVector.h.

Here is the caller graph for this function:

◆ obsvector() [2/2]

template<typename OBS >
const ObsVector_& oops::ObsVector< OBS >::obsvector ( ) const
inline

Definition at line 55 of file oops/interface/ObsVector.h.

◆ operator*=() [1/2]

template<typename OBS >
ObsVector< OBS > & oops::ObsVector< OBS >::operator*= ( const double &  zz)

Definition at line 145 of file oops/interface/ObsVector.h.

◆ operator*=() [2/2]

template<typename OBS >
ObsVector< OBS > & oops::ObsVector< OBS >::operator*= ( const ObsVector< OBS > &  rhs)

Definition at line 178 of file oops/interface/ObsVector.h.

◆ operator+=()

template<typename OBS >
ObsVector< OBS > & oops::ObsVector< OBS >::operator+= ( const ObsVector< OBS > &  rhs)

Definition at line 156 of file oops/interface/ObsVector.h.

◆ operator-=()

template<typename OBS >
ObsVector< OBS > & oops::ObsVector< OBS >::operator-= ( const ObsVector< OBS > &  rhs)

Definition at line 167 of file oops/interface/ObsVector.h.

◆ operator/=()

template<typename OBS >
ObsVector< OBS > & oops::ObsVector< OBS >::operator/= ( const ObsVector< OBS > &  rhs)

Definition at line 189 of file oops/interface/ObsVector.h.

◆ operator=()

template<typename OBS >
ObsVector< OBS > & oops::ObsVector< OBS >::operator= ( const ObsVector< OBS > &  rhs)

Definition at line 134 of file oops/interface/ObsVector.h.

◆ packEigen()

template<typename OBS >
Eigen::VectorXd oops::ObsVector< OBS >::packEigen

Pack into an Eigen vector (excluding vector elements that are masked out)

Definition at line 308 of file oops/interface/ObsVector.h.

Here is the caller graph for this function:

◆ print()

template<typename OBS >
void oops::ObsVector< OBS >::print ( std::ostream &  os) const
private

Definition at line 286 of file oops/interface/ObsVector.h.

◆ random()

template<typename OBS >
void oops::ObsVector< OBS >::random

Definition at line 230 of file oops/interface/ObsVector.h.

Here is the caller graph for this function:

◆ read()

template<typename OBS >
void oops::ObsVector< OBS >::read ( const std::string &  name)

Definition at line 320 of file oops/interface/ObsVector.h.

◆ rms()

template<typename OBS >
double oops::ObsVector< OBS >::rms

Definition at line 260 of file oops/interface/ObsVector.h.

Here is the caller graph for this function:

◆ save()

template<typename OBS >
void oops::ObsVector< OBS >::save ( const std::string &  name) const

Definition at line 298 of file oops/interface/ObsVector.h.

◆ zero()

template<typename OBS >
void oops::ObsVector< OBS >::zero

Definition at line 200 of file oops/interface/ObsVector.h.

Member Data Documentation

◆ commTime_

template<typename OBS >
const eckit::mpi::Comm& oops::ObsVector< OBS >::commTime_
private

Definition at line 86 of file oops/interface/ObsVector.h.

◆ data_

template<typename OBS >
std::unique_ptr<ObsVector_> oops::ObsVector< OBS >::data_
private

Definition at line 85 of file oops/interface/ObsVector.h.


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