Search NASA⌕ Search

SEARCH · Search NASA

Results for “object-oriented methods”

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

Uncertainty quantification and sensitivity analysis of a nuclear thermal propulsion reactor startup sequence

The research presented in this article describes progress in applying stochastic methods, uncertainty quantification, parametric studies, and variance-based sensitivity analysis (also known as Sobol sensitivity analysis) to a full-core model of a nuclear thermal propulsion (NTP) system simulated via the radiation transport code Griffin to simulate neutronics. Our goal is to develop a reduced-order (surrogate) model that can be rapidly sampled with perturbations to multiple input parameters. In this NTP system, reactivity and power feedback affect the rotation of control drums (CDs), which is itself controlled by a hybrid proportional-integral-derivative (PID) controller actuated by the power demand and reactivity feedback from the numerical model. This model uses reactor kinetic feedback (mean generation time [Λ] and effective delayed neutron fraction [ β eff ] from a transient Griffin simulation executed via Griffin’s improved quasi-static solver to provide the kinetic parameters) as inputs to functions that control the CD rotation angle. By investigating numerous stochastic approaches, we developed a dual-purpose surrogate model of the NTP system, using polynomial regression in the Multiphysics Object-Oriented Simulation Environment (MOOSE) Stochastic Tools Module (STM). The trained model can be rapidly sampled while simultaneously perturbing various input parameters, such as coefficients on the PID control or temperature (directly affecting the neutron cross section). The surrogate model delivers accurate (within 5%) results at speeds orders of magnitude faster (minutes, not days of computational time) than the base model. Once the surrogate model has been trained, distributions of the uncertain parameters can be changed at will to investigate the effects of perturbing multiple inputs as well as the effects of these inputs on the model output. For example, coefficients used in the PID control system may vary due to some type of physical interference, or uncertainty may exist in the temperature of the neutron cross sections in various regions of the reactor. A distribution can be placed on these parameters, and operational boundaries can be determined. The goal of this work is to support development of an advanced control system for operating CDs in a functioning NTP system. This work is a scoping study of the MOOSE STM.

21 - SPECIFIC NUCLEAR REACTORS AND ASSOCIATED PLAN↗

Formal methods in the design of Ada 1995

Formal, mathematical methods are most useful when applied early in the design and implementation of a software system--that, at least, is the familiar refrain. I will report on a modest effort to apply formal methods at the earliest possible stage, namely, in the design of the Ada 95 programming language itself. This talk is an 'experience report' that provides brief case studies illustrating the kinds of problems we worked on, how we approached them, and the extent (if any) to which the results proved useful. It also derives some lessons and suggestions for those undertaking future projects of this kind. Ada 95 is the first revision of the standard for the Ada programming language. The revision began in 1988, when the Ada Joint Programming Office first asked the Ada Board to recommend a plan for revising the Ada standard. The first step in the revision was to solicit criticisms of Ada 83. A set of requirements for the new language standard, based on those criticisms, was published in 1990. A small design team, the Mapping Revision Team (MRT), became exclusively responsible for revising the language standard to satisfy those requirements. The MRT, from Intermetrics, is led by S. Tucker Taft. The work of the MRT was regularly subject to independent review and criticism by a committee of distinguished Reviewers and by several advisory teams--for example, the two User/Implementor teams, each consisting of an industrial user (attempting to make significant use of the new language on a realistic application) and a compiler vendor (undertaking, experimentally, to modify its current implementation in order to provide the necessary new features). One novel decision established the Language Precision Team (LPT), which investigated language proposals from a mathematical point of view. The LPT applied formal mathematical analysis to help improve the design of Ada 95 (e.g., by clarifying the language proposals) and to help promote its acceptance (e.g., by identifying a verifiable subset that would meet the needs of safety-critical applications). The first LPT project, which ran from the fall of 1990 unti the end of 1992, produced studies of several language issues: optimization, sharing and storage, tasking and protected records, overload resolution, the floating point model, distribution, program erros, and object-oriented programming. The second LPT project, in 1994, formally modeled the dynamic semantics of a large part of the (almost) final language definition, looking especially for interactions between language features.

Guaspari, David↗

Integration of Online Cross-Section Generation Capability with Depletion and Transient Solvers in Griffin

