bpp-phyl3  3.0.0
bpp::WordFromIndependentFrequencySet Class Referenceabstract

the Frequencies in words are the product of Independent Frequencies in letters More...

#include <Bpp/Phyl/Model/FrequencySet/WordFrequencySet.h>

+ Inheritance diagram for bpp::WordFromIndependentFrequencySet:
+ Collaboration diagram for bpp::WordFromIndependentFrequencySet:

Public Member Functions

 WordFromIndependentFrequencySet (std::shared_ptr< const WordAlphabet > pWA, std::vector< std::unique_ptr< FrequencySetInterface >> &freqVector, const std::string &prefix="", const std::string &name="WordFromIndependent")
 Constructor from a WordAlphabet* and a vector of different std::shared_ptr<FrequencySet>. Throws an Exception if their lengths do not match. More...
 
 WordFromIndependentFrequencySet (std::shared_ptr< const CodonAlphabet > pWA, std::vector< std::unique_ptr< FrequencySetInterface >> &freqVector, const std::string &prefix="", const std::string &name="WordFromIndependent")
 
 WordFromIndependentFrequencySet (const WordFromIndependentFrequencySet &iwfs)
 
virtual ~WordFromIndependentFrequencySet ()
 
WordFromIndependentFrequencySetoperator= (const WordFromIndependentFrequencySet &iwfs)
 
WordFromIndependentFrequencySetclone () const override
 
void fireParameterChanged (const ParameterList &pl) override
 
virtual void updateFrequencies ()
 
virtual void setFrequencies (const std::vector< double > &frequencies) override
 Independent letter frequencies from given word frequencies. The frequencies of a letter at a position is the sum of the frequencies of the words that have this letter at this position. More...
 
const FrequencySetInterfacefrequencySetForLetter (size_t i) const override
 Return the n-th FrequencySet&. More...
 
virtual size_t getLength () const override
 Return the length of the words. More...
 
void setNamespace (const std::string &prefix) override
 
std::string getDescription () const
 
std::shared_ptr< const CoreWordAlphabetgetWordAlphabet () const override
 
virtual std::shared_ptr< const AlphabetgetAlphabet () const =0
 
std::shared_ptr< const AlphabetgetAlphabet () const override
 
virtual const Alphabetalphabet () const =0
 
const Alphabetalphabet () const override
 
virtual const StateMapInterfacestateMap () const =0
 
const StateMapInterfacestateMap () const override
 
virtual std::shared_ptr< const StateMapInterfacegetStateMap () const =0
 
std::shared_ptr< const StateMapInterfacegetStateMap () const override
 
virtual const VdoublegetFrequencies () const =0
 
const VdoublegetFrequencies () const override
 
virtual const std::map< int, double > getAlphabetStatesFrequencies () const =0
 
const std::map< int, double > getAlphabetStatesFrequencies () const override
 
virtual void setFrequenciesFromAlphabetStatesFrequencies (const std::map< int, double > &frequencies)=0
 Set the Frequencies from the one of the map which keys match with a letter of the Alphabet. The frequencies are normalized so that the matching values sum 1. More...
 
void setFrequenciesFromAlphabetStatesFrequencies (const std::map< int, double > &frequencies) override
 Set the Frequencies from the one of the map which keys match with a letter of the Alphabet. The frequencies are normalized so that the matching values sum 1. More...
 
virtual std::string getName () const =0
 
std::string getName () const override
 
virtual size_t getNumberOfFrequencies () const =0
 
size_t getNumberOfFrequencies () const override
 
virtual size_t getNumberOfIndependentParameters () const=0
 
size_t getNumberOfIndependentParameters () const
 
virtual void aliasParameters (const std::string &p1, const std::string &p2)=0
 
virtual void aliasParameters (std::map< std::string, std::string > &unparsedParams, bool verbose)=0
 
void aliasParameters (const std::string &p1, const std::string &p2)
 
void aliasParameters (std::map< std::string, std::string > &unparsedParams, bool verbose)
 
virtual void unaliasParameters (const std::string &p1, const std::string &p2)=0
 
void unaliasParameters (const std::string &p1, const std::string &p2)
 
virtual const ParameterListgetIndependentParameters () const=0
 
