The proto-Nucleic-Acid Builder (pNAB)
|
A class for holding necessary and optional runtime parameters for conformational searches. More...
#include <Containers.h>
Public Member Functions | |
RuntimeParameters () | |
Empty constructor. More... | |
Public Attributes | |
std::vector< double > | energy_filter |
[max bond E, max angle E, max torsion E, max VDW E, max total E] More... | |
double | max_distance |
Maximum accepted distance (Angstrom) between head and tail of successive nucleotides. More... | |
std::string | ff_type |
The type of the forcefield such as "GAFF" or "MMFF94"; available through Openbabel. More... | |
std::string | search_algorithm |
The search algorithm. More... | |
std::size_t | num_steps |
The number of points sampled in Monte Carlo and random searches and the number of generations in the genetic algorithm search. More... | |
unsigned int | seed |
double | dihedral_step |
The dihedral step size for systematic search (degrees) More... | |
double | weighting_temperature |
The temperature used to compute the weighted probability for weighted Monte Carlo and weighted random searches. More... | |
double | monte_carlo_temperature |
The temperature used in the Monte Carlo acceptance and rejection procedure. More... | |
double | mutation_rate |
The mutation rate in the genetic algorithm search. More... | |
double | crossover_rate |
The crossover rate in the genetic algorithm search. More... | |
int | population_size |
The population size in the genetic algorithm search. More... | |
std::vector< std::string > | strand |
The names of each base used in the strand. More... | |
std::vector< bool > | build_strand |
Defines whether to build a given strand. More... | |
std::vector< bool > | strand_orientation |
Defines strand orientation for each strand in the hexad. More... | |
bool | is_hexad |
Defines whether the 60 degrees rotation for hexads is performed. More... | |
double | glycosidic_bond_distance |
Set a user-defined glycosidic bond distance (in Angstroms). If zero (default), sets the distance based on van der Waals radii. More... | |
unsigned int | num_candidates |
Quit after finding the specified number of accepted candidates. More... | |
A class for holding necessary and optional runtime parameters for conformational searches.
The runtime parameters are used for building the strands and during the conformational search.
|
inline |
Empty constructor.
This empty constructor can be used. After that, values for the member variables should be specified.
std::vector<bool> PNAB::RuntimeParameters::build_strand |
Defines whether to build a given strand.
double PNAB::RuntimeParameters::crossover_rate |
The crossover rate in the genetic algorithm search.
double PNAB::RuntimeParameters::dihedral_step |
The dihedral step size for systematic search (degrees)
The number of steps will be \((\frac{360.0}{\textrm{dihedral step}})^{\textrm{number of rotatable dihedrals}}\).
std::vector<double> PNAB::RuntimeParameters::energy_filter |
[max bond E, max angle E, max torsion E, max VDW E, max total E]
- Maximum accepted energy for newly formed bonds in the backbone (kcal/mol/bond) - Maximum accepted energy for newly formed angles in the backbone (kcal/mol/angle) - Maximum accepted torsional energy for rotatable bonds (kcal/mol/nucleotide) - Maximum accepted van der Waals energy (kcal/mol/nucleotide) - Maximum accepted total energy (kcal/mol/nucleotide) @sa Chain::generateConformerData @sa Chain::fillConformerEnergyData
std::string PNAB::RuntimeParameters::ff_type |
The type of the forcefield such as "GAFF" or "MMFF94"; available through Openbabel.
double PNAB::RuntimeParameters::glycosidic_bond_distance |
Set a user-defined glycosidic bond distance (in Angstroms). If zero (default), sets the distance based on van der Waals radii.
bool PNAB::RuntimeParameters::is_hexad |
Defines whether the 60 degrees rotation for hexads is performed.
double PNAB::RuntimeParameters::max_distance |
Maximum accepted distance (Angstrom) between head and tail of successive nucleotides.
This distance is used to quickly screen rotamers. The algorithm searches for backbone candidates that are periodic in terms of the helical structure. Thus, the terminal atoms in adjacent candidates must be within a small distance to allow for a bond to form. This distance is recommended to be less than 0.1 Angstroms. The extra terminal atom in the adjacent nucleotide is then removed.
double PNAB::RuntimeParameters::monte_carlo_temperature |
The temperature used in the Monte Carlo acceptance and rejection procedure.
double PNAB::RuntimeParameters::mutation_rate |
The mutation rate in the genetic algorithm search.
unsigned int PNAB::RuntimeParameters::num_candidates |
Quit after finding the specified number of accepted candidates.
std::size_t PNAB::RuntimeParameters::num_steps |
The number of points sampled in Monte Carlo and random searches and the number of generations in the genetic algorithm search.
int PNAB::RuntimeParameters::population_size |
The population size in the genetic algorithm search.
std::string PNAB::RuntimeParameters::search_algorithm |
The search algorithm.
There are six search algorithms:
Genetic algorithm search
unsigned int PNAB::RuntimeParameters::seed |
std::vector<std::string> PNAB::RuntimeParameters::strand |
The names of each base used in the strand.
std::vector<bool> PNAB::RuntimeParameters::strand_orientation |
Defines strand orientation for each strand in the hexad.
double PNAB::RuntimeParameters::weighting_temperature |
The temperature used to compute the weighted probability for weighted Monte Carlo and weighted random searches.