#include <PPhiPsiDistribution.h>
Public Member Functions | |
PPhiPsiDistribution () | |
PPhiPsiDistribution (const vector< vector< double > > &v, const string &name="anything") | |
void | print (ostream &out) const |
double | getProbPhiPsi (double phi, double psi) const |
vector< double > | getPhiDistribution (double psiValue) const |
vector< double > | getPsiDistribution (double phiValue) const |
vector< double > | getPhiDistribution () const |
vector< double > | getPsiDistribution () const |
bool | isEmpty () const |
int | numPhiIntervals () const |
int | numPsiIntervals () const |
Static Public Member Functions | |
static map< string, PPhiPsiDistribution > | generateRamachandran () |
PPhiPsiDistribution::PPhiPsiDistribution | ( | ) | [inline] |
PPhiPsiDistribution::PPhiPsiDistribution | ( | const vector< vector< double > > & | v, | |
const string & | name = "anything" | |||
) |
Construct a PPhiPsiDistribution object by providing the distribution v
and a corresponding name
. In v, the 1st dimension is about Phi and the 2nd dimension is about Psi i.e., v[i][j] is the probability of taking the Phi in the ith interval and Psi in the jth interval. Important: 1. All inner vectors must have the same size. 2. All entries should sum up to 1. 3. v[i][0] to v[i][n-1] store the probability of Psi in 360/n degree intervals from -180 to +179. v[0][j] to v[n-1][j] store the probability of Phi in 360/n degree intervals from -180 to +179. For example: vector<double> row1, row2; row1.push_back(0.1); row1.push_back(0.2); row1.push_back(0.3); row2.push_back(0.2); row2.push_back(0.1); row2.push_back(0.1); vector< vector<double> > phipsi; phipsi.push_back(row1); phipsi.push_back(row2); This means: the phi angle has two intervals: [-180,0) and [0,+179], and psi angle has three intervals: [-180,-60), [-60,+60) and [+60,179]. The probabilty of a residue taking phi angle in [-180,0) and psi angle in [+60,+179] is 0.3.
void PPhiPsiDistribution::print | ( | ostream & | out | ) | const |
double PPhiPsiDistribution::getProbPhiPsi | ( | double | phi, | |
double | psi | |||
) | const |
vector< double > PPhiPsiDistribution::getPhiDistribution | ( | double | psiValue | ) | const |
vector< double > PPhiPsiDistribution::getPsiDistribution | ( | double | phiValue | ) | const |
vector<double> PPhiPsiDistribution::getPhiDistribution | ( | ) | const [inline] |
vector<double> PPhiPsiDistribution::getPsiDistribution | ( | ) | const [inline] |
bool PPhiPsiDistribution::isEmpty | ( | ) | const [inline] |
int PPhiPsiDistribution::numPhiIntervals | ( | ) | const [inline] |
Returns the number of phi intervals in this distribution.
int PPhiPsiDistribution::numPsiIntervals | ( | ) | const [inline] |
Returns the number of psi intervals in this distribution.
map< string, PPhiPsiDistribution > PPhiPsiDistribution::generateRamachandran | ( | ) | [static] |