Gromacs  2024.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
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:

Description

Declares routine for computing many correlation functions using OpenMP.

Author
David van der Spoel david.nosp@m..van.nosp@m.dersp.nosp@m.oel@.nosp@m.icm.u.nosp@m.u.se

Functions

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.

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