![]() |
QMCPACK
|
define ObservableHelper More...
Collaboration diagram for ObservableHelper:Public Member Functions | |
| ObservableHelper (hdf_path title) | |
| Favored constructor. More... | |
| ObservableHelper (const ObservableHelper &)=delete | |
| delete copy constructor as hdf5 handlers must have unique owners More... | |
| ObservableHelper & | operator= (const ObservableHelper &)=delete |
| ObservableHelper (ObservableHelper &&) noexcept=default | |
| Move constructor. More... | |
| ObservableHelper & | operator= (ObservableHelper &&) noexcept=default |
| ~ObservableHelper () | |
| Destructor closes hdf5 remaining resources. More... | |
| void | set_dimensions (const std::vector< int > &dims, int first) |
| set the shape of this observable More... | |
| template<typename T > | |
| void | addProperty (T &p, const std::string &pname, hdf_archive &file) |
| add named property to describe the collectable this helper class handles More... | |
| void | addProperty (float &p, const std::string &pname, hdf_archive &file) |
| void | addProperty (Tensor< float, OHMMS_DIM > &p, const std::string &pname, hdf_archive &file) |
| void | addProperty (Matrix< float > &p, const std::string &pname, hdf_archive &file) |
| void | addProperty (TinyVector< float, OHMMS_DIM > &p, const std::string &pname, hdf_archive &file) |
| void | addProperty (std::vector< float > &p, const std::string &pname, hdf_archive &file) |
| void | addProperty (std::vector< TinyVector< float, OHMMS_DIM >> &p, const std::string &pname, hdf_archive &file) |
| void | write (const value_type *const first_v, hdf_archive &file) |
Public Attributes | |
| hsize_t | lower_bound = 0 |
| starting index More... | |
Private Attributes | |
| hsize_t | current = 0 |
| "file pointer" for h5d_append More... | |
| hdf_path | group_name |
| Path of this observable. More... | |
| std::vector< hsize_t > | mydims |
| my dimensions More... | |
| std::vector< hsize_t > | offsets |
| offsets More... | |
define ObservableHelper
This is a helper class to manage a hdf5 dagroup for each collectable. The data handled by an Estimator should be presented by dense N-dim array in C. /observables/title/value
Definition at line 36 of file ObservableHelper.h.
| ObservableHelper | ( | hdf_path | title | ) |
Favored constructor.
| [in] | title | is the ordered hdf5 group path elements of the observable |
Definition at line 23 of file ObservableHelper.cpp.
|
delete |
delete copy constructor as hdf5 handlers must have unique owners
|
defaultnoexcept |
Move constructor.
| in | input object to be moved to this |
|
default |
Destructor closes hdf5 remaining resources.
|
inline |
add named property to describe the collectable this helper class handles
| p | any intrinsic datatype including vector, basic containers |
| pname | property |
Definition at line 75 of file ObservableHelper.h.
References ObservableHelper::group_name, hdf_archive::pop(), hdf_archive::push(), and hdf_archive::write().
Referenced by EnergyDensityEstimator::registerCollectables(), StaticStructureFactor::registerCollectables(), SpaceGrid::registerCollectables(), NESpaceGrid< REAL >::registerGrid(), and ReferencePoints::save().
| void addProperty | ( | float & | p, |
| const std::string & | pname, | ||
| hdf_archive & | file | ||
| ) |
Definition at line 37 of file ObservableHelper.cpp.
References ObservableHelper::group_name, hdf_archive::pop(), hdf_archive::push(), and hdf_archive::write().
| void addProperty | ( | Tensor< float, OHMMS_DIM > & | p, |
| const std::string & | pname, | ||
| hdf_archive & | file | ||
| ) |
Definition at line 45 of file ObservableHelper.cpp.
References ObservableHelper::group_name, hdf_archive::pop(), hdf_archive::push(), and hdf_archive::write().
| void addProperty | ( | Matrix< float > & | p, |
| const std::string & | pname, | ||
| hdf_archive & | file | ||
| ) |
Definition at line 53 of file ObservableHelper.cpp.
References ObservableHelper::group_name, hdf_archive::pop(), hdf_archive::push(), and hdf_archive::write().
| void addProperty | ( | TinyVector< float, OHMMS_DIM > & | p, |
| const std::string & | pname, | ||
| hdf_archive & | file | ||
| ) |
Definition at line 62 of file ObservableHelper.cpp.
References ObservableHelper::group_name, hdf_archive::pop(), hdf_archive::push(), and hdf_archive::write().
| void addProperty | ( | std::vector< float > & | p, |
| const std::string & | pname, | ||
| hdf_archive & | file | ||
| ) |
Definition at line 70 of file ObservableHelper.cpp.
References ObservableHelper::group_name, hdf_archive::pop(), hdf_archive::push(), and hdf_archive::write().
| void addProperty | ( | std::vector< TinyVector< float, OHMMS_DIM >> & | p, |
| const std::string & | pname, | ||
| hdf_archive & | file | ||
| ) |
Definition at line 79 of file ObservableHelper.cpp.
References ObservableHelper::group_name, hdf_archive::pop(), hdf_archive::push(), and hdf_archive::write().
|
delete |
|
defaultnoexcept |
| void set_dimensions | ( | const std::vector< int > & | dims, |
| int | first | ||
| ) |
set the shape of this observable
| dims | dimensions |
| first | starting index |
Definition at line 27 of file ObservableHelper.cpp.
References copy(), qmcplusplus::dims, ObservableHelper::lower_bound, ObservableHelper::mydims, ObservableHelper::offsets, and qmcplusplus::rank.
Referenced by SpaceGrid::registerCollectables(), SpinDensity::registerCollectables(), DensityMatrices1B::registerCollectables(), NESpaceGrid< REAL >::registerGrid(), OperatorBase::registerObservables(), MagnetizationDensity::registerOperatorEstimator(), SpinDensityNew::registerOperatorEstimator(), OneBodyDensityMatrices::registerOperatorEstimator(), and qmcplusplus::TEST_CASE().
| void write | ( | const value_type *const | first_v, |
| hdf_archive & | file | ||
| ) |
Definition at line 90 of file ObservableHelper.cpp.
References ObservableHelper::current, ObservableHelper::group_name, qmcplusplus::h5d_append(), ObservableHelper::lower_bound, ObservableHelper::mydims, hdf_archive::pop(), hdf_archive::push(), qmcplusplus::rank, and hdf_archive::top().
|
private |
"file pointer" for h5d_append
Definition at line 96 of file ObservableHelper.h.
Referenced by ObservableHelper::write().
|
private |
Path of this observable.
Definition at line 98 of file ObservableHelper.h.
Referenced by ObservableHelper::addProperty(), and ObservableHelper::write().
| hsize_t lower_bound = 0 |
starting index
Definition at line 92 of file ObservableHelper.h.
Referenced by ObservableHelper::set_dimensions(), qmcplusplus::TEST_CASE(), and ObservableHelper::write().
|
private |
my dimensions
Definition at line 100 of file ObservableHelper.h.
Referenced by ObservableHelper::set_dimensions(), and ObservableHelper::write().
|
private |
offsets
Definition at line 102 of file ObservableHelper.h.
Referenced by ObservableHelper::set_dimensions().