PROFASI  Version 1.5
Public Member Functions | List of all members
prf::TorsionTerm Class Reference

Torsion angle potential. More...

#include <TorsionTerm.hh>

Inheritance diagram for prf::TorsionTerm:
Inheritance graph
[legend]

Public Member Functions

double evaluate ()
 
double deltaE (Update *)
 do a new delta calculation optimized for the given kind of update
 
void rangeEstimate (double &x1, double &x2)
 Estimate a range in which values of this observable are expected.
 
- Public Member Functions inherited from prf::Energy
void Connect (Population *pl)
 Connect the energy term with one population.
 
virtual void set_pars (std::string pars)
 Set some adjustible parameters.
 
void refresh ()
 Overrides the virtual member from the Observable class.
 
double value ()
 return result from last calculation
 
double deltaE ()
 return result from the last energy change calculation
 
double delta (Update *)
 Quick estimate of the change in an Observable due to an update.
 
virtual double deltaEwithlimit (Update *updt, double maxde)
 Calculate energy change for an update, but with a stop condition.
 
virtual void Accept (Update *)
 Accept a proposed update.
 
virtual void Revert (Update *)
 Reject a proposed update.
 
int init_obs ()
 All observables must implement one initialize routine.
 
- Public Member Functions inherited from prf::Observable
void set (std::string cmd)
 Give the object an instruction to process during initialization.
 
double operator() ()
 Retrieve the value of the observable.
 
double Value ()
 Retrieve the value of the observable.
 
void disable_stats ()
 Stop collecting statistical data like averages and histograms.
 
void enable_stats ()
 Start collecting statistical data like averages and histograms.
 
- Public Member Functions inherited from prf::Named
 Named ()
 Create an object with name "unnamed".
 
 Named (const char *st)
 Create an object with name st given as a C string.
 
 Named (std::string st)
 Create an object with a name given as a string.
 
std::string Name () const
 Retrive the name of an object.
 
void Name (std::string gnm)
 Assign a new name to an object.
 

Detailed Description

Distributions of various torsional degrees of freedom in PROFASI is approximately correct without the need of a term in the energy that explicitly depends on the torsion angles. The purely repulsive excluded volume term and the local backbone electrostatics lead to reasonable distributions of the torsion angles. But there are a few that misbehave. The angular distributions of Asparagine, the backbone angle distribution of Glycine are important examples. It indicates that there is some relevant physics for a few amino acids, which is missed by a model based purely on repulsions. This term is to address only those cases. It is to be interpreted as a proxy for some physics we do not understand perfectly.

Member Function Documentation

double prf::TorsionTerm::evaluate ( )
virtual

do a new ab initio calculation

Reimplemented from prf::Energy.

void prf::TorsionTerm::rangeEstimate ( double &  x1,
double &  x2 
)
virtual

The default is between 0 and 1. So, for observables with values always between 0 and 1, you need not over-write this virtual function. Sometimes the observable will have a different fixed range, determined by its definition. Sometimes the range can not be determined perfectly. In such a case, let this function just return something reasonable.

Reimplemented from prf::Energy.


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

PROFASI: Protein Folding and Aggregation Simulator, Version 1.5
© (2005-2016) Anders Irbäck and Sandipan Mohanty
Documentation generated on Mon Jul 18 2016 using Doxygen version 1.8.2