const ParameterListgetIndependentParameters () const
 
virtual std::vector< std::string > getAlias (const std::string &name) const=0
 
virtual std::vector< std::string > getAlias (const std::string &name) const
 
virtual std::map< std::string, std::string > getAliases () const=0
 
virtual std::map< std::string, std::string > getAliases () const
 
virtual bool hasParameter (const std::string &name) const=0
 
bool hasParameter (const std::string &name) const override
 
virtual const ParameterListgetParameters () const=0
 
const ParameterListgetParameters () const override
 
virtual const Parameterparameter (const std::string &name) const=0
 
const Parameterparameter (const std::string &name) const override
 
virtual double getParameterValue (const std::string &name) const=0
 
double getParameterValue (const std::string &name) const override
 
virtual void setAllParametersValues (const ParameterList &parameters)=0
 
void setAllParametersValues (const ParameterList &parameters) override
 
virtual void setParameterValue (const std::string &name, double value)=0
 
void setParameterValue (const std::string &name, double value) override
 
virtual void setParametersValues (const ParameterList &parameters)=0
 
void setParametersValues (const ParameterList &parameters) override
 
virtual bool matchParametersValues (const ParameterList &parameters)=0
 
bool matchParametersValues (const ParameterList &parameters) override
 
virtual void removeConstraint (const std::string &name)=0
 
void removeConstraint (const std::string &name) override
 
virtual void setConstraint (const std::string &name, std::shared_ptr< ConstraintInterface > constraint)=0
 
void setConstraint (const std::string &name, std::shared_ptr< ConstraintInterface > constraint) override
 
virtual size_t getNumberOfParameters () const=0
 
size_t getNumberOfParameters () const override
 
virtual std::string getNamespace () const=0
 
std::string getNamespace () const override
 
virtual std::string getParameterNameWithoutNamespace (const std::string &name) const=0
 
std::string getParameterNameWithoutNamespace (const std::string &name) const override
 
void normalize ()
 
bool hasIndependentParameter (const std::string &name) const
 
ParameterList getAliasedParameters (const ParameterList &pl) const
 
ParameterList getFromParameters (const ParameterList &pl) const
 
std::string getFrom (const std::string &name) const
 
const std::shared_ptr< Parameter > & getParameter (const std::string &name) const
 

Static Public Attributes

static std::shared_ptr< IntervalConstraintFREQUENCE_CONSTRAINT_SMALL
 
static std::shared_ptr< IntervalConstraintFREQUENCE_CONSTRAINT_MILLI
 
static std::shared_ptr< IntervalConstraintFREQUENCE_CONSTRAINT_CENTI
 

Protected Member Functions

size_t getSizeFromVector (const std::vector< std::unique_ptr< FrequencySetInterface >> &freqVector) override
 
virtual ParameterListgetParameters_ ()=0
 
ParameterListgetParameters_ () override
 
std::vector< double > & getFrequencies_ ()
 
double & getFreq_ (size_t i)
 
const double & getFreq_ (size_t i) const
 
void setFrequencies_ (const std::vector< double > &frequencies)
 
const std::shared_ptr< Parameter > & getParameter (size_t i) const
 
std::shared_ptr< Parameter > & getParameter (size_t i)
 
void addParameter_ (Parameter *parameter)
 
void addParameters_ (const ParameterList &parameters)
 
void shareParameter_ (const std::shared_ptr< Parameter > &parameter)
 
void shareParameters_ (const ParameterList &parameters)
 
void includeParameters_ (const ParameterList &parameters)
 
void deleteParameter_ (size_t index)
 
void deleteParameter_ (std::string &name)
 
void deleteParameters_ (const std::vector< std::string > &names)
 
void resetParameters_ ()
 
ParametergetParameter_ (const std::string &name)
 
ParametergetParameter_ (size_t index)
 
const ParametergetParameter_ (size_t index) const
 
ParametergetParameterWithNamespace_ (const std::string &name)
 
const ParametergetParameterWithNamespace_ (const std::string &name) const
 

Protected Attributes

std::vector< std::unique_ptr< FrequencySetInterface > > vFreq_
 
std::vector< std::string > vNestedPrefix_
 

Private Attributes

