walker::Collector class

Collector Charm++ chare group class

Instantiations of Collector comprise a processor aware Charm++ chare group. When instantiated, a new object is created on each PE and not more (as opposed to individual chares or chare array object elements). The group's elements are used to collect information from all Integrator chare objects that happen to be on a given PE. See also the Charm++ interface file collector.ci.

Public static functions

static void registerPDFMerger()
Configure Charm++ reduction types for collecting PDFs.

Constructors, destructors, conversion operators

Collector(CProxy_Distributor hostproxy) explicit
Constructor.

Public functions

void checkin()
void chareOrd(const std::vector<tk::real>& ord, const std::vector<tk::UniPDF>& updf, const std::vector<tk::BiPDF>& bpdf, const std::vector<tk::TriPDF>& tpdf)
Chares contribute ordinary moments and ordinary PDFs.
void chareCen(const std::vector<tk::real>& cen, const std::vector<tk::UniPDF>& updf, const std::vector<tk::BiPDF>& bpdf, const std::vector<tk::TriPDF>& tpdf)
Chares contribute central moments and central PDFs.

Function documentation

static void walker::Collector::registerPDFMerger()

Configure Charm++ reduction types for collecting PDFs.

Since this is a [initnode] routine, see collector.ci, the Charm++ runtime system executes the routine exactly once on every logical node early on in the Charm++ init sequence. Must be static as it is called without an object. See also: Section "Initializations at Program Startup" at in the Charm++ manual http://charm.cs.illinois.edu/manuals/html/charm++/manual.html.

void walker::Collector::checkin()

Chares register on my PE

void walker::Collector::chareOrd(const std::vector<tk::real>& ord, const std::vector<tk::UniPDF>& updf, const std::vector<tk::BiPDF>& bpdf, const std::vector<tk::TriPDF>& tpdf)

Chares contribute ordinary moments and ordinary PDFs.

Parameters
ord in Vector of partial sums for the estimation of ordinary moments
updf in Vector of partial sums for the estimation of univariate ordinary PDFs
bpdf in Vector of partial sums for the estimation of bivariate ordinary PDFs
tpdf in Vector of partial sums for the estimation of trivariate ordinary PDFs

void walker::Collector::chareCen(const std::vector<tk::real>& cen, const std::vector<tk::UniPDF>& updf, const std::vector<tk::BiPDF>& bpdf, const std::vector<tk::TriPDF>& tpdf)

Chares contribute central moments and central PDFs.

Parameters
cen in Vector of partial sums for the estimation of central moments
updf in Vector of partial sums for the estimation of univariate central PDFs
bpdf in Vector of partial sums for the estimation of bivariate central PDFs
tpdf in Vector of partial sums for the estimation of trivariate central PDFs