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 829 records · Page 46

Applications of system identification methods to the prediction of helicopter stability, control and handling characteristics

A set of results on rotorcraft system identification is described. Flight measurements collected on an experimental Puma helicopter are reviewed and some notable characteristics highlighted. Following a brief review of previous work in rotorcraft system identification, the results of state estimation and model structure estimation processes applied to the Puma data are presented. The results, which were obtained using NASA developed software, are compared with theoretical predictions of roll, yaw and pitching moment derivatives for a 6 degree of freedom model structure. Anomalies are reported. The theoretical methods used are described. A framework for reduced order modelling is outlined.

Padfield, G. D.↗

Design for Verification: Using Design Patterns to Build Reliable Systems

Components so far have been mainly used in commercial software development to reduce time to market. While some effort has been spent on formal aspects of components, most of this was done in the context of programming language or operating system framework integration. As a consequence, increased reliability of composed systems is mainly regarded as a side effect of a more rigid testing of pre-fabricated components. In contrast to this, Design for Verification (D4V) puts the focus on component specific property guarantees, which are used to design systems with high reliability requirements. D4V components are domain specific design pattern instances with well-defined property guarantees and usage rules, which are suitable for automatic verification. The guaranteed properties are explicitly used to select components according to key system requirements. The D4V hypothesis is that the same general architecture and design principles leading to good modularity, extensibility and complexity/functionality ratio can be adapted to overcome some of the limitations of conventional reliability assurance measures, such as too large a state space or too many execution paths.

Mehlitz, Peter C.↗

Micromechanics-Based Structural Analysis (FEAMAC) and Multiscale Visualization within Abaqus/CAE Environment

A unified framework is presented that enables coupled multiscale analysis of composite structures and associated graphical pre- and postprocessing within the Abaqus/CAE environment. The recently developed, free, Finite Element Analysis--Micromechanics Analysis Code (FEAMAC) software couples NASA's Micromechanics Analysis Code with Generalized Method of Cells (MAC/GMC) with Abaqus/Standard and Abaqus/Explicit to perform micromechanics based FEA such that the nonlinear composite material response at each integration point is modeled at each increment by MAC/GMC. The Graphical User Interfaces (FEAMAC-Pre and FEAMAC-Post), developed through collaboration between SIMULIA Erie and the NASA Glenn Research Center, enable users to employ a new FEAMAC module within Abaqus/CAE that provides access to the composite microscale. FEA IAC-Pre is used to define and store constituent material properties, set-up and store composite repeating unit cells, and assign composite materials as sections with all data being stored within the CAE database. Likewise FEAMAC-Post enables multiscale field quantity visualization (contour plots, X-Y plots), with point and click access to the microscale i.e., fiber and matrix fields).

Arnold, Steven M.↗

The Safe Guards Analysis Toolbox for Non-Proliferation Modeling

As nuclear technology becomes more widely available outside of nuclear weapon armed nations, the importance of preventing the illicit development of nuclear weapons has increased dramatically. A system of nuclear safeguards prevents proliferation; stopping the diversion of nuclear material from civilian facilities for the construction of nuclear weapons. These safeguards function through a combination of accountancy measurements that confirm the locations and amounts of nuclear material, and physical security at every nuclear facility. Safeguards Analysis (SGA) is a computational tool-kit developed using the MATLAB Simulink software suite that simulates a system of nuclear safeguards. The code allows users to examine current safeguards systems for weaknesses and to pinpoint the best locations for improvement. Developed as a modular framework, SGA does not directly model material flows, and relies on an outside code for this information. Instead, it represents a series of safeguards measurements that represent the values inspectors would see. Furthermore, SGA is designed to be modular in design, allowing the user to construct as complex or simple a model as needed: simulating an entire fuel-cycle comprising multiple facilities to a single measurement. SGA's use of outside codes for its material flow information makes it applicable to any model available to the user, as opposed to previous work that applied only to a single scenario. This paper discusses the initial development of SGA and the testing of these modules. The tests described in this paper demonstrate that the different pieces of SGA currently work as intended. Future work on the toolbox will develop and test SGA against a more realistic and complicated scenario using the various tools available in SGA. SGA currently has the pieces to perform analysis on safeguards systems, but needs to be tested on large, multi-MBA, systems to ensure the code is capable of handling such large models, to see the effect large models have on calculation speed, and if further work is needed to improve code efficiency. (authors)

