Search NASA⌕ Search

SEARCH · Search NASA

Results for “Computational toolkit”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 19 records

Computational toolkit for predicting thickness of 2D materials using machine learning and autogenerated dataset by large language model

The thickness of 2D materials not only plays a crucial role in determining the performance of nanoelectronic and optoelectronic devices but also introduces complexities in predicting volume-dependent properties, such as energy storage capacity, due to the intrinsic vacuum within these materials. Although a plethora of experimental techniques, including but not limited to optical contrast, Raman spectroscopy, nonlinear optical spectroscopy, near-field optical imaging, and hyperspectral imaging, facilitate the measurement of 2D material thickness, comprehensive data for many materials remain elusive. Over the past decade, the exponential proliferation of 2D materials and their heterostructures has outstripped the capabilities of conventional experimental and computational approaches. In this evolving landscape, machine learning (ML) has emerged as an indispensable tool, offering a scalable approach to augment these traditional methodologies. Addressing the critical gap, we introduce THICK2D—Thickness Hierarchy Inference and Calculation Kit for 2D Materials. This Python-based computational framework harnesses an autogenerated thickness database, developed using large language models, and advanced ML algorithms to facilitate the rapid and scalable estimation of material thickness, relying solely on crystallographic data. To demonstrate the utility and robustness of THICK2D, we successfully used the toolkit to predict the thickness of more than 8000 2D-based materials, sourced from two extensive 2D materials databases. THICK2D is disseminated as an open-source utility, accessible on GitHub at https://github.com/gmp007/THICK2D, and archived on Zenodo at https://10.5281/zenodo.11216648.

Ekuma, Chinedu E. (ORCID:0000000258527556)↗

Charon Message-Passing Toolkit for Scientific Computations

The Charon toolkit for piecemeal development of high-efficiency parallel programs for scientific computing is described. The portable toolkit, callable from C and Fortran, provides flexible domain decompositions and high-level distributed constructs for easy translation of serial legacy code or design to distributed environments. Gradual tuning can subsequently be applied to obtain high performance, possibly by using explicit message passing. Charon also features general structured communications that support stencil-based computations with complex recurrences. Through the separation of partitioning and distribution, the toolkit can also be used for blocking of uni-processor code, and for debugging of parallel algorithms on serial machines. An elaborate review of recent parallelization aids is presented to highlight the need for a toolkit like Charon. Some performance results of parallelizing the NAS Parallel Benchmark SP program using Charon are given, showing good scalability.

VanderWijngaart, Rob F.↗

Charon Message-Passing Toolkit for Scientific Computations

The Charon toolkit for piecemeal development of high-efficiency parallel programs for scientific computing is described. The portable toolkit, callable from C and Fortran, provides flexible domain decompositions and high-level distributed constructs for easy translation of serial legacy code or design to distributed environments. Gradual tuning can subsequently be applied to obtain high performance, possibly by using explicit message passing. Charon also features general structured communications that support stencil-based computations with complex recurrences. Through the separation of partitioning and distribution, the toolkit can also be used for blocking of uni-processor code, and for debugging of parallel algorithms on serial machines. An elaborate review of recent parallelization aids is presented to highlight the need for a toolkit like Charon. Some performance results of parallelizing the NAS Parallel Benchmark SP program using Charon are given, showing good scalability. Some performance results of parallelizing the NAS Parallel Benchmark SP program using Charon are given, showing good scalability.

VanderWijngarrt, Rob F.↗

Sparse Linear Algebra Toolkit for Computational Aerodynamics

