Class PGGWorld

Inheritance Relationships

Base Type

Class Documentation

class PGGWorld : public SymWorld

Public Functions

~PGGWorld()

Input: None

Output: None

Purpose: To destruct the data nodes belonging to PGGWorld to conserve memory.

void SetupHosts (long unsigned int *POP_SIZE)

Definitions of setup functions, expanded in PGGWorldSetup.cc

Input: The number of PGG hosts.

Output: None.

Purpose: To populate the world with PGG hosts with appropriate phenotypes.

void SetupSymbionts (long unsigned int *total_syms)

Input: The number of PGG symbionts.

Output: None.

Purpose: To populate the world with PGG symbionts with appropriate phenotypes.

void CreateDataFiles()

Input: None.

Output: None.

Purpose: To create and set up the data files (excluding for phylogeny) that contain data for the experiment.

emp::DataFile &SetupPGGSymIntValFile(const std::string &filename)

Input: The address of the string representing the file to be created’s name

Output: The address of the DataFile that has been created.

Purpose: To set up the file that will be used to track mean information about the PGG symbionts in the world. This includes: (1) their total count, (2) the counts of the free and hosted symbionts, (3) the average donation values for all symbionts, and (4) the histogram data for the distribution of symbionts at various donation values.

emp::DataMonitor<double, emp::data::Histogram> &GetPGGDataNode()

Input: None

Output: The DataMonitor<double, emp::data::Histogram>& that has information representing the average donation value for all symbionts in the system.

Purpose: To collect data on the average donation value to be saved to the data file that is tracking PGG data.