Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “C CODES”

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 91 records · Page 5

End-To-End Decentralized Transmission Line Protection in IBR-Dominated Weak Grids Using Interpretable Data-Driven Methods

Traditional transmission line protection relies on predictable synchronous-based fault signatures, which frequently fail under the non-standard, current-limited fault characteristics of Inverter-Based Resources (IBRs). This study investigates how to achieve secure, communication-free fault isolation in IBR-dominated weak grids without relying on opaque, computationally heavy "black-box" machine learning algorithms. To address this, we propose a novel, standalone, and inherently interpretable data-driven protection framework. Unlike centralized methods requiring multi-terminal communication, this decentralized approach relies solely on local measurements using a hierarchical linear-kernel Support Vector Machine (SVM). The methodology decomposes the protection task into four sequential stages that mimic traditional protection elements: fault detection and fault direction identification, fault type classification, zone classification, and location estimation. This multi-stage architecture allows for specialized feature engineering at each stage, combining high computational efficiency with logic traceability. The framework's end-to-end performance was validated via C-code and PSCAD/EMTDC co-simulation, utilizing a real-world utility network and an OEM black-box IBR model. The proposed relay achieves 97.2% overall accuracy and provides a reliable trip decision within a 2.5-cycle window. The results confirm 100% accuracy in fundamental fault detection, reliable zone selectivity across low to moderate fault resistances, and robust security against non-fault transients, proving its immediate viability for integration into commercial numerical relays.

24 POWER TRANSMISSION AND DISTRIBUTION↗

Performant implementation of the atomic cluster expansion (PACE) and application to copper and silicon

The atomic cluster expansion is a general polynomial expansion of the atomic energy in multi-atom basis functions. Here we implement the atomic cluster expansion in the performant C++ code that is suitable for use in large-scale atomistic simulations. We briefly review the atomic cluster expansion and give detailed expressions for energies and forces as well as efficient algorithms for their evaluation. We demonstrate that the atomic cluster expansion as implemented in shifts a previously established Pareto front for machine learning interatomic potentials toward faster and more accurate calculations. Moreover, general purpose parameterizations are presented for copper and silicon and evaluated in detail. We show that the Cu and Si potentials significantly improve on the best available potentials for highly accurate large-scale atomistic simulations.

36 MATERIALS SCIENCE↗

Modeling of small tungsten dust grains in EAST tokamak with NDS-BOUT ++

In order to investigate the transport of small dusts as well as their evolution property along their trajectories, the NDS module is developed under the BOUT++ framework, a highly desirable C++ code package to perform parallel plasma fluid simulations with an arbitrary number of equations in three-dimensional curvilinear coordinates. Due to the severe dust ablation in fusion plasmas, the dust size would decrease from micrometer to nanometer, resulting in impurities. Small dusts in the simulations here are specified as tungsten spheres with the radii on or below the order of submicrometer. The Rayleigh limit is included in the charging process when the dust is ablated to the droplet phase. The simulation results from the NDS module show that a 200 nm radius spherical tungsten dust originated from upper divertor region of EAST Tokamak is ablated completely due to the intense heating from the incoming plasma inside the core region, well consistent with the CCD footage of EAST shot # 81459. Furthermore it is found that the magnetic field dominates the dust transport when the dust radius is below 100 nm during the ablation along the trajectory. Our simulations predict that a 10 nm radius spherical tungsten dust injected from the inner midplane is well constrained by the magnetic field, and it reaches the inner divertor target with a velocity on the order of km/s.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

3-center and 4-center 2-particle Gaussian AO integrals on modern accelerated processors

We report an implementation of the McMurchie–Davidson (MD) algorithm for 3-center and 4-center 2-particle integrals over Gaussian atomic orbitals (AOs) with low and high angular momenta l and varying degrees of contraction for graphical processing units (GPUs). This work builds upon our recent implementation of a matrix form of the MD algorithm that is efficient for GPU evaluation of 4-center 2-particle integrals over Gaussian AOs of high angular momenta (l ≥ 4) [A. Asadchev and E. F. Valeev, J. Phys. Chem. A 127, 10889–10895 (2023)]. The use of unconventional data layouts and three variants of the MD algorithm allow for the evaluation of integrals with double precision and sustained performance between 25% and 70% of the theoretical hardware peak. Performance assessment includes integrals over AOs with l ≤ 6 (a higher l is supported). Preliminary implementation of the Hartree–Fock exchange operator is presented and assessed for computations with up to a quadruple-zeta basis and more than 20 000 AOs. The corresponding C++ code is part of the experimental open-source LibintX library available at https://github.com/ValeevGroup/libintx.

