Search NASA⌕ Search

SEARCH · Search NASA

Results for “tensor computations”

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

Development of the Tensoral Computer Language

The research scientist or engineer wishing to perform large scale simulations or to extract useful information from existing databases is required to have expertise in the details of the particular database, the numerical methods and the computer architecture to be used. This poses a significant practical barrier to the use of simulation data. The goal of this research was to develop a high-level computer language called Tensoral, designed to remove this barrier. The Tensoral language provides a framework in which efficient generic data manipulations can be easily coded and implemented. First of all, Tensoral is general. The fundamental objects in Tensoral represent tensor fields and the operators that act on them. The numerical implementation of these tensors and operators is completely and flexibly programmable. New mathematical constructs and operators can be easily added to the Tensoral system. Tensoral is compatible with existing languages. Tensoral tensor operations co-exist in a natural way with a host language, which may be any sufficiently powerful computer language such as Fortran, C, or Vectoral. Tensoral is very-high-level. Tensor operations in Tensoral typically act on entire databases (i.e., arrays) at one time and may, therefore, correspond to many lines of code in a conventional language. Tensoral is efficient. Tensoral is a compiled language. Database manipulations are simplified optimized and scheduled by the compiler eventually resulting in efficient machine code to implement them.

Ferziger, Joel↗

Improving Runtime Performance of Tensor Computations using Rust From Python

In this work, we investigate improving the runtime performance of key computational kernels in the Python Tensor Toolbox (pyttb), a package for analyzing tensor data across a wide variety of applications. Recent runtime performance improvements have been demonstrated using Rust, a compiled language, from Python via extension modules leveraging the Python C API—e.g., web applications, data parsing, data validation, etc. Using this same approach, we study the runtime performance of key tensor kernels of increasing complexity, from simple kernels involving sums of products over data accessed through single and nested loops to more advanced tensor multiplication kernels that are key in low-rank tensor decomposition and tensor regression algorithms. In numerical experiments involving synthetically generated tensor data of various sizes and these tensor kernels, we demonstrate consistent improvements in runtime performance when using Rust from Python over 1) using Python alone, 2) using Python and the Numba just-in-time Python compiler (for loop-based kernels), and 3) using the NumPy Python package for scientific computing (for pyttb kernels).

97 MATHEMATICS AND COMPUTING↗

Communication Lower Bounds and Optimal Algorithms for Multiple Tensor-Times-Matrix Computation

Multiple tensor-times-matrix (Multi-TTM) is a key computation in algorithms for computing and operating with the Tucker tensor decomposition, which is frequently used in multidimensional data analysis. Here, we establish communication lower bounds that determine how much data movement is required (under mild conditions) to perform the Multi-TTM computation in parallel. The crux of the proof relies on analytically solving a constrained, nonlinear optimization problem. We also present a parallel algorithm to perform this computation that organizes the processors into a logical grid with twice as many modes as the input tensor. We show that, with correct choices of grid dimensions, the communication cost of the algorithm attains the lower bounds and is therefore communication optimal. Finally, we show that our algorithm can significantly reduce communication compared to the straightforward approach of expressing the computation as a sequence of tensor-times-matrix operations when the input and output tensors vary greatly in size.

HBL-inequalities↗

Parallel language constructs for tensor product computations on loosely coupled architectures

A set of language primitives designed to allow the specification of parallel numerical algorithms at a higher level is described. The authors focus on tensor product array computations, a simple but important class of numerical algorithms. They consider first the problem of programming one-dimensional kernel routines, such as parallel tridiagonal solvers, and then look at how such parallel kernels can be combined to form parallel tensor product algorithms.

Mehrotra, Piyush↗

Parallel language constructs for tensor product computations on loosely coupled architectures

Distributed memory architectures offer high levels of performance and flexibility, but have proven awkard to program. Current languages for nonshared memory architectures provide a relatively low level programming environment, and are poorly suited to modular programming, and to the construction of libraries. A set of language primitives designed to allow the specification of parallel numerical algorithms at a higher level is described. Tensor product array computations are focused on along with a simple but important class of numerical algorithms. The problem of programming 1-D kernal routines is focused on first, such as parallel tridiagonal solvers, and then how such parallel kernels can be combined to form parallel tensor product algorithms is examined.

Mehrotra, Piyush↗

Nonlinear optimal control with tensors - Some computational issues

