FV3-JEDI
fv3jedi::Increment Class Reference

#include <Increment.h>

Inheritance diagram for fv3jedi::Increment:
Collaboration diagram for fv3jedi::Increment:

Public Member Functions

 Increment (const Geometry &, const oops::Variables &, const util::DateTime &)
 Constructor, destructor. More...
 
 Increment (const Geometry &, const Increment &)
 
 Increment (const Increment &, const bool)
 
virtual ~Increment ()
 
void diff (const State &, const State &)
 Basic operators. More...
 
void zero ()
 
void zero (const util::DateTime &)
 
void ones ()
 
Incrementoperator= (const Increment &)
 
Incrementoperator+= (const Increment &)
 
Incrementoperator-= (const Increment &)
 
Incrementoperator*= (const double &)
 
void axpy (const double &, const Increment &, const bool check=true)
 
double dot_product_with (const Increment &) const
 
void schur_product_with (const Increment &)
 
void random ()
 
void dirac (const eckit::Configuration &)
 
oops::LocalIncrement getLocal (const GeometryIterator &) const
 Get/Set increment values at grid points. More...
 
void setLocal (const oops::LocalIncrement &, const GeometryIterator &)
 
void setAtlas (atlas::FieldSet *) const
 ATLAS. More...
 
void toAtlas (atlas::FieldSet *) const
 
void fromAtlas (atlas::FieldSet *)
 
void read (const eckit::Configuration &)
 I/O and diagnostics. More...
 
void write (const eckit::Configuration &) const
 
double norm () const
 
void updateTime (const util::Duration &dt)
 
void accumul (const double &, const State &)
 Other. More...
 
void jnormgrad (const State &, const eckit::Configuration &)
 
size_t serialSize () const
 Serialize and deserialize. More...
 
void serialize (std::vector< double > &) const
 
void deserialize (const std::vector< double > &, size_t &)
 
std::shared_ptr< const Geometrygeometry () const
 
const util::DateTime & time () const
 
util::DateTime & time ()
 
const util::DateTime & validTime () const
 
util::DateTime & validTime ()
 
int & toFortran ()
 
const int & toFortran () const
 

Static Public Member Functions

static const std::string classname ()
 

Private Member Functions

void print (std::ostream &) const
 

Private Attributes

F90inc keyInc_
 
std::shared_ptr< const Geometrygeom_
 
oops::Variables vars_
 
util::DateTime time_
 

Detailed Description

Definition at line 51 of file Increment.h.

Constructor & Destructor Documentation

◆ Increment() [1/3]

fv3jedi::Increment::Increment ( const Geometry geom,
const oops::Variables &  vars,
const util::DateTime &  time 
)

Constructor, destructor.

Definition at line 36 of file Increment.cc.

Here is the call graph for this function:

◆ Increment() [2/3]

fv3jedi::Increment::Increment ( const Geometry geom,
const Increment other 
)

Definition at line 45 of file Increment.cc.

Here is the call graph for this function:

◆ Increment() [3/3]

fv3jedi::Increment::Increment ( const Increment other,
const bool  copy 
)

Definition at line 54 of file Increment.cc.

Here is the call graph for this function:

◆ ~Increment()

fv3jedi::Increment::~Increment ( )
virtual

Definition at line 66 of file Increment.cc.

Here is the call graph for this function:

Member Function Documentation

◆ accumul()

void fv3jedi::Increment::accumul ( const double &  zz,
const State xx 
)

Other.

Definition at line 121 of file Increment.cc.

Here is the call graph for this function:

◆ axpy()

void fv3jedi::Increment::axpy ( const double &  zz,
const Increment dx,
const bool  check = true 
)

Definition at line 116 of file Increment.cc.

Here is the call graph for this function:

◆ classname()

static const std::string fv3jedi::Increment::classname ( )
inlinestatic

Definition at line 54 of file Increment.h.

◆ deserialize()

void fv3jedi::Increment::deserialize ( const std::vector< double > &  vect,
size_t &  index 
)

Definition at line 255 of file Increment.cc.

Here is the call graph for this function:

◆ diff()

void fv3jedi::Increment::diff ( const State x1,
const State x2 
)

Basic operators.

Definition at line 70 of file Increment.cc.

Here is the call graph for this function:

◆ dirac()

void fv3jedi::Increment::dirac ( const eckit::Configuration &  config)

Definition at line 229 of file Increment.cc.

Here is the call graph for this function:

◆ dot_product_with()

double fv3jedi::Increment::dot_product_with ( const Increment other) const

Definition at line 129 of file Increment.cc.

Here is the call graph for this function:

◆ fromAtlas()

void fv3jedi::Increment::fromAtlas ( atlas::FieldSet *  afieldset)

Definition at line 174 of file Increment.cc.

Here is the call graph for this function:

◆ geometry()

std::shared_ptr<const Geometry> fv3jedi::Increment::geometry ( ) const
inline

Definition at line 103 of file Increment.h.

Here is the caller graph for this function:

◆ getLocal()