Chemistry↗

Phoebe: a high-performance framework for solving phonon and electron Boltzmann transport equations

Understanding the electrical and thermal transport properties of materials is critical to the design of electronics, sensors, and energy conversion devices. Computational modeling can accurately predict material properties but, in order to be reliable, requires accurate descriptions of electron and phonon states and their interactions. While first-principles methods are capable of describing the energy spectrum of each carrier, using them to compute transport properties is still a formidable task, both computationally demanding and memory intensive, requiring integration of fine microscopic scattering details for estimation of macroscopic transport properties. To address this challenge, we present Phoebe—a newly developed software package that includes the effects of electron–phonon, phonon–phonon, boundary, and isotope scattering in computations of electrical and thermal transport properties of materials with a variety of available methods and approximations. This open source C++ code combines MPI-OpenMP hybrid parallelization with GPU acceleration and distributed memory structures to manage computational cost, allowing Phoebe to effectively take advantage of contemporary computing infrastructures. We demonstrate that Phoebe accurately and efficiently predicts a wide range of transport properties, opening avenues for accelerated computational analysis of complex crystals.

36 MATERIALS SCIENCE↗

Implementation and Synthesis of Math Library Functions

Achieving speed and accuracy for math library functions like exp, sin, and log is difficult. This is because low-level implementation languages like C do not help math library developers catch mathematical errors, build implementations incrementally, or separate high-level and low-level decision making. This ultimately puts development of such functions out of reach for all but the most experienced experts. To address this, we introduce MegaLibm, a domain-specific language for implementing, testing, and tuning math library implementations. MegaLibm is safe, modular, and tunable. Implementations in MegaLibm can automatically detect mathematical mistakes like sign flips via semantic wellformedness checks, and components like range reductions can be implemented in a modular, composable way, simplifying implementations. Once the high-level algorithm is done, tuning parameters like working precisions and evaluation schemes can be adjusted through orthogonal tuning parameters to achieve the desired speed and accuracy. MegaLibm also enables math library developers to work interactively, compiling, testing, and tuning their implementations and invoking tools like Sollya and type-directed synthesis to complete components and synthesize entire implementations. MegaLibm can express 8 state-of-the-art math library implementations with comparable speed and accuracy to the original C code, and can synthesize 5 variations and 3 from-scratch implementations with minimal guidance.

97 MATHEMATICS AND COMPUTING↗

ANDES (ARGONNE NUCLEAR DATA EXPLORATION SOFTWARE) - ndviz

The Argonne Nuclear Data Exploration Software (ANDES) is a collection of open-source C++ codes and ROOT scripts that enable the visualization of patterns emerging from nuclear data. From this global view, well-known phenomena such as major nuclear shell closures and pairing effects near N=Z nuclei, as well as more subtle features, such as quantum phase transition around the Zr isotopes or the charge radius staggering in the Hg isotopes, can be observed. This visualization tool apart from having pedagogic application can serve as a tool for discovering previously unknown phenomena in the nuclear chart.

Santiago-Gonzalez, Daniel↗

ANDES (ARGONNE NUCLEAR DATA EXPLORATION SOFTWARE) - Physics Tools

A collection of physics tools used by the ANDES. The Argonne Nuclear Data Exploration Software (ANDES) is a collection of open-source C++ codes and ROOT scripts that enable the visualization of patterns emerging from nuclear data. From this global view, well-known phenomena such as major nuclear shell closures and pairing effects near N=Z nuclei, as well as more subtle features, such as quantum phase transition around the Zr isotopes or the charge radius staggering in the Hg isotopes, can be observed. This visualization tool apart from having pedagogic application can serve as a tool for discovering previously unknown phenomena in the nuclear chart.

Santiago-Gonzalez, Daniel↗

Ume: Unstructured Mesh Explorations

Ume is an open-source collection of data structures for unstructured computational meshes and some simple algorithms that operate on them. These algorithms mimic the memory access patterns of a common class of operations found in several of the computational physics simulation codes developed at Los Alamos National Laboratory. The intent is that Ume can be used by hardware vendors to understand the memory traffic created by complex codes in a simplified environment, and to explore new means of optimization for that traffic. Ume is provided as a source-code C++ library and includes several applications that demonstrate the use of that library.