97 MATHEMATICS AND COMPUTING↗

Developing Uintah's Runtime System for Forthcoming Architectures

The need to solve ever-more complex science and engineering problems on computer architectures that are rapidly evolving poses considerable challenges for modern simulation frameworks and packages. While the decomposition of software into a programming model that generates a task-graph for execution by a runtime system make portability and performance possible, it also imposes considerable demands on that runtime system. Here, the challenge of meeting those demands for near-term and longer term systems in the context of the Uintah framework is considered in key areas such as support for data structures, tasks on heterogeneous architectures, performance portability, power management and designing for resilience by the use of replication based upon adaptive mesh refinement processes is addressed. Examples of techniques in these areas are used to illustrate performance improvements obtained for present large-scale systems and the needs of proposed systems considered.

97 MATHEMATICS AND COMPUTING↗

Towards a Verifiable Domain-Specific Language for Hardware-Accelerated Stencils

Defining a domain-specific language (DSL) that supports vector-calculus abstractions eases the porting of partial differential equation (PDE) solvers to specialized architectures. Sufficiently high-level abstractions empower users to express universal laws with sufficient generality that the laws must always hold true within their domain of validity. A broad class of PDE solvers employs stencil-based algorithms, the target domain of Berkeley Lab's stencil accelerator chip co-design project. First released as open-source in January 2026, the Formal software framework lays a foundation for defining an embedded DSL based on composable operators that implement mimetic numerical methods -- stencil algorithms that guarantee satisfaction of discrete versions of important vector calculus theorems. The Formal DSL will be the frontend to a new class of stencil-PDE accelerators developed jointly by LBNL, UHCL, and UC Berkeley through the DOE Competitive Portfolios for Computer Science Project. This offers the potential of an order of magnitude acceleration for this important category of computational methods to serve the DOE mission. Future work on the Formal DSL will facilitate software verification via type-safe templates that enable problem-specific correctness proofs relying upon generic function theory and carefully crafted unit tests.

Rouson, Damian↗

HEALPix: A Framework for High-Resolution Discretization and Fast Analysis of Data Distributed on the Sphere

HEALPix the Hierarchical Equal Area isoLatitude Pixelization is a versatile structure for the pixelization of data on the sphere. An associated library of computational algorithms and visualization software supports fast scientific applications executable directly on discretized spherical maps generated from very large volumes of astronomical data. Originally developed to address the data processing and analysis needs of the present generation of cosmic microwave background experiments (e.g., BOOMERANG, WMAP), HEALPix can be expanded to meet many of the profound challenges that will arise in confrontation with the observational output of future missions and experiments, including, e.g., Planck, Herschel, SAFIR, and the Beyond Einstein inflation probe. In this paper we consider the requirements and implementation constraints on a framework that simultaneously enables an efficient discretization with associated hierarchical indexation and fast analysis/synthesis of functions defined on the sphere. We demonstrate how these are explicitly satisfied by HEALPix.

cosmic microwave background↗

Geothermal Operational Optimization with Machine Learning

The Geothermal Operational Optimization with Machine Learning (GOOML) project has developed a generic and extensible component-based system modeling framework to study complex geothermal fields using a data-driven approach. Through building a digital twin of a geothermal steam field with the GOOML modeling framework, operators can analyze historical and forecasted power production, explore possible steam field configurations, and optimize real world operations, all in a cost-effective digital environment. The GOOML modeling software is based on a historical data-assimilation framework that uses first-principal thermodynamics to model steam field components using historical data, and a forecast framework that uses machine-learning-driven models of steam field components to predict future operations. This modeling framework creates countless new opportunities for digital exploration of steam field design and operations. To date, digital twins have been developed for several steam fields in New Zealand and the United States. These digital twins have been validated by comparing hindcast predictions against historical production data. Field design and operations have been explored using genetic optimization and reinforcement learning. Initial results show compelling and often surprising opportunities for improved design and operation of fields with 2 to 5 percent improvements in annual energy production. GOOML is driving a step-change in geothermal operations by applying state-of-the-art machine learning algorithms, comprehensive data analytics, and a first-of-its-kind intelligent geothermal systems model.