Some computational issues associated with the calcualtion of optimal feedback controls for nonlinear systems in a tensor setting are described. The specific issues addressed pertain to the combinatorial nature of the loading of the elements into tensors used to represent the system, cost, and feedback, and the subsequent calculations involving these elements. Particular attention is given to: the symmetric tensor algebra which is a natural setting for representing polynomials; the conversions between symmetric and nonsymmetric tensors; the general nature of the calculations required; and the solution equation for nonlinear optimal feedback control. It is concluded that nonlinear tensor feedback can improve performance both in terms of system responses and in terms of system stability region.

Osullivan, J. A.↗

Computing Sparse Tensor Decompositions via Chapel and C++/MPI Interoperability without Intermediate I/O

We extend an existing approach for efficient use of shared mapped memory across Chapel and C++ for graph data stored as 1-D arrays to sparse tensor data stored using a combination of 2-D and 1-D arrays. We describe the specific extensions that provide use of shared mapped memory tensor data for a particular C++ tensor decomposition tool called GentenMPI. We then demonstrate our approach on several real-world datasets, providing timing results that illustrate minimal overhead incurred using this approach. Finally, we extend our work to improve memory usage and provide convenient random access to sparse shared mapped memory tensor elements in Chapel, while still being capable of leveraging high performance implementations of tensor algorithms in C++.

97 MATHEMATICS AND COMPUTING↗

Computation of Effective Mechanical Properties and Mechanical Erosion Modeling of TPS Materials

The goal of this presentation is to provide a general overview of the multi-scale modeling formulation to determine if there is additional surface recession in Thermal Protection Systems (TPS) materials as a result of mechanical erosion due to high shear conditions during atmospheric entry. This modeling process is performed at different scales by leveraging two computational frameworks developed at NASA: the Porous Microstructure Analysis (PuMA) software, and the Porous material Analysis Toolbox based on OpenFOAM (PATO). PuMA specializes in computing effective macro-scale material properties by performing material response simulations on 3D digital micro-scale representations of porous micro-structures. The modeling of TPS materials at the micro-scale is essential to understand how they behave as part of a heat shield assembly. The first part of the presentation will detail the implementation of PuMA’s cell-centered finite volume elasticity solver, which allows the computation of macro-scale effective mechanical properties of heterogeneous and anisotropic materials such as fibrous and woven TPS composites. These homogenized mechanical properties are used by PATO’s mechanical erosion model to predict the TPS material’s recession at a larger scale. This work will also provide some examples of multi-scale analysis from the fiber level up to the unit cell. The second part of the presentation will focus on the macro-scale approach to determine if erosion at the heat shield’s surface occurs due to mechanical and thermal loads experienced during atmospheric entry. To accomplish this, a solid mechanics module was integrated within PATO enabling it to model the potential mechanical erosion in three steps: first, after obtaining the effective mechanical properties with PuMA, the implemented stress analysis solver computes the stress and the displacement fields for the TPS material using the wall shear stress tensor, computed using a CFD solver, as boundary conditions; then, regions on the surface where the stress meets the failure criteria are identified; finally, the failed material is removed and the mesh is redistributed accordingly. The outcome is a model capable of predicting the total recession in the material due to surface chemistry and mechanical erosion.

Mechanical Properties↗

Mechanical Erosion Modeling of TPS Materials

The goal of this work is to predict the mechanical response of TPS materials, and specifically, to determine if there is additional surface recession in the heat shield’s surface as a result of mechanical erosion due to the mechanical and thermal loads experienced during atmospheric entry. To accomplish this, a solid mechanics module was integrated within the PATO material response code, enabling it to model the potential mechanical erosion in three steps: first, having the effective mechanical properties as function of temperature, the implemented stress analysis solver computes the stress and the displacement fields for the TPS material using the wall shear stress tensor, computed with the DPLR hypersonic CFD code, as boundary conditions; then, regions on the surface where the stress meets the failure criteria are identified; finally, the failed material is removed and the mesh is redistributed accordingly. The outcome is a model capable of predicting the total recession in the TPS material due to surface chemistry and mechanical erosion.

Stress Analysis↗

torch-einshard v1.0

