PSCF v1.4.0
Pscf::Rpg::AverageAnalyzer< D > Class Template Reference

Analyze averages and block averages of several real variables. More...

#include <AverageAnalyzer.h>

Inheritance diagram for Pscf::Rpg::AverageAnalyzer< D >:
Pscf::Rp::AverageAnalyzer< D, Types< D > >

Public Member Functions

 AverageAnalyzer (Simulator< D > &simulator, System< D > &system)
 Constructor.
Public Member Functions inherited from Pscf::Rp::AverageAnalyzer< D, Types< D > >
virtual void readParameters (std::istream &in)
 Read interval, outputFileName and (optionally) nSamplePerOutput.
virtual void setup ()
 Setup before loop.
virtual void sample (long iStep)
 Compute a sampled value and update the accumulator.
virtual void output ()
 Write final results to file after a simulation.
int nSamplePerOutput () const
 Get value of nSamplePerOutput.

Protected Types

using AnalyzerT = typename Types<D>::Analyzer
 Alias for base class.

Additional Inherited Members

Protected Member Functions inherited from Pscf::Rp::AverageAnalyzer< D, Types< D > >
 AverageAnalyzer (typename Types< D >::Simulator &simulator, typename Types< D >::System &system)
 Constructor.
 ~AverageAnalyzer ()=default
 Destructor.
virtual double compute ()=0
 Compute value of sampled quantity.
virtual void outputValue (int step, double value)
 Output a sampled or block average value.
Protected Attributes inherited from Pscf::Rp::AverageAnalyzer< D, Types< D > >
std::ofstream outputFile_
 Output file stream.
Average accumulator_
 Average object.

Detailed Description

template<int D>
class Pscf::Rpg::AverageAnalyzer< D >

Analyze averages and block averages of several real variables.

This class evaluates the average of a single sampled real variables, and optionally writes values or block averages to a data file during a simulation. It is intended for use as a base class for any Analyzer that computes and evaluates an average for a single physical variable.

Specializations of this template with D=1, 2, and 3 are derived from specializations of the base class template Rp::AverageAnalyzer, and inherit their public interface and almost all of their source code from this base class.

See also
Rp::AverageAnalyzer

Definition at line 37 of file /fts/analyzer/AverageAnalyzer.h.

Member Typedef Documentation

◆ AnalyzerT

template<int D>
using Pscf::Rpg::AverageAnalyzer< D >::AnalyzerT = typename Types<D>::Analyzer
protected

Alias for base class.

Definition at line 52 of file /fts/analyzer/AverageAnalyzer.h.

Constructor & Destructor Documentation

◆ AverageAnalyzer()

template<int D>
Pscf::Rpg::AverageAnalyzer< D >::AverageAnalyzer ( Simulator< D > & simulator,
System< D > & system )

Constructor.

Parameters
simulatorparent Simulator object
systemparent System object

Definition at line 19 of file AverageAnalyzer.cu.

References AverageAnalyzer().

Referenced by AverageAnalyzer().


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