Henning, Paul↗

exawind-driver [SWR-23-10]

Exawind-driver is a C++ code that is part of the ExaWind software stack. It was designed to couple and drive hybrid-solver computational fluid dynamics (CFD) simulations where NREL's AMR-Wind (SWR-20-85) software and NREL's Nalu-Wind (SWR-20-27) CFD codes are run simultaneously and are two-way coupled via overset meshes and the TIOGA overset-mesh library.

Rood, Jonathan↗

kynema-driver [SWR-23-10]

Kynema-driver (FKA: exawind-driver) is a C++ code that is part of the kynema software stack. It is a driver for coupled Kynema-SGF/UGF simulations. It was designed to couple and drive hybrid-solver computational fluid dynamics (CFD) simulations where NLR'S kynema-sgf (SWR-20-85) software and NLR'S kynema-ugf (SWR-20-27) CFD codes are run simultaneously and are two-way coupled via overset meshes and the TIOGA overset-mesh library.

Rood, Jonathan↗

An implicit barotropic mode solver for MPAS-ocean using a modern Fortran solver interface

Here, we demonstrate use of a modern Fortran solver interface to manage solver algorithms for an implicit barotropic mode solver in the Model for Predictions Across Scales-Ocean (MPAS-O). ForTrilinos, a Fortran interface to Trilinos that contains a large collection of solver capabilities written in C++, has been implemented in MPAS-O to provide access to a suite of linear solver options. By virtue of the simplified wrapper and interface generator (SWIG) automation tool that generates modern Fortran interfaces to C++ code, we were able to implement the Fortran solver interface in MPAS-O using a familiar Fortran coding style while minimizing performance degradation. The ForTrilinos solver interface is written within MPAS-O’s time stepping modules as a subroutine in conjunction with MPAS-O code. Applied to an idealized ocean and a high-resolution realistic ocean test case, parallel performance of ForTrilinos solvers is examined. It is found that parallel scalability of the ForTrilinos solvers is highly dependent on the number of global synchronization points per solver iteration in each iterative solver algorithm. ForTrilinos solvers perform best compared to the Fortran hand-crafted (FHC) solver when the amount of work per processor is large enough. However, parallel scalability is better with the FHC solver and so when the work per core is modest FHC outperforms ForTrilinos. The intercomparison between the ForTrilinos and FHC solvers reveals that this performance hit in the ForTrilinos solver mostly comes from the global synchronization process, while suggesting that the matrix-vector multiplication process in the FHC solver needs to be optimized for better performance.

97 MATHEMATICS AND COMPUTING↗

pyJSPEC - A Python Module for IBS and Electron Cooling Simulation

The intrabeam scattering is an important collective effect that can deteriorate the property of a high-intensity beam and electron cooling is a method to mitigate the IBS effect. JSPEC (JLab Simulation Package on Electron Cooling) is an open-source C++ program developed at Jefferson Lab, which simulates the evolution of the ion beam under the IBS and/or the electron cooling effect. The Python wrapper of the C++ code, pyJSPEC, for Python 3.x environment has been recently developed and released. It allows the users to run JSPEC simulations in a Python environment. It also makes it possible for JSPEC to collaborate with other accelerator and beam modeling programs as well as plentiful python tools in data visualization, optimization, machine learning, etc. In this paper, we will introduce the features of pyJSPEC and demonstrate how to use it with sample codes and numerical results.

Zhang, H.↗

Performant implementation of the atomic cluster expansion

The atomic cluster expansion is a general polynomial expansion of the atomic energy in multi-atom basis functions. Here we implement the atomic cluster expansion in the performant C++ code PACE that is suitable for use in large scale atomistic simulations. We briefly review the atomic cluster expansion and give detailed expressions for energies and forces as well as efficient algorithms for their evaluation. We demonstrate that the atomic cluster expansion as implemented in PACE shifts a previously established Pareto front for machine learning interatomic potentials towards faster and more accurate calculations. Moreover, general purpose parameterizations are presented for copper and silicon and evaluated in detail. We show that the new Cu and Si potentials significantly improve on the best available potentials for highly accurate large-scale atomistic simulations.

74 ATOMIC AND MOLECULAR PHYSICS↗

Transient Efficiency Flexibility and Reliability Optimization of Coal-Fired Power Plants: Model-Predictive Control Library Development (Report)

