The proto-Nucleic-Acid Builder (pNAB)
Public Member Functions | Public Attributes | List of all members
PNAB::RuntimeParameters Class Reference

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...
 

Detailed Description

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.

See also
Chain
ConformationSearch

Constructor & Destructor Documentation

◆ RuntimeParameters()

PNAB::RuntimeParameters::RuntimeParameters ( )
inline

Empty constructor.

This empty constructor can be used. After that, values for the member variables should be specified.

Member Data Documentation

◆ build_strand

std::vector<bool> PNAB::RuntimeParameters::build_strand

Defines whether to build a given strand.

See also
Chain::Chain

◆ crossover_rate

double PNAB::RuntimeParameters::crossover_rate

The crossover rate in the genetic algorithm search.

See also
ConformationSearch::GeneticAlgorithmSearch

◆ dihedral_step

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}}\).

See also
ConformationSearch::SystematicSearch

◆ energy_filter

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

◆ ff_type

std::string PNAB::RuntimeParameters::ff_type

The type of the forcefield such as "GAFF" or "MMFF94"; available through Openbabel.

See also
Chain::Chain

◆ glycosidic_bond_distance

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.

◆ is_hexad

bool PNAB::RuntimeParameters::is_hexad

Defines whether the 60 degrees rotation for hexads is performed.

◆ max_distance

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.

See also
ConformationSearch::measureDistance

◆ monte_carlo_temperature

double PNAB::RuntimeParameters::monte_carlo_temperature

The temperature used in the Monte Carlo acceptance and rejection procedure.

See also
ConformationSearch::MonteCarloSearch

◆ mutation_rate

double PNAB::RuntimeParameters::mutation_rate

The mutation rate in the genetic algorithm search.

See also
ConformationSearch::GeneticAlgorithmSearch

◆ num_candidates

unsigned int PNAB::RuntimeParameters::num_candidates

Quit after finding the specified number of accepted candidates.

◆ num_steps

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.

See also
ConformationSearch::MonteCarloSearch
ConformationSearch::RandomSearch
ConformationSearch::GeneticAlgorithmSearch

◆ population_size

int PNAB::RuntimeParameters::population_size

The population size in the genetic algorithm search.

See also
ConformationSearch::GeneticAlgorithmSearch

◆ search_algorithm

std::string PNAB::RuntimeParameters::search_algorithm

The search algorithm.

There are six search algorithms:

  • Systematic search
  • Monte Carlo search
  • Weighted Monte Carlo search
  • Random search
  • Weighted random search
  • Genetic algorithm search

    See also
    ConformationSearch

◆ seed

unsigned int PNAB::RuntimeParameters::seed

◆ strand

std::vector<std::string> PNAB::RuntimeParameters::strand

The names of each base used in the strand.

◆ strand_orientation

std::vector<bool> PNAB::RuntimeParameters::strand_orientation

Defines strand orientation for each strand in the hexad.

See also
Chain::setCoordsForChain
Chain::setCoordsForChain

◆ weighting_temperature

double PNAB::RuntimeParameters::weighting_temperature

The temperature used to compute the weighted probability for weighted Monte Carlo and weighted random searches.

See also
ConformationSearch::WeightedDistributions

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