Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “software development framework”

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 739 records · Page 41

Test Driven Development of Scientific Models

Test-Driven Development (TDD), a software development process that promises many advantages for developer productivity and software reliability, has become widely accepted among professional software engineers. As the name suggests, TDD practitioners alternate between writing short automated tests and producing code that passes those tests. Although this overly simplified description will undoubtedly sound prohibitively burdensome to many uninitiated developers, the advent of powerful unit-testing frameworks greatly reduces the effort required to produce and routinely execute suites of tests. By testimony, many developers find TDD to be addicting after only a few days of exposure, and find it unthinkable to return to previous practices.After a brief overview of the TDD process and my experience in applying the methodology for development activities at Goddard, I will delve more deeply into some of the challenges that are posed by numerical and scientific software as well as tools and implementation approaches that should address those challenges.

Overview of TDD Process↗

Mochi: Composing Data Services for High-Performance Computing Environments

Technology enhancements and the growing breadth of application workflows running on high-performance computing (HPC) platforms drive the development of new data services that provide high performance on these new platforms, provide capable and productive interfaces and abstractions for a variety of applications, and are readily adapted when new technologies are deployed. The Mochi framework enables composition of specialized distributed data services from a collection of connectable modules and subservices. Rather than forcing all applications to use a one-size-fits-all data staging and I/O software configuration, Mochi allows each application to use a data service specialized to its needs and access patterns. This paper introduces the Mochi framework and methodology. The Mochi core components and microservices are described. Examples of the application of the Mochi methodology to the development of four specialized services are detailed. Finally, a performance evaluation of a Mochi core component, a Mochi microservice, and a composed service providing an object model is performed. The paper concludes by positioning Mochi relative to related work in the HPC space and indicating directions for future work.

97 MATHEMATICS AND COMPUTING↗

Myna

The additive manufacturing (AM) community has been developing digital factory tools over the past decade to better leverage the multi-modal process data coming out of the advanced manufacturing process. As a result, numerous databases of additive manufacturing process data exist in the literature and in the archival storage of disparate research groups. While some efforts have been made to create a standard ontology for storing and sharing AM data, in practice a variety of data structures are used to store AM build data, even within a single institution. This causes many problems for maintainability and extensibility when attempting to integrate computational modeling tools with experimental data to either validate models or to provide further insight into results and trends. Myna is a Python-based framework that aims to decrease the effort needed to connect individual computational models to the variety of AM process data that exist in different research groups and institutions. This type of software is sometimes referred to as "middleware" or “glueware,” in that it connects disparate databases and applications into a single computational ecosystem. Instead of maintaining unique interfaces between each application and each database, developers can create a single interface from each application to Myna and thereby gain access to the implemented database connections. Similarly, developing a database connection in Myna provides access to the developed simulation applications. This framework greatly simplifies the maintainability of model applications that rely on experimental data. Using external simulation tools, users will also be able to run pre-configured workflows using the built-in workflow manager. Several examples of input files are provided with Myna for different workflows, including melt pool geometry predictions and detailed melt pool and solidification microstructure predictions.

