<div dir="ltr"><div><div>Hello developers,<br><br></div>I am interested in implementing a lowpass filter system for position and dihedral trajectories akin to the -aver option in g_energy (&quot;Also print the exact average and rmsd stored in the energy frames (only when 1 term is requested)&quot;) . I have found that a lot of computational effort goes into eliminating aliased noise from very high frequencies in these position coordinates, and it would be nice to turn this noise down a few decibels. As it stands, it is not even possible to output dihedrals during simulation though they are ostensibly be computed, let alone to print moving averages alongside samples. That said, my first step would be doing these averages for atomic positions as it would be (maybe) pretty benign to extract dihedrals from the filtered atomic positions.<br><br></div>I understand that averaged positions will not necessarily be physical configurations and do not obey boltzmann statistics. I am interested in this procedure for the sake of getting a degree of spectral separability. I also realize that the fluctuations will have to be captured in a covariance matrix to be appropriately described. These concerns are secondary to getting a signal with some semblance of low pass filtering.<br><div><br>Any recommendations of where I should start for storing a rolling mean of atomic positions? I can probably piggy back on the trajectory dump procedures without issue if I can update this rolling mean every timestep, so if you know where I can create a new array that is persistent throughout the simulation, that would be the right kind of tip.<br><br></div><div>Thanks!<br></div><div>John<br><br></div><div>PS: I have edited gromacs source before, but only &quot;brute forcing&quot; a modification to the pull.c function for alternative biased sampling, which did not require generating any new persistent data variables. I do have some experience with the gromacs internals, though!<br></div></div>