Search NASA⌕ Search

SEARCH · Search NASA

Results for “Programming Language”

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 415 records · Page 23

Upgrading the Fermilab Fire and Security Reporting System

Fermilab's homegrown fire and security system (known as FIRUS) is highly reliable and has been used nearly thirty years. The system has gone through some minor upgrades, however, none of those changes made significant, visible changes. In this paper, we present a major overhaul to the system that is halfway complete. We discuss the use of Apple's OS X for the new GUI, upgrading the servers to use the Erlang programming language and allowing limited access for iOS and Android-based mobile devices.

43 PARTICLE ACCELERATORS↗

A dynamic, dependent type system for nuclear fuel cycle code generation

The nuclear fuel cycle may be interpreted as a network or graph, thus allowing methods from formal graph theory to be used. Nodes are often idealized as nuclear fuel cycle facilities (reactors, enrichment cascades, deep geologic repositories). With the advent of modern object-oriented programming languages - and fuel cycle simulators implemented in these languages - it is natural to define a class hierarchy of facility types. Bright is a quasi-static simulator, meaning that the number of material passes through a facility is tracked rather than natural time. Bright is implemented as a C++ library that models many canonical components such as reactors, storage facilities, and more. Cyclus is a discrete time simulator, meaning that natural time is tracked through out the simulation. Therefore a robust, dependent type system was developed to enable inter-operability between Bright and Cyclus. This system is capable of representing any fuel cycle facility. Types declared in this system can then be used to automatically generate code which binds a facility implementation to a simulator front end. Facility model wrappers may be used either internally to a fuel cycle simulator or as a mechanism for inter-operating multiple simulators. While such a tool has many potential use cases it has two main purposes: enabling easy performance of code-to-code comparisons and the verification and the validation of user input.

11 NUCLEAR FUEL CYCLE AND FUEL MATERIALS↗

The Acoustic Emission signal acquired by the microphones placed in the CABRI test device along the fourteen last R.I.A. experiments: an example of reproducible research in nuclear science

The CABRI facility is an experimental nuclear reactor of the French Atomic Energy Commission. It is located at the Cadarache Research Centre in southern France and it is designed to act as a support to the French nuclear infrastructure. The purpose of the new testing programme termed, 'CABRI International Programme' (CIP) is to study the behaviour of PWR-type fuel rods at high burnup, equipped with an 'advanced' cladding, under Reactivity Initiated Accident (RIA) conditions (such as the scenario of a control rod ejection). Within the framework of this programme, piloted and funded by the French Institute of Nuclear Radioprotection and Safety (IRSN), ten tests are to be conducted with a frequency of two tests per year. The LPRE laboratory of the CEA which is in charge of the Preparation, realisation and breakdown of the test results studies the possibility to set up a new test analysis based on the processing of signals coming from sensors placed within the test equipment. During the experimental phase, the behaviour of the fuel element generates acoustic waves which can be detected by two microphones placed upstream and downstream of the test device. Studies showed the interest to realize temporal and spectral analyses on these signals by showing the existence of signatures which can be correlated with physical phenomena as the rod failure or the test shutdown (i.e. scram). The work presented in this article results from the will to consolidate these studies. Since the main phenomenon to be tracked is the fuel rod failure, the aim would be to highlight specific events which would have been precursors of the rod failure in order to use in the future these signals for further interpretation. Such an antecedent works resumption leads to a better understanding of the experimental needs and constitutes a good initial state to prepare the new very fast digital data acquisition systems. Although all the raw data are accessible in the form of text files, analyses and graphics representations were not straightforward to reproduce from the ancient studies since that, on one hand, people who were in charge of the original work left the laboratory and on the other hand because it is not easy when the time passes, even with our own work, to be able to remember the steps of data manipulations and the exact setup: - During the ancient experiments the use of analog data acquisition systems required to digitize tapes to be able to realize computer treatments. That had had for consequence to lose the initial dating. This one must be correctly edited to do temporal comparisons. - Analyses require functions for calculations whose parameters has to be well-known to reach the same results. We thus wished to manage our workflow in the idea that it can be easily reproducible on all the experiments. The object of the work presented in this article was to put in practice this strong bind between the data, treatments and generation of the document in order not to hesitate to do the iteration principle in action. We do not have to be afraid by the data driven analyses. According to the philosophy of the literate programming, the text of the technical document is woven with the computer code that produces all the printed output as tables, graphs for the study eliminating hence the unrealistic cut and paste. This difficulty is not specific to the nuclear domain. For many years, researchers have been worked out solutions to this mundane issue. And, presently, new technologies and high-level programming languages offer us actual answers. We will firstly present the tools applied in our laboratory to implement this workflow, then we will describe the global perception carried out to continue the study of the Acoustic Emission signals recorded by the two microphones during the fourteen last CABRI R.I.A. test.

