Modelling turbulence via numerical functional integration using Burgers’ equation

Modelling turbulence via numerical functional integration using Burgers’ equation

Abstract

We investigate the feasibility of modelling turbulence via numeric functional integration. By transforming the Burgers’ equation into a functional integral we are able to calculate equal-time spatial correlation of system variables using standard methods of multidimensional integration. In contrast to direct numerical simulation, our method allows for simple parallelization of the problem as the value of the integral within any region can be calculated separately from others. Thus the calculations required for obtaining one correlation data set can be distributed to several supercomputers and/or the cloud simultaneously.

We present the mathematical background of our method and its numerical implementation. We are interested in a steady state system with isotropic and homogeneous turbulence, for which we use a lattice version of the functional integral used in the perturbative analysis of stochastic transport equations. The numeric implementation is composed of a fast serial program for evaluating the integral over a given volume and a parallel Python wrapper that divides the problem into subvolumes and distributes the work among available processes. The code is available at https://github.com/iljah/hdintegrator for anyone to download, use, study, modify and redistribute.

We present velocity cross correlation for a 10x2 lattice in space and time respectively, and analyse the computational resources required for the integration. We also discuss potential improvements to the presented method.

f
\articletype

ARTICLE TEMPLATE

unctional integration; burgers equation;

1 Introduction

Understanding turbulence is likely relevant for phenomena of any scale, from particle collisions in an accelerator [1] and human blood circulation [2] to atmospheric and oceanic circulation, solar wind [3] and even galaxy clusters [4]. Most commonly used methods for studying turbulence involve solving Navier-Stokes (NS) equations in various forms. Implicit large eddy simulation (LES) methods do not include a term for viscosity in NS equation, but numerical errors due to finite accuracy of floating point numbers act implicitly as an artificial viscosity. Explicit, or plain, LES methods include turbulent effects using averaged NS equations or with empirical small scale models. Direct numerical simulation (DNS) methods add a viscosity term explicitly into NS equation which allows, in principle, to fully describe turbulent flow. In practice DNS methods are compulationally very expensive if one is to describe both large and small spatial scales and their interaction, and require a powerful supercomputer. The problem is exacerbated by the fact that, for example, doubling the Reynolds number increases the amount of memory required by at least an order of magnitude [5], making it currently impossible to model many systems with realistic Reynolds numbers.

We present a new approach for modelling turbulence via numerical functional integration. By transforming the Burgers’ equation into a functional integral, we are able to calculate equal-time spatial correlation of system variables using standard methods of multidimensional integration. In contrast to direct numerical simulation, our method allows for simple parallelization of the problem as the value of the integral within any region can be calculated separately from others. Thus the calculations required for obtaining one correlation data set can be distributed to several supercomputers and/or the cloud simultaneously.

2 Mathematical background

We use a lattice version of the functional integral used in the perturbative analysis of stochastic transport equations (see, e.g., [6, 7]). We are considering the case of isotropic and homogeneous turbulence, therefore we use periodic boundary conditions in space. Since we are interested in the steady state of the system, we have imposed periodic condition with respect to time. Due to these choices the normalization constant for calculation of moments of the velocity field has to be calculated numerically.

The eventual goal is the random force uncorrelated in time but concentrated in a narrow slice of (small) wave numbers in the Fourier representation. In order to assess the feasibility of this approach, we are considering here the simplest case of random force uncorrelated both in space and time.

It is customary to analyze the statistical properties of the turbulent system in terms of single-time correlation functions. Under these conditions the actual multi-dimensional integral to represent the functional integral for the two-point correlation function is of the form

(1)

where is the normalization constant. In (1) the lattice constant is , the time step , the (kinematic) viscosity is and the variance of the random force is . For economy of notation we have not written explicitly in (1) the periodic conditions imposed on the velocity field in time and space.

3 Numerical implementation

We use the HDIntegrator program [8] for evaluating the functional integrals in parallel on the Finnish Meteorological Institute’s Cray XC 40 supercomputer. The integration volume is subdivided into smaller and smaller subvolumes until one or more of user-defined criteria for convergence is reached. Convergence of the solution for each subregion is checked by evaluating the integral twice, where the second evaluation uses some factor of more samples decided by the user. Currently the solution is defined as converged when one more of the following criteria are satisfied: 1) the absolute relative difference between results within a subvolume is smaller than some factor, or 2) the absolute difference between results is smaller than some value, or 3) the maximum absolute value of results is less than some value. Listing 1 shows an example invocation and output of hdintegrator for calculating (half of) the volume of a unit sphere in 4 dimensions with a 3-dimensional integrand.

$ mpiexec -n 5 ./hdintegrator.py \
>     integrand integrands/N-sphere \
>     dimensions 3 \
>     min-extent -1 \
>     max-extent 1
2.465467073965016 0.002690919078211793
Listing 1: Example invocation and output of the parallel Python wrapper for calculating (half of) the volume of a unit sphere in 4 dimensions using a 3-dimensional integrand over the interval [-1,1]

We implement the integrand for functional integrals using the Monte Carlo integration algorithms of the GNU Scientific Library [9]. HDIntegrator communicates with the integrand via standard input and output in ASCII format. Every line of input to the integrand consists of the number of samples and the extent of integration volume in every dimension. Every line of output from the integrand consists of the result, absolute error and a suggestion in which dimension to split the subvolume in case convergence is not achieved. Listing 2 shows an example invocation of the integrand for evaluating an integral and is essentially how the integrand is executed also by the parallel Python wrapper.

