t_dlist *dl;
snew(dl, atoms->nres+1);
- prev.C = prev.O = -1;
+ prev.C = prev.Cn[1] = -1; /* Keep the compiler quiet */
for (i = 0; (i < edMax); i++)
{
nc[i] = 0;
ires = atoms->atom[i].resind;
/* Initiate all atom numbers to -1 */
- atm.minC = atm.H = atm.N = atm.C = atm.O = atm.minO = -1;
+ atm.minC = atm.H = atm.N = atm.C = atm.O = atm.minCalpha = -1;
for (j = 0; (j < MAXCHI+3); j++)
{
atm.Cn[j] = -1;
while ((i < atoms->nr) && (atoms->atom[i].resind == ires))
{
if ((strcmp(*(atoms->atomname[i]), "H") == 0) ||
- (strcmp(*(atoms->atomname[i]), "H1") == 0) )
+ (strcmp(*(atoms->atomname[i]), "H1") == 0) ||
+ (strcmp(*(atoms->atomname[i]), "HN") == 0) )
{
atm.H = i;
}
{
atm.minC = prev.C;
}
- if (prev.O != -1)
+ /* Alpha-carbon from previous residue */
+ if (prev.Cn[1] != -1)
{
- atm.minO = prev.O;
+ atm.minCalpha = prev.Cn[1];
}
prev = atm;
}
}
}
- if ((atm.minC != -1) && (atm.minO != -1))
+ if ((atm.minC != -1) && (atm.minCalpha != -1))
{
nc[6]++;
}
b = ((dl->atm.N != -1) && (dl->atm.Cn[1] != -1) && (dl->atm.C != -1) && (dl->atm.O != -1));
break;
case edOmega:
- b = ((dl->atm.minO != -1) && (dl->atm.minC != -1) && (dl->atm.N != -1) && (dl->atm.Cn[1] != -1));
+ b = ((dl->atm.minCalpha != -1) && (dl->atm.minC != -1) && (dl->atm.N != -1) && (dl->atm.Cn[1] != -1));
break;
case edChi1:
case edChi2:
}
if (bOmega && has_dihedral(edOmega, &(dl[i])))
{
- fprintf(fp, " Omega [%5d,%5d,%5d,%5d]", 1+dl[i].atm.minO, 1+dl[i].atm.minC,
+ fprintf(fp, " Omega [%5d,%5d,%5d,%5d]", 1+dl[i].atm.minCalpha, 1+dl[i].atm.minC,
1+dl[i].atm.N, 1+dl[i].atm.Cn[1]);
pr_props(fp, &dl[i], edOmega, dt);
}