21 SPECIFIC NUCLEAR REACTORS AND ASSOCIATED PLANTS↗

Application of performance portability solutions for GPUs and many-core CPUs to track reconstruction kernels

Next generation High-Energy Physics (HEP) experiments are presented with significant computational challenges, both in terms of data volume and processing power. Using compute accelerators, such as GPUs, is one of the promising ways to provide the necessary computational power to meet the challenge. The current programming models for compute accelerators often involve using architecture-specific programming languages promoted by the hardware vendors and hence limit the set of platforms that the code can run on. Developing software with platform restrictions is especially unfeasible for HEP communities as it takes significant effort to convert typical HEP algorithms into ones that are efficient for compute accelerators. Multiple performance portability solutions have recently emerged and provide an alternative path for using compute accelerators, which allow the code to be executed on hardware from different vendors. We apply several portability solutions, such as Kokkos, SYCL, C++17 std::execution::par and Alpaka, on two mini-apps extracted from the mkFit project: p2z and p2r. These apps include basic kernels for a Kalman filter track fit, such as propagation and update of track parameters, for detectors at a fixed z or fixed r position, respectively. The two mini-apps explore different memory layout formats. We report on the development experience with different portability solutions, as well as their performance on GPUs and many-core CPUs, measured as the throughput of the kernels from different GPU and CPU vendors such as NVIDIA, AMD and Intel.

Kwok, Ka Martin↗

ZEM: Integrated Framework for Real-Time Data and Model Analyses for Robust Environmental Management Decision Making - 16438