std::shared_ptr< const Alphabetalphabet_
 
std::shared_ptr< const StateMapInterfacestateMap_
 
std::vector< double > freq_
 
std::string name_
 
ParameterList independentParameters_
 
std::map< std::string, std::shared_ptr< AliasParameterListener > > aliasListenersRegister_
 
ParameterList parameters_
 
std::string prefix_
 

Detailed Description

the Frequencies in words are the product of Independent Frequencies in letters

Author
Laurent Guéguen

Definition at line 91 of file WordFrequencySet.h.

Constructor & Destructor Documentation

◆ WordFromIndependentFrequencySet() [1/3]

WordFromIndependentFrequencySet::WordFromIndependentFrequencySet ( std::shared_ptr< const WordAlphabet pWA,
std::vector< std::unique_ptr< FrequencySetInterface >> &  freqVector,
const std::string &  prefix = "",
const std::string &  name = "WordFromIndependent" 
)

Constructor from a WordAlphabet* and a vector of different std::shared_ptr<FrequencySet>. Throws an Exception if their lengths do not match.

Definition at line 41 of file WordFrequencySet.cpp.

References bpp::AbstractParameterAliasable::addParameters_(), bpp::AbstractParameterAliasable::getNamespace(), bpp::AbstractParameterAliasable::getParameters(), bpp::AbstractWordFrequencySet::getSizeFromVector(), bpp::TextTools::toString(), updateFrequencies(), vFreq_, and vNestedPrefix_.

Referenced by clone().

◆ WordFromIndependentFrequencySet() [2/3]

WordFromIndependentFrequencySet::WordFromIndependentFrequencySet ( std::shared_ptr< const CodonAlphabet pWA,
std::vector< std::unique_ptr< FrequencySetInterface >> &  freqVector,
const std::string &  prefix = "",
const std::string &  name = "WordFromIndependent" 
)

◆ WordFromIndependentFrequencySet() [3/3]

WordFromIndependentFrequencySet::WordFromIndependentFrequencySet ( const WordFromIndependentFrequencySet iwfs)

Definition at line 98 of file WordFrequencySet.cpp.

References updateFrequencies(), and vFreq_.

◆ ~WordFromIndependentFrequencySet()

WordFromIndependentFrequencySet::~WordFromIndependentFrequencySet ( )
virtual

Definition at line 110 of file WordFrequencySet.cpp.

Member Function Documentation

◆ alphabet() [1/2]

virtual const Alphabet& bpp::FrequencySetInterface::alphabet ( ) const
pure virtualinherited
Returns
The alphabet associated to this set.

Implemented in bpp::AbstractFrequencySet.

◆ alphabet() [2/2]

const Alphabet& bpp::AbstractFrequencySet::alphabet ( ) const
inlineoverridevirtualinherited
Returns
The alphabet associated to this set.

Implements bpp::FrequencySetInterface.

Definition at line 142 of file FrequencySet.h.

References bpp::AbstractFrequencySet::alphabet_.

◆ clone()

WordFromIndependentFrequencySet* bpp::WordFromIndependentFrequencySet::clone ( ) const
inlineoverridevirtual

Implements bpp::AbstractWordFrequencySet.

Definition at line 121 of file WordFrequencySet.h.

References WordFromIndependentFrequencySet().

◆ fireParameterChanged()

void WordFromIndependentFrequencySet::fireParameterChanged ( const ParameterList pl)
overridevirtual

Reimplemented from bpp::AbstractParameterAliasable.

Definition at line 129 of file WordFrequencySet.cpp.

References updateFrequencies(), and vFreq_.

◆ frequencySetForLetter()

const FrequencySetInterface& bpp::WordFromIndependentFrequencySet::frequencySetForLetter ( size_t  i) const
inlineoverridevirtual

Return the n-th FrequencySet&.

Implements bpp::WordFrequencySetInterface.

Definition at line 142 of file WordFrequencySet.h.

References vFreq_.

◆ getAlphabet() [1/2]

◆ getAlphabet() [2/2]

◆ getAlphabetStatesFrequencies() [1/2]

virtual const std::map<int, double> bpp::FrequencySetInterface::getAlphabetStatesFrequencies ( ) const
pure virtualinherited
Returns
The frequencies of each alphabet states according to this model.

