1#ifndef RPG_ANALYZER_MANAGER_TPP
2#define RPG_ANALYZER_MANAGER_TPP
4#include "AnalyzerManager.h"
6#include "AnalyzerFactory.h"
7#include <util/archives/Serializable_includes.h>
8#include <rpg/system/System.h>
22 simulatorPtr_(&simulator),
60 for (
int i = 0; i <
size(); ++i) {
73 for (
int i = 0; i <
size(); ++i) {
74 (*this)[i].sample(iStep);
84 for (
int i = 0; i <
size(); ++i) {
105 ar << Analyzer<D>::baseInterval;
Factory for subclasses of Analyzer.
virtual void readParameters(std::istream &in)
Read parameter file.
void setClassName(const char *className)
Set class name string.
ScalarParam< Type > & readOptional(std::istream &in, const char *label, Type &value)
Add and read a new optional ScalarParam < Type > object.
AnalyzerManager(Simulator< D > &simulator, System< D > &system)
Constructor.
void output()
Call output method of each analyzer.
void sample(long iStep)
Call sample method of each Analyzer.
void setup()
Call initialize method of each Analyzer.
virtual ~AnalyzerManager()
Destructor.
Abstract base for periodic output and/or analysis actions.
static long baseInterval
The interval for every Analyzer must be a multiple of baseInterval.
Field theoretic simulator (base class).
Main class, representing one complete system.
Template container for pointers to objects with a common base class.
virtual Factory< Analyzer< D > > * newDefaultFactory() const
Manager(bool uniqueNames=false)
virtual void loadParameters(Serializable::IArchive &ar)
Load state from archive, without adding Begin and End lines.
virtual void save(OArchive &ar)=0
Save to an archive.
BinaryFileIArchive IArchive
Type of input archive used by load method.
BinaryFileOArchive OArchive
Type of output archive used by save method.
#define UTIL_CHECK(condition)
Assertion macro suitable for serial or parallel production code.
SCFT and PS-FTS with real periodic fields (GPU)
PSCF package top-level namespace.