80 static void InitializePDBAtomTypes(
PDB *pdb);
81 static void SetPDBAtomTypesModifiers(
PDB *pdb);
82 static void SetPDBAtomTypesWaterAndNucleotides(
PDB *pdb);
83 static void SetPDBAtomTypesMetals(
PDB *pdb);
97 InitializePDBAtomTypes(pdb);
98 SetPDBAtomTypesMetals(pdb);
99 SetPDBAtomTypesWaterAndNucleotides(pdb);
100 SetPDBAtomTypesModifiers(pdb);
101 return(SetPDBAtomTypesNSResidues(pdb));
115 static void SetPDBAtomTypesMetals(
PDB *pdb)
163 static void SetPDBAtomTypesWaterAndNucleotides(
PDB *pdb)
176 if(!strncmp(p->
resnam,
"A ",3) ||
177 !strncmp(p->
resnam,
"C ",3) ||
178 !strncmp(p->
resnam,
"G ",3) ||
179 !strncmp(p->
resnam,
"I ",3) ||
180 !strncmp(p->
resnam,
"T ",3) ||
181 !strncmp(p->
resnam,
"Y ",3) ||
182 !strncmp(p->
resnam,
"U ",3) ||
183 !strncmp(p->
resnam,
"DA ",3) ||
184 !strncmp(p->
resnam,
"DC ",3) ||
185 !strncmp(p->
resnam,
"DT ",3) ||
186 !strncmp(p->
resnam,
"DG ",3) ||
187 !strncmp(p->
resnam,
"+A ",3) ||
188 !strncmp(p->
resnam,
"+C ",3) ||
189 !strncmp(p->
resnam,
"+G ",3) ||
190 !strncmp(p->
resnam,
"+I ",3) ||
191 !strncmp(p->
resnam,
"+T ",3) ||
192 !strncmp(p->
resnam,
"+Y ",3) ||
193 !strncmp(p->
resnam,
"+U ",3))
214 static void SetPDBAtomTypesModifiers(
PDB *pdb)
311 for(res1=pdb; res1!=
NULL; res1=res2)
327 for(p=res1; p!=res2;
NEXT(p))
330 for(q=res2; q!=res3;
NEXT(q))
332 if(!strncmp(q->
atnam,
"N ",4))
340 sprintf(buffer,
"Warning: Apparent \
341 non-standard amino acid has different chain\n\
342 label from amino acid Nitrogen to which it is connected\n\
343 Residue %s %s%d%s\n",
356 if(!strncmp(q->
atnam,
"P ",4))
364 sprintf(buffer,
"Warning: Apparent \
365 non-standard nucleotide has different chain\n\
366 label from nucleotide phosphorus to which it is connected\n\
367 Residue %s %s%d%s\n",
384 for(q=res0; q!=
NULL && q!=res1;
NEXT(q))
386 if(!strncmp(q->
atnam,
"C ",4))
394 sprintf(buffer,
"Warning: Apparent \
395 non-standard amino acid has different chain\n\
396 label from amino acid Carbon to which it is connected\n\
397 Residue %s %s%d%s\n",
410 if(!strncmp(q->
atnam,
"O3* ",4))
418 sprintf(buffer,
"Warning: Apparent \
419 non-standard nucleotide has different chain\n\
420 label from nucleotide O3* to which it is connected\n\
421 Residue %s %s%d%s\n",
458 for(p=res1; p!=res2;
NEXT(p))
473 for(p=res1; p!=res2;
NEXT(p))
496 static void InitializePDBAtomTypes(
PDB *pdb)
#define ATOMTYPE_BOUNDHET
Include file for PDB routines.
#define ATOMTYPE_NONSTDAA
STRINGLIST * blSetPDBAtomTypes(PDB *pdb)
#define PDBCHAINMATCH(p, q)
BOOL blIsConected(PDB *p, PDB *q)
#define ATOMTYPE_NONSTDNUC
STRINGLIST * blStoreString(STRINGLIST *StringList, char *string)
Header file for general purpose routines.
PDB * blFindNextResidue(PDB *pdb)
struct pdb_entry * conect[MAXCONECT]
char chain[blMAXCHAINLABEL]