Implemented in bpp::AbstractFrequencySet.

◆ getAlphabetStatesFrequencies() [2/2]

const std::map< int, double > AbstractFrequencySet::getAlphabetStatesFrequencies ( ) const
overridevirtualinherited
Returns
The frequencies of each alphabet states according to this model.

Implements bpp::FrequencySetInterface.

Definition at line 57 of file FrequencySet.cpp.

◆ getDescription()

std::string WordFromIndependentFrequencySet::getDescription ( ) const

Definition at line 225 of file WordFrequencySet.cpp.

References bpp::AbstractFrequencySet::getName(), and vFreq_.

◆ getFreq_() [1/2]

◆ getFreq_() [2/2]

const double& bpp::AbstractFrequencySet::getFreq_ ( size_t  i) const
inlineprotectedinherited

Definition at line 180 of file FrequencySet.h.

References bpp::AbstractFrequencySet::freq_.

◆ getFrequencies() [1/2]

◆ getFrequencies() [2/2]

const Vdouble& bpp::AbstractFrequencySet::getFrequencies ( ) const
inlineoverridevirtualinherited
Returns
The frequencies values of the set.

Implements bpp::FrequencySetInterface.

Definition at line 148 of file FrequencySet.h.

References bpp::AbstractFrequencySet::freq_.

Referenced by bpp::MvaFrequencySet::updateFrequencies().

◆ getFrequencies_()

std::vector<double>& bpp::AbstractFrequencySet::getFrequencies_ ( )
inlineprotectedinherited

Definition at line 178 of file FrequencySet.h.

References bpp::AbstractFrequencySet::freq_.

Referenced by bpp::UserFrequencySet::readFromFile_().

◆ getLength()

size_t WordFromIndependentFrequencySet::getLength ( ) const
overridevirtual

Return the length of the words.

Reimplemented from bpp::AbstractWordFrequencySet.

Definition at line 211 of file WordFrequencySet.cpp.

References vFreq_.

◆ getName() [1/2]

virtual std::string bpp::FrequencySetInterface::getName ( ) const
pure virtualinherited

◆ getName() [2/2]

std::string bpp::AbstractFrequencySet::getName ( ) const
inlineoverridevirtualinherited

◆ getNumberOfFrequencies() [1/2]

virtual size_t bpp::FrequencySetInterface::getNumberOfFrequencies ( ) const
pure virtualinherited
Returns
The number of frequencies in the set. This is equivalent to getStateMap().getNumberOfModelStates().

Implemented in bpp::AbstractFrequencySet.

◆ getNumberOfFrequencies() [2/2]

size_t bpp::AbstractFrequencySet::getNumberOfFrequencies ( ) const
inlineoverridevirtualinherited
Returns
The number of frequencies in the set. This is equivalent to getStateMap().getNumberOfModelStates().

Implements bpp::FrequencySetInterface.

Definition at line 163 of file FrequencySet.h.

References bpp::AbstractFrequencySet::freq_.

Referenced by bpp::FromModelFrequencySet::setFrequencies(), bpp::FixedFrequencySet::setFrequencies(), and bpp::UserFrequencySet::setFrequencies().

◆ getSizeFromVector()

size_t AbstractWordFrequencySet::getSizeFromVector ( const std::vector< std::unique_ptr< FrequencySetInterface >> &  freqVector)
overrideprotectedvirtualinherited

Implements bpp::WordFrequencySetInterface.

Definition at line 12 of file WordFrequencySet.cpp.

Referenced by WordFromIndependentFrequencySet().

◆ getStateMap() [1/2]

virtual std::shared_ptr<const StateMapInterface> bpp::FrequencySetInterface::getStateMap ( ) const
pure virtualinherited
Returns
A shared_ptr toward the mapping of model states with alphabet states.

Implemented in bpp::AbstractFrequencySet.

◆ getStateMap() [2/2]

std::shared_ptr<const StateMapInterface> bpp::AbstractFrequencySet::getStateMap ( ) const
inlineoverridevirtualinherited
Returns
A shared_ptr toward the mapping of model states with alphabet states.

Implements bpp::FrequencySetInterface.

