EfficientWorld Class Documentation

class EfficientWorld : public SymWorld

Public Functions

inline EfficientWorld(emp::Random &_random, emp::Ptr<SymConfigEfficient> _config)

Input: a reference to a random number generator and a pointer to the configuration object for this experiment.

Output: None

Purpose: To construct an instance of EfficientWorld

inline ~EfficientWorld()

Input: None

Output: None

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

virtual void Setup()

Definitions of setup functions, expanded in EfficientWorldSetup.cc

virtual void SetupHosts(long unsigned int *POP_SIZE)

Input: The number of hosts.

Output: None.

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

virtual void SetupSymbionts(long unsigned int *total_syms)

Input: The number of symbionts.

Output: None.

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

inline virtual void CreateDataFiles()

Input: None.

Output: None.

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

inline emp::DataFile &SetupEfficiencyFile(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 efficiency

inline emp::DataMonitor<double> &GetEfficiencyDataNode()

Input: None

Output: The DataMonitor<double>& that has the information representing the symbiont’s efficiency.

Purpose: To collect data on the lysis burst size to be saved to the data file that is tracking lysis burst size.