40 EE - Geothermal Technologies Office (EE-4G)↗

A CSP-Based Agent Modeling Framework for the Cougaar Agent-Based Architecture

Cognitive Agent Architecture (Cougaar) is a Java-based architecture for large-scale distributed agent-based applications. A Cougaar agent is an autonomous software entity with behaviors that represent a real-world entity (e.g., a business process). A Cougaar-based Model Driven Architecture approach, currently under development, uses a description of system's functionality (requirements) to automatically implement the system in Cougaar. The Communicating Sequential Processes (CSP) formalism is used for the formal validation of the generated system. Two main agent components, a blackboard and a plugin, are modeled as CSP processes. A set of channels represents communications between the blackboard and individual plugins. The blackboard is represented as a CSP process that communicates with every agent in the collection. The developed CSP-based Cougaar modeling framework provides a starting point for a more complete formal verification of the automatically generated Cougaar code. Currently it is used to verify the behavior of an individual agent in terms of CSP properties and to analyze the corresponding Cougaar society.

Gracanin, Denis↗

A Runtime Environment for Supporting Research in Resilient HPC System Software & Tools

The high-performance computing (HPC) community continues to increase the size and complexity of hardware platforms that support advanced scientific workloads. The runtime environment (RTE) is a crucial layer in the software stack for these large-scale systems. The RTE manages the interface between the operating system and the application running in parallel on the machine. The deployment of applications and tools on large-scale HPC computing systems requires the RTE to manage process creation in a scalable manner, support sparse connectivity, and provide fault tolerance. We have developed a new RTE that provides a basis for building distributed execution environments and developing tools for HPC to aid research in system software and resilience. This paper describes the software architecture of the Scalable runTime Component Infrastructure (STCI), which is intended to provide a complete infrastructure for scalable start-up and management of many processes in large-scale HPC systems. We highlight features of the current implementation, which is provided as a system library that allows developers to easily use and integrate STCI in their tools and/or applications. The motivation for this work has been to support ongoing research activities in fault-tolerance for large-scale systems. We discuss the advantages of the modular framework employed and describe two use cases that demonstrate its capabilities: (i) an alternate runtime for a Message Passing Interface (MPI) stack, and (ii) a distributed control and communication substrate for a fault-injection tool.

Computer Science↗

VTK-m User's' Guide (V.1.7)

High-performance computing relies on ever finer threading. Advances in processor technology include ever greater numbers of cores, hyperthreading, accelerators with integrated blocks of cores, and special vectorized instructions, all of which require more software parallelism to achieve peak performance. Traditional visualization solutions cannot support this extreme level of concurrency. Extreme scale systems require a new programming model and a fundamental change in how we design algorithms. To address these issues we created VTK-m: the visualization toolkit for multi-/many-core architectures. VTK-m supports a number of algorithms and the ability to design further algorithms through a top-down design with an emphasis on extreme parallelism. VTK-m also provides support for finding and building links across topologies, making it possible to perform operations that determine manifold surfaces, interpolate generated values, and find adjacencies. Although VTK-m provides a simplified high-level interface for programming, its template-based code removes the overhead of abstraction. VTK-m simplifies the development of parallel scientific visualization algorithms by providing a framework of supporting functionality that allows developers to focus on visualization operations. Consider the listings in Figure 1.1 that compares the size of the implementation for the Marching Cubes algorithm in VTK-m with the equivalent reference implementation in the CUDA software development kit. Because VTK-m internally manages the parallel distribution of work and data, the VTK-m implementation is shorter and easier to maintain. Additionally, VTK-m provides data abstractions not provided by other libraries that make code written in VTK-m more versatile.This book includes contributions from the VTK-m community including the VTK-m development team and the user community.

97 MATHEMATICS AND COMPUTING↗

The VTK-m Users' Guide (V.1.9)