oops::LocalIncrement fv3jedi::Increment::getLocal ( const GeometryIterator iter) const

Get/Set increment values at grid points.

Definition at line 139 of file Increment.cc.

Here is the call graph for this function:

◆ jnormgrad()

void fv3jedi::Increment::jnormgrad ( const State ,
const eckit::Configuration &   
)

◆ norm()

double fv3jedi::Increment::norm ( ) const

Definition at line 190 of file Increment.cc.

Here is the call graph for this function:

◆ ones()

void fv3jedi::Increment::ones ( )

Definition at line 112 of file Increment.cc.

Here is the call graph for this function:

◆ operator*=()

Increment & fv3jedi::Increment::operator*= ( const double &  zz)

Definition at line 98 of file Increment.cc.

Here is the call graph for this function:

◆ operator+=()

Increment & fv3jedi::Increment::operator+= ( const Increment dx)

Definition at line 86 of file Increment.cc.

Here is the call graph for this function:

◆ operator-=()

Increment & fv3jedi::Increment::operator-= ( const Increment dx)

Definition at line 92 of file Increment.cc.

Here is the call graph for this function:

◆ operator=()

Increment & fv3jedi::Increment::operator= ( const Increment rhs)

Definition at line 80 of file Increment.cc.

Here is the call graph for this function:

◆ print()

void fv3jedi::Increment::print ( std::ostream &  os) const
private

Definition at line 196 of file Increment.cc.

Here is the call graph for this function:

◆ random()

void fv3jedi::Increment::random ( )

Definition at line 135 of file Increment.cc.

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

◆ read()

void fv3jedi::Increment::read ( const eckit::Configuration &  config)

I/O and diagnostics.

Definition at line 178 of file Increment.cc.

Here is the call graph for this function:

◆ schur_product_with()

void fv3jedi::Increment::schur_product_with ( const Increment dx)

Definition at line 125 of file Increment.cc.

Here is the call graph for this function:

◆ serialize()

void fv3jedi::Increment::serialize ( std::vector< double > &  vect) const

Definition at line 243 of file Increment.cc.

Here is the call graph for this function:

◆ serialSize()

size_t fv3jedi::Increment::serialSize ( ) const

Serialize and deserialize.

Definition at line 234 of file Increment.cc.

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

◆ setAtlas()

void fv3jedi::Increment::setAtlas ( atlas::FieldSet *  afieldset) const

ATLAS.

Definition at line 166 of file Increment.cc.

Here is the call graph for this function:

◆ setLocal()

void fv3jedi::Increment::setLocal ( const oops::LocalIncrement &  values,
const GeometryIterator iter 
)

Definition at line 161 of file Increment.cc.

Here is the call graph for this function:

◆ time() [1/2]

util::DateTime& fv3jedi::Increment::time ( )
inline

Definition at line 106 of file Increment.h.

◆ time() [2/2]

const util::DateTime& fv3jedi::Increment::time ( ) const
inline

Definition at line 105 of file Increment.h.

◆ toAtlas()

void fv3jedi::Increment::toAtlas ( atlas::FieldSet *  afieldset) const

Definition at line 170 of file Increment.cc.

Here is the call graph for this function:

◆ toFortran() [1/2]

int& fv3jedi::Increment::toFortran ( )
inline

Definition at line 110 of file Increment.h.

Here is the caller graph for this function:

◆ toFortran() [2/2]

const int& fv3jedi::Increment::toFortran ( ) const
inline

Definition at line 111 of file Increment.h.

◆ updateTime()

void fv3jedi::Increment::updateTime ( const util::Duration &  dt)
inline

Definition at line 91 of file Increment.h.

Here is the caller graph for this function:

◆ validTime() [1/2]

util::DateTime& fv3jedi::Increment::validTime ( )
inline

Definition at line 108 of file Increment.h.

◆ validTime() [2/2]

const util::DateTime& fv3jedi::Increment::validTime ( ) const
inline

Definition at line 107 of file Increment.h.

Here is the caller graph for this function:

◆ write()

void fv3jedi::Increment::write ( const eckit::Configuration &  config) const

Definition at line 184 of file Increment.cc.

Here is the call graph for this function:

◆ zero() [1/2]

void fv3jedi::Increment::zero ( )

Definition at line 103 of file Increment.cc.

Here is the call graph for this function:

◆ zero() [2/2]

void fv3jedi::Increment::zero ( const util::DateTime &  vt)

Definition at line 107 of file Increment.cc.

Here is the call graph for this function:

Member Data Documentation

◆ geom_

std::shared_ptr<const Geometry> fv3jedi::Increment::geom_
private

Definition at line 117 of file Increment.h.

◆ keyInc_

F90inc fv3jedi::Increment::keyInc_
private

Definition at line 116 of file Increment.h.

◆ time_

util::DateTime fv3jedi::Increment::time_
private

Definition at line 119 of file Increment.h.

◆ vars_

oops::Variables fv3jedi::Increment::vars_
private

Definition at line 118 of file Increment.h.


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