Griffin is a Multiphysics Object-Oriented Simulation Environment (MOOSE)-based reactor multiphysics analysis application jointly developed by Argonne and Idaho National Laboratories under the DOENE Nuclear Energy Advanced Modeling and Simulation (NEAMS) program. In FY25, an online crosssection generation capability based on the Self-Shielding Application Programming Interface (SSAPI) was demonstrated for TRISO-fueled reactor problems under steady-state conditions. This fiscal year, that capability was extended to support depletion and transient multiphysics calculations, enabling high-fidelity analyses that generate self-shielded cross sections on the fly from the actual evolving composition and temperature states rather than from pre-tabulated libraries. For depletion, a two-way coupling was established in which SSAPI computes compact-averaged self-shielded cross sections that the depletion solver then uses to advance the Bateman equations, with the updated compositions returned to SSAPI at each step; the depletion module was refactored to support both library-based and SSAPI-based cross sections, and additional logic was added to track daughter isotopes and to exclude minor isotopes for efficiency. For transient analysis, the SSAPI multigroup library was extended with the kinetics data required for time-dependent calculations, the Improved Quasi-Static (IQS) scheme was coupled with SSAPI, and several supporting capabilities were implemented, including a self-shielding treatment that lets control rods and drums move within a self-shielded model, which had previously been impossible and had ruled out rod- and drum-movement transients with on-the-fly cross sections altogether, a new mixing scheme for delayed-neutron precursor decay constants, a checkpoint-based restart workflow, and performance improvements such as pointwise cross-section interpolation and the bypassing of unnecessary Dancoff factor calculations. The implemented capabilities were verified against Serpent Monte Carlo solutions. For depletion, a prismatic pin-cell problem based on a Next Generation Nuclear Plant (NGNP) Very High Temperature Reactor benchmark showed excellent agreement, with eigenvalue differences within 200 pcm over the entire burnup range (up to 140 MWD/kgU) and fission-product and actinide inventories agreeing to within 0.8% and 2.5%, respectively; a heat-pipe microreactor assembly problem with a much higher fuel loading confirmed the same behavior and quantified the bias introduced when the multigroup equivalence effect is neglected. For transient analysis, a pin-cell problem with a step reactivity insertion and temperature feedback reproduced the analytically expected asymptotic power and showed close agreement between the direct and IQS solutions, and a two-dimensional microreactor core problem with control-drum rotation exercised the new moving-drum self-shielding treatment and demonstrated successful coupling of the online crosssection generation with both the direct and IQS transient methods. The capability was further exercised on a full-core pebble-bed problem, in which Griffin was coupled with the System Analysis Module (SAM) to simulate load-following operation of the gPBR with the Doppler feedback resolved at the TRISO fuel kernel temperature. These developments in Griffin provide a convenient, high-fidelity approach to cross-section generation for advanced thermal reactors with geometrically complex and highly heterogeneous configurations, including TRISO-fueled prismatic and pebble-bed systems, and support steady-state, depletion, and transient multiphysics calculations. They also enable self-shielded cross sections to be evaluated directly at the actual coupled state of the system, thereby establishing a foundation for high-fidelity, fully coupled multiphysics analysis of advanced reactors

Park, H.↗

Object-oriented development

Object Oriented Development (OOD) is one of the extremely few software development methods actually designed for modern Ada language, real-time, embedded applications. OOD is a significant improvement over more traditional functional decomposition and modeling methods in that ODD: Better manages the size, complexity, and concurrancy of today's systems; Better addresses important software engineering principles such as abstract data types, levels of abstraction, and information hiding; Produces a better design that more closely matches reality; Produces more maintainable software by better localizing data and thus limiting the impact of requirements changes; and Specifically exploits the power of Ada. OOD is further explored in detail.

Firesmith, Donald G.↗

A class Hierarchical, object-oriented approach to virtual memory management

The Choices family of operating systems exploits class hierarchies and object-oriented programming to facilitate the construction of customized operating systems for shared memory and networked multiprocessors. The software is being used in the Tapestry laboratory to study the performance of algorithms, mechanisms, and policies for parallel systems. Described here are the architectural design and class hierarchy of the Choices virtual memory management system. The software and hardware mechanisms and policies of a virtual memory system implement a memory hierarchy that exploits the trade-off between response times and storage capacities. In Choices, the notion of a memory hierarchy is captured by abstract classes. Concrete subclasses of those abstractions implement a virtual address space, segmentation, paging, physical memory management, secondary storage, and remote (that is, networked) storage. Captured in the notion of a memory hierarchy are classes that represent memory objects. These classes provide a storage mechanism that contains encapsulated data and have methods to read or write the memory object. Each of these classes provides specializations to represent the memory hierarchy.

Russo, Vincent F.↗

Engineering the object-relation database model in O-Raid

Raid is a distributed database system based on the relational model. O-raid is an extension of the Raid system and will support complex data objects. The design of O-Raid is evolutionary and retains all features of relational data base systems and those of a general purpose object-oriented programming language. O-Raid has several novel properties. Objects, classes, and inheritance are supported together with a predicate-base relational query language. O-Raid objects are compatible with C++ objects and may be read and manipulated by a C++ program without any 'impedance mismatch'. Relations and columns within relations may themselves be treated as objects with associated variables and methods. Relations may contain heterogeneous objects, that is, objects of more than one class in a certain column, which can individually evolve by being reclassified. Special facilities are provided to reduce the data search in a relation containing complex objects.

Dewan, Prasun↗

Considerations of persistence and security in CHOICES, an object-oriented operating system

The current design of the CHOICES persistent object implementation is summarized, and research in progress is outlined. CHOICES is implemented as an object-oriented system, and persistent objects appear to simplify and unify many functions of the system. It is demonstrated that persistent data can be accessed through an object-oriented file system model as efficiently as by an existing optimized commercial file system. The object-oriented file system can be specialized to provide an object store for persistent objects. The problems that arise in building an efficient persistent object scheme in a 32-bit virtual address space that only uses paging are described. Despite its limitations, the solution presented allows quite large numbers of objects to be active simultaneously, and permits sharing and efficient method calls.

Campbell, Roy H.↗

Object-oriented knowledge representation for expert systems

Object oriented techniques have generated considerable interest in the Artificial Intelligence (AI) community in recent years. This paper discusses an approach for representing expert system knowledge using classes, objects, and message passing. The implementation is in version 4.3 of NASA's C Language Integrated Production System (CLIPS), an expert system tool that does not provide direct support for object oriented design. The method uses programmer imposed conventions and keywords to structure facts, and rules to provide object oriented capabilities.

Scott, Stephen L.↗

Reducing the complexity of the software design process with object-oriented design

Designing software is a complex process. How object-oriented design (OOD), coupled with formalized documentation and tailored object diagraming techniques, can reduce the complexity of the software design process is described and illustrated. The described OOD methodology uses a hierarchical decomposition approach in which parent objects are decomposed into layers of lower level child objects. A method of tracking the assignment of requirements to design components is also included. Increases in the reusability, portability, and maintainability of the resulting products are also discussed. This method was built on a combination of existing technology, teaching experience, consulting experience, and feedback from design method users. The discussed concepts are applicable to hierarchal OOD processes in general. Emphasis is placed on improving the design process by documenting the details of the procedures involved and incorporating improvements into those procedures as they are developed.

Schuler, M. P.↗

An object-oriented data reduction system in Fortran

A data reduction system for the AAO two-degree field project is being developed using an object-oriented approach. Rather than use an object-oriented language (such as C++) the system is written in Fortran and makes extensive use of existing subroutine libraries provided by the UK Starlink project. Objects are created using the extensible N-dimensional Data Format (NDF) which itself is based on the Hierarchical Data System (HDS). The software consists of a class library, with each class corresponding to a Fortran subroutine with a standard calling sequence. The methods of the classes provide operations on NDF objects at a similar level of functionality to the applications of conventional data reduction systems. However, because they are provided as callable subroutines, they can be used as building blocks for more specialist applications. The class library is not dependent on a particular software environment thought it can be used effectively in ADAM applications. It can also be used from standalone Fortran programs. It is intended to develop a graphical user interface for use with the class library to form the 2dF data reduction system.

Bailey, J.↗

Fusing modeling techniques to support domain analysis for reuse opportunities identification

Functional modeling techniques or object-oriented graphical representations, which are more useful to someone trying to understand the general design or high level requirements of a system? For a recent domain analysis effort, the answer was a fusion of popular modeling techniques of both types. By using both functional and object-oriented techniques, the analysts involved were able to lean on their experience in function oriented software development, while taking advantage of the descriptive power available in object oriented models. In addition, a base of familiar modeling methods permitted the group of mostly new domain analysts to learn the details of the domain analysis process while producing a quality product. This paper describes the background of this project and then provides a high level definition of domain analysis. The majority of this paper focuses on the modeling method developed and utilized during this analysis effort.

Hall, Susan Main↗

Object/rule integration in CLIPS

This paper gives a brief overview of the C Language Integrated Production System (CLIPS) with a focus on the object-oriented features. The advantages of an object data representation over the traditional working memory element (WME), i.e., facts, are discussed, and the implementation of the Rete inference algorithm in CLIPS is presented in detail. A few methods for achieving pattern-matching on objects with the current inference engine are given, and finally, the paper examines the modifications necessary to the Rete algorithm to allow direct object pattern-matching.

Donnell, Brian L.↗

Building distributed rule-based systems using the AI Bus

The AI Bus software architecture was designed to support the construction of large-scale, production-quality applications in areas of high technology flux, running heterogeneous distributed environments, utilizing a mix of knowledge-based and conventional components. These goals led to its current development as a layered, object-oriented library for cooperative systems. This paper describes the concepts and design of the AI Bus and its implementation status as a library of reusable and customizable objects, structured by layers from operating system interfaces up to high-level knowledge-based agents. Each agent is a semi-autonomous process with specialized expertise, and consists of a number of knowledge sources (a knowledge base and inference engine). Inter-agent communication mechanisms are based on blackboards and Actors-style acquaintances. As a conservative first implementation, we used C++ on top of Unix, and wrapped an embedded Clips with methods for the knowledge source class. This involved designing standard protocols for communication and functions which use these protocols in rules. Embedding several CLIPS objects within a single process was an unexpected problem because of global variables, whose solution involved constructing and recompiling a C++ version of CLIPS. We are currently working on a more radical approach to incorporating CLIPS, by separating out its pattern matcher, rule and fact representations and other components as true object oriented modules.

Schultz, Roger D.↗

Object-Oriented Control System Design Using On-Line Training of Artificial Neural Networks

This report deals with the object-oriented model development of a neuro-controller design for permanent magnet (PM) dc motor drives. The system under study is described as a collection of interacting objects. Each object module describes the object behaviors, called methods. The characteristics of the object are included in its variables. The knowledge of the object exists within its variables, and the performance is determined by its methods. This structure maps well to the real world objects that comprise the system being modeled. A dynamic learning architecture that possesses the capabilities of simultaneous on-line identification and control is incorporated to enforce constraints on connections and control the dynamics of the motor. The control action is implemented "on-line", in "real time" in such a way that the predicted trajectory follows a specified reference model. A design example of controlling a PM dc motor drive on-line shows the effectiveness of the design tool. This will therefore be very useful in aerospace applications. It is expected to provide an innovative and noval software model for the rocket engine numerical simulator executive.

Rubaai, Ahmed↗

Load Balancing Using Time Series Analysis for Soft Real Time Systems with Statistically Periodic Loads

This thesis provides design and analysis of techniques for global load balancing on ensemble architectures running soft-real-time object-oriented applications with statistically periodic loads. It focuses on estimating the instantaneous average load over all the processing elements. The major contribution is the use of explicit stochastic process models for both the loading and the averaging itself. These models are exploited via statistical time-series analysis and Bayesian inference to provide improved average load estimates, and thus to facilitate global load balancing. This thesis explains the distributed algorithms used and provides some optimality results. It also describes the algorithms' implementation and gives performance results from simulation. These results show that our techniques allow more accurate estimation of the global system load ing, resulting in fewer object migration than local methods. Our method is shown to provide superior performance, relative not only to static load-balancing schemes but also to many adaptive methods.

REAL TIME↗

Performance Analysis of an Actor-Based Distributed Simulation

Object-oriented design of simulation programs appears to be very attractive because of the natural association of components in the simulated system with objects. There is great potential in distributing the simulation across several computers for the purpose of parallel computation and its consequent handling of larger problems in less elapsed time. One approach to such a design is to use "actors", that is, active objects with their own thread of control. Because these objects execute concurrently, communication is via messages. This is in contrast to an object-oriented design using passive objects where communication between objects is via method calls (direct calls when they are in the same address space and remote procedure calls when they are in different address spaces or different machines). This paper describes a performance analysis program for the evaluation of a design for distributed simulations based upon actors.

Schoeffler, James D.↗

Innovative Language-Based & Object-Oriented Structured AMR Using Fortran 90 and OpenMP

Parallel adaptive mesh refinement (AMR) is an important numerical technique that leads to the efficient solution of many physical and engineering problems. In this paper, we describe how AMR programing can be performed in an object-oreinted way using the modern aspects of Fortran 90 combined with the parallelization features of OpenMP.

software↗

Verification of a Fluid-Based Plasma-Edge Model Within the Multiphysics Object-Oriented Simulation Environment (MOOSE) Framework

As the goal of achieving fusion power on the grid comes closer to fruition, fully coupled multiphysics models of fusion devices will be crucial. These models must incorporate the interconnected phenomena of these devices, including plasma physics, neutronics, first wall interactions, and tritium transport. Currently, there are two main approaches to developing these platforms: (1) loosely coupled, where one couples existing codes and solvers together through input and output parameters and data, and (2) tightly coupled, where one develops the necessary models within a singular, integrated framework. This work focuses on the latter approach for magnetically confined fusion devices by developing a fluid-based plasma-edge model within the Multiphysics Object Oriented Simulation Environment (MOOSE) Framework. This effort is coordinated with other efforts to develop, test, demonstrate, and deploy fusion relevant multiphysics capabilities including electromagnetics, particle-in-cell plasma, tritium transport, and fusion blanket design. This new model is an expansion of the MOOSE-based plasma application, Zapdos, which was originally formulated to model low-temperature, non-magnetized plasma processes. Verification studies have been conducted using newly developed magnetic plasma capabilities. These involved convergence analyses utilizing the method of manufactured solutions to verify new operators and case studies. A modular approach was taken here to demonstrate increasingly complicated simulation scenarios, which included a singular fluid with uniform magnetic field case, a singular fluid with spatially varying magnetic field case, and a coupled multifluid case.

70 - PLASMA PHYSICS AND FUSION TECHNOLOGY↗