$ echo 1e7 -1 1 -1 1 | ./integrands/N-sphere
2.093776991699273e+00 4.355051371078182e-04 1
Listing 2: Example invocation and output of a integrand for calculating (half of) the volume of a unit sphere in 3 dimensions using a 2-dimensional integrand with samples over the interval [-1, 1]

4 Single-time velocity correlation of Burgers equation

We calculate the single-time velocity correlation of Burgers equation on a lattice of 10 spatial and 2 temporal points for which in (1) and transform the integration range from to . We examine the convergence of the result by calculating the integral using different convergence criteria when the number of samples within each subvolume is doubled from : 1) the absolute relative difference between results is at most between 2.5 % and 8.5 % (1.025 and 1.085). 2) the absolute difference between results is at most between 0.5 and 2. 3) the maximum absolute value of either result is at most between 0.5 and 2.

Figure 1 shows the normalized single-time velocity correlation of Burgers equation in a 10x2 space and time lattice as a function of correlation distance in number of spatial points. For each correlation distance, two results are shown for different convergence criteria used. The results with strictest convergence criteria are shown in cyan. Each value is normalized by calculating the integral with the velocity factors in (1) in front of the exponential set to 1.

Figure 1: Normalized single-time velocity correlation of Burgers equation as a function of correlation distance. Results with strictest convergence criteria are shown in cyan.

Figure 2 shows a histogram of integration subvolume centres as a function of distance from origin for an integral of correlation distance of 5. The distances from origin are normalized by where D is the number of dimensions. Integration proceeds to smaller and smaller subvolumes until convergence is reached and one can see that the largest number of subvolumes, and hence two worst convergence, is concentrated around a shell at a distance of approximately 0.55 from origin.

Figure 2: Histogram of number of centres of integration subvolumes as a function of normalized distance from origin. Most subvolumes, and hence worst convergence, is concentrated on a spherical shell at a distance of approximately 0.55 from origin.

5 Discussion

The smallest computational resources required for obtaining one point in Figure 1 used approximately core hours of computational time and required a total of less than 10 GB of memory while the largest resources for one result required on the order of core hours and 100 GB of memory. The required memory can most likely be decreased significantly by further optimizing its use in the parallel Python wrapper as well as switching from a Python implementation to e.g. C++. Substantial gains in required computational time will probably require a different integrand from (1). In this regard potential optimizations include switching from cartesian to spherical coordinates in order to better concentrate resolution where it is needed (cf. Figure 2) and/or directly calculating the Fourier spectrum of the single-time velocity correlation. Utilizing GPUs and/or cloud computing is also an option worth exploring in the future.

6 Conclusions

We present a method for modelling turbulence via numerical functional integration. As a first step, we study single-time velocity correlation of Burgers’ equation by transforming it into a functional integral that we solve with a parallel Python wrapper over the Monte Carlo integrators of GNU Scientific Library.

In contrast to direct numerical simulation, our method allows for simple parallelization of the problem as even a single integral can be evaluated independently over different subvolumes. Here we evaluated each point in Figure 1 separately but in parallel using 140-280 Intel Haswell cores and at most our calculation used 1540 cores simultaneously of the Cray XC40 supercomputer installed at the Finnish Meteorological Institute.

The results show that, as a first step, our method is promising but there still remains substantial work in developing an optimized approach for integration that is most suitable to this particular problem.

Funding

The work of IH was funded by the Emil Aaltonen foundation.

References

  1. Blaizot JP, Iancu E, Mehtar-Tani Y. Medium-induced qcd cascade: Democratic branching and wave turbulence. Phys Rev Lett. 2013 Jul;111:052001. Available from: https://link.aps.org/doi/10.1103/PhysRevLett.111.052001.
  2. Sabbah HN, Stein PD. Turbulent blood flow in humans: its primary role in the production of ejection murmurs. Circulation Research. 1976;38(6):513–525. Available from: http://circres.ahajournals.org/content/38/6/513.
  3. Goldstein ML, Wicks RT, Perri S, et al. Kinetic scale turbulence and dissipation in the solar wind: key observational results and future outlook. Philosophical Transactions of the Royal Society of London A: Mathematical, Physical and Engineering Sciences. 2015;373(2041). Available from: http://rsta.royalsocietypublishing.org/content/373/2041/20140147.
  4. Zhuravleva I, Churazov E, Schekochihin AA, et al. Turbulent heating in galaxy clusters brightest in x-rays. Nature. 2014;515.
  5. McComb WD. The physics of fluid turbulence. Clarendon,Oxford; 1990.
  6. Adzhemyan LT, Antonov NV, Vasil’ev AN. The field theoretic renormalization group in fully developed turbulence. London: Gordon & Breach; 1999.
  7. Vasil’ev AN. The field theoretic renormalization group in critical behavior theory and stochastic dynamics. Boca Raton: Chapman Hall/CRC; 2004.
  8. Honkonen I. High-dimensional integrator. Journal of Open Source Software. 2017 Dec;2:437. Available from: http://joss.theoj.org/papers/10.21105/joss.00437.
  9. Galassi M, Theiler J. Gsl - gnu scientific library, version 2.4 ; 2017. Available from: https://www.gnu.org/software/gsl/.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
""
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
   
Add comment
Cancel
Loading ...
131628
This is a comment super asjknd jkasnjk adsnkj
Upvote
Downvote
""
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters
Submit
Cancel

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test
Test description