Gromacs  2025-dev-20240614-602a366
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
manyautocorrelation.h File Reference
#include <vector>
#include "gromacs/fft/fft.h"
#include "gromacs/utility/real.h"
+ Include dependency graph for manyautocorrelation.h:
+ This graph shows which files directly or indirectly include this file:


Declares routine for computing many correlation functions using OpenMP.

David van der Spoel


int many_auto_correl (std::vector< std::vector< real >> *c)
 Perform many autocorrelation calculations. More...

Function Documentation

int many_auto_correl ( std::vector< std::vector< real >> *  c)

Perform many autocorrelation calculations.

This routine performs many autocorrelation function calculations using FFTs. The GROMACS FFT library wrapper is employed. On return the c vector contain a symmetric function that is useful for further FFT:ing, for instance in order to compute spectra.

The vectors c[i] should all have the same length, but this is not checked for.

The c arrays will be extend and filled with zero beyond ndata before computing the correlation.

The functions uses OpenMP parallellization.

[in,out]cData array
fft error code, or zero if everything went fine (see fft/fft.h)
gmx::InconsistentInputErrorif the input is inconsistent.