Finding solutions to sparse linear systems of equations is an essential step in Computational Engineering applications of interest to NASA. Linear systems of equations are composed and solved in almost every computational engineering application. The characteristics of linear systems vary greatly from one application to another. Accordingly, there are a wide variety of methods for the solution of linear systems of equations. The operations and methods prepared by the authors are focused on linear systems of interest to NASA, primarily those associated with Computational Fluid Dynamics (CFD), Aeroelasticity, and Aeroacoustics. The Sparse Linear Algebra Toolkit (SLAT) is a coordinated collection of software featuring operations, methods, and data structures that are useful when solving sparse linear systems of equations on modern computer architectures. The implemented operations and methods are designed and tuned for parallelism in shared memory, in distributed memory, and across the hybrid combination of distributed-shared memory. The toolkit includes novel methods and implementations for modern architectures and facilitates development of new approaches for meeting NASA’s evolving computational engineering challenges using evolving computer architectures that are not available in vendor libraries. In this paper, significant features and interfaces within SLAT are presented and verified for simulations performed with NASA’s CFD solver, FUN3D. The runtime and scaling performance of the Generalized Minimum Residual (GMRES) method implemented in SLAT is analyzed for the linear subproblems within the solution of turbulent Navier-Stokes equations employed in the simulation of high-lift configurations. Prior to this work, the SPARSKIT GMRES implementation was the only Krylov subspace method available within FUN3D. A strong scaling study shows the SLAT GMRES implementation facilitates accurate Reynolds-averaged Navier-Stokes CFD solutions between 15% and 56% faster than the SPARSKIT GMRES implementation.

Stephen L Wood↗

SMATool: Strength of materials analysis toolkit