Knapp, GerryL. [Oak Ridge National Laboratory (ORN↗

Cybersecurity Platform and Certification Framework Development for Extreme Fast Charging (XFC)-Integrated Charging Ecosystem (Final Project Report)

This report summarizes a pioneering effort in Electric Vehicle charging infrastructure ecosystem cybersecurity requirements, assessment methodologies, functional verification, as well as embodiment of the key technologies in the form of hardware and software tools being made available to the public. EPRI led a team of experts, as well as a stakeholder coalition encompassing all key actors in the EV charging infrastructure ecosystem that includes eXtreme Fast Charging (XFC) equipment (defined as 200kW or above). EV charging infrastructure in the United States is a patchwork of networks that have continued to grow organically and have been designed to serve the charging needs of the EV owners, who are their customers. In doing so, each network provider, as well as their connected entities such as the cloud Electric Vehicle Service Providers or EVSPs, utility back office, utility AMI networks, payment networks, as well as Original Equipment Manufacturer (EV manufacturer) telematics networks, have designed systems that may work well individually, but no single entity is responsible for the entire ecosystem to be secure in terms of data exchange. Furthermore, there is no uniformity in how each actor has implemented the cybersecurity requirements since no system-wide cybersecurity requirements existed prior to this project. The final project report describes the technical approach guided by the EV charging infrastructure cybersecurity working group, convened specifically for this project. The technical approach included definition of requirements at the ecosystem level, treated as a ‘system of systems’, and then passed down to individual systems (EVSE, EV, cloud EVSP, utility, and the payment networks), followed by developing the cybersecurity risk and vulnerability assessment methods, that were later applied to real-world cyber-physical systems at EPRI, ANL, and NREL laboratories, to validate both the process and the results. Finally, in a spotlight over the most vulnerable equipment, which is the EV charge station (AC or DC), the team developed a multi-layer cybersecurity implementation in the embedded domain embodied by the open-source Secure Network Interface Card (SNIC) demonstrating the various ways in which the infrastructure can be secured protecting against the identified attack surfaces. Finally, the entire process of EV infrastructure cybersecurity assessment was encapsulated in the Electric Vehicle Charging Cybersecurity Management (EVC2M) online GUI-based tool, that is expected to be released to the public. The report presents the objectives, the technical approach, the key results, and recommendations for future work.

24 POWER TRANSMISSION AND DISTRIBUTION↗

c5++ - Multi-Technique Analysis Software for Next Generation Geodetic Instruments

Processing of space geodetic techniques should be carried out with consistent and utmost up-todate physical models. Therefore, c5++ is being developed, which will act as a framework under which dedicated space geodetic applications can be created. Due to its nature, combination of different techniques as well as automated processing of VLBI experiments will become possible with c5++.

Hobiger, Thomas↗

Dynamically Reconfigurable Systolic Array Accelerator

A polymorphic systolic array framework has been developed that works in conjunction with an embedded microprocessor on a field-programmable gate array (FPGA), which allows for dynamic and complimentary scaling of acceleration levels of two algorithms active concurrently on the FPGA. Use is made of systolic arrays and a hardware-software co-design to obtain an efficient multi-application acceleration system. The flexible and simple framework allows hosting of a broader range of algorithms, and is extendable to more complex applications in the area of aerospace embedded systems. FPGA chips can be responsive to realtime demands for changing applications needs, but only if the electronic fabric can respond fast enough. This systolic array framework allows for rapid partial and dynamic reconfiguration of the chip in response to the real-time needs of scalability, and adaptability of executables.

Dasu, Aravind↗

Software Verification of Orion Cockpit Displays

NASA's latest spacecraft Orion is in the development process of taking humans deeper into space. Orion is equipped with three main displays to monitor and control the spacecraft. To ensure the software behind the glass displays operates without faults, rigorous testing is needed. To conduct such testing, the Rapid Prototyping Lab at NASA's Johnson Space Center along with the University of Texas at Tyler employed a software verification tool, EggPlant Functional by TestPlant. It is an image based test automation tool that allows users to create scripts to verify the functionality within a program. A set of edge key framework and Common EggPlant Functions were developed to enable creation of scripts in an efficient fashion. This framework standardized the way to code and to simulate user inputs in the verification process. Moreover, the Common EggPlant Functions can be used repeatedly in verification of different displays.

Biswas, M. A. Rafe↗

Status Report on NEAMS System Analysis Module Development

Under the Reactor Product Line (RPL) of DOE-NE’s Nuclear Energy Advanced Modeling and Simulation (NEAMS) program, an advanced SFR System Analysis Module (SAM) is being developed at Argonne National Laboratory. The goal of the SAM development is to provide fast-running, improved-fidelity, whole-plant transient analyses capabilities. SAM utilizes an object-oriented application framework MOOSE), and its underlying meshing and finite-element library libMesh, as well as linear and non-linear solvers PETSc, to leverage modern advanced software environments and numerical methods. It also incorporates advances in physical and empirical models and seeks closure models based on information from high-fidelity simulations and experiments. This report provides an update on the SAM development, and summarizes the activities performed in FY15 and the first quarter of FY16. The tasks include: (1) implement the support of 2nd-order finite elements in SAM components for improved accuracy and computational efficiency; (2) improve the conjugate heat transfer modeling and develop pseudo 3-D full-core reactor heat transfer capabilities; (3) perform verification and validation tests as well as demonstration simulations; (4) develop the coupling requirements for SAS4A/SASSYS-1 and SAM integration.

21 SPECIFIC NUCLEAR REACTORS AND ASSOCIATED PLANTS↗

Translating expert system rules into Ada code with validation and verification

The purpose of this ongoing research and development program is to develop software tools which enable the rapid development, upgrading, and maintenance of embedded real-time artificial intelligence systems. The goals of this phase of the research were to investigate the feasibility of developing software tools which automatically translate expert system rules into Ada code and develop methods for performing validation and verification testing of the resultant expert system. A prototype system was demonstrated which automatically translated rules from an Air Force expert system was demonstrated which detected errors in the execution of the resultant system. The method and prototype tools for converting AI representations into Ada code by converting the rules into Ada code modules and then linking them with an Activation Framework based run-time environment to form an executable load module are discussed. This method is based upon the use of Evidence Flow Graphs which are a data flow representation for intelligent systems. The development of prototype test generation and evaluation software which was used to test the resultant code is discussed. This testing was performed automatically using Monte-Carlo techniques based upon a constraint based description of the required performance for the system.

Becker, Lee↗

Developments in SRW Code and Sirepo Framework Supporting Simulation of Time-Dependent Coherent X-ray Scattering Experiments

Physical optics simulations for beamlines and experiments are essential for the effective use of synchrotron light source facilities such as NSLS-II at BNL. The SRW software package supports such source-to-detector simulations for coherent X-ray scattering and imaging experiments through its Python interface and Sirepo browser-based graphical user interface. This allows one to define custom sample models, assess the feasibility of an experiment, and estimate most appropriate beamline settings before using valuable beamtime. We discuss the recent use of general-purpose GPU resources and coherent mode decomposition algorithms in SRW to accelerate physical optics simulations with partially coherent X-rays. To illustrate these new capabilities, we describe simulations of typical time series of partially coherent scattering images used in X-ray Photon Correlation Spectroscopy (XPCS) experiments; aiming to characterize the nanoscale dynamics of a disordered sample, representing a solution of nanoparticles undergoing Brownian diffusion.

36 MATERIALS SCIENCE↗

mesoflow [SWR-22-56]

Mesoflow is a continuum scale simulation tool developed specifically for modeling transport and chemistry at the mesoscale. Our solver utilizes Cartesian block-structured adaptive mesh refinement to resolve complex surface morphologies (of catalysts/biomass particles among others) directly obtained from X-ray tomography data. An immersed boundary based formulation enables rapid representation of complex geometries prevalent in most mesoporous interfaces. The solver is developed on top of open-source performance portable library, AMReX, providing parallel execution capabilities on current and upcoming high-performance-computing (HPC) architectures. Our flexible software framework enables integration of complex chemical mechanisms at heterogenous interfaces and time-split algorithms for circumventing highly disparate reaction and flow time-scales. Our current studies indicate a ten-fold performance gain by using graphics-processing-units (GPU) compared to a single processor for representative problem sizes (2 million cell mesh).

Sitaraman, Hariswaran↗

Exploration Medical System Demonstration

BACKGROUND: Exploration class missions will present significant new challenges and hazards to the health of the astronauts. Regardless of the intended destination, beyond low Earth orbit a greater degree of crew autonomy will be required to diagnose medical conditions, develop treatment plans, and implement procedures due to limited communications with ground-based personnel. SCOPE: The Exploration Medical System Demonstration (EMSD) project will act as a test bed on the International Space Station (ISS) to demonstrate to crew and ground personnel that an end-to-end medical system can assist clinician and non-clinician crew members in optimizing medical care delivery and data management during an exploration mission. Challenges facing exploration mission medical care include limited resources, inability to evacuate to Earth during many mission phases, and potential rendering of medical care by non-clinicians. This system demonstrates the integration of medical devices and informatics tools for managing evidence and decision making and can be designed to assist crewmembers in nominal, non-emergent situations and in emergent situations when they may be suffering from performance decrements due to environmental, physiological or other factors. PROJECT OBJECTIVES: The objectives of the EMSD project are to: a. Reduce or eliminate the time required of an on-orbit crew and ground personnel to access, transfer, and manipulate medical data. b. Demonstrate that the on-orbit crew has the ability to access medical data/information via an intuitive and crew-friendly solution to aid in the treatment of a medical condition. c. Develop a common data management framework that can be ubiquitously used to automate repetitive data collection, management, and communications tasks for all activities pertaining to crew health and life sciences. d. Ensure crew access to medical data during periods of restricted ground communication. e. Develop a common data management framework that allows for scalability, extensibility, and interoperability of data sources and data users. f. Lower total cost of ownership for development and sustainment of peripheral hardware and software that use EMSD for data management. g. Provide a better standard of healthcare for crew members through reductions in the time required by crew and ground personnel to provide medical treatment and the number of crew errors experienced during treatment.

Rubin, D. A.↗

pFUnit 3.0 Tutorial Advanced

This tutorial will introduce Fortran developers to unit-testing and test-driven development (TDD) using pFUnit. As with other unit-testing frameworks, pFUnit, simplifies the process of writing, collecting, and executing tests while providing clear diagnostic messages for failing tests. pFUnit specifically targets the development of scientific-technical software written in Fortran and includes customized features such as: assertions for multi-dimensional arrays, distributed (MPI) and thread-based (OpenMP) parallellism, and flexible parameterized tests.These sessions will include numerous examples and hands-on exercises that gradually build in complexity. Attendees are expected to have working knowledge of F90, but familiarity with object-oriented syntax in F2003 and MPI will be of benefit for the more advanced examples. By the end of the tutorial the audience should feel comfortable in applying pFUnit within their own development environment.

Test Driven using pFUnit↗

Bridging the Gap Between Requirements and Simulink Model Analysis

Formal veri fication and simulation are powerful tools for the veri fication of requirements against complex systems. Requirements are developed in early stages of the software lifecycle and are typically expressed in natural language. There is a gap between such requirements and their software implementations. We present a framework that bridges this gap by supporting a tight integration and feedback loop between high-level requirements and their analysis against software artifacts. Our framework implements an analysis portal within the fret requirements elicitation tool, thus forming an end-to-end, open-source environment where requirements are written in an intuitive, structured natural language, and are veri fied automatically against Simulink models.

FRET↗

Flight Test Design and Implementation for Airspace Independent Surveillance Through a Distributed Ground Based Sensor Network

The paper presents a system architecture for distributed sensing, networking and computing, its hardware implementation, and execution of initial flight experiments to validate theoretical findings. It induces development of distributed sensing requirements, framework, and architecture, development of distributed ground node hardware prototypes, integration of all nodes and testing of baseline functionalities, integration of in-house developed perception, migration and tracking software packages, establishing flight scenario and flyable path for a selected UAS, flying the air vehicle along the path, recording sensors measurements, pre-processing them and transferring the resulting data to an optimal computing center. It also addresses the challenges related to pre-flight hardware calibration, clock synchronization, sensor registration and establishing a communication network. Sensors data processing results demonstrate the functionality of the presented distributed architecture and satisfactory performance of the applied technologies.

Target tracking↗

Flight Test Design and Implementation for Independent Surveillance of an Airspace Through a Distributed Ground Sensing Network

The paper presents a system architecture for distributed sensing, networking and computing, its hardware implementation, and execution of initial flight experiments to validate theoretical findings. It induces development of distributed sensing requirements, framework, and architecture, development of distributed ground node hardware prototypes, integration of all nodes and testing of baseline functionalities, integration of in-house developed perception, migration and tracking software packages, establishing flight scenario and flyable path for a selected UAS, flying the air vehicle along the path, recording sensors measurements, pre-processing them and transferring the resulting data to an optimal computing center. It also addresses the challenges related to pre-flight hardware calibration, clock synchronization, sensor registration and establishing a communication network. Sensors data processing results demonstrate the functionality of the presented distributed architecture and satisfactory performance of the applied technologies.

Distributed sensing↗

Parametric-Based Heat Rejection Trade Study for Lunar and Martian Surface Operations

Establishing and maintaining a sustained presence on the lunar and/or Martian surfaces will require a diverse portfolio of surface elements (e.g., habitation, mobility, power generation, etc.). Many of these systems generate excess heat that must be rejected across a wide range of magnitudes, temperatures, and duty cycles and under variable environmental conditions. To identify the most promising heat rejection approaches for this diverse portfolio, a heat rejection trade study was conducted to evaluate the performance of different technology approaches across a spectrum of surface environments and heat-load requirements. The trade study consisted of three stages: (1) development of a parametric-based modeling framework, (2) creation of a database of heat rejection technologies, surface elements, and environmental conditions for the Moon and Mars, and (3) execution of a quantitative analysis of various heat rejection technologies across different operating conditions and surface elements. The modeling framework is developed in Python and Excel to prioritize small model size and hence low computational cost to enable large parametric sweeps while avoiding the reliance on proprietary software. Individual heat rejection processes are represented as simple Excel models, and a centralized Python script interfaces with the models to coordinate the parametric study. These simple sizing models were developed to take heat load requirements and environmental parameters as inputs and compute mass, power, and volume as outputs. Rather than assess each heat rejection technology separately for each surface element, a unified parametric space was developed to evaluate all technologies across all elements. This parametric space includes factors related to heat load (e.g., magnitude or temperature) and environment (e.g., surface temperature, sky temperature, solar flux). This effort generated a database containing information on over 60 heat rejection technologies and 30 surface elements. For each surface element, the expected heat rejection requirements were documented and analyzed to determine the most common needs shared across all elements. Environmental conditions at various lunar and Martian latitudes were also established for worst-case hot and worst-case cold scenarios. High-fidelity heat rejection models are currently under development. Preliminary trades between heat rejection technologies including radiators, venting technologies, convective coolers, and more have been conducted to identify promising options. This presentation will summarize the preliminary trade results and provide an overview and discussion of the expected heat loads and thermal environments for sustained surface operations on the Moon and Mars.

Heat Rejection↗