Search NASA⌕ Search

SEARCH · Search NASA

Results for “Distributed Software Development”

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

Better together: Elements of successful scientific software development in a distributed collaborative community

Many scientific disciplines rely on computational methods for data analysis, model generation, and prediction. Implementing these methods is often accomplished by researchers with domain expertise but without formal training in software engineering or computer science. This arrangement has led to underappreciation of sustainability and maintainability of scientific software tools developed in academic environments. Some software tools have avoided this fate, including the scientific library Rosetta. We use this software and its community as a case study to show how modern software development can be accomplished successfully, irrespective of subject area. Rosetta is one of the largest software suites for macromolecular modeling, with 3.1 million lines of code and many state-of-the-art applications. Since the mid 1990s, the software has been developed collaboratively by the RosettaCommons, a community of academics from over 60 institutions worldwide with diverse backgrounds including chemistry, biology, physiology, physics, engineering, mathematics, and computer science. Developing this software suite has provided us with more than two decades of experience in how to effectively develop advanced scientific software in a global community with hundreds of contributors. Here we illustrate the functioning of this development community by addressing technical aspects (like version control, testing, and maintenance), community-building strategies, diversity efforts, software dissemination, and user support. We demonstrate how modern computational research can thrive in a distributed collaborative community. The practices described here are independent of subject area and can be readily adopted by other software development communities

97 MATHEMATICS AND COMPUTING↗

Developing and Distributing HEP Software Stacks with Spack

The Computational Science and AI Directorate at Fermilab is using Spack to support the development efforts of a large number of scientific programmers, in many independent projects and experiments. While independent, these projects share many dependencies. They are typically under continuous and fairly rapid development. They have to support deployment on diverse hardware. This is a different context than is typical for the management of HPC software, where Spack was born. To support our community, we have created a model that enables users to develop code with greater efficiency than is possible with Spack’s current development facilities. In this talk we will present: - a brief introduction to the science we support (particle physics) - how the code we work with is naturally organized into several layers of packages - how we are using Spack to manage those layers - how we leverage the layering to provide efficient support for developers, using our Spack extension “MPD”. - some suggestions for changes or additions to Spack to make such work easier.

Knoepfel, Kyle J. [Fermilab]↗

Enabling coordinated, distributed development of scientific software: A research agenda for adapting a team of teams approach

The “team of teams” concept is a strategy for coordinating activities within and across organizations, developed by General Stanley McChrystal and his colleagues based on their experiences leading the Joint Special Operations Task Force in Iraq from 2003-2008. These experiences, and the lessons learned from them, are recounted in the books Team of Teams (McChrystal 2015) and One Mission (Fussell 2017) (the authors and contributors to these books will hereafter be jointly referred to as McChrystal et al.). Essentially, their story is one of rapidly adapting a rigid, siloed organization to defeat the flexible, resilient, and fast-moving network of Al Qaeda in Iraq. As described in the books, when McChrystal took over the Task Force, he found a collection of highly competent, efficient teams of analysts and warfighters which nonetheless had difficulty operating in a unified manner due to close internal ties, distrust of outsiders, bureaucratic stove pipes, and cultural differences stemming from the diverse organizations Task Force teams were affiliated with, including Army Special Forces, CIA, and NSA.

97 MATHEMATICS AND COMPUTING↗

Solar Automated Permit Processing Software for Distributed PV (Cooperative Research and Development Final Report, CRADA Number CRD-19-00825)

NREL and its project partners built and commercialized the novel Solar Automated Permitting Processing Plus (SolarAPP+) software platform that delivers instant residential rooftop solar permits. The tool provides installers with a standard portal for entering permit information for residential solar systems across all Authorities Having Jurisdiction (AHJs) using SolarAPP+, thereby providing a streamlined plan review form, transparency into permitting timelines, and required specifications. The project has proven to reduce permitting timelines from as many as 20 business days to zero, delivering solar projects faster in the four participating AHJs using the platform. Streamlining permitting timelines, all else equal, results in consumers installing their systems and reducing their electricity bills faster. The continued expansion of SolarAPP+ features and adoption nationwide will expand the benefits of the SolarAPP+ beyond the current user base.