The study of the strength of materials is a cornerstone in material science and engineering, playing a critical role in shaping the progress and application of materials in diverse industrial sectors. The strength of a material is meticulously examined to understand the behavior of the material under different stress conditions and environments, thereby guiding material selection and structural design. Herein, we introduce the SMATool, a computational toolkit for the efficient calculation and analysis of material strength at both zero and finite temperatures for 3D, 2D, 1D, and tubular 2D-based nanostructures and nanotubes, as well as 1D nanoribbons. The toolkit is capable of calculating tensile, shear, ultimate, yield, and indentation (Vickers' hardness) strengths in various dimensions, as well as the energy storage capacity. We conducted several calculations both at zero and finite temperatures to validate the accuracy and reliability of the developed software. Here, the results show that the SMATool package provides accurate predictions that align with existing data on material strength. SMATool integrates seamlessly with widely used electronic structure codes like VASP and Quantum Espresso, providing a user-friendly interface catering to academic researchers and industry professionals.

36 MATERIALS SCIENCE↗

The Design and Evaluation of "CAPTools"--A Computer Aided Parallelization Toolkit

Writing applications for high performance computers is a challenging task. Although writing code by hand still offers the best performance, it is extremely costly and often not very portable. The Computer Aided Parallelization Tools (CAPTools) are a toolkit designed to help automate the mapping of sequential FORTRAN scientific applications onto multiprocessors. CAPTools consists of the following major components: an inter-procedural dependence analysis module that incorporates user knowledge; a 'self-propagating' data partitioning module driven via user guidance; an execution control mask generation and optimization module for the user to fine tune parallel processing of individual partitions; a program transformation/restructuring facility for source code clean up and optimization; a set of browsers through which the user interacts with CAPTools at each stage of the parallelization process; and a code generator supporting multiple programming paradigms on various multiprocessors. Besides describing the rationale behind the architecture of CAPTools, the parallelization process is illustrated via case studies involving structured and unstructured meshes. The programming process and the performance of the generated parallel programs are compared against other programming alternatives based on the NAS Parallel Benchmarks, ARC3D and other scientific applications. Based on these results, a discussion on the feasibility of constructing architectural independent parallel applications is presented.

Yan, Jerry↗

ElasTool v3.0: Efficient computational and visualization toolkit for elastic and mechanical properties of materials

Efficient computation and visualization of elastic and mechanical properties are crucial in the selection of materials and the design of new materials. Here, the ElasTool v3.0 toolkit marks a significant advancement in the computational analysis and visualization of elastic and mechanical properties of materials, essential in material selection and design. This enhanced version extends beyond standard calculations like elastic tensor, Young's modulus, bulk modulus, and Poisson's ratio. It introduces capabilities for computing minimum thermal conductivity, linear compressibility, rendering the Christoffel equation, and elastic energy density. Notably, it integrates advanced visualization tools, including compatibility with Plotly and Elate web platforms for interactive web-based property exploration. A key feature of ElasTool v3.0 is the implementation of second-order elastic constants (SOECs) for tubular 2D-based nanostructures and nanotubes. Leveraging high-efficiency strain-matrix sets (OHESS), the toolkit now facilitates efficient computation of elastic constants and mechanical properties at both zero and finite temperatures for 1D, 2D, and 3D dimensions. ElasTool is openly accessible on GitHub: https://github.com/gmp007/elastool.

1D, 2D, 3D, and tubular 2D nanostructure and nanot↗

First-Principles Statistical Mechanics Study of Magnetic Fluctuations and Order–Disorder in the Spinel LiNi 0.5 Mn 1.5 O 4 Cathode

While significant magnetic interactions exist in lithium transition metal oxides, commonly used as Li-ion cathodes, the interplay between magnetic couplings, disorder, and redox processes remains poorly understood. In this work, we focus on the high-voltage spinel LiNi 0.5 Mn 1.5 O 4 (LNMO) cathode as a model system on which to apply a computational framework that uses first principles-based statistical mechanics methods to predict the finite temperature magnetic properties of materials and provide insights into the complex interplay between magnetic and chemical degrees of freedom. Density functional theory calculations on multiple distinct Ni–Mn orderings within the LNMO system, including the ordered ground-state structure (space group P4332), reveal a preference for a ferrimagnetic arrangement of the Ni and Mn sublattices due to strong antiferromagnetic superexchange interactions between neighboring Mn 4+ and Ni 2+ ions and ferromagnetic Mn–Mn and Ni–Ni couplings, as revealed by magnetic cluster expansions. These results are consistent with qualitative predictions using the Goodenough-Kanamori-Anderson rules. Simulations of the finite temperature magnetic properties of LNMO are conducted using Metropolis Monte Carlo. We find that a “semiclassical” Monte Carlo sampling method based on the Heisenberg Hamiltonian accurately predicts experimental magnetic transition temperatures observed in magnetometry measurements. This study highlights the importance of a robust computational toolkit that accurately captures the complex chemomagnetic interactions and predicts finite temperature magnetic behavior to help analyze experimental magnetic and magnetic resonance spectroscopy data acquired ex situ and operando.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Quantum chemical topology and natural bond orbital analysis of M–O covalency in M(OC 6 H 5 ) 4 (M = Ti, Zr, Hf, Ce, Th, Pa, U, Np)

Covalency is complex yet central to our understanding of chemical bonding, particularly in the actinide series. In this work, we assess covalency in a series of isostructural d and f transition element compounds M(OC 6 H 5 ) 4 (M = Ti, Zr, Hf, Ce, Th, Pa, U, Np) using scalar relativistic hybrid density functional theory in conjunction with the Natural Bond Orbital (NBO), quantum theory of atoms in molecules (QTAIM) and interacting quantum atoms (IQA) approaches. The IQA exchange–correlation covalency metric is evaluated for the first time for actinides other than uranium, in order to assess its applicability in the 5f series. It is found to have excellent correlation with NBO and QTAIM covalency metrics, making it a promising addition to the computational toolkit for analysing metal–ligand bonding. Our range of metrics agree that the actinide-oxygen bonds are the most covalent of the elements studied, with those of the heavier group 4 elements the least. Within the early actinide series, Th stands apart from the other three elements considered, being consistently the least covalent.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Sphynx

Sphynx is a software library for parallel graph partitioning and load balancing. It partitions a set of vertices in a graph such that the vertex parts are balanced, and the edge cut is approximately minimized. The primary use case is to partition a computational graph into smaller tasks that can be assigned to processors (cores) for efficient parallel computing. Sphynx is based on the Trilinos scientific computing toolkit so can run on both multi-CPU and multi-GPU systems. SAND2020-12183 M Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy's National Nuclear Security Administration under contract DE-NA0003525.

Boman, Erik↗

The Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation Toolkit

The shared-memory programming model is a very effective way to achieve parallelism on shared memory parallel computers. Historically, the lack of a programming standard for using directives and the rather limited performance due to scalability have affected the take-up of this programming model approach. Significant progress has been made in hardware and software technologies, as a result the performance of parallel programs with compiler directives has also made improvements. The introduction of an industrial standard for shared-memory programming with directives, OpenMP, has also addressed the issue of portability. In this study, we have extended the computer aided parallelization toolkit (developed at the University of Greenwich), to automatically generate OpenMP based parallel programs with nominal user assistance. We outline the way in which loop types are categorized and how efficient OpenMP directives can be defined and placed using the in-depth interprocedural analysis that is carried out by the toolkit. We also discuss the application of the toolkit on the NAS Parallel Benchmarks and a number of real-world application codes. This work not only demonstrates the great potential of using the toolkit to quickly parallelize serial programs but also the good performance achievable on up to 300 processors for hybrid message passing and directive-based parallelizations.

Ierotheou, C.↗

Charon Message-Passing Toolkit for Scientific Computations

Charon is a library, callable from C and Fortran, that aids the conversion of structured-grid legacy codes-such as those used in the numerical computation of fluid flows-into parallel, high- performance codes. Key are functions that define distributed arrays, that map between distributed and non-distributed arrays, and that allow easy specification of common communications on structured grids. The library is based on the widely accepted MPI message passing standard. We present an overview of the functionality of Charon, and some representative results.

VanderWijngaart, Rob F.↗

FPGAs-as-a-Service Toolkit (FaaST)

Computing needs for high energy physics are already intensive and are expected to increase drastically in the coming years. In this context, heterogeneous computing, specifically as-a-service computing, has the potential for significant gains over traditional computing models. Although previous studies and packages in the field of heterogeneous computing have focused on GPUs as accelerators, FPGAs are an extremely promising option as well. A series of workflows are developed to establish the performance capabilities of FPGAs as a service. Multiple different devices and a range of algorithms for use in high energy physics are studied. For a small, dense network, the throughput can be improved by an order of magnitude with respect to GPUs as a service. For large convolutional networks, the throughput is found to be comparable to GPUs as a service. This work represents the first open-source FPGAs-as-a-service toolkit.

46 INSTRUMENTATION RELATED TO NUCLEAR SCIENCE AND ↗

PETSc/TAO Users Manual: Revision 3.18

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication.

97 MATHEMATICS AND COMPUTING↗

PETSc/TAO Users Manual (Rev. 3.19)

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication. PETSc/TAO includes a large suite of parallel linear solvers, nonlinear solvers, time integrators, and opti mization that may be used in application codes written in Fortran, C, C++, and Python (via petsc4py; see Getting Started). PETSc provides many of the mechanisms needed within parallel application codes, such as parallel matrix and vector assembly routines. The library is organized hierarchically, enabling users to employ the level of abstraction that is most appropriate for a particular problem. By using techniques of object-oriented programming, PETSc provides enormous flexibility for users. PETSc is a sophisticated set of software tools; as such, for some users it initially has a much steeper learning curve than packages such as MATLAB or a simple subroutine library. In particular, for individuals without some computer science background, experience programming in C, C++, python, or Fortran and experience using a debugger such as gdb or lldb, it may require a significant amount of time to take full advantage of the features that enable efficient software use. However, the power of the PETSc design and the algorithms it incorporates may make the efficient implementation of many application codes simpler than “rolling them” yourself. For many tasks a package such as MATLAB is often the best tool; PETSc is not intended for the classes of problems for which effective MATLAB code can be written. There are several packages, built on PETSc, that may satisfy your needs without requiring directly using PETSc. We recommend reviewing these packages functionality before starting to code directly with PETSc. PETSc can be used to provide a “MPI parallel linear solver” in an otherwise sequential, or OpenMP parallel code. This approach cannot provide extremely large improvements in the application time by utilizing large numbers of MPI processes but can still improve the performance. Certainly all parts of a previously sequential code need not be parallelized but the matrix generation portion must be parallelized to expect true scalability to large numbers of MPI processes. See PCMPI for details on how to utilize the PETSc MPI linear solver server. Since PETSc is under continued development, small changes in usage and calling sequences of routines will occur. PETSc has been supported for twenty-five years; see mailing list information on our website for information on contacting support.

97 MATHEMATICS AND COMPUTING↗

PETSc/TAO Users Manual (Rev. 3.20)

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication.

97 MATHEMATICS AND COMPUTING↗

PETSc/TAO Users Manual V.3.21

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations (PDEs) and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for implementing large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication. PETSc/TAO includes a large suite of parallel linear solvers, nonlinear solvers, time integrators, and optimizers that may be used in application codes written in Fortran, C, C++, and Python (via petsc4py; see Getting Started ). The library is organized hierarchically, enabling users to employ the abstraction level most appropriate for a particular problem. By using techniques of object-oriented programming, PETSc provides enormous flexibility for users.

97 MATHEMATICS AND COMPUTING↗