PISM, A Parallel Ice Sheet Model  stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
pism::DiagWithDedicatedStorage< T > Class Template Reference

#include <Diagnostic.hh>

+ Inheritance diagram for pism::DiagWithDedicatedStorage< T >:

Public Member Functions

 DiagWithDedicatedStorage (const T &input)
 
- Public Member Functions inherited from pism::Diagnostic
 Diagnostic (std::shared_ptr< const Grid > g)
 
virtual ~Diagnostic ()=default
 
void update (double dt)
 
void reset ()
 
std::shared_ptr< array::Arraycompute () const
 Compute a diagnostic quantity and return a pointer to a newly-allocated Array. More...
 
unsigned int n_variables () const
 Get the number of NetCDF variables corresponding to a diagnostic quantity. More...
 
SpatialVariableMetadatametadata (unsigned int N=0)
 Get a metadata object corresponding to variable number N. More...
 
void define (const File &file, io::Type default_type) const
 
void init (const File &input, unsigned int time)
 
void define_state (const File &output) const
 
void write_state (const File &output) const
 

Protected Member Functions

std::shared_ptr< array::Arraycompute_impl () const
 
- Protected Member Functions inherited from pism::Diagnostic
virtual void define_impl (const File &file, io::Type default_type) const
 Define NetCDF variables corresponding to a diagnostic quantity. More...
 
virtual void init_impl (const File &input, unsigned int time)
 
virtual void define_state_impl (const File &output) const
 
virtual void write_state_impl (const File &output) const
 
virtual void update_impl (double dt)
 
virtual void reset_impl ()
 
double to_internal (double x) const
 
double to_external (double x) const
 
template<typename T >
std::shared_ptr< T > allocate (const std::string &name) const
 

Protected Attributes

const T & m_input
 
- Protected Attributes inherited from pism::Diagnostic
std::shared_ptr< const Gridm_grid
 the grid More...
 
const units::System::Ptr m_sys
 the unit system More...
 
const Config::ConstPtr m_config
 Configuration flags and parameters. More...
 
std::vector< SpatialVariableMetadatam_vars
 metadata corresponding to NetCDF variables More...
 
double m_fill_value
 fill value (used often enough to justify storing it) More...
 

Additional Inherited Members

- Public Types inherited from pism::Diagnostic
typedef std::shared_ptr< DiagnosticPtr
 
- Static Public Member Functions inherited from pism::Diagnostic
template<typename T >
static Ptr wrap (const T &input)
 

Detailed Description

template<class T>
class pism::DiagWithDedicatedStorage< T >

Helper template wrapping quantities with dedicated storage in diagnostic classes.

Note: Make sure that that created diagnostics don't outlast fields that they wrap (or you'll have dangling pointers).

Definition at line 134 of file Diagnostic.hh.


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