High-performance computing relies on ever finer threading. Advances in processor technology include ever greater numbers of cores, hyperthreading, accelerators with integrated blocks of cores, and special vectorized instructions, all of which require more software parallelism to achieve peak performance. Traditional visualization solutions cannot support this extreme level of concurrency. Extreme scale systems require a new programming model and a fundamental change in how we design algorithms. To address these issues we created VTK-m: the visualization toolkit for multi-/many-core architectures. VTK-m supports a number of algorithms and the ability to design further algorithms through a top-down design with an emphasis on extreme parallelism. VTK-m also provides support for finding and building links across topologies, making it possible to perform operations that determine manifold surfaces, interpolate generated values, and find adjacencies. Although VTK-m provides a simplified high-level interface for programming, its template-based code removes the overhead of abstraction. VTK-m simplifies the development of parallel scientific visualization algorithms by providing a framework of supporting functionality that allows developers to focus on visualization operations. Consider the listings in Figure 1.1 that compares the size of the implementation for the Marching Cubes algorithm in VTK-m with the equivalent reference implementation in the CUDA software development kit. Because VTK-m internally manages the parallel distribution of work and data, the VTK-m implementation is shorter and easier to maintain. Additionally, VTK-m provides data abstractions not provided by other libraries that make code written in VTK-m more versatile.

97 MATHEMATICS AND COMPUTING↗

The VTK-m Users' Guide (V.2.0)

High-performance computing relies on ever finer threading. Advances in processor technology include ever greater numbers of cores, hyperthreading, accelerators with integrated blocks of cores, and special vectorized instructions, all of which require more software parallelism to achieve peak performance. Traditional visualization solutions cannot support this extreme level of concurrency. Extreme scale systems require a new programming model and a fundamental change in how we design algorithms. To address these issues we created VTK-m: the visualization toolkit for multi-/many-core architectures. VTK-m supports a number of algorithms and the ability to design further algorithms through a top-down design with an emphasis on extreme parallelism. VTK-m also provides support for finding and building links across topologies, making it possible to perform operations that determine manifold surfaces, interpolate generated values, and find adjacencies. Although VTK-m provides a simplified high-level interface for programming, its template-based code removes the overhead of abstraction. VTK-m simplifies the development of parallel scientific visualization algorithms by providing a framework of supporting functionality that allows developers to focus on visualization operations. Consider the listings in Figure 1.1 that compares the size of the implementation for the Marching Cubes algorithm in VTK-m with the equivalent reference implementation in the CUDA software development kit. Because VTK-m internally manages the parallel distribution of work and data, the VTK-m implementation is shorter and easier to maintain. Additionally, VTK-m provides data abstractions not provided by other libraries that make code written in VTK-m more versatile.

97 MATHEMATICS AND COMPUTING↗

Towards a general object-oriented software development methodology

Object diagrams were used to design a 5000 statement team training exercise and to design the entire dynamics simulator. The object diagrams are also being used to design another 50,000 statement Ada system and a personal computer based system that will be written in Modula II. The design methodology evolves out of these experiences as well as the limitations of other methods that were studied. Object diagrams, abstraction analysis, and associated principles provide a unified framework which encompasses concepts from Yourdin, Booch, and Cherry. This general object-oriented approach handles high level system design, possibly with concurrency, through object-oriented decomposition down to a completely functional level. How object-oriented concepts can be used in other phases of the software life-cycle, such as specification and testing is being studied concurrently.

Seidewitz, ED↗

rplexos [SWR-14-19]

rplexos is a R (statistical software framework; more? details below) package that processes and facilitates analysis of solution from PLEXOS. PLEXOS is a production cost model that is utilize to simulate the behavior of the power.systems and is developed and commercialized by Energy Exomplar. The intention is to make rptexos open-source so other PLEXOS users can utilize it.

Ibanez, Eduardo↗

Evaluation of INL Supplied MOOSE/OSPREY Model: Modeling Water Adsorption on Type 3A Molecular Sieve

