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