Hi,<br><br>There seems to be a bug in g_anaeig (4.5.3) related to the determination of the extreme (structural) projections of the trajectory on the eigenvector, when more than one eigenvector is analyzed. When I use different numbers of the eigenvectors for analysis of the extreme projections, the generated fluctuations for the same eigenvector differ in amplitude. The problem results, as I understand, from the fact that the maximum and minimum projections used for the generation of the output files (gmx_anaeig.c lines 663-665) come from the last analyzed eigenvector (defined by -last).<br>

<br>lines 624-636, determination of the extreme projections:<br><br>for(v=0; v&lt;noutvec_extr; v++) {<br>    for(i=0; i&lt;nframes; i++) {<br>      if (inprod[v][i]&lt;inprod[v][imin[v]])<br>        imin[v]=i;<br>      if (inprod[v][i]&gt;inprod[v][imax[v]])<br>

        imax[v]=i;<br>    }<br>    <b>min=inprod[v][imin[v]];<br>    max=inprod[v][imax[v]];<br>    </b>fprintf(stderr,&quot;%7d     %10.6f %10.1f %10.6f %10.1f\n&quot;,<br>        eignr[outvec[v]]+1,<br>        min,inprod[noutvec][imin[v]],max,inprod[noutvec][imax[v]]); <br>

}<br><br>lines 663-665, generation of the output coordinates:<br><br>xread[index[i]][d] = <br>          (xav[i][d] + (<b>min</b>*(nextr-frame-1)+<b>max</b>*frame)/(nextr-1)<br>          *eigvec[outvec[v]][i][d]/sqrtm[i]);<br>

<br>As it can be seen, for all the eigenvectors the values of the extreme projections used are the same, which is incorrect, as the vectors are normalized but fluctuations along different vectors do differ in amplitude. It can be healed by the following modification:<br>

<br>xread[index[i]][d] = <br>          (xav[i][d] + (<b>inprod[v][imin[v]]</b>*(nextr-frame-1)+<b>inprod[v][imax[v]]</b>*frame)/(nextr-1)<br>          *eigvec[outvec[v]][i][d]/sqrtm[i]);<br><br>Could someone check if this is correct? <br>

<br>Please excuse me if I post to the wrong mailing list.<br><br>All the best,<br>Ivan.<br>