The purpose of this study was to evaluate Idaho National Lab’s Multiphysics Object-Oriented Simulation Environment (MOOSE) software in modeling the adsorption of water onto type 3A molecular sieve (3AMS). MOOSE can be thought-of as a computing framework within which applications modeling specific coupled-phenomena can be developed and run. The application titled Off-gas SeParation and REcoverY (OSPREY) has been developed to model gas sorption in packed columns. The sorbate breakthrough curve calculated by MOOSE/OSPREY was compared to results previously obtained in the deep bed hydration tests conducted at Oak Ridge National Laboratory. The coding framework permits selection of various options, when they exist, for modeling a process. For example, the OSPREY module includes options to model the adsorption equilibrium with a Langmuir model or a generalized statistical thermodynamic adsorption (GSTA) model. The vapor solid equilibria and the operating conditions of the process (e.g., gas phase concentration) are required to calculate the concentration gradient driving the mass transfer between phases. Both the Langmuir and GSTA models were tested in this evaluation. Input variables were either known from experimental conditions, or were available (e.g., density) or were estimated (e.g., thermal conductivity of sorbent) from the literature. Variables were considered independent of time, i.e., rather than having a mass transfer coefficient that varied with time or position in the bed, the parameter was set to remain constant. The calculated results did not coincide with data from laboratory tests. The model accurately estimated the number of bed volumes processed for the given operating parameters, but breakthrough times were not accurately predicted, varying 50% or more from the data. The shape of the breakthrough curves also differed from the experimental data, indicating a much wider sorption band. Model modifications are needed to improve its utility and predictive capability. Recommended improvements include: greater flexibility for input of mass transfer parameters, time-variable gas inlet concentration, direct output of loading and temperature profiles along the bed, and capability to conduct simulations of beds in series.

07 ISOTOPE AND RADIATION SOURCES↗

Integrated Simulation Capabilities for Analysis of Experiments in the Versatile Test Reactor

The DOE-initiated Versatile Test Reactor (VTR) program aims to establish a domestic fast-neutron irradiation testing capability that meets a variety of domestic and international nuclear energy needs. Currently, integrated tools capable of mechanistic modeling of VTR and a test vehicle do not exist. To address this modeling and analysis deficiency, Argonne's SAS4A/SYSSYS-1 safety analysis code has been coupled with SAM (System Analysis Module) to provide a novel modeling capability that supports VTR and other fast test facilities. This report documents the design, implementation, and testing of this integrated capability. A coupling boundary has been identified at the test vehicle and primary coolant interface, where SAS4A/SASSYS-1 treats primary coolant thermal hydraulics outside the test vehicle, while SAM treats all thermal hydraulic behavior within the test vehicle, including the vehicle walls. Essential to this integrated tool is its newly developed capability to properly model the conjugate heat transfer process which ensures equality of temperatures and heat fluxes at the vehicle wall interface while ensuring energy conservation. A range of testing has been completed to support demonstration of this interface. The testing scope includes steady-state verification using a series of increasingly complex analytical solutions and transient demonstration for a range of design basis accident scenarios using prototypic VTR and test vehicle (i.e. cartridge loop) configurations. Results of this testing confirm verification of the steady-state solutions and provide reasonable and expected transient behavior. The coupling interface has been developed to be robust yet flexible. The implementation within SAS4A/SASSYS-1 supports coupling to any external software or module. The use of decomposed domains and the existing in-core thermal-hydraulic calculational framework within SAS4A/SASSYS-1 enable treatment of arbitrary test vehicle geometries with nonuniform meshing between SAS4A/SASSYS-1 and the coupled code. Modeling of multiple test locations is also supported. Furthermore, computational efficiency is enhanced by utilizing named pipes (or FIFOs), an interface for interprocess communication (IPC).

21 SPECIFIC NUCLEAR REACTORS AND ASSOCIATED PLANTS↗

How Reuse Influences Productivity in Object-Oriented Systems

Although reuse is assumed to be especially valuable in building high quality software as well as in Object Oriented (OO) development, limited empirical evidence connects reuse with productivity and quality gains. The author's eight system study begins to define such benefits in an OO framework, most notably in terms of reduce defect density and rework as well as in increased productivity.

Basili, Victor R.↗