5#ifndef BPP_PHYL_SIMULATION_GIVENDATASUBSTITUTIONPROCESSSEQUENCESIMULATOR_H
6#define BPP_PHYL_SIMULATION_GIVENDATASUBSTITUTIONPROCESSSEQUENCESIMULATOR_H
22 std::shared_ptr<LikelihoodCalculationSingleProcess>
calcul_;
31 std::vector<std::shared_ptr<GivenDataSubstitutionProcessSiteSimulator>>
vSiteSim_;
45 for (
size_t i = 0; i <
calcul_->getNumberOfDistinctSites(); i++)
69 std::unique_ptr<SiteContainerInterface>
simulate()
const
74 std::unique_ptr<SiteContainerInterface>
simulate(
size_t numberOfSites)
const override;
107 return calcul_->getNumberOfSites();
122 siteSim->outputInternalSites(yn);
Sequences simulation under a unique substitution process, but with site specific posterior probabilit...
std::vector< uint > vPriorBranch_
GivenDataSubstitutionProcessSequenceSimulator(std::shared_ptr< LikelihoodCalculationSingleProcess > calcul, std::vector< uint > vPrior=std::vector< uint >())
void outputInternalSequences(bool yn) override
Sets whether we will output the internal sequences or not.
std::vector< std::shared_ptr< GivenDataSubstitutionProcessSiteSimulator > > vSiteSim_
GivenDataSubstitutionProcessSequenceSimulator(const GivenDataSubstitutionProcessSequenceSimulator &nhss)
GivenDataSubstitutionProcessSequenceSimulator * clone() const override
std::vector< std::string > getSequenceNames() const override
const SiteSimulatorInterface & siteSimulator(size_t pos) const override
const Alphabet & alphabet() const override
virtual ~GivenDataSubstitutionProcessSequenceSimulator()
std::shared_ptr< const Alphabet > getAlphabet() const override
std::shared_ptr< LikelihoodCalculationSingleProcess > calcul_
std::unique_ptr< SiteContainerInterface > simulate() const
size_t getNumberOfSites() const
the number of mapped sites.
The SequenceSimulator interface. SequenceSimulator classes can simulate whole datasets.
The SiteSimulator interface. SiteSimulator classes can simulate single sites.
Defines the basic types of data flow nodes.