14 SOLAR ENERGY↗

Software and computing for Run 3 of the ATLAS experiment at the LHC

The ATLAS experiment has developed extensive software and distributed computing systems for Run 3 of the LHC. These systems are described in detail, including software infrastructure and workflows, distributed data and workload management, database infrastructure, and validation. The use of these systems to prepare the data for physics analysis and assess its quality are described, along with the software tools used for data analysis itself. An outlook for the development of these projects towards Run 4 is also provided.

72 PHYSICS OF ELEMENTARY PARTICLES AND FIELDS↗

Serpent and MCNP Calculations of the Energy Deposition in the Transformational Challenge Reactor

This paper focuses on the calculation of the energy deposition in the Transformational Challenge Reactor by two major Monte Carlo codes: Serpent and MCNP. The first software computation relies on Kinetic Energy Released per unit Mass (KERMA) factors while the second one relies on Q-values. The results from these two independent computation methodologies are in very good agreement; however, Serpent runs much faster than MCNP (for the same computational model) and allows for a detailed energy deposition distribution from a 1-mm-side square mesh with a relative statistical error between 0.5% and 1%. This detailed energy deposition is suitable for multiphysics analyses aimed at design optimizations. In order to calculate the energy deposition, Serpent needs enhanced ACE files (distributed by the software developers). Unlike other Monte Carlo software that uses inputs based on Python or Java languages, the Serpent input syntax is very similar to that of MCNP; a Python script can convert a MCNP input to a Serpent input in seconds. For simulations not requiring the calculation of the energy deposition, Serpent can also read nuclear data from MCNP ACE files, which eventually improves the comparison of the results of the two codes.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Towards a New Supply Chain Cybersecurity Risk Analysis Technique

Supply chain cyber-attacks, such as the SolarWinds Orion attack, are occurring with greater frequency. These attacks compromise a digital device before it is sent to customers, bypassing traditional security controls to remain persistent and undetected in operational environments. While supply chain attacks are prevalent, methods for analyzing the risk of these attacks are currently unavailable. This paper proposes new supply chain cyber-attack difficulty and risk metrics to evaluate the relative risk of an attack throughout the supply chain lifecycle. Difficulty metrics for each stakeholder in a digital device’s supply chain (e.g., hardware manufacturing, firmware development, software development, storage, and distribution entities) are calculated using scores from cybersecurity maturity questionnaires in a Bayesian Network leaky Noisy-MAX model. These difficulty metrics are then used to calculate an overall supply chain cyber-attack risk. Vulnerability and recoverability metrics are also proposed to evaluate the relative stakeholder influence in the attack risk. These proposed relative risk metrics enable continuous supply chain monitoring, provide decision-makers with information necessary for improved supplier selection, and help drive improvements in the cybersecurity posture of the stakeholders in their supply chain.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Developing Synthetic Distribution Models Using Open-Source Data Sets

The deployment of distributed generation resources at scale with the distribution side of the power system network over the last two decades has spurred a lot of research interest in distribution networks. Given, the sensitive nature of power system data sets, utilities are still reluctant to open-source distribution networks. Although some open-source data sets are available, they may not cover the region of interest. In this paper, we introduce the Synthetic dIstribution Network Generator (SING), new software that allows users to develop synthetic distribution models, using open-source data sets, in any region of interest within the continental US.

data set↗

Containerization in ATLAS Software Development and Data Production

The ATLAS experiment's software production and distribution on the grid benefits from a semi-automated infrastructure that provides up-to-date information about software usability and availability through the CVMFS dis-tribution service for all relevant systems. The software development process uses a Continuous Integration pipeline involving testing, validation, packag-ing and installation steps. For opportunistic sites that can not access CVMFS, containerized releases are needed. These standalone containers are currently created manually to support Monte-Carlo data production at such sites. In this paper we will describe an automated procedure for the containerization of AT-LAS software releases in the existing software development infrastructure, its motivation, integration and testing in the distributed computing system.

97 MATHEMATICS AND COMPUTING↗

Dalton Project: A Python platform for molecular- and electronic-structure simulations of complex systems

The Dalton Project provides a uniform platform access to the underlying full-fledged quantum chemistry codes Dalton and LSDalton as well as the PyFraME package for automatized fragmentation and parameterization of complex molecular environments. The platform is written in Python and defines a means for library communication and interaction. Intermediate data such as integrals are exposed to the platform and made accessible to the user in the form of NumPy arrays, and the resulting data are extracted, analyzed, and visualized. Complex computational protocols that may, for instance, arise due to a need for environment fragmentation and configuration-space sampling of biochemical systems are readily assisted by the platform. The platform is designed to host additional software libraries and will serve as a hub for future modular software development efforts in the distributed Dalton community.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Know Your Space: Inlier and Outlier Construction for Calibrating Medical OOD Detectors

This software offers methods and functions for training calibrated out-of-distribution detectors for medical image classification tasks. It includes functionalities for training, synthesizing data augmentations, calibration, and out-of-distribution detection. Developed using PyTorch, this software is compatible with standard neural network architectures used for imaging data. Additionally, it provides capabilities to compute evaluation metrics for assessing the performance and quality of the detectors.

Narayanaswamy, VivekSivaraman↗

DSO+T: Valuation Methodology and Economic Metrics (DSO+T Study: Volume 4)

This report summarizes a rigorous valuation analysis methodology used by the Distribution System Operator with Transactive (DSO+T) study to estimate the financial benefits and costs of adopting Transactive Energy coordination of distributed energy resources for key stakeholders (for example distribution system operators and customers). This was achieved by modeling the value exchanges between stakeholders and determining the annualized costs and revenues experienced by stakeholders, enabling the evaluation of overall impact on stakeholder’s annualized cash flow. Extensive work was conducted developing methods to estimate the operating costs of distribution system operators at a level of granularity that would allow the financial impact of implementing a transactive energy approach to be estimated. This work included developing parametric models for labor and software costs, distribution system capital and maintenance costs, growth rates, and factors to determine annualized costs of capital investments. Simulation results were used to calculate wholesale energy costs and revenues from retail sales. Valuation analysis methods were also developed for other stakeholders including customers, the transmission system operator, independent system operator, and generators. The resulting capability allows a complete mapping of the flow of financial value between stakeholders that can be directly integrated with the results of demand flexibility simulations. Example results are provided for a business-as-usual case and compared to a transactive energy case as well as to actual cost data.

24 POWER TRANSMISSION AND DISTRIBUTION↗

Simple, Secure, Internet Delivery of MOOSE-based Applications

Application packaging and distribution are the final steps for delivering software to end-users; both are frequently neglected when creating scientific software. Commercial businesses rely on electronic distribution systems that have rendered disk drives obsolete. Still, national laboratories continue to rely heavily on removable media to distribute and limit access to controlled applications. With increasing concerns of unauthorized copying of sensitive applications, a modern distribution system that utilizes cryptographically secure communication and authentication protocols has been developed. This new distribution system will secure the chain of custody for nuclear software while simultaneously simplifying access to these tools. This report summarizes four primary advancements made toward the secure distribution of Nuclear Energy Advanced Modeling and Simulation (NEAMS)-developed, Multiphysics Object Oriented Simulation Environment (MOOSE)-based applications: application installation, package distribution, automated package building, and distribution of documentation. NEAMS is currently developing more than ten separate applications based on the open-source MOOSE Framework. Distribution of these applications has primarily been accomplished by distributing source code, with end-users compiling the applications themselves. This work created a mechanism where MOOSE applications can be installed in a similar way to any other software. This allows both administrators and end-users simplified access to runnable executables. With this new installation capability, it was then possible to rethink distribution. A new, secure capability for delivering MOOSE-based applications over the internet has been created. This system requires unique cryptographic tokens for authentication, greatly securing the custody chain for software. Once granted access, installation of any NEAMS code can be accomplished with these terminal commands: "conda install ncrc" "ncrc install ncrc-bison." After these two commands (and authenticating) the BISON application will be securely down- loaded from Idaho National Laboratory (INL)’s servers, installed, and ready to use. To enable this new distribution capability to be successful, the open-source Continuous Integration, Verification, Enhancement, and Testing (CIVET) Continuous Integration (CI) capability was augmented to add Continuous Delivery (CD). CD enables the automated building and packaging of MOOSE-based applications as they are modified by development teams, ensuring that our customers can obtain up-to-date versions of the software at any time. The need for instruction on how to use these applications was addressed through modifications to the MOOSE documentation system. The MooseDocs capability, which enables robust documentation of MOOSE-based applications, has been extended to allow both for the installation of documentation and the packaging of documentation with installed applications. Together, these enhancements form the core of a new, secure distribution mechanism for nuclear simulation tools. In concert with the Nuclear Computational Resource Center (NCRC), NEAMS- developed applications will now be straightforward to obtain securely.

97 MATHEMATICS AND COMPUTING↗

DERMS-RT (Distributed Energy Resource Management Solution using Real-Time Optimization) [SWR-20-46]

DERMS-RT provides a distributed energy resource management solution using real-time optimization to control different types of distributed energy resources (DERs) — such as rooftop PVs, battery energy storage systems, HVAC loads, electric water heater loads, and EV charging loads, and use these DERs to provide distribution voltage regulation and peak demand management services. The control approach implemented by DERM-RT is developed based on the real-time optimal power flow and distributed control previously developed by NREL researchers. The software codes are designed to provide modular DER management solution that can be easily applied to control heterogeneous DERs in distribution grids in coordination with centralized utility management systems. Also, DERMS-RT provides application programming interface (API) to extract useful grid model information from an open-source power system simulation software, use the information to solve the optimization problem, and apply the optimal set-points to the controlled DERs. In this way, DERMS-RT provides a plug-and-play function for implementing the real-time DER control on different utility system models, and it can be used as a simulation testbed to demonstrate the impact of real-time DER optimization on improving grid operations.

Ding, Fei↗

Fundamental Mechanisms Controlling Dislocation-Obstacle Interactions in Metals and Alloys

This project combined modeling and experimentation across micro-meso-macro length scales to investigate the role of long-range internal stresses associated with obstacles and dislocation populations, in the deformation response of cubic metals. In addition to unique insights into the physical behavior of metals, advances were also made in modeling techniques and tools at the meso and atomistic level, and new characterization methods were developed and disseminated to the scientific community. Twenty eight journal papers, two dissertations and three theses have served as vehicles to share the gained scientific knowledge, and two open-source software packages have been developed, maintained and distributed. Additional publications are in progress.

36 MATERIALS SCIENCE↗

Fundamental Mechanisms Controlling Dislocation-Obstacle Interactions in Metals and Alloys

This project combined modeling and experimentation across micro-meso-macro length scales to investigate the role of long-range internal stresses associated with obstacles and dislocation populations, in the deformation response of cubic metals. In addition to unique insights into the physical behavior of metals, advances were also made in modeling techniques and tools at the meso and atomistic level, and new characterization methods were developed and disseminated to the scientific community. Twenty eight journal papers, two dissertations and three theses have served as vehicles to share the gained scientific knowledge, and two opensource software packages have been developed, maintained and distributed. Additional publications are in progress.

36 MATERIALS SCIENCE↗