bpp-phyl3  3.0.0
CoalaCore.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: The Bio++ Development Group
2 //
3 // SPDX-License-Identifier: CECILL-2.1
4 
5 #ifndef BPP_PHYL_MODEL_PROTEIN_COALACORE_H
6 #define BPP_PHYL_MODEL_PROTEIN_COALACORE_H
7 
8 
9 // From bpp-core:
12 
13 // From bpp-seq:
16 
17 
18 namespace bpp
19 {
31 class CoalaCore
32 {
33 protected:
34  bool init_;
35  size_t nbrOfAxes_;
38  std::vector<double> colWeights_;
40 
41 public:
42  CoalaCore(size_t nbAxes = 0);
43 
44  virtual ~CoalaCore() {}
45 
46  CoalaCore* clone() const { return new CoalaCore(*this); }
47 
48 public:
49  size_t getNbrOfAxes() const { return nbrOfAxes_; }
50  const RowMatrix<double>& getTppalAxesMatrix() const { return P_; }
51  const RowMatrix<double>& getRowCoordinates() const { return R_; }
52  const std::vector<double>& getColumnWeights() const { return colWeights_; }
53 
54 protected:
66  ParameterList computeCOA(const SequenceDataInterface& data, double pseudoCount = 0, bool param = true);
67 
68  std::vector<double> prodMatrixVector(RowMatrix<double>& P, std::vector<double>& V);
69 };
70 } // end of namespace bpp.
71 #endif // BPP_PHYL_MODEL_PROTEIN_COALACORE_H
This class is the core class inherited by the Coala class. COaLA is a branch-heterogeneous amino-acid...
Definition: CoalaCore.h:32
size_t nbrOfAxes_
Definition: CoalaCore.h:35
virtual ~CoalaCore()
Definition: CoalaCore.h:44
std::vector< double > colWeights_
Definition: CoalaCore.h:38
const std::vector< double > & getColumnWeights() const
Definition: CoalaCore.h:52
ParameterList paramValues_
Definition: CoalaCore.h:39
const RowMatrix< double > & getTppalAxesMatrix() const
Definition: CoalaCore.h:50
size_t getNbrOfAxes() const
Definition: CoalaCore.h:49
RowMatrix< double > P_
Definition: CoalaCore.h:36
CoalaCore(size_t nbAxes=0)
Definition: CoalaCore.cpp:29
std::vector< double > prodMatrixVector(RowMatrix< double > &P, std::vector< double > &V)
Definition: CoalaCore.cpp:156
RowMatrix< double > R_
Definition: CoalaCore.h:37
const RowMatrix< double > & getRowCoordinates() const
Definition: CoalaCore.h:51
CoalaCore * clone() const
Definition: CoalaCore.h:46
ParameterList computeCOA(const SequenceDataInterface &data, double pseudoCount=0, bool param=true)
Comoute COA from data and return the axis position parameters.
Definition: CoalaCore.cpp:40
Defines the basic types of data flow nodes.