RxDock 0.1.0
A fast, versatile, and open-source program for docking ligands to proteins and nucleic acids
Loading...
Searching...
No Matches
GATransform.h
1/***********************************************************************
2 * The rDock program was developed from 1998 - 2006 by the software team
3 * at RiboTargets (subsequently Vernalis (R&D) Ltd).
4 * In 2006, the software was licensed to the University of York for
5 * maintenance and distribution.
6 * In 2012, Vernalis and the University of York agreed to release the
7 * program as Open Source software.
8 * This version is licensed under GNU-LGPL version 3.0 with support from
9 * the University of Barcelona.
10 * http://rdock.sourceforge.net/
11 ***********************************************************************/
12
13// Evolves an existing population using a GA
14#ifndef _RBTGATRANSFORM_H_
15#define _RBTGATRANSFORM_H_
16
17#include "rxdock/BaseBiMolTransform.h"
18#include "rxdock/Population.h"
19#include "rxdock/Rand.h"
20
21namespace rxdock {
22
24public:
25 static const std::string _CT;
26 // New individuals to create each cycle, as fraction of population size
27 static const std::string _NEW_FRACTION;
28 // Probability of crossover (1-probability of mutation)
29 static const std::string _PCROSSOVER;
30 // If true, perform Cauchy mutation after each crossover
31 static const std::string _XOVERMUT;
32 // If true, mutations are from Cauchy distribution; if false, from rect.
33 // distribution
34 static const std::string _CMUTATE;
35 // Relative step size for mutations (relative to absolute step sizes defined
36 // for each chromosome element)
37 static const std::string _STEP_SIZE;
38 // Two genomes are considered equal if the maximum relative difference
39 // between chromosome elements is less than _EQUALITY_THRESHOLD
40 static const std::string _EQUALITY_THRESHOLD;
41 // Maximum number of cycles
42 static const std::string _NCYCLES;
43 // Terminate if the best score does not improve over _NCONVERGENCE
44 // consecutive cycles
45 static const std::string _NCONVERGENCE;
46 // Output the best pose every _HISTORY_FREQ cycles.
47 static const std::string _HISTORY_FREQ;
48
50 // Constructors/destructors
52 RBTDLL_EXPORT GATransform(const std::string &strName = "GAGENRW");
53 virtual ~GATransform();
54
55protected:
57 // Protected methods
59 virtual void SetupReceptor(); // Called by Update when receptor is changed
60 virtual void SetupLigand(); // Called by Update when ligand is changed
61 virtual void
62 SetupTransform(); // Called by Update when either model has changed
63 virtual void Execute();
64
65private:
67 // Private methods
69 GATransform(const GATransform &); // Copy constructor disabled by
70 // default
72 operator=(const GATransform &); // Copy assignment disabled by default
73
74private:
75 Rand &m_rand;
76};
77
78} // namespace rxdock
79
80#endif //_RBTGATRANSFORM_H_
Definition BaseBiMolTransform.h:27
Definition GATransform.h:23
Definition Rand.h:32