torch-einshard is a Python library for describing local and distributed PyTorch tensor computations with compact, einsum-like notation. Its expressions name logical axes, specify how they are sharded across a PyTorch DeviceMesh, and represent partial reductions. The library automatically performs contractions, permutations, reshaping, splitting, gathering, reduction, reduce-scatter, and repartitioning while preserving autograd. Additional features include sharding-aware FFTs, tensor rolls, halo exchange, sliding windows, 1D–3D convolutions, uneven-shard handling, parameter initialization and gradient management, and cost-based execution planning. It is designed for scientific machine learning and large-model workloads, including tensor-, sequence-, and spatial-parallel MLPs, attention, convolutions, and spectral operations. Compared with manually combining torch.einsum and distributed collectives, torch-einshard expresses both the mathematical operation and data placement in one readable formula. This reduces boilerplate and synchronization errors, keeps forward and backward communication consistent, and allows the library to select optimized collective strategies without changing model code.

Morozov, Dmitriy [Lawrence Berkeley National Labor↗

Computer simulation of the mathematical modeling involved in constitutive equation development: Via symbolic computations

Development of new material models for describing the high temperature constitutive behavior of real materials represents an important area of research in engineering disciplines. Derivation of mathematical expressions (constitutive equations) which describe this high temperature material behavior can be quite time consuming, involved and error prone; thus intelligent application of symbolic systems to facilitate this tedious process can be of significant benefit. A computerized procedure (SDICE) capable of efficiently deriving potential based constitutive models, in analytical form is presented. This package, running under MACSYMA, has the following features: partial differentiation, tensor computations, automatic grouping and labeling of common factors, expression substitution and simplification, back substitution of invariant and tensorial relations and a relational data base. Also limited aspects of invariant theory were incorporated into SDICE due to the utilization of potentials as a starting point and the desire for these potentials to be frame invariant (objective). Finally not only calculation of flow and/or evolutionary laws were accomplished but also the determination of history independent nonphysical coefficients in terms of physically measurable parameters, e.g., Young's modulus, was achieved. The uniqueness of SDICE resides in its ability to manipulate expressions in a general yet predefined order and simplify expressions so as to limit expression growth. Results are displayed when applicable utilizing index notation.

Arnold, S. M.↗

Application of symbolic computations to the constitutive modeling of structural materials

In applications involving elevated temperatures, the derivation of mathematical expressions (constitutive equations) describing the material behavior can be quite time consuming, involved and error-prone. Therefore intelligent application of symbolic systems to faciliate this tedious process can be of significant benefit. Presented here is a problem oriented, self contained symbolic expert system, named SDICE, which is capable of efficiently deriving potential based constitutive models in analytical form. This package, running under DOE MACSYMA, has the following features: (1) potential differentiation (chain rule), (2) tensor computations (utilizing index notation) including both algebraic and calculus; (3) efficient solution of sparse systems of equations; (4) automatic expression substitution and simplification; (5) back substitution of invariant and tensorial relations; (6) the ability to form the Jacobian and Hessian matrix; and (7) a relational data base. Limited aspects of invariant theory were also incorporated into SDICE due to the utilization of potentials as a starting point and the desire for these potentials to be frame invariant (objective). The uniqueness of SDICE resides in its ability to manipulate expressions in a general yet pre-defined order and simplify expressions so as to limit expression growth. Results are displayed, when applicable, utilizing index notation. SDICE was designed to aid and complement the human constitutive model developer. A number of examples are utilized to illustrate the various features contained within SDICE. It is expected that this symbolic package can and will provide a significant incentive to the development of new constitutive theories.

Arnold, Steven M.↗

A self-documenting source-independent data format for computer processing of tensor time series

The UCLA Space Science Group has developed a fixed format intermediate data set called a block data set, which is designed to hold multiple segments of multicomponent sampled data series. The format is sufficiently general so that tensor functions of one or more independent variables can be stored in the form of virtual data. This makes it possible for the unit data records of the block data set to be arrays of a single dependent variable rather than discrete samples. The format is self-documenting with parameter, label and header records completely characterizing the contents of the file. The block data set has been applied to the filing of satellite data (of ATS-6 among others).

Mcpherron, R. L.↗

Bootstrapping the 3d Ising stress tensor

We compute observables of the critical 3d Ising model to high precision by applying the numerical conformal bootstrap to mixed correlators of the leading scalar operators σ and ϵ, and the stress tensor T μν . We obtain new precise determinations of scaling dimensions (∆ σ , ∆ ϵ ) = (0.518148806(24), 1.41262528(29)) as well as OPE coefficients involving σ, ϵ, and T μν . We also describe several improvements made along the way to algorithms and software tools for the numerical bootstrap.

Conformal and W Symmetry↗