Typically environmental management (EM) problems require analysis of large and complex data sets originating from concurrent data streams with different data collection frequencies and pedigree. These big data sets require on-the-fly analysis, assimilation and integration into a series of models with different complexity for various types of model-based analyses. This is needed to provide fast iterative model analyses based on the latest available data to guide decision-making. Furthermore, the data and model are associated with uncertainties. The uncertainties are probabilistic (e.g. measurement errors) and non-probabilistic (unknowns, e.g. alternative conceptual models characterizing site conditions). To address all of these issues, we have developed an integrated framework for real-time data and model analyses for environmental decision-making called ZEM. The framework allows for seamless and on-the-fly integration of data and modeling results for robust and scientifically-defensible decision-making applying advanced decision analyses tools such as Bayesian-Information-Gap Decision Theory (BIG-DT). The framework also includes advanced methods for optimization that are capable of dealing with a large number of unknown model parameters, and surrogate (reduced order) modeling capabilities based on support vector regression techniques. The framework is predominantly coded in Julia, a state-of-the-art high-performance programing language (http://julialang.org) and incorporates the MADS computational tools (Model Analysis and Decision Support; http://mads.lanl.gov). We demonstrate the application of ZEM for data and model analyses at the LANL Chromium site. The ZEM framework will be released as open-source code and can be applied to any environmental management site. (authors)

12 MANAGEMENT OF RADIOACTIVE AND NON-RADIOACTIVE W↗

Scaling Input Distributions for Probabilistic Models - 19472

It is important to address scaling issues when building models to support risk-based decisions for radioactive waste disposal sites. Currently, probabilistic risk assessment and probabilistic performance assessment models are run for multiple realizations where each realization uses one value from each input distribution over the entire modeled time. The input distributions represent the current state of knowledge in the mean of the input variable over the spatial region of interest and over the time period of the model run. This paper focuses on the time factor in input distribution scaling because it presents more serious conceptual and distributional challenges than the spatial factor. One of the challenges in temporal scaling is the effect of non-linearity on propagation of distribution uncertainty through to uncertainty in results. Radioactive waste disposal models tend to have both linear and non-linear components in their models. Dose assessment calculations are typically represented by linear models, while contaminant transport models have linear and non-linear components. In principle, temporal scaling of input parameter distributions for a linear model is straightforward, but scaling of input distributions for non-linear models is not. This paper uses examples to investigate the effects of input distribution temporal scaling on simple linear and non-linear models. Different scaling scenarios were investigated by comparing three analysis tools: analytical mathematical representations, statistical software programming, and GoldSim Monte Carlo simulation software. R statistical software is an open source statistical programming language often used for statistical analyses and graphical representation of data. GoldSim is a robust probabilistic dynamic modeling platform used in performance assessment modeling of radioactive waste sites. A simple linear model, a quadratic model and a multiplicative model were the cases explored for each of these tools. For the three analysis tools considered and with each of the scaling cases, 1,000 realizations were implemented from distributions of the random variables of interest. This is a sufficient number of realizations for simple models to capture the model space. An annual temporal resolution of a 100-year simulation period was chosen for all models and analysis tools. The effects of temporal scaling were demonstrated by investigating two different options for time scaling. Option 1 was set up so that the input distributions represented the expected value on an annual time scale, and a new value from that distribution was chosen every year (at every time step which equaled a year) for 100 years. In Option 2, the input distributions were scaled to represent the expected mean value of the input variable over the 100 years of simulation, and one value from that distribution was chosen for the entire elapsed time. Results show agreement across the three analysis tools. As expected, the linear models have identical results for the two different scaling Options, and the non-linear models diverge in the results for different time scale implementation. The implications of this work point to the need for careful consideration of input distribution temporal scaling. (authors)

12 MANAGEMENT OF RADIOACTIVE AND NON-RADIOACTIVE W↗

Implementation of new PRODIAG algorithm and simulation-based acceptance test - 219

This paper presents the improvement of an automated-reasoning computer program for nuclear power plant diagnosis, namely PRODIAG. PRODIAG, first developed at the Argonne National Laboratory, uses confluence-based reasoning to perform fault diagnosis in engineering systems that can be described by the conservation laws for mass, energy, and momentum. Therefore, unlike other plant configuration-dependent rule-based diagnosis algorithms, the code is generally applicable to a wide variety of plant configurations by simply replacing the plant instrumentation diagram (PID) database. The need for improvement was raised when the original PRODIAG failed to provide the requisite degree of extensibility and maintainability for new applications. These shortcomings have been addressed through a new code architecture that uses an objected-oriented logic-programming language in place of the original Prolog language and uses an open-source automated reasoning engine in place of the original hardwired rule-evaluation sequence. This paper presents the architecture and implementation details of the code transition. Verification and validation studies were performed for the new PRODIAG, which involved re-running the distinct fault cases defined at the time the code was originally developed. (authors)

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

MFANS 2024 - Formally Proving Characteristics of Cyber-Physical Systems

Cyber-physical systems (CPS) are engineered systems that rely on the smooth integration of computational algorithms and physical elements. This integration presents new challenges for verifying that systems will behave as expected. The goal of this presentation is to present current challenges and potential solutions for the formal verification of cyber-physical systems. For cyber systems, formal methods refer to systematically rigorous mathematical techniques employed in the specification, development, analysis, and verification of both software and hardware systems. Recent advancements in computer science have yielded sophisticated tools specifically designed to address challenges associated with formal methods in complex systems. These tools leverage various foundational concepts such as logic, formal languages, program semantics, type systems, type theory, and automata theory. A notable achievement in the application of formal methods is the seL4 microkernel, claimed to be the first general-purpose operating-system kernel to be verified. Its proof implies the absence of bugs and guarantees that the kernel meets specifications. For physical systems, dynamic and control theory has a history of using rigorous analytic techniques to prove functional correctness. Lyapunov, optimal, classical, modern, and robust control theories all provide rigorous mathematical methods both to analyze system performance and to design controller that can be guaranteed to meet certain objectives. Recent computational techniques like level set theory and reachability analysis provide assertions that a system's state will avoid unsafe regions. Even though success has been independently achieved for cyber systems and physical systems, the integration of such systems creates new challenges. In particular, there is an obvious discrepancy between finite-state machines and infinite-state systems, resulting in different approaches for modeling and analyzing these system. While it is possible to simulate hybrid systems, this provides only a demonstration of a performance and not proof. For hybrid systems, current formal methods and system analysis approaches typically require a workarounds to work on hybrid systems like CPS. This paper will outline the state of the art and limits of current practice for formally verifying CPS and will identify possible research directions that require attention.

97 MATHEMATICS AND COMPUTING↗

Riemannian Optimization Applied to AC Optimal Power Flow

The nonlinear, nonconvex AC optimal power flow problem is of growing importance as the nature of the power grid evolves. This problem can be difficult to solve for interior point methods. However, the advent of optimization algorithms over smooth Riemannian manifolds presents an alternative approach. The nonlinear, nonconvex constraints in the AC power flow problem form an embedded submanifold of Euclidean space. In this paper, the authors explore the performance of Riemannian optimization algorithms for the ACOPF problem where the optimization is performed directly on the AC power flow manifold. This is done by using the Julia programming language and the Julia packages PowerModels.jl and Manopt.jl.

AC optimal power flow↗

An Erlang-Based Front End Framework for Accelerator Controls

We have developed a new front-end framework for the ACNET control system in Erlang. Erlang is a functional programming language developed for real-time telecommunications applications. The primary task of the front-end software is to connect the control system with drivers collecting data from individual field bus devices. Erlang's concurrency and message passing support have proven well-suited for managing large numbers of independent ACNET client requests for front-end data. Other Erlang features which make it particularly well-suited for a front-end framework include fault-tolerance with process monitoring and restarting, real-time response,and the ability to change code in running systems. Erlang's interactive shell and dynamic typing make writing and running unit tests an easy part of the development process. Erlang includes mechanisms for distributing applications which we will use for deploying our framework to multiple front-ends, along with a configured s et of device drivers. We've developed Erlang code to use Fermilab's TCLK event distribution clock and Erlang's interface to C/C++ allows hardware-specific driver access.

43 PARTICLE ACCELERATORS↗

Practical Implementation of GPU-based Computing at the Grid Edge for Resilience Scenarios

This paper presents a practical implementation of GPU-accelerated computing at the grid edge to enhance power system resilience through next-generation smart meters. Advanced Metering Infrastructure (AMI) systems rely predominantly on centralized processing architectures, which limit real-time response capabilities during grid disturbances. This work proposes the integration of GPU-enabled computational platforms directly within smart meter to enable local execution support for power system analytics, fault detection algorithms, and optimization routines. The proposed framework uses the Julia programming language to leverage highperformance parallel computing capabilities while maintaining code portability and development efficiency. We use two experimental scenarios to benchmark the computational feasibility of this approach: sparse linear system solutions representative of power flow analyses, and multi-stage production cost simulations incorporating unit commitment and economic dispatch operations. Results demonstrate that computationally intensive power system algorithms, such as those supporting resilience scenario calculations, can be effectively executed at the distribution edge using commercially available embedded GPU hardware. Keywords—GPU acceleration, edge computing, smart meters, grid resilience, AMI, resilience.

De Souza, Reubun [School of Electrical Engineering↗

SplitML

SplitML (Signal Processing Library for Interference rejecTion by Machine Learning) is a code repository for a set of tools for interference rejection in complex time-domain signals. The goal of the tools is to provide machine learning modeling capabilities for rejecting interference. Recent related machine learning algorithms for signal processing have focused mostly on speech enhancement or multi-speaker speech separation; the tools in SplitML will extend these innovations to generic time-domain signals of interest. SplitML includes tools for generating synthetic noisy signals, code for customized machine learning models applicable to interference rejection, and tools for evaluating such algorithms against standard signal processing techniques. These components are written in Python, a high-level programming language that takes advantage of the Python ecosystem of high-quality open-source packages for machine learning and signal processing.

Klein, Natalie↗

Improving the Performance of Medical Imaging Applications using SYCL

In this report, we are interested in applying the SYCL programming model to medical imaging applications for a study on performance portability and programming productivity. The SYCL standard specifies a cross-platform abstraction layer that enables programming of heterogeneous computing systems using standard C++. As opposed to the Open Computing Language (OpenCL) programming model, in which host and device code are generally written in different programming languages [1], SYCL can combine host and device code for an application in a type-safe way to improve development productivity and performance portability.

97 MATHEMATICS AND COMPUTING↗

Application of Variance-Based Sensitivity Analysis to a Large System Dynamics Model

Variance-based sensitivity methods can provide insights into large computational models. We present a novel application of sensitivity analysis to the Biomass Scenario Model (BSM) a large and complex system dynamics model of the developing biofuels industry in the United States. We apply a two-stage sensitivity approach consisting of an initial sensitivity screening, followed by a variance decomposition approach. Identifying key system levers and quantifying their strength is not straightforward in complex system dynamics models that have numerous feedbacks and nonlinear results. Variance-based sensitivity analysis (VBSA) offers a systematic, global approach to assessing system dynamics models because it addresses nonlinear responses and interactive effects. Especially when a large model's size makes manual exploration of the input space difficult and time-consuming, the approach can help to provide a comprehensive understanding of interactions that drive model behaviors.

97 MATHEMATICS AND COMPUTING↗

CIGEN

CIGEN is a tool that finds input ranges that cause high compiler-induced numerical inconsistencies in numerical programs written in a compiled language. Numerical program behavior may diverge when they are compiled and ran differently. Many factors, such as different hardware architectures (for example, the x87 FPU with its 80-bit registers), different compilers, or different optimization flags may cause the results of floating-point computations to become inconsistent. This kind of inconsistencies are known as compiler-induced numerical inconsistencies. Given a program with floating-point inputs and an output,

Laguna Peralta, Ignacio↗

Radiation shielding properties of barite coated fabric by computer programme

With the development of technology radiation started to be used in variety of different fields. As the radiation is hazardous for human health, it is important to keep radiation dose as low as possible. This is done mainly using shielding materials. Barite is one of the important materials in this purpose. As the barite is not used directly it can be used in some other materials such as fabric. For this purposes barite has been coated on fabric in order to improve radiation shielding properties of fabric. Determination of radiation shielding properties of coated fabric has been done by using computer program written C# language. With this program the images obtained from digital Rontgen films is used to determine radiation shielding properties in terms of image processing numerical values. Those values define radiation shielding and in this way the coated barite effect on radiation shielding properties of fabric has been obtained.

07 ISOTOPE AND RADIATION SOURCES↗

A Case Study on the HACCmk Routine in SYCL on Integrated Graphics

As opposed to the Open Computing Language (OpenCL) programming model in which host and device codes are generally written in different languages, the SYCL programming model can combine host and device codes for an application in a type-safe way to improve development productivity. In this paper, we chose the HACCmk routine, a representative compute-bound kernel, as a case study on the performance of the SYCL programming model targeting a heterogeneous computing device. More specifically, we introduced the SYCL programming model, presented the OpenCL and SYCL implementations of the routine, and compared the performance of the two implementations using the offline and online compilation on Intel (R) Iris (TM) Pro integrated GPUs. We found that the overhead of online compilation may become significant compared to the execution time of a kernel. Compared to the performance of OpenCL implementations, the SYCL implementation can maintain the performance using the offline compilation. The number of execution units in a GPU are critical to improving the raw performance of a compute-bound kernel.

Compilation modes↗