Commit 9b386c51 by Chloe Dequeker

dist threshold as an argument

parent 9349157a
......@@ -144,6 +144,8 @@ void getInterface(struct pdb_values* pdbR, struct pdb_values* pdbL, int confID){
for(i=0;i<pdbR->nbRes;i++)
t_candidateR[i] = &pdbR->residues[i];
int totR = pdbR->nbRes, totL = pdbL->nbRes, step = 0;
printf("RSTEP 0 1.0\n");printf("LSTEP 0 1.0\n");
/* Start removing candidates */
while(oldCandL != nbCandL && oldCandR != nbCandR){
oldCandL = nbCandL;
......@@ -165,6 +167,15 @@ void getInterface(struct pdb_values* pdbR, struct pdb_values* pdbL, int confID){
nbCandR = 0;
break;
}
step++;
printf("RSTEP %d %d %d -- %f\n",step,nbCandR,totR,(float)(1-((float)(totR-nbCandR)/totR)));
printf("LSTEP %d %d %d -- %f\n",step,nbCandL,totL,(float)(1-((float)(totL-nbCandL)/totL)));
}
while(step < 15){
step++;
printf("RSTEP %d %d %d -- %f\n",step,nbCandR,totR,(float)(1-((float)(totR-nbCandR)/totR)));
printf("LSTEP %d %d %d -- %f\n",step,nbCandL,totL,(float)(1-((float)(totL-nbCandL)/totL)));
}
/* The first nbCandR values of t_candidateR correspond to the possible candidates
......
......@@ -32,6 +32,7 @@ void print_usage() {
" Useful if you only want to use the '-outputPDB' option\n"
"<--force/-f>.......Will force the computation of the pause even in case of\n"
" huge number of clashes (threshold defined in struct.h)\n"
"<-distTH>..........Distance for contact\n"
"--\n"
"Leaving this option blank means that the default format for the docking file\n"
"will be used.\n"
......@@ -55,26 +56,27 @@ struct argLine* parseLineOfArgument(int argc, char** argv){
struct argLine* paramVals = NULL;
verbose = 0;
constructPDB = 0;
target_conf = -1;
HCMD2 = 0;
MAXDo = 0;
HEX = 0;
complexPDB = 0;
doNotOutputINT = 0;
clash = 0;
force = 0;
atom_res = 0;
outputDir = NULL;
outputPDB = NULL;
verbose_file = NULL;
dockingFile = NULL;
pdbDir = NULL;
receptor = NULL;
ligand = NULL;
outputFile_rec = NULL;
outputFile_lig = NULL;
verbose = 0;
constructPDB = 0;
HCMD2 = 0;
MAXDo = 0;
HEX = 0;
complexPDB = 0;
doNotOutputINT = 0;
clash = 0;
force = 0;
atom_res = 0;
target_conf = -1;
DIST_FOR_CONTACT = -1;
outputDir = NULL;
outputPDB = NULL;
verbose_file = NULL;
dockingFile = NULL;
pdbDir = NULL;
receptor = NULL;
ligand = NULL;
outputFile_rec = NULL;
outputFile_lig = NULL;
for(i=1; i<argc; i++){
if(strcmp(argv[i],"-dockingFile") == 0){
......@@ -123,7 +125,13 @@ struct argLine* parseLineOfArgument(int argc, char** argv){
}else if(strcmp(argv[i],"-pose") == 0){
target_conf = atoi(argv[i+1]);
if(target_conf <= 0){
fprintf(stderr,"Specific conformation not valid\n");
fprintf(stderr,"Target conformation not valid\n");
exit(EXIT_SUCCESS);
}
}else if(strcmp(argv[i],"-distTH") == 0){
DIST_FOR_CONTACT = atof(argv[i+1]);
if(DIST_FOR_CONTACT > 0){
fprintf(stderr,"The threshold distance has to be above 0.\n");
exit(EXIT_SUCCESS);
}
}else if(strcmp(argv[i],"-HCMD2") == 0){
......@@ -158,6 +166,11 @@ struct argLine* parseLineOfArgument(int argc, char** argv){
exit(EXIT_SUCCESS);
}
if(DIST_FOR_CONTACT == -1){
printf("No distance for contact specified, default distance is 5A.\n");
DIST_FOR_CONTACT = 5.0;
}
if(dockingFile == NULL && !complexPDB){
fprintf(stderr,"The docking file has to be provided\n\n");
if(!print_help)
......
......@@ -13,8 +13,6 @@
#define NB_MAX_ATOM_PER_RES 100 /* No residue has more atoms than that */
#define TOO_MANY_CLASHES 20 /* If not forcing, program will skip conformation after
* this number of clashes */
#define DIST_FOR_CONTACT 5 /* Distance under which we consider
* two residues are in contact */
#define DIST_FOR_CLASH 2 /* Distance in Angstrom under which we consider
* the contact is a clash */
#define NB_HEADER_LINE_HEX 12 /* Number of header lines at the top of a hex docking file */
......@@ -33,6 +31,7 @@ int doNotOutputINT; /* 1 if we don't want to output the interface */
int atom_res; /* 1 if we want a resolution at atom's level */
int clash; /* Maybe be incremented in case of clashes */
int force; /* Will output even if clash, may increase computation time */
float DIST_FOR_CONTACT; /* Distance under which we consider two residues are in contact */
FILE* verbose_file; /* If verbose mode, the output file */
char* pdbDir; /* Directory containing the PDBs */
char* receptor; /* Name of the receptor */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment