PSampMethods Class Reference

#include <PSampMethods.h>

List of all members.


Detailed Description

This contains methods for generating samples using various strategies


Static Public Member Functions

static IKSolution RandAndIKClose (PProtein *loop, bool clash_free)
static IKSolution RandAndIKClose (PProtein *loop, const string &pdbFileName, bool clash_free)
static IKSolutions PermuteIK (PProtein *loop, int num_wanted)
static vector< PProtein * > DeformSampleBackbone (PProtein *orig_protein, int loopSid, int loopEid, int num_wanted, double deform_mag)
static vector< PProtein * > SeedSampleBackbone (PProtein *protein, int loopSid, int loopEid, int num_wanted=1)
static vector< PProtein * > SeedSampleBackbone (PProtein *protein, int loopSid, int loopEid, map< string, PPhiPsiDistribution > &distri_map, int num_wanted=1)
static PProteinMergeProtein (PProtein *loop, PProtein *original_protein, int startRid)
static void addSidechain (string loopFile, string boundaryFile, string scwrl3_path, string outLoopFile)


Member Function Documentation

IKSolution PSampMethods::RandAndIKClose ( PProtein loop,
bool  clash_free 
) [static]

Randomizes the loop and then closes it using Exact IK method Coutsias et al. Sampled conformation is collision free or not depending on clash_free.

IKSolution PSampMethods::RandAndIKClose ( PProtein loop,
const string &  pdbFileName,
bool  clash_free 
) [static]

Randomizes the loop and then closes it using Exact IK method Coutsias et al. Sampled conformation is collision free or not depending on clash_free. The conformation is output to pdbFileName.

IKSolutions PSampMethods::PermuteIK ( PProtein loop,
int  num_wanted 
) [static]

Generates num_wanted (number of) closed conformations starting from a closed conformation of a loop loop, by using various permutations of 6DOFs as needed by ExactIK solution method developed by Coutsias et al.

vector< PProtein * > PSampMethods::DeformSampleBackbone ( PProtein orig_protein,
int  loopSid,
int  loopEid,
int  num_wanted,
double  deform_mag 
) [static]

Generates num_wanted (number of) closed clash-free,backbone conformations by deforming a loop specified by residue indices loopSid and loopEid of protein chain specified by orig_protein. The loop is deformed in a random direction in its null/tangent space and the magnitude of deformation is specified by deform_mag. orig_protein stays unchanged. Side chains act like rigid bodies attached to the backbone. New side chains can be placed using addSideChain method defined in this class.

vector< PProtein * > PSampMethods::SeedSampleBackbone ( PProtein protein,
int  loopSid,
int  loopEid,
int  num_wanted = 1 
) [static]

Generates num_wanted (number of)closed, clash-free backbone conformations of a loop specified by residue indices loopSid and loopEid of protein chain specified by orig_protein. Note that, the residue index starts from 0.If num_wanted is not specified, the default is 1. The protein original_protein is not changed at all in the function. The output is a vector of pointers to proteins containing the desired loop conformation. The resulting closed, collsion-free loop backbones will only consist of N, C_alpha, C_beta, C and O atoms. There will be no collision between any atom on the loop backbone with any other atom on the loop backbone or with any atom on the rest of the protein.The phi and psi angles in the loop are sampled uniformly between 0 and 2 pi.

vector< PProtein * > PSampMethods::SeedSampleBackbone ( PProtein protein,
int  loopSid,
int  loopEid,
map< string, PPhiPsiDistribution > &  distri_map,
int  num_wanted = 1 
) [static]

Same as the other SeedSampleBackbone method, but the phi and psi angles are sampled according a distribution. If the distribution map distri_map only has one element, then this distribution will be applied on all amino acids. Otherwise, there should be 20 distributions in the map. Each distribution corresponds to one amino acid, and the corresponding name of a distribution should be the 3-letter amino acid name in all capital letters.

PProtein * PSampMethods::MergeProtein ( PProtein loop,
PProtein original_protein,
int  startRid 
) [static]

Merges the loop with the original_protein. The 0-th residue in the loop becomes the startRid-th residue in the resulting protein. Neither loop or original_protein is changed in the function. Users are responsible to delete the returned protein if they don't need it any more.

void PSampMethods::addSidechain ( string  loopFile,
string  boundaryFile,
string  scwrl3_path,
string  outLoopFile 
) [static]

Add side chains to a loop using SCWRL3 with option -i, -o and -f. For the details of SCWRL3 and its usage, please go to http://dunbrack.fccc.edu/SCWRL3.php. The loop is specified in a pdb file loopFile (option -i). A boundary is specified in a pdb file boundaryFile (option -f). Please specify the FULL path of your scwrl3 program at scwrl3_path. The loop with side chain will be written into a pdb format file outLoopFile. Note that, in the output loop file outLoopFile, columns after the 3D coordinates are not meaningful.


The documentation for this class was generated from the following files:
Generated on Wed May 16 20:22:14 2007 for LoopTK: Protein Loop Kinematic Toolkit by  doxygen 1.5.1