Calcolo rapido dei modelli di dispersione utilizzando algoritmi di funzioni ipergeometriche
CasaCasa > Blog > Calcolo rapido dei modelli di dispersione utilizzando algoritmi di funzioni ipergeometriche

Calcolo rapido dei modelli di dispersione utilizzando algoritmi di funzioni ipergeometriche

Jun 11, 2024

Rapporti scientifici volume 13, numero articolo: 780 (2023) Citare questo articolo

1588 accessi

3 Altmetrico

Dettagli sulle metriche

La diffusione della luce, dei raggi X, degli elettroni o dei neutroni da parte della materia è ampiamente utilizzata per la caratterizzazione strutturale dalle scale di lunghezza atomica a quella macroscopica. Con l'avvento di sorgenti di raggi ad alta brillantezza e lo sviluppo di rilevatori pixelati veloci e di grandi dimensioni, i modelli di scattering vengono ora acquisiti con frame rate e dimensioni di frame senza precedenti. La lenta analisi di questi modelli di dispersione si è evoluta in un grave collo di bottiglia che ritarda la comprensione scientifica. Qui introduciamo un algoritmo basato sull'uso di funzioni ipergeometriche che forniscono guadagni nella velocità di calcolo fino a 105 rispetto agli attuali algoritmi di integrazione numerica. Le funzioni ipergeometriche forniscono descrizioni analitiche di forme geometriche, possono essere rapidamente calcolate come serie ed espansioni asintotiche e possono essere implementate in modo efficiente nelle GPU. L'algoritmo fornisce la velocità di calcolo necessaria per calcolare i modelli di scattering sulle scale temporali richieste per il feedback degli esperimenti in tempo reale, l'analisi di grandi volumi di dati di scattering e per la generazione di set di dati di addestramento per l'apprendimento automatico.

La diffusione della luce, dei raggi X, degli elettroni o dei neutroni da parte della materia è ampiamente utilizzata per la caratterizzazione della struttura dei materiali dalle scale di lunghezza atomica a quella macroscopica1,2. Per ottenere informazioni strutturali multiscala è necessario che gli esperimenti di scattering acquisiscano modelli di scattering su ampie aree del rilevatore. I moderni rilevatori pixelati coprono quindi aree sempre più grandi con numeri di pixel corrispondenti che ora superano 107. Contemporaneamente, sorgenti di fasci ad alta intensità come laser, sorgenti di sincrotrone di quarta generazione, sorgenti di spallazione di neutroni, microscopi elettronici con correzione dell'aberrazione e sorgenti di raggi X a getto metallico sono diventati ampiamente disponibili. disponibile. La combinazione di fasci ad alta intensità con rilevatori veloci di ampia area ora consente esperimenti in situ e operando che chiariscono cambiamenti strutturali rapidi e complessi, ottenendo così informazioni chiave sull’evoluzione strutturale, sulla funzione e sulle prestazioni dei materiali. I materiali e i dispositivi comunemente studiati includono leghe metalliche ad alte prestazioni, fibre, batterie, celle a combustibile e celle solari, nanomateriali, compositi, polimeri, colloidi, membrane, nonché impianti, formulazioni per la somministrazione di farmaci e tessuti biologici.

Questa evoluzione ha portato a un aumento senza precedenti della velocità di acquisizione e del volume dei dati di dispersione 1D e 2D, tanto che il tempo necessario per l’analisi dei dati è diventato un importante collo di bottiglia nel processo per ottenere informazioni dettagliate sui materiali. Pertanto, il software per la riduzione e l'analisi dei dati diffusi viene continuamente migliorato introducendo pipeline di analisi dei dati più efficienti3, mediante l'accelerazione GPU4 e l'uso di algoritmi di apprendimento automatico5. Tuttavia, la velocità di calcolo per l’analisi dei dati non è aumentata a un ritmo paragonabile all’aumento delle attuali velocità di acquisizione dei dati.

L'analisi su scala multilunghezza dei dati di dispersione dei materiali generalmente procede modellando sottostrutture con oggetti geometrici, che sono collegati e assemblati in oggetti composti distribuiti spazialmente con un certo grado di ordine posizionale e orientazionale. Gli oggetti geometrici comuni includono sfere, ellissoidi, parallelepipedi, cilindri, dischi, poliedri o tubi flessibili o membrane le cui superfici possono essere descritte matematicamente in forme analitiche chiuse. Questo approccio geometrico per modellare strutture complesse è comunemente utilizzato anche nelle simulazioni al computer e negli algoritmi grafici di ray-tracing.

Il calcolo dei modelli di scattering prevede il calcolo della trasformata di Fourier della struttura dell'oggetto assemblato e la successiva media delle distribuzioni dimensionali, orientative e posizionali degli oggetti che caratterizzano il materiale reale in esame6. Il calcolo richiede diverse integrazioni numeriche per calcolare le trasformate di Fourier e per fare la media sulle funzioni di distribuzione. Questo calcolo richiede molto tempo e costituisce il collo di bottiglia della fase di analisi dei dati. Pertanto, c'è stata una lunga storia di nuovi importanti metodi matematici per il calcolo e l'analisi efficienti delle funzioni di scattering7,8,9,10,11.

 105. The algorithm can be efficiently parallelized and implemented into GPUs for further acceleration. This enables the computation of 2D scattering patterns at > 1 fps even for current 4k pixel detectors./p>1\) (Regime II) we use the asymptotic expansion (Eq. (7)) for spheres (\(d=3\)) which is/p> 100-times faster compared to numerical integration. If we extrapolate the reported CPU time to 105 data points, the gain in computational speed is > 107./p> 1 fps calculation of 16 million data point 4k pixel detector scattering patterns with a single core CPUs as motivated in the Introductory Section./p> 50, enabling sub-second 1D- and 2D-fitting of very large detector array data as demonstrated in the Supporting Information (SI Sect. 12). As applications we demonstrate in the Supporting Information the simulation of large 2D small-angle X-ray (SAXS), small-angle neutron (SANS) and small-angle light scattering patterns, as well as selected area electron diffraction (SAED) patterns with 2k- or 4k-detectors (SI Sect. 12). We furthermore show GPU-accelerated 2D-fitting, and examples of simulated data sets for the training of neural networks./p> 105 faster than conventional numerical integration schemes. This acceleration is possible, because hypergeometric functions can be efficiently computed via series and asymptotic expansions, the expansion coefficients can be rapidly calculated via recursion relations and are q-independent. They are therefore the same for every pixel and can be pre-calculated and provided to the (i,j)-pixel calculation loop as described in the algorithm in Fig. 2. Over large q-ranges, only one or two terms of the expansion are necessary to compute the scattering intensities with sufficient accuracy. The algorithm enables the fast calculation of scattering patterns of simple and complex objects with defined spatial and orientational distributions. Since the computations of the pixel scattering intensities are mutually independent, the calculation can be efficiently implemented into parallel algorithms for GPUs for further significant acceleration. The algorithm enables rapid calculation of large area 2D-scattering patterns and 1D-scattering data enabling high-throughput fitting of large 1D- and 2D-data sets, on-the-fly data analysis for steering scattering experiments, and fast training of neural networks. It thereby helps addressing the data analysis bottleneck for widespread application in the structural analysis of synthetic and biological materials using X-ray, neutron, light and electron scattering and diffraction experiments. The significant saving in computation time of factors of 105–107 furthermore considerably reduces computer energy consumption relevant for green IT./p>