This document pertains to the reporting requirements of DOE contract FE-0031767. The document covers the development of a model predictive control (MPC) library for implementing MPC for a general dynamic system. The library is implemented in a standardized manner in Matlab/Simulink, where core functions on model prediction, linearization and formulation and solution of a quadratic programming (QP) optimization problem is done in the core library - independent of the specific application. The user can provide the application-specific dynamic model in continuous and discrete time, to rapidly implement and test the MPC performance in a desktop simulation. The MPC optimization objective and constraints are also easily configured via an Excel file to allow iterative refinement as needed. Finally, the MPC library enables a rapid deployment to a target environment through auto C-code generation and containerization. The MPC library works seamlessly with the model based estimation (MBE) library to obtain the overall output feedback control solution. In this program, the reduced order model (ROM) of a coal-fired power plant (CFPP) is used to implement and test the MPC solution.

01 COAL, LIGNITE, AND PEAT↗

Transient Efficiency, Flexibility, and Reliability Optimization of Coal-Fired Power Plants - Final Report

This program developed an advanced model-based monitoring and model-predictive control algorithms for a coal fired power plant (CFPP), and deployed these algorithms in a real-time platform to demonstrate performance benefits for transient flexibility and plant operation efficiency. More specifically, the objectives were successfully achieved through a combination of (i) developing a high-fidelity transient plant model in Apros, which was used as a high-fidelity plant simulation between $100-50\% TMCR$ where TMCR denotes the turbine maximum continuous rating, i.e., baseload, (ii) developing a very fast physics-based reduced-order model (ROM) of the plant, which ran more than $100\times$ faster than real-time, enabling its use as real-time embedded model for model-based estimation (MBE) and model predictive control (MPC) (iii) implementing a real-time MBE based on ROM using a robust unscented Kalman filter (UKF) to continuously tune the ROM to match the measurements from high-fidelity Apros plant model despite significant plant-model mismatch, and thus, obtain a Digital Twin of the plant (iv) designing and implementing a real-time MPC with dual objectives of transient plant load tracking with high ramp rates and minimizing coal consumption, i.e., improving plant efficiency in the baseload-partload operation range of $100-50\% TMCR$. Each key element above was developed and tested individually, and has been reported in corresponding Topical Reports. Finally, all the individual elements were integrated in an overall closed-loop system, that was successfully tested in desktop Simulink test harness simulations with ROM or high-fidelity model as the plant. Thereafter, the Simulink implementation was used to auto-generate C-code and deploy as real-time Docker microservice containers in Linux, and validate that they can run in real-time in the hardware-in-the loop (HIL) setup and produce the same results as in Simulink. The results of the integrated simulation tests in Simulink as well as the real-time HIL deployment are documented in this final report, showing good load tracking for load ramps at $3-4\%/min$ ramp rates, and achieving up to $5.5\%$ reduction in coal relative to baseline operation at $50\% TMCR$ load. The desktop and HIL simulations show successful performance of the overall model based estimation and control solution and achieve the key objectives of the program for flexible, efficient and reliable operation of subcritical coal fired power plants.

20 FOSSIL-FUELED POWER PLANTS↗

ECAR-6564 MARVEL Project Primary Coolant System ASME BPVC Section III Division 5 Design by Analysis

This report demonstrates that the MARVEL Reactor Primary Coolant Boundary (herein referred to as the Primary Coolant System, or PCS) is designed to meet ASME BPVC Section III Division 5 elevated temperature service design-by-analysis criteria. The analysis approach that delineates division of responsibilities to meet project objectives is discussed herein. In short, Design and Service Level A, B, and C code calculations are detailed in ECAR-6580 for the majority of the PCS with complex geometry, while the Lower Downcomers, Bottom Head, and Reactor Core Barrel are analyzed in ANL-23/56. Service Level D code calculations are detailed in this document.

21 SPECIFIC NUCLEAR REACTORS AND ASSOCIATED PLANTS↗

Demonstration of Model-Based Design for Digital Controller Using Formal Methods

This report describes work originally performed in FY19 that assembled a workflow enabling formal verification of high-consequence digital controllers. The approach builds on an engineering analysis strategy using multiple abstraction levels (Model-Based Design) and performs exhaustive formal analysis of appropriate levels – here, state machines and C code – to assure always/never properties of digital logic that cannot be verified by testing alone. The operation of the workflow is illustrated using example models and code, including expected failures of verification when properties are violated.

97 MATHEMATICS AND COMPUTING↗