Definition at line 146 of file FrequencySet.h.

References bpp::AbstractFrequencySet::stateMap_.

◆ getWordAlphabet()

◆ normalize()

void bpp::AbstractFrequencySet::normalize ( )
inlineinherited

◆ operator=()

◆ setFrequencies()

void WordFromIndependentFrequencySet::setFrequencies ( const std::vector< double > &  frequencies)
overridevirtual

Independent letter frequencies from given word frequencies. The frequencies of a letter at a position is the sum of the frequencies of the words that have this letter at this position.

Implements bpp::FrequencySetInterface.

Definition at line 169 of file WordFrequencySet.cpp.

References bpp::AbstractParameterAliasable::getParameters(), bpp::AbstractWordFrequencySet::getWordAlphabet(), bpp::AbstractParameterAliasable::matchParametersValues(), bpp::TextTools::toString(), updateFrequencies(), and vFreq_.

◆ setFrequencies_()

◆ setFrequenciesFromAlphabetStatesFrequencies() [1/2]

void AbstractFrequencySet::setFrequenciesFromAlphabetStatesFrequencies ( const std::map< int, double > &  frequencies)
overridevirtualinherited

Set the Frequencies from the one of the map which keys match with a letter of the Alphabet. The frequencies are normalized so that the matching values sum 1.

In this implementation, all model states with the same alphabet state are given the same frequency.

Parameters
frequenciesThe set of frequencies to match.

Implements bpp::FrequencySetInterface.

Definition at line 28 of file FrequencySet.cpp.

◆ setFrequenciesFromAlphabetStatesFrequencies() [2/2]

virtual void bpp::FrequencySetInterface::setFrequenciesFromAlphabetStatesFrequencies ( const std::map< int, double > &  frequencies)
pure virtualinherited

Set the Frequencies from the one of the map which keys match with a letter of the Alphabet. The frequencies are normalized so that the matching values sum 1.

Parameters
frequenciesThe set of frequencies to match.

Implemented in bpp::AbstractFrequencySet.

Referenced by bpp::BppOFrequencySetFormat::initialize_().

◆ setNamespace()

void WordFromIndependentFrequencySet::setNamespace ( const std::string &  prefix)
overridevirtual

◆ stateMap() [1/2]

virtual const StateMapInterface& bpp::FrequencySetInterface::stateMap ( ) const
pure virtualinherited
Returns
The mapping of model states with alphabet states.

Implemented in bpp::AbstractFrequencySet.

◆ stateMap() [2/2]

const StateMapInterface& bpp::AbstractFrequencySet::stateMap ( ) const
inlineoverridevirtualinherited

◆ updateFrequencies()

Member Data Documentation

◆ alphabet_

std::shared_ptr<const Alphabet> bpp::AbstractFrequencySet::alphabet_
privateinherited

◆ freq_

◆ FREQUENCE_CONSTRAINT_CENTI

std::shared_ptr< IntervalConstraint > FrequencySetInterface::FREQUENCE_CONSTRAINT_CENTI
staticinherited

◆ FREQUENCE_CONSTRAINT_MILLI

std::shared_ptr< IntervalConstraint > FrequencySetInterface::FREQUENCE_CONSTRAINT_MILLI
staticinherited

Definition at line 91 of file FrequencySet.h.

◆ FREQUENCE_CONSTRAINT_SMALL

std::shared_ptr< IntervalConstraint > FrequencySetInterface::FREQUENCE_CONSTRAINT_SMALL
staticinherited

◆ name_

std::string bpp::AbstractFrequencySet::name_
privateinherited

◆ stateMap_

std::shared_ptr<const StateMapInterface> bpp::AbstractFrequencySet::stateMap_
privateinherited

◆ vFreq_

std::vector<std::unique_ptr<FrequencySetInterface> > bpp::WordFromIndependentFrequencySet::vFreq_
protected

◆ vNestedPrefix_

std::vector<std::string> bpp::WordFromIndependentFrequencySet::vNestedPrefix_
protected

Definition at line 96 of file WordFrequencySet.h.

Referenced by operator=(), setNamespace(), and WordFromIndependentFrequencySet().


The documentation for this class was generated from the following files: