1#ifndef UTIL_SYMM_TENSOR_AVERAGE_H
2#define UTIL_SYMM_TENSOR_AVERAGE_H
12#include <util/param/ParamComposite.h>
13#include <util/accumulators/Average.h>
14#include <util/containers/FArray.h>
90 template <
class Archive>
91 void serialize(Archive& ar,
const unsigned int version);
144 int nSamplePerBlock_;
163 {
return nSamplePerBlock_; }
175 {
return (iBlock_ && (iBlock_ == nSamplePerBlock_)); }
180 template <
class Archive>
183 ar & nSamplePerBlock_;
188 for (j = 0; j <= i; ++j) {
189 ar & accumulators_[k];
Calculates the average and variance of a sampled property.
Saving archive for binary istream.
Saving / output archive for binary ostream.
A fixed size (static) contiguous array template.
An object that can read multiple parameters from file.
Calculates averages of all components of a Tensor-valued variable.
bool isBlockComplete() const
Is the current block average complete?
virtual void loadParameters(Serializable::IArchive &ar)
Load internal state from an archive.
void serialize(Archive &ar, const unsigned int version)
Serialize this to or from an archive.
void readParameters(std::istream &in)
Read parameter nSamplePerBlock from file and initialize.
virtual ~SymmTensorAverage()
Destructor.
const Average & operator()(int i, int j)
Access the Average object for one tensor component.
void clear()
Clear all accumulators, set to empty initial state.
int iBlock() const
Get number of samples in current block average.
void sample(const Tensor &value)
Add a sampled value to the ensemble.
void setNSamplePerBlock(int nSamplePerBlock)
Set nSamplePerBlock.
virtual void save(Serializable::OArchive &ar)
Save internal state to an archive.
int nSamplePerBlock() const
Get number of samples per block average.
A Tensor represents a Cartesian tensor.
File containing preprocessor macros for error handling.
const int Dimension
Dimensionality of space.
Utility classes for scientific computation.