dataesr/scientific-paragraphs-categorization huggingface dataset:
, 2015)  and ClusterVisu  (Andronov et al. , 2016; Andronov et al. , 2018) , to make them interactive for analyzing 3D SMLM datasets in the millions range. Our contributions are twofold. First, we have developed a new hybrid CPU-GPU algorithm (called Voro3D) for the rapid generation of 3D Voronoi diagrams. Voro3D allows constructing diagrams composed of millions of localizations in a few minutes, achieving state of the art timing for heterogeneous point clouds. Second, we have shown that clustering can be performed without requiring the use of costly Monte Carlo simulations  (Andronov et al. , 2016; Andronov et al. , 2018) , as the cell size distribution of randomly placed localizations can be approximated by an analytical function. All these developments are available in our newly released PoCA platform  (Levet and Sibarita, 2023).
Using the connectivity provided by the Delaunay triangulation, all the direct neighbors p n of a given point p, i. e. , the points part of the tetrahedrons originating from p, can be efficiently retrieved. Contrary to the k-nearest neighbors, p n is guaranteed to accurately describe the vicinity of p in all directions  (Figure 1B top). We then modified the algorithm provided in  (Ray et al. , 2018)  to brute force the Voronoi diagram construction on the GPU using p n (Figure  1B  bottom), allowing creating the 3D Voronoi diagrams of inhomogeneous SMLM point cloud data composed of millions of localizations in a few minutes. Implementation discrepancies between CGAL and the GPU code  (Ray et al. , 2018)  forced us to develop a function gathering all the localizations' direct neighbors in an array (Algorithm 1 line 2).
Voronoi-based clustering To perform statistical clustering, Andronov et al. compared experimental SMLM datasets with Monte Carlo simulations  (Andronov et al. , 2016; Andronov et al. , 2018)  (Figure  2 ). They generated a user-defined number of simulations having the same number of localizations and volume but exhibiting a random spatial distribution (Figures  2A, B ). By comparing the cell size distribution (i. e. , volume for three dimensional datasets) of the experimental dataset with the mean cell size distribution of all the simulations, they were able to automatically determine a threshold to segment clusters (Figures  2C, D ). Their technique has a strong limitation: as their implementation of the 3D Voronoi diagram was not optimized, and since the global computation time linearly scales with the number of simulations, 3DClusterVisu took up to 6 h for analyzing datasets in the 1.
, 1961)  having two (a and b)  (Ferenc and Néda, 2007)  or three (a, b and c)  (Masaharu, 2003; Hinde and Miles, 2007)  parameters: f y c b a / c Γ a / c ( ) y a-1 exp -by c f y b a Γ a ( ) y a-1 exp -by with a and c two shape parameters and b a scale parameter. From all the proposed distributions, we used the ones from  Ferenc and Néda (2007) : f 2D y 343 15 7 2π y 5 / 2 exp - 7 2 y , (1) f 3D y 3125 24 y 4 exp -5y (2) The error between the cell size distribution of simulated datasets and this analytical distribution has been quantified to be less than 0. 04% and 1%, for 2D and 3D, respectively  (Ferenc and Néda, 2007). Nevertheless, blinking of the molecules is not taken into account by this numerical approximation. Monte Carlo simulations, on the other hand, should be able to integrate this blinking behavior in the cell size distribution, as long as the simulator provides a realistic simulation of blinking, a task known to be difficult.
Results Voro3D is available in our newly released SMLM analysis platform called PoCA  (Levet and Sibarita, 2023). While PoCA is developed in C++ and can therefore be executed on any computer, Voro3D is implemented in Cuda  (Nickolls et al. , 2008)  and therefore requires a computer equipped with a Nvidia graphics card (https://www. nvidia. com/). To our knowledge, the only two libraries implementing 3D Voronoi diagrams for heterogeneous point clouds that are directly accessible are SciPy  (Virtanen et al. , 2020 ) (Supplementary Material) and CGAL (2020), which was included in one of our precedent software platform  (Levet et al. , 2019). We therefore compared the execution time of Voro3D versus SciPy and CGAL for datasets exhibiting a random spatial distribution and ranging from 10 3 to 10 7 localizations (Figure  3A ).
Voro3D is consistently faster than the other two solutions. It achieves generating a 3D Voronoi diagram from a dataset composed of 10 million localizations in close to 1 min and a half, a time suitable with an interactive analysis. Importantly, the implementation of Voro3D available in PoCA takes longer as more operations are performed. In addition to the three steps of the pseudocode (Algorithm 1), there are two additional steps pertaining to computational operations performed on the Delaunay triangulation and the Voronoi diagram, such as computation of the tetrahedra volume or creation of the OpenGL rendering buffers (Figure  3B ). Time ratio between the different steps shows the extreme efficiency of both the Delaunay triangulation generation (multithreaded on the CPU, 10. 4 s for 10 million localizations) and the construction of the Voronoi cells (GPU, 1.
, 2018)  for a dataset composed of 780,000 localizations), using an analytical function approximating the cell size distribution eliminates any additional computational time. Therefore, to demonstrate that Eq. 2 is a good approximation for 3DClusterVisu  (Andronov et al. , 2018)  we first generated a simulated dataset composed of 20 clusters (Figure  4A , referred as experimental), and then computed fifty Monte Carlo simulations having the same localization density but with a random spatial distribution (referred as simulations). The cell volume probability distribution function (PDF) of experimental and simulations were both normalized to be comparable with the analytical PDF (Figures  4B, C ). Importantly, we also removed Voronoi cells that were on the border of the dataset volume (i. e.
, they were cut by the dataset bounding volume) to prevent any edge effect. We found that the simulations and analytical PDFs were not significantly different (Figure  4B , Wilcoxon rank test p-value = 0. 1211), a property that also transfers to the computed thresholds (Figure  4C , T simulations = 0. 307, T analytical = 0. 312). Finally, objects created with these thresholds exhibited similar shapes and volumes (Figures  4D, E ) and their volume distributions were not significantly different (Kolmogorov-Smirnov test p-value = 0. 818). We also compared the volume of each object in the simulations with its counterpart in the analytical and quantified the mean difference to be less than 1%. Finally, we also compared clustering between Monte-Carlo simulations and Eq. 2 on an experimental dataset of Xenopus laevis nuclear pore complexes stained with WGA-ATTO520  (Löschberger, 2021)  available for download on ShareLoc  (Ouyang et al.
Discussion As 3D SMLM is increasingly adopted by biology labs by ways of imaging facilities, the bottleneck has shifted from not having the technology to image to not being able to analyze and extract meaningful quantifications from the acquired datasets. In the context of 2D SMLM analysis, Voronoi diagrams has become a method of reference  (Levet et al. , 2015; Andronov et al. , 2016; Peters et al. , 2017; Andronov et al. , 2018; Levet et al. , 2019)  thanks in part to its rapidity that gave life scientists interactive feedbacks on quantifications. Unfortunately, 3D Voronoi analysis was extremely time-consuming, preventing its use for datasets composed of millions of 3D localizations. In this paper, we presented a novel hybrid CPU-GPU algorithm called Voro3D for the fast computation of 3D Voronoi diagrams.
This algorithm achieves state of the art computation time for point clouds exhibiting heterogeneous spatial distribution. While its implementation in PoCA is slightly more computationally expensive, it is still compatible with an interactive analysis. Voro3D also improves the computation time of any method based on Voronoi diagrams, such as ClusterVisu  (Andronov et al. , 2016; Andronov et al. , 2018). Nevertheless, we also demonstrated that the main component of ClusterVisu, the cell size probability distribution function, can be correctly approximated by a customized gamma distribution. This results in the capability of computing clustering of SMLM datasets with no other additional cost than the Voronoi diagram computation. From the three steps of the Voro3D algorithm, inspection of the computation time has shown that the majority of the computation time is spent on transferring the localizations' neighbors from the Delaunay triangulation to the Voronoi diagram (Delaunay computation: 12%, transferring neighbors: 86%, Voronoi computation: 2%).
Funding This work was supported by the  Ministère de l'Enseignement Supérieur et de la Recherche  ( ANR-20-CE11-0006 NANO-SYNATLAS ), the  Centre National de la Recherche Scientifique (CNRS) , the  Conseil Régional d'Aquitaine  and the  Institut National de la Santé et de la Recherche Médicale (Inserm). We also acknowledge France-BioImaging infrastructure supported by the  French National Research Agency  ( ANR-10-INBS-04 ).
We describe the development and features of a program called IGMPlot, which is based on the independent gradient model (IGM) and its local descriptor δg. The IGM approach analyzes the gradient of the electron density (ED) in a molecular system to identify regions of space where chemical interactions take place. IGMPlot is intended for use by both experimental scientists and theoretical chemists. It is standalone software written in C++, with versions available for multiple platforms. Some key features are: probing and quantifying interactions between two given molecular fragments, determining bond strength (IBSI), estimating the atomic contributions to an intermolecular interaction and preparing data to build 2D and 3D representations of interaction regions. The software has been updated to include new features: critical point analysis of the ED, assessing ED asymmetry of a given bond (PDA) and a new descriptor called qg designed to enhance the IGM-δg analysis.
This work has resulted in the program IGMPlot that we have built up over the years and that we present herein. It can be useful for both experimental scientists and theoretical chemists. A strong effort regarding the user-friendliness was made in view of its publication and use in combination with VMD software  8  to visualize results. IGMPlot is written in C++. It has been installed and tested on several platforms: Linux, MacOS, Windows 10, and several compilers and versions: GNU, Intel, PGI (rebranded to NVIDIA HPC SDK). It is standalone and free software (CeCILL-C license). In this article, the main features of IGMPlot are described. Both the implementation and usage are addressed. The article first summarizes the IGM theory. Next, it is explained how IGMPlot proceeds, and the tools available in the latest version IGMPlot 3.
Otherwise, the system will be considered as a single block. Then, the program automatically determines the size of the sampling-grid encompassing the considered system. Actually, IGMPlot employs a numeric grid. The default IGM grid is rectangular cuboid. The grid features (positioning, size, spacing) can be changed through IGM keywords. For bond strength calculations (see IBSI section below), a cylindrical grid is employed instead. Next, the program calculates local properties at each node of the grid: the ED ρ and its derivatives in order to derive the IGM descriptors δg and qg. The chemical problem tackled here has a regular structure (number of atoms, grid node number) and the corresponding work is known in advance. Accordingly, a "runinfo" file is generated after a while and regularly updated to display timing information.
The IGM spatial grid has a very large number of nodes, several millions in a typical study case. Calculations performed on each node form an independent task set using a limited dataset. As expected, the computational time grows linearly with the number of nodes of the grid. These features make the IGM problem suitable for a parallel implementation. In IGMPlot, the parallelization has been achieved by inserting a single "parallel do" OpenMP compiler directive before the triple nested loop over spatial grid nodes. This triple nested loop is clearly the limiting step of the IGMPlot run. At each node, the ED promolecular calculation involves a supplementary loop over the atoms and turns out to be extremely fast. In contrast, the ED calculation from a supplied wavefunction requires two additional loops: one over the molecular orbitals and one over the primitives (Gaussian-Type Orbitals, GTO), which are very expensive compared to the promolecular expression.
In addition, not only the primitive values are needed, but also their first and second derivatives (to obtain the ED gradient and hessian). The program then proceeds with integration schemes to quantify interactions after which results are written to output files. Special efforts have been put forth to facilitate the analysis by the user. In addition to the log file (displaying integrated quantities), the output file mol-igm. dat is devoted to the generation of δgðρÞ 2D-plots (for instance by using the gnuplot program). Moreover, to facilitate the generation of colored 3D representations of the detected interaction F I G U R E 1 Flowshart for the IGMPlot program. regions, VMD 8 scripts are automatically prepared by IGMPlot to run vmd software and to get these pictures. These VMD sessions employ scalar data stored in cube files by IGMPlot.
The greater δg, the greater the ED clashes between interacting fragments. Based on the δg value, an indicative δg peak scale has been established, allowing the characterization of the family of interaction for a given peak (see Figure  3 ). F I G U R E 2 [TiCl 2 CH 2 CH 3 ] þ complex Finally, we can note that the program IGMPlot also generates data required to build the NCIPlot fingerprint, that is, the RDG ¼ fðρÞ plot (RDG, reduced density gradient), which can be colored according to the IGM-qg descriptor as illustrated on Figure  4  for the titanium complex. To this end, a separate mol-nci. dat file is generated after the IGMPlot run. NCI cube files are also generated to draw RDG isosurfaces.
23 At this stage, it is worth mentioning another approach providing also the contributions of chemical functional groups to non-covalent contacts: the F-SAPT partitioning tool. 24 The VMD visualization script AtContribInter. vmd is automatically prepared to run the vmd program and to get pictures. A blue-to-red color scheme is employed, with blue: no contribution to the interaction, red: largest relative contribution to the interaction. In tandem with δg inter isosurfaces, the atomic scheme decomposition Δg inter=At brings supplementary information. For instance, "hotspots" are well identified in ligand-protein complexes. This possibility is available in both QM and promolecular modes, when two interacting fragments are defined.
| ED critical point search After the search for ED critical points is performed the list of critical points (BCP, RCP, and CCP) and properties calculated at these points are reported in the file cp. txt (see example on Figure  13 ). The script cp. vmd is then generated to display cp positions (cp are colored according to their type), as illustrated on Figure  14  obtained for the benzene dimer. For this non-covalently bound dimer, 33 points are obtained: 26 BCP, 5 RCP, and 2 CCP, some of them (2BCP, 3 RCP, and 2 CCP) found in between the two monomers, this result being non-intuitive at first glance. The presence of such critical points in between the two monomers has already been reported in Reference 28, using the gold standard AIM2000 code. 29 The completeness of this critical point set was checked against the Poincaré-Hopf relationship for the ED (N -BCP + RCP -CCP = 1, N = the number of nuclei).
| RESULTS IGMPlot is a program that offers a range of interpreting and analyzing tools, as mentioned above. The IGM methodology proposed in IGMPlot has been employed in several studies covering various fields of chemistry (among others, see References 17,22,31-34). All the IGM possibilities are described in a manual made available at http:// igmplot. univ-reims. fr. To our knowledge, the IGM framework is not implemented in programs other than Multiwfn and IGMPlot.
This IGM integration facility is however obtained at the expense of not being able to process the experimental density. This is because the atomic partitioning requested by the IGM treatment is not present in the experimentally derived ED. In contrast, the NCI approach can be applied naturally to the experimental ED since there is no need to carry out an atomic partitioning within this methodology. The NCI MILANO code allows such an NCI analysis of the experimental density. 35 DORI, another molecular scalar field, is also able to reveal chemical interactions directly from the experimental ED (and its derivatives). 36 comparable IGM difficulty arises when using a QM description of the ED assessed with plane wave basis sets. Indeed, using atomic orbitals not centered at each nucleus precludes implementing the atomic GBP partitioning scheme and therefore prevents IGMPlot from being used for periodic systems studied with plane wave basis sets.
Thus, the IGM framework is only suitable to process ED obtained from calculations using localized basis sets. These shortcomings could be overcome (amongst others) by using the Hirshfeld partitioning of the ED (experimental or theoretical derived from plane waves), however, we have shown (see Section 2. 3. 2) that the HBP scheme relying on the promolecular weighting function w i was not suitable to describe hydrogen-bonding compared to the GBP partitioning. Further works are required to investigate other partitioning schemes. To complete the comparison with the NCIPlot program, it can be said that, in addition to the RDG descriptor used in the NCI tool, the IGMPlot program offers to calculate other properties: δg descriptors, an atomic decomposition scheme of the studied interactions and various other descriptors (IBSI, DOI, qg).
Finally, the IGMPlot program provides properties outside the IGM framework, such as the asymmetry characterization of a chemical bond and critical points of the ED. Regarding the last point, however, the IGMPlot program does not perform a complete ED topological analysis like do the programs AIMall,  37  TopoMS,  38  MultiWfn,  39  or Critic  40  with the determination of atomic interaction lines, interatomic surfaces, analysis of atomic basins, the computation of atomic volumes and associated charges, etc. It is worth noticing that the promolecular version of IGM 7 has been implemented in the Multiwfn software  39  in releases provided before 2021-Nov-8. After this date, the definition of the IGM noninteracting reference and its norm have changed in Multiwfn compared to our original formula.
| Website The IGM framework led to the IGMPlot program, which is a free open-source program (CeCILL-C license) made available at http:// igmplot. univ-reims. fr. The IGMPlot package can be downloaded from this site. It contains the code source together with sample runs, the user documentation, the software reference documentation (html) and installation instructions. To make it easier for users to get started with the software, we have provided a comprehensive tutorial based on simple practical cases that is available online from the website. In addition, screenshots, videos and further information (FAQ, supported platforms, …) can be found there.
| CONCLUSIONS We have developed the IGMPlot program to perform the analysis of chemical interactions in molecules and between molecules. IGMPlot offers a range of features that can be helpful in several fields of chemistry, among others: organic and inorganic chemistry, biomolecules, solids, supramolecular chemistry. It can be useful for experimental scientists as well as for users more experienced in quantum chemistry. The IGMPlot program operates at multiple levels of interpretation. One is by creating a 2D-plot that shows the intensity of the interaction based on certain variables. This signature plot will have one or more peaks, which reveal the unique characteristics of the interaction. The higher the peak, the stronger the interaction. The IGM analysis T A B L E 4 Comparison of the IGMPlot (v3.
04), NCIPlot (v4. 2), and Multiwfn (v3. 8) performance for the calculation of (RDG, ρ) at 1,780,020 grid points of a spatial grid for the complex formed between the Rose Bengal and a functionalized silica nanoparticule (135 atoms). This tool provides a relatively simple way to assess inductive electronic effects in molecules. While some programs like Gaussian need a large amount of CPUresources (CPU cores, memory) and cannot reasonably be executed on a small standard personal computer, it makes sense to run programs like IGMPlot on a personal laptop (which does not prevent IGMPlot from being executed on a computational center of course). A parallelized C++ version for shared-memory CPU architectures using the OpenMP library is available at http://igmplot. univ-reims. fr. IGMPlot provides VMD scripts designed to facilitate interpreting results.
Enhancements are planned for future versions of IGMPlot. Among these are: accelerating the code (a GPU version of IGMPlot is under progress, based on a GPU version of NCI developed earlier, cuNCI  46  ) and improving the IGM energy scoring function by leveraging machine-learning possibilities. Also, built-in promolecular electron densities for atoms of periods larger than 4 will be made available in the medium term. A long term perspective is to enable using the experimental ED. We hope the IGMPlot program will find utility in various applications in the chemistry community.
Pipeline Implementation The semi-automated pipeline is implemented in Python based on pyQGIS (QGIS Development Team, 2023), geopandas  (Jordahl et al. , 2020) , and shapely  (Gillies and others, 2019). It processes data from OpenStreetMap (OpenStreetMap contributors, 2015) into tactile maps ready to be printed on microcapsule paper (swell paper). The steps in the pipeline consist of preparing the data from OSM, processing the geometries, and map export are shown in Fig. 3. The parameters mentioned before are prepared in a. json file to be used throughout the pipeline. Currently, human inspection and curation are needed after major steps.
Data Preparation This step extracts basic features from the OSM dataset and prepares them for the proceeding steps. It's largely independent of the parameters. Two major sub-processes involved in this step are feature extraction from OSM and street lane count estimation. Based on the coordinates of the intersection, a processing extent of 400x400m (large enough to cover an intersection and its surrounding areas) is generated based on the intersection coordinates. This processing extent will be used later in the geometry processing steps. Features extracted from the OSM data include • roadway objects: street (lines), pedestrian crossings (points) • roadside objects: sidewalks (lines or areas), bus stops (points), buildings (areas), and green areas (areas). For the streets, the number of lanes indicates their widths and is important for the upcoming steps.
(2017) ;  Lazarus et al. (2019) , which incorporate additional trajectory constraints in the design. What can still be optimized? Given the previous remarks, an important question remains open: how to choose the sampling density? An axiomatic approach leads to choosing radial densities with a plateau (constant value) at the center. The radial character ensures rotation invariance, which seems natural to image organs in arbitrary orientations. The plateau enforces Nyquist rate at the center. However, it may still be possible to improve the results for specific datasets.