Towards stochastic methods in CFD for engineering applications
Authors:   , Tosi Riccardo 
Published: October 2023

Recent developments of high performance computing capabilities allow solving modern science problems employing sophisticated computational techniques. However, it is necessary to ensure the efficiency of state of the art computational methods to fully take advantage of modern technology capabilities.
In this thesis we propose uncertainty quantification and high performance computing strategies to solve fluid dynamics systems characterized by uncertain conditions and unknown parameters. We verify that such techniques allow us to take decisions faster and ensure the reliability of simulation results.

Different sources of uncertainties can be relevant in computational fluid dynamics applications. For example, we consider the shape and time variability of boundary conditions, as well as the randomness of external forces acting on the system.
From a practical point of view, one has to estimate statistics of the flow, and a failure probability convergence criterion must be satisfied by the statistical estimator of interest to assess reliability. We use hierarchical Monte Carlo methods as uncertainty quantification strategy to solve stochastic systems. Such algorithms present three levels of parallelism: over levels, over realizations per level, and on the solution of each realization. We propose an improvement by adding a new level of parallelism, between batches, where each batch has its independent hierarchy. These new methods are called asynchronous hierarchical Monte Carlo, and we demonstrate that such techniques take full advantage of concurrency capabilities of modern high performance computing environments, while preserving the same reliability of state of the art methods. Moreover, we focus on reducing the wall clock time required to compute statistical estimators of chaotic incompressible flows. Our approach consists in replacing a single long-term simulation with an ensemble of multiple independent realizations, which are run in parallel with different initial conditions. The error analysis of the statistical estimator leads to the identification of two error contributions: the initialization bias and the statistical error. We propose an approach to systematically detect the burn-in time to minimize the initialization bias, accompanied by strategies to reduce the simulation cost. Finally, we propose an integration of Monte Carlo and ensemble averaging methods for reducing the wall clock time required for computing statistical estimators of time-dependent stochastic turbulent flows. A single long-term Monte Carlo realization is replaced by an ensemble of multiple independent realizations, each characterized by the same random event and different initial conditions. We consider different systems, relevant in the computational fluid dynamics engineering field, as realistic wind flowing around high-rise buildings or compressible potential flow problems. By solving such numerical examples, we demonstrate the accuracy, efficiency, and effectiveness of our proposals.

Los desarrollos relacionados con la computación de alto rendimiento de las últimas décadas permiten resolver problemas científicos actuales, utilizando métodos computacionales sofisticados. Sin embargo, es necesario asegurarse de la eficiencia de los métodos computacionales modernos, con el fin de explotar al máximo las capacidades tecnológicas. En esta tesis proponemos diferentes métodos, relacionados con la cuantificación de incertidumbres y el cálculo de alto rendimiento, con el fin de minimizar el tiempo de computación necesario para resolver las simulaciones y garantizar una alta fiabilidad. En concreto, resolvemos sistemas de dinámica de fluidos caracterizados por incertidumbres. En el campo de la dinámica de fluidos computacional existen diferentes tipos de incertidumbres. Nosotros consideramos, por ejemplo, la forma y la evolución en el tiempo de las condiciones de frontera, así como la aleatoriedad de las fuerzas externas que actúan sobre el sistema. Desde un punto de vista práctico, es necesario estimar valores estadísticos del flujo del fluido, cumpliendo los criterios de convergencia para garantizar la fiabilidad del método. Para cuantificar el efecto de las incertidumbres utilizamos métodos de Monte Carlo jerárquicos, también llamados hierarchical Monte Carlo methods. Estas estrategias tienen tres niveles de paralelización: entre los niveles de la jerarquía, entre los eventos de cada nivel y durante la resolución del evento. Proponemos agregar un nuevo nivel de paralelización, entre batches, en el cual cada batch es independiente de los demás y tiene su propia jerarquía, compuesta por niveles y eventos distribuidos en diferentes niveles. Definimos estos nuevos algoritmos como métodos de Monte Carlo asíncronos y jerárquicos, cuyos nombres equivalentes en inglés son asynchronous hierarchical Monte Carlo methods. También nos enfocamos en reducir el tiempo de computación necesario para calcular estimadores estadísticos de flujos de fluidos caóticos e incompresibles. Nuestro método consiste en reemplazar una única simulación de dinámica de fluidos, caracterizada por una ventana de tiempo prolongada, por el promedio de un conjunto de simulaciones independientes, caracterizadas por diferentes condiciones iniciales y una ventana de tiempo menor. Este conjunto de simulaciones se puede ejecutar en paralelo en superordenadores, reduciendo el tiempo de computación. El método de promedio de conjuntos se conoce como ensemble averaging. Analizando las diferentes contribuciones del error del estimador estadístico, identificamos dos términos: el error debido a las condiciones iniciales y el error estadístico. En esta tesis proponemos un método que minimiza el error debido a las condiciones iniciales, y en paralelo sugerimos varias estrategias para reducir el coste computacional de la simulación. Finalmente, proponemos una integración del método de Monte Carlo y del método de ensemble averaging, cuyo objetivo es reducir el tiempo de computación requerido para calcular estimadores estadísticos de problemas de dinámica de fluidos dependientes del tiempo, caóticos y estocásticos. Reemplazamos cada realización de Monte Carlo por un conjunto de realizaciones independientes, cada una caracterizada por el mismo evento aleatorio y diferentes condiciones iniciales. Consideramos y resolvemos diferentes sistemas físicos, todos relevantes en el campo de la dinámica de fluidos computacional, como problemas de flujo del viento alrededor de rascacielos o problemas de flujo potencial. Demostramos la precisión, eficiencia y efectividad de nuestras propuestas resolviendo estos ejemplos numéricos.

Gli sviluppi del calcolo ad alte prestazioni degli ultimi decenni permettono di risolvere
problemi scientifici di grande attualità, utilizzando sofisticati metodi computazionali.
È però necessario assicurarsi dell’efficienza di questi metodi, in modo da ottimizzare
l’uso delle odierne conoscenze tecnologiche. A tal fine, in questa tesi proponiamo diversi
metodi, tutti inerenti ai temi di quantificazione di incertezze e calcolo ad alte
prestazioni. L’obiettivo è minimizzare il tempo necessario per risolvere le simulazioni
e garantire alta affidabilità. Nello specifico, utilizziamo queste strategie per risolvere
sistemi fluidodinamici caratterizzati da incertezze in macchine ad alte prestazioni.
Nel campo della fluidodinamica computazionale esistono diverse tipologie di incertezze.
In questo lavoro consideriamo, ad esempio, il valore e l’evoluzione temporale delle condizioni
di contorno, così come l’aleatorietà delle forze esterne che agiscono sul sistema
fisico. Dal punto di vista pratico, è necessario calcolare una stima delle variabili statistiche
del flusso del fluido, soddisfacendo criteri di convergenza, i quali garantiscono
l’accuratezza del metodo. Per quantificare l’effetto delle incertezze sul sistema utilizziamo
metodi gerarchici di Monte Carlo, detti anche hierarchical Monte Carlo methods.
Queste strategie presentano tre livelli di parallelizzazione: tra i livelli della gerarchia,
tra gli eventi di ciascun livello e durante la risoluzione del singolo evento. Proponiamo
di aggiungere un nuovo livello di parallelizzazione, tra gruppi (batches), in cui ogni batch
sia indipendente dagli altri ed abbia una propria gerarchia, composta da livelli e da eventi
distribuiti su diversi livelli. Definiamo questi nuovi algoritmi come metodi asincroni
e gerarchici di Monte Carlo, il cui corrispondente in inglese è asynchronous hierarchical
Monte Carlo methods. Ci focalizziamo inoltre sulla riduzione del tempo di calcolo
necessario per stimare variabili statistiche di flussi caotici ed incomprimibili. Il nostro
metodo consiste nel sostituire un’unica simulazione fluidodinamica, caratterizzata da un
lungo arco temporale, con il valore medio di un insieme di simulazioni indipendenti, caratterizzate
da diverse condizioni iniziali ed un arco temporale minore. Questo insieme
10
di simulazioni può essere eseguito in parallelo in un supercomputer, riducendo il tempo
di calcolo. Questo metodo è noto come media di un insieme o, in inglese, ensemble
averaging. Calcolando la stima di variabili statistiche, commettiamo due errori: l’errore
dovuto alle condizioni iniziali e l’errore statistico. In questa tesi proponiamo un metodo
per minimizzare l’errore dovuto alle condizioni iniziali, ed in parallelo suggeriamo
diverse strategie per ridurre il costo computazionale della simulazione. Infine, proponiamo
un’integrazione del metodo di Monte Carlo e del metodo di ensemble averaging,
il cui obiettivo è ridurre il tempo di calcolo necessario per stimare variabili statistiche
di problemi di fluidodinamica dipendenti dal tempo, caotici e stocastici. Ogni realizzazione
di Monte Carlo è sostituita da un insieme di simulazioni indipendenti, ciascuna
caratterizzata dallo stesso evento casuale, da differenti condizioni iniziali e da un arco
temporale minore. Consideriamo e risolviamo differenti sistemi fisici, tutti rilevanti nel
campo della fluidodinamica computazionale, come per esempio problemi di flusso del
vento attorno a grattacieli, o sistemi di flusso potenziale. Dimostriamo l’accuratezza,
l’efficienza e l’efficacia delle nostre proposte, risolvendo questi esempi numerici.