#include <BALL/STRUCTURE/DNAMutator.h>
|
void | mutateSingleBase_ (Residue *res, const String &basename) const |
|
void | freeFF_ () |
|
void | mark_ (AtomContainer *atoms) const |
|
void | unmark_ (AtomContainer *atoms) const |
|
bool | optimize_ (Fragment *frag) |
|
Atom * | getAttachmentAtom (AtomContainer *res) const |
|
Atom * | markBaseAtoms_ (AtomContainer *res) const |
|
void | alignBases_ (AtomContainer *from, const Vector3 &from_connection, const Vector3 &to_connection, Atom *from_at) const |
|
Atom * | getTorsionDefiningAtom_ (Atom *atom) const |
|
const Atom * | getTorsionDefiningAtom_ (const Atom *atom) const |
|
void | rotateBasesMatchTorsion_ (AtomContainer *from, const Atom *to_connection_at, Atom *from_at, const Atom *to_at) const |
|
void | rotateBasesMinAngle_ (AtomContainer *from, const Vector3 &to_connection, Atom *from_at, const Atom *to_at) const |
|
void | rotateSameBases_ (AtomContainer *from, AtomContainer *to) const |
|
Vector3 | getNormalVector_ (const Atom *at) const |
|
Atom * | getConnectionAtom_ (Atom *at) const |
|
String | canonizeName_ (const String &frag_name) const |
|
bool | isPurine_ (const Atom &baseNitrogen) const |
|
bool | isPyrimidine_ (const Atom &baseNitrogen) const |
|
String | getComplement_ (const String &s) const |
|
Definition at line 30 of file DNAMutator.h.
This controls how a purine and pyrimidine base are matched onto each other
Enumerator |
---|
MINIMUM_ANGLE |
Use a minimum angle criterion and try out which conformation fits best.
|
MATCH_TORSION |
Set the torsion angle of the sugar-base connection in the new base to the torsion angle found in the second base
|
Definition at line 36 of file DNAMutator.h.
BALL::DNAMutator::~DNAMutator |
( |
| ) |
|
void BALL::DNAMutator::addMutation |
( |
Index |
i, |
|
|
const String & |
new_frag_name |
|
) |
| |
|
virtual |
String BALL::DNAMutator::canonizeName_ |
( |
const String & |
frag_name | ) |
const |
|
private |
void BALL::DNAMutator::clearMutations |
( |
| ) |
|
|
virtual |
Clears the already specified mutations.
Implements BALL::Mutator.
void BALL::DNAMutator::freeFF_ |
( |
| ) |
|
|
private |
This function returns a pointer to the nitrogen atom that attaches a base to the sugar backbone
String BALL::DNAMutator::getComplement_ |
( |
const String & |
s | ) |
const |
|
private |
Atom* BALL::DNAMutator::getConnectionAtom_ |
( |
Atom * |
at | ) |
const |
|
private |
Vector3 BALL::DNAMutator::getNormalVector_ |
( |
const Atom * |
at | ) |
const |
|
private |
Atom* BALL::DNAMutator::getTorsionDefiningAtom_ |
( |
Atom * |
atom | ) |
const |
|
private |
const Atom* BALL::DNAMutator::getTorsionDefiningAtom_ |
( |
const Atom * |
atom | ) |
const |
|
private |
bool BALL::DNAMutator::isPurine_ |
( |
const Atom & |
baseNitrogen | ) |
const |
|
private |
The methods below decide whether a base is a Purine or a Pyrimidine. In an ideal distant future this should be stored in the fragment and thus be not necessary.
bool BALL::DNAMutator::isPyrimidine_ |
( |
const Atom & |
baseNitrogen | ) |
const |
|
private |
Selects the atoms in a base. If succesfull it returns the pointer to the attachment nitrogen.
void BALL::DNAMutator::mutateSingleBase_ |
( |
Residue * |
res, |
|
|
const String & |
basename |
|
) |
| const |
|
private |
bool BALL::DNAMutator::optimize |
( |
| ) |
|
|
virtual |
This function optimizes the new bases. Inherited from Mutator. Calling it before mutate will have no effect.
- Returns
- true if the optimization was successful false otherwise.
Implements BALL::Mutator.
Reoptimize the given fragment using the minimizer stored in minimizer_.
- Returns
- false on error.
void BALL::DNAMutator::rotateBasesMatchTorsion_ |
( |
AtomContainer * |
from, |
|
|
const Atom * |
to_connection_at, |
|
|
Atom * |
from_at, |
|
|
const Atom * |
to_at |
|
) |
| const |
|
private |
void BALL::DNAMutator::rotateBasesMinAngle_ |
( |
AtomContainer * |
from, |
|
|
const Vector3 & |
to_connection, |
|
|
Atom * |
from_at, |
|
|
const Atom * |
to_at |
|
) |
| const |
|
private |
void BALL::DNAMutator::setFirstStrand |
( |
Chain * |
s1 | ) |
|
void BALL::DNAMutator::setForceField |
( |
ForceField * |
ff | ) |
|
Set a new ForceField instance that is used in conjunction with the minimizer to refine the structure. Even if no minimizer has been passed this force field will be used to calculate the most favourable rotation of the base using a simple heuristic. If you do not want this behaviour pass NULL.
void BALL::DNAMutator::setMatchingMode |
( |
MatchingMode |
mmode | ) |
|
Sets the matching heuristic used for aligning a pyrimidine to a purine base. Default is MATCH_TORSION.
void BALL::DNAMutator::setMaxOptimizationSteps |
( |
Size |
steps | ) |
|
Controlls maximum number of steps to be used when refining the generated structure via a minimizer.
Set the current minimizer to mini. Passing NULL will disable minimization.
void BALL::DNAMutator::setSecondStrand |
( |
Chain * |
s2 | ) |
|
void BALL::DNAMutator::setStrands |
( |
Chain * |
s1, |
|
|
Chain * |
s2 |
|
) |
| |
virtual void BALL::DNAMutator::setup |
( |
| ) |
|
|
virtual |
Calling this method explicitly circumvents lazy loading of the FragmentDB. This method has no effect if mutate has already been called or if valid instances of the FragmentDB has been passed via the constructor.
- Warning
- If you called setup() and then set the FragmentDB to NULL via setFragmentDB() you will need to call setup() again in order to prevent lazy loading.
Reimplemented from BALL::Mutator.
void BALL::DNAMutator::setUsedProperty |
( |
Property |
p | ) |
|
The DNAMutator internally uses the unnamed property mechanism of the Atoms. This defaults to property Atom::NUMBER_OF_PROPERTIES. If you already use this property in your code you can set another property by passing it to this function.
const char* BALL::DNAMutator::bases_[] |
|
staticprivate |
const Size BALL::DNAMutator::default_num_steps_ |
|
staticprivate |
Chain* BALL::DNAMutator::first_strand_ |
|
private |
bool BALL::DNAMutator::keep_ff_ |
|
private |
Size BALL::DNAMutator::num_steps_ |
|
private |
Chain* BALL::DNAMutator::second_strand_ |
|
private |
std::deque<Atom*> BALL::DNAMutator::to_optimize_ |
|
private |