/** Return member rules (no members) */ const MemberRules& Move_SynchronizedVectorFixedSingleElementSlide::getParameterRules(void) const { static MemberRules move_member_rules; static bool rules_set = false; if ( !rules_set ) { move_member_rules.push_back( new ArgumentRule( "x" , ModelVector<ModelVector<Real> >::getClassTypeSpec(), "The variable (a deterministic variable holding the vector of stochastic variable) on which this move operates.", ArgumentRule::BY_REFERENCE, ArgumentRule::DETERMINISTIC ) ); std::vector<TypeSpec> index_types; index_types.push_back( Natural::getClassTypeSpec() ); index_types.push_back( ModelVector<Natural>::getClassTypeSpec() ); move_member_rules.push_back( new ArgumentRule( "element", index_types, "The index or indices of the element to scale.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); move_member_rules.push_back( new ArgumentRule( "lambda" , RealPos::getClassTypeSpec() , "The scaling factor (strength) of this move.", ArgumentRule::BY_VALUE , ArgumentRule::ANY, new Real(1.0) ) ); move_member_rules.push_back( new ArgumentRule( "tune" , RlBoolean::getClassTypeSpec() , "Should we tune the scaling factor during burnin?", ArgumentRule::BY_VALUE , ArgumentRule::ANY, new RlBoolean( true ) ) ); /* Inherit weight from Move, put it after variable */ const MemberRules& inheritedRules = Move::getParameterRules(); move_member_rules.insert( move_member_rules.end(), inheritedRules.begin(), inheritedRules.end() ); rules_set = true; } return move_member_rules; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the scale move are: * (1) the variable which must be a positive real. * (2) the tuning parameter lambda that defines the size of the proposal (positive real) * (3) a flag whether auto-tuning should be used. * * \return The member rules. */ const MemberRules& Move_NodeCharacterHistoryRejectionSample::getMemberRules(void) const { static MemberRules nodeChrsMoveMemberRules; static bool rulesSet = false; if ( !rulesSet ) { nodeChrsMoveMemberRules.push_back( new ArgumentRule( "ctmc", false, AbstractDiscreteCharacterData::getClassTypeSpec() ) ); nodeChrsMoveMemberRules.push_back( new ArgumentRule( "qmap", false, RateMap::getClassTypeSpec() ) ); nodeChrsMoveMemberRules.push_back( new ArgumentRule( "tree", false, TimeTree::getClassTypeSpec() ) ); nodeChrsMoveMemberRules.push_back( new ArgumentRule( "lambda", true, Probability::getClassTypeSpec() , new Probability(1.0) ) ); // nodeChrsMoveMemberRules.push_back( new ArgumentRule( "type", true, RlString::getClassTypeSpec(), new RlString("std") ) ); std::vector<RlString> options; options.push_back( RlString("std") ); options.push_back( RlString("biogeo") ); nodeChrsMoveMemberRules.push_back( new OptionRule( "type", new RlString("std"), options ) ); /* Inherit weight from Move, put it after variable */ const MemberRules& inheritedRules = Move::getMemberRules(); nodeChrsMoveMemberRules.insert( nodeChrsMoveMemberRules.end(), inheritedRules.begin(), inheritedRules.end() ); rulesSet = true; } return nodeChrsMoveMemberRules; }
/** Return member rules (no members) */ const MemberRules& Mntr_Model::getParameterRules(void) const { static MemberRules memberRules; static bool rules_set = false; if ( !rules_set ) { memberRules.push_back( new ArgumentRule("filename" , RlString::getClassTypeSpec() , "The name of the file where to store the values.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); memberRules.push_back( new ArgumentRule("printgen" , Natural::getClassTypeSpec() , "The frequency how often to sample values.", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new Natural(1) ) ); memberRules.push_back( new ArgumentRule("separator" , RlString::getClassTypeSpec() , "The separator between different variables.", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlString("\t") ) ); memberRules.push_back( new ArgumentRule("posterior" , RlBoolean::getClassTypeSpec(), "Should we print the joint posterior probability?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(true) ) ); memberRules.push_back( new ArgumentRule("likelihood" , RlBoolean::getClassTypeSpec(), "Should we print the likelihood?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(true) ) ); memberRules.push_back( new ArgumentRule("prior" , RlBoolean::getClassTypeSpec(), "Should we print the joint prior probability?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(true) ) ); memberRules.push_back( new ArgumentRule("append" , RlBoolean::getClassTypeSpec(), "Should we append to an existing file?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); memberRules.push_back( new ArgumentRule("stochasticOnly", RlBoolean::getClassTypeSpec(), "Should we monitor stochastic variables only?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); memberRules.push_back( new ArgumentRule("version", RlBoolean::getClassTypeSpec(), "Should we record the software version?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean(false) ) ); rules_set = true; } return memberRules; }
/** Return member rules (no members) */ const MemberRules& Dist_offsetExponential::getMemberRules(void) const { static MemberRules distExpMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distExpMemberRules.push_back( new ArgumentRule( "lambda", true, RealPos::getClassTypeSpec() , new RealPos(1.0) ) ); distExpMemberRules.push_back( new ArgumentRule( "offset", true, Real::getClassTypeSpec() ) ); rulesSet = true; } return distExpMemberRules; }
/** Return member rules (no members) */ const MemberRules& ParallelMcmcmc::getMemberRules(void) const { static MemberRules memberRules; static bool rulesSet = false; if ( !rulesSet ) { memberRules.push_back( new ArgumentRule("model", true, Model::getClassTypeSpec() ) ); memberRules.push_back( new ArgumentRule("monitors", true, WorkspaceVector<Monitor>::getClassTypeSpec() ) ); memberRules.push_back( new ArgumentRule("moves", true, WorkspaceVector<Move>::getClassTypeSpec() ) ); memberRules.push_back( new ArgumentRule("numChains", true, Natural::getClassTypeSpec(), new Natural(4) ) ); memberRules.push_back( new ArgumentRule("numProcessors", true, Natural::getClassTypeSpec(), new Natural(4) ) ); memberRules.push_back( new ArgumentRule("swapInterval", true, Natural::getClassTypeSpec(), new Natural(100)) ); memberRules.push_back( new ArgumentRule("deltaHeat", true, Real::getClassTypeSpec(), new Real(0.2) ) ); memberRules.push_back( new ArgumentRule("sigmaHeat", true, Real::getClassTypeSpec(), new Real(1.0) ) ); memberRules.push_back( new ArgumentRule("startHeat", true, Real::getClassTypeSpec(), new Real(1.0)) ); std::vector<RlString> options; options.push_back( RlString("sequential") ); options.push_back( RlString("random") ); options.push_back( RlString("single") ); memberRules.push_back( new OptionRule( "moveschedule", new RlString( "random" ), options ) ); rulesSet = true; } return memberRules; }
/** Return member rules (no members) */ const MemberRules& Clade::getParameterRules(void) const { static MemberRules modelMemberRules; static bool rulesSet = false; if ( !rulesSet ) { modelMemberRules.push_back( new ArgumentRule("taxonName", RlString::getClassTypeSpec(), ArgumentRule::BY_VALUE ) ); modelMemberRules.push_back( new Ellipsis(RlString::getClassTypeSpec() ) ); rulesSet = true; } return modelMemberRules; }
/** Return member rules (no members) */ const MemberRules& Dist_mvtnorm::getMemberRules(void) const { static MemberRules distExpMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distExpMemberRules.push_back( new ArgumentRule( "mean", true, ModelVector<Real>::getClassTypeSpec() ) ); distExpMemberRules.push_back( new ArgumentRule( "precision", true, RealSymmetricMatrix::getClassTypeSpec() ) ); rulesSet = true; } return distExpMemberRules; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the diversity-dependent pure-birth process are: * (1) the initial speciation rate lambda which must be a positive real. * (2) the carrying capacity that must be a natural number. * (3) all member rules specified by BirthDeathProcess. * * \return The member rules. */ const MemberRules& Dist_serialBDP::getParameterRules(void) const { static MemberRules distcBirthDeathMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distcBirthDeathMemberRules.push_back( new ArgumentRule( "origin" , RealPos::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, NULL ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "rootAge", RealPos::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, NULL ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "lambda" , RealPos::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "mu" , RealPos::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new RealPos(0.0) ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "psi" , RealPos::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new RealPos(0.0) ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "rho" , Probability::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new Probability(1.0) ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "timeSinceLastSample", RealPos::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new RealPos(0.0) ) ); std::vector<std::string> optionsCondition; optionsCondition.push_back( "time" ); optionsCondition.push_back( "survival" ); optionsCondition.push_back( "nTaxa" ); distcBirthDeathMemberRules.push_back( new OptionRule( "condition", new RlString("survival"), optionsCondition ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "names" , ModelVector<RlString>::getClassTypeSpec(), ArgumentRule::BY_VALUE ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "constraints", ModelVector<Clade>::getClassTypeSpec(), ArgumentRule::BY_VALUE, ArgumentRule::ANY, new ModelVector<Clade>() ) ); // add the rules from the base class const MemberRules &parentRules = TypedDistribution<TimeTree>::getParameterRules(); distcBirthDeathMemberRules.insert(distcBirthDeathMemberRules.end(), parentRules.begin(), parentRules.end()); rulesSet = true; } return distcBirthDeathMemberRules; }
/** Return member rules (no members) */ const MemberRules& Taxon::getMemberRules(void) const { static MemberRules modelMemberRules; static bool rulesSet = false; if ( !rulesSet ) { modelMemberRules.push_back( new ArgumentRule("taxonName", true, RlString::getClassTypeSpec() ) ); modelMemberRules.push_back( new ArgumentRule("speciesName", true, RlString::getClassTypeSpec() ) ); // modelMemberRules.push_back( new ArgumentRule("date", true, RlDate::getClassTypeSpec() ) ); rulesSet = true; } return modelMemberRules; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the Multispecies Coalescent process are: * (1) Species tree rooted triplet distribution. * (2) Whether we use species names or taxons. * * \return The member rules. */ const MemberRules& Dist_MPEST::getMemberRules(void) const { static MemberRules MPESTMemberRules; static bool rulesSet = false; if ( !rulesSet ) { MPESTMemberRules.push_back( new ArgumentRule( "speciesTree", RootedTripletDistribution::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); //MPESTMemberRules.push_back( new ArgumentRule( "geneTrees", RootedTripletDistribution::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); MPESTMemberRules.push_back( new ArgumentRule( "useSpecies", RlBoolean::getClassTypeSpec(), ArgumentRule::BY_VALUE ) ); rulesSet = true; } return MPESTMemberRules; }
/** Return member rules (no members) */ const MemberRules& Dist_offsetLnorm::getMemberRules(void) const { static MemberRules distLnormMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distLnormMemberRules.push_back( new ArgumentRule( "mean", true, Real::getClassTypeSpec(), new Real(0.0) ) ); distLnormMemberRules.push_back( new ArgumentRule( "sd" , true, RealPos::getClassTypeSpec(), new RealPos(1.0) ) ); distLnormMemberRules.push_back( new ArgumentRule( "offset", true, Real::getClassTypeSpec() ) ); rulesSet = true; } return distLnormMemberRules; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the uniform topology distribution are: * (1) the number of taxa. * (2) the names of the taxa. * * \return The member rules. */ const MemberRules& Dist_uniformTopology::getMemberRules(void) const { static MemberRules distUniformTopologyMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distUniformTopologyMemberRules.push_back( new ArgumentRule( "nTaxa" , true, Natural::getClassTypeSpec() ) ); distUniformTopologyMemberRules.push_back( new ArgumentRule( "names" , true, ModelVector<RlString>::getClassTypeSpec() ) ); rulesSet = true; } return distUniformTopologyMemberRules; }
/** Return member rules (no members) */ const MemberRules& Model::getParameterRules(void) const { static MemberRules modelMemberRules; static bool rulesSet = false; if ( !rulesSet ) { modelMemberRules.push_back( new ArgumentRule("x", RevObject::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); modelMemberRules.push_back( new Ellipsis( RevObject::getClassTypeSpec() ) ); rulesSet = true; } return modelMemberRules; }
/* Return member rules */ const MemberRules& Dist_uniformTimeTree::getParameterRules(void) const { static MemberRules dist_member_rules; static bool rules_set = false; if ( !rules_set ) { dist_member_rules.push_back( new ArgumentRule( "rootAge" , RealPos::getClassTypeSpec() , "The age of the root.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); dist_member_rules.push_back( new ArgumentRule( "taxa" , ModelVector<Taxon>::getClassTypeSpec() , "The taxa used for simulation.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); rules_set = true; } return dist_member_rules; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the Poisson distribution are: * (1) the rate lambda which must be a positive real between 0 and 1 (= a probability). * * \return The member rules. */ const MemberRules& Dist_cppNormal::getParameterRules(void) const { static MemberRules distPoisMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distPoisMemberRules.push_back( new ArgumentRule( "lambda", RealPos::getClassTypeSpec(), "The rate of the Poisson distribution.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); distPoisMemberRules.push_back( new ArgumentRule( "mu", Real::getClassTypeSpec(), "The mean of the normal distribution", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); distPoisMemberRules.push_back( new ArgumentRule( "sigma", RealPos::getClassTypeSpec(), "The standard deviation of the normal distribution", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); rulesSet = true; } return distPoisMemberRules; }
/** Return member rules (no members) */ const MemberRules& Dist_ornsteinUhlenbeck::getMemberRules(void) const { static MemberRules dist; static bool rulesSet = false; if ( !rulesSet ) { dist.push_back( new ArgumentRule( "tree" , TimeTree::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); dist.push_back( new ArgumentRule( "sigma", RealPos::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); dist.push_back( new ArgumentRule( "mean" , Real::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); dist.push_back( new ArgumentRule( "phi" , RealPos::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); rulesSet = true; } return dist; }
/** Return member rules (no members) */ const MemberRules& SteppingStoneSampler::getMemberRules(void) const { static MemberRules samplerMemberRules; static bool rulesSet = false; if ( !rulesSet ) { samplerMemberRules.push_back( new ArgumentRule("filename", true, RlString::getClassTypeSpec() ) ); samplerMemberRules.push_back( new ArgumentRule("powerColumnName", true, RlString::getClassTypeSpec() ) ); samplerMemberRules.push_back( new ArgumentRule("likelihoodColumnName", true, RlString::getClassTypeSpec() ) ); samplerMemberRules.push_back( new ArgumentRule("delimiter", true, RlString::getClassTypeSpec(), new RlString( "\t" ) ) ); rulesSet = true; } return samplerMemberRules; }
/* Return member rules */ const MemberRules& Dist_CharacterDependentCladoBirthDeathProcess::getParameterRules(void) const { static MemberRules memberRules; static bool rules_set = false; if ( !rules_set ) { memberRules.push_back( new ArgumentRule( "rootAge", RealPos::getClassTypeSpec(), "The age of the root.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); memberRules.push_back( new ArgumentRule( "cladoEventMap", MatrixReal::getClassTypeSpec(), "The map of speciation rates to cladogenetic event types.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); memberRules.push_back( new ArgumentRule( "extinctionRates", ModelVector<Real>::getClassTypeSpec(), "The vector of extinction rates for the observed states.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); memberRules.push_back( new ArgumentRule( "Q", RateGenerator::getClassTypeSpec(), "The rate matrix of jumping between rate categories.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); memberRules.push_back( new ArgumentRule( "delta", RealPos::getClassTypeSpec(), "The rate-factor of jumping between rate categories.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); memberRules.push_back( new ArgumentRule( "pi", Simplex::getClassTypeSpec(), "State frequencies at the root.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); memberRules.push_back( new ArgumentRule( "rho", Probability::getClassTypeSpec(), "The taxon sampling probability.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new RealPos(1.0) ) ); std::vector<std::string> optionsCondition; optionsCondition.push_back( "time" ); //optionsCondition.push_back( "survival" ); memberRules.push_back( new OptionRule( "condition", new RlString("time"), optionsCondition, "The condition of the birth-death process." ) ); memberRules.push_back( new ArgumentRule( "taxa", ModelVector<Taxon>::getClassTypeSpec(), "The taxa used for simulation.", ArgumentRule::BY_VALUE , ArgumentRule::ANY ) ); memberRules.push_back( new ArgumentRule( "nTimeSlices", RealPos::getClassTypeSpec(), "The number of time slices for the numeric ODE.", ArgumentRule::BY_VALUE , ArgumentRule::ANY, new RealPos(500.0) ) ); rules_set = true; } return memberRules; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the homogeneous birth-death process are: * (1) time of the process since the origin. * (2) time of the process since the rootAge. * (3) the sampling probability. * (4) the sampling strategy. * (5) the condition. * (6) the number of taxa. * (7) the taxon names. * (8) the clade constraints. * * \return The member rules. */ const MemberRules& BirthDeathProcess::getMemberRules(void) const { static MemberRules distcBirthDeathMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distcBirthDeathMemberRules.push_back( new ArgumentRule( "origin" , RealPos::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, NULL ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "rootAge", RealPos::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, NULL ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "rho" , Probability::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new Probability(1.0) ) ); std::vector<std::string> optionsStrategy; optionsStrategy.push_back( "uniform" ); optionsStrategy.push_back( "diversified" ); distcBirthDeathMemberRules.push_back( new OptionRule( "samplingStrategy", new RlString("uniform"), optionsStrategy ) ); std::vector<std::string> optionsCondition; optionsCondition.push_back( "time" ); optionsCondition.push_back( "survival" ); optionsCondition.push_back( "nTaxa" ); distcBirthDeathMemberRules.push_back( new OptionRule( "condition", new RlString("survival"), optionsCondition ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "nTaxa" , Natural::getClassTypeSpec(), ArgumentRule::BY_VALUE ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "names" , ModelVector<RlString>::getClassTypeSpec(), ArgumentRule::BY_VALUE ) ); distcBirthDeathMemberRules.push_back( new ArgumentRule( "constraints", ModelVector<Clade>::getClassTypeSpec(), ArgumentRule::BY_VALUE, ArgumentRule::ANY, new ModelVector<Clade>() ) ); rulesSet = true; } return distcBirthDeathMemberRules; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the branch rate jump process are: * (1) the min of the uniform distribution. * (2) the max of the uniform distribution. * (3) the standard deviation of the normal. * (4) the probability of belonging to distribution one. * * \return The member rules. */ const MemberRules& Dist_SoftBoundUniformNormal::getParameterRules(void) const { static MemberRules distNormMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distNormMemberRules.push_back( new ArgumentRule( "min", Real::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); distNormMemberRules.push_back( new ArgumentRule( "max", Real::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); distNormMemberRules.push_back( new ArgumentRule( "sd" , RealPos::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); distNormMemberRules.push_back( new ArgumentRule( "p" , Probability::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); rulesSet = true; } return distNormMemberRules; }
/** Return member rules (no members) */ const MemberRules& SteppingStoneSampler::getParameterRules(void) const { static MemberRules samplerMemberRules; static bool rules_set = false; if ( !rules_set ) { samplerMemberRules.push_back( new ArgumentRule("filename" , RlString::getClassTypeSpec(), "The name of the file where the likelhood samples are stored.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); samplerMemberRules.push_back( new ArgumentRule("powerColumnName" , RlString::getClassTypeSpec(), "The name of the column of the powers.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); samplerMemberRules.push_back( new ArgumentRule("likelihoodColumnName", RlString::getClassTypeSpec(), "The name of the column of the likelihood samples.", ArgumentRule::BY_VALUE, ArgumentRule::ANY ) ); samplerMemberRules.push_back( new ArgumentRule("delimiter" , RlString::getClassTypeSpec(), "The column delimiter.", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlString( "\t" ) ) ); rules_set = true; } return samplerMemberRules; }
/** Return member rules (no members) */ const MemberRules& Dist_autocorrelatedLnBranchRates::getMemberRules(void) const { static MemberRules dist; static bool rulesSet = false; if ( !rulesSet ) { dist.push_back( new ArgumentRule( "tree" , TimeTree::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); dist.push_back( new ArgumentRule( "sigma" , RealPos::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); dist.push_back( new ArgumentRule( "rootRate" , Real::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); dist.push_back( new ArgumentRule( "scaleValue", RealPos::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); rulesSet = true; } return dist; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the branch rate jump process are: * (1) the distribution from which new values are drawn if a jump occurred. * (2) the time tree. * (3) the scale parameter for the branch lengths. * (4) the instantaneous jump probability. * * \return The member rules. */ const MemberRules& Dist_branchRateJumpProcess::getParameterRules(void) const { static MemberRules distDist_branchRateJumpProcessMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distDist_branchRateJumpProcessMemberRules.push_back( new ArgumentRule( "valueDistribution", Distribution::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); distDist_branchRateJumpProcessMemberRules.push_back( new ArgumentRule( "tree", TimeTree::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE ) ); distDist_branchRateJumpProcessMemberRules.push_back( new ArgumentRule( "lambda", RealPos::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new RealPos(1.0) ) ); distDist_branchRateJumpProcessMemberRules.push_back( new ArgumentRule( "rho", Probability::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new Probability(0.0) ) ); rulesSet = true; } return distDist_branchRateJumpProcessMemberRules; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the branch rate jump process are: * (1) the min of the uniform distribution. * (2) the max of the uniform distribution. * (3) the standard deviation of the normal. * (4) the probability of belonging to distribution one. * * \return The member rules. */ const MemberRules& Dist_SoftBoundUniformNormal::getParameterRules(void) const { static MemberRules distNormMemberRules; static bool rules_set = false; if ( !rules_set ) { distNormMemberRules.push_back( new ArgumentRule( "min", Real::getClassTypeSpec() , "The min value of the uniform distribution.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); distNormMemberRules.push_back( new ArgumentRule( "max", Real::getClassTypeSpec() , "The max value of the uniform distribution.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); distNormMemberRules.push_back( new ArgumentRule( "sd" , RealPos::getClassTypeSpec() , "The standard deviation of the normal distribution.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); distNormMemberRules.push_back( new ArgumentRule( "p" , Probability::getClassTypeSpec(), "The probability of being within the uniform distribution.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); rules_set = true; } return distNormMemberRules; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the uniform topology distribution are: * (1) the number of taxa. * (2) the names of the taxa. * * \return The member rules. */ const MemberRules& Dist_uniformTopology::getParameterRules(void) const { static MemberRules memberRules; static bool rules_set = false; if ( !rules_set ) { memberRules.push_back( new ArgumentRule( "taxa" , ModelVector<Taxon>::getClassTypeSpec(), "The vector of taxa that will be used for the tips.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY ) ); memberRules.push_back( new ArgumentRule( "outgroup" , Clade::getClassTypeSpec(), "The clade (consisting of one or more taxa) used as an outgroup.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, NULL ) ); memberRules.push_back( new ArgumentRule( "constraints", ModelVector<Clade>::getClassTypeSpec(), "The topological constraints that will be enforced.", ArgumentRule::BY_VALUE, ArgumentRule::ANY, NULL ) ); memberRules.push_back( new ArgumentRule( "rooted", RlBoolean::getClassTypeSpec(), "Is the distribution over rooted topologies?", ArgumentRule::BY_VALUE, ArgumentRule::ANY, new RlBoolean( false ) ) ); rules_set = true; } return memberRules; }
/** Return member rules (no members) */ const MemberRules& Move_WeightedNodeTimeSlide::getMemberRules(void) const { static MemberRules nniMemberRules; static bool rulesSet = false; if ( !rulesSet ) { nniMemberRules.push_back( new ArgumentRule( "tree", false, TimeTree::getClassTypeSpec() ) ); nniMemberRules.push_back( new ArgumentRule( "blocks", true, Natural::getClassTypeSpec(), new Natural(8) ) ); /* Inherit weight from Move, put it after variable */ const MemberRules& inheritedRules = Move::getMemberRules(); nniMemberRules.insert( nniMemberRules.end(), inheritedRules.begin(), inheritedRules.end() ); rulesSet = true; } return nniMemberRules; }
/** Return member rules (no members) */ const MemberRules& Move_MultivariatePhyloProcessTranslation::getMemberRules(void) const { static MemberRules nniMemberRules; static bool rulesSet = false; if ( !rulesSet ) { nniMemberRules.push_back( new ArgumentRule( "process", false, MultivariatePhyloProcess::getClassTypeSpec() ) ); nniMemberRules.push_back( new ArgumentRule( "lambda", true, RealPos::getClassTypeSpec(), new RealPos( 1.0 ) ) ); nniMemberRules.push_back( new ArgumentRule( "tune", true, RlBoolean::getClassTypeSpec(), new RlBoolean( true ) ) ); /* Inherit weight from Move, put it after variable */ const MemberRules& inheritedRules = Move::getMemberRules(); nniMemberRules.insert( nniMemberRules.end(), inheritedRules.begin(), inheritedRules.end() ); rulesSet = true; } return nniMemberRules; }
/** * Get the member rules used to create the constructor of this object. * * The member rules of the branch rate jump process are: * (1) the mean of the distribution. * (2) the standard deviation. * * \return The member rules. */ const MemberRules& Dist_varianceGamma::getParameterRules(void) const { static MemberRules distVarianceGammaMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distVarianceGammaMemberRules.push_back( new ArgumentRule( "mu", Real::getClassTypeSpec() , "The mean parameter.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new Real(0.0) ) ); distVarianceGammaMemberRules.push_back( new ArgumentRule( "kappa" , RealPos::getClassTypeSpec(), "The standard deviation parameter.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new RealPos(1.0) ) ); distVarianceGammaMemberRules.push_back( new ArgumentRule( "tau" , RealPos::getClassTypeSpec(), "The standard deviation parameter.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new RealPos(1.0) ) ); distVarianceGammaMemberRules.push_back( new ArgumentRule( "time" , RealPos::getClassTypeSpec(), "The duration of time for the process.", ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new RealPos(1.0) ) ); rulesSet = true; } return distVarianceGammaMemberRules; }
/** Return member rules (no members) */ const MemberRules& Dist_inverseWishart::getMemberRules(void) const { static MemberRules distMemberRules; static bool rulesSet = false; if ( !rulesSet ) { distMemberRules.push_back( new ArgumentRule( "sigma" , RealSymmetricMatrix::getClassTypeSpec() , ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new RealSymmetricMatrix() ) ); distMemberRules.push_back( new ArgumentRule( "diagonal", ModelVector<RealPos>::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new ModelVector<RealPos>() ) ); distMemberRules.push_back( new ArgumentRule( "df" , Natural::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE ) ); distMemberRules.push_back( new ArgumentRule( "kappa" , RealPos::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new Real(0) ) ); distMemberRules.push_back( new ArgumentRule( "dim" , Natural::getClassTypeSpec(), ArgumentRule::BY_CONSTANT_REFERENCE, ArgumentRule::ANY, new Natural(0) ) ); rulesSet = true; } return distMemberRules; }
/** Return member rules (no members) */ const MemberRules& Move_VectorSingleElementSlide::getMemberRules(void) const { static MemberRules scalingMoveMemberRules; static bool rulesSet = false; if ( !rulesSet ) { scalingMoveMemberRules.push_back( new ArgumentRule( "x", false, ModelVector<Real>::getClassTypeSpec() ) ); scalingMoveMemberRules.push_back( new ArgumentRule( "lambda", true, RealPos::getClassTypeSpec() , new Real(1.0) ) ); scalingMoveMemberRules.push_back( new ArgumentRule( "tune" , true, RlBoolean::getClassTypeSpec(), new RlBoolean( true ) ) ); /* Inherit weight from Move, put it after variable */ const MemberRules& inheritedRules = Move::getMemberRules(); scalingMoveMemberRules.insert( scalingMoveMemberRules.end(), inheritedRules.begin(), inheritedRules.end() ); rulesSet = true; } return scalingMoveMemberRules; }