Use_Cases - nasa/gunns GitHub Wiki
When Should I Use GUNNS?
This page provides guidance on when the General Use Nodal Network Solver (GUNNS) is an appropriate modeling tool, when it is not, and how its strengths and limitations should influence use case decisions.
GUNNS is an open-source, reusable modeling framework that combines nodal circuit analysis with hydraulic, thermal, and electrical analogies to model flow networks. It is commonly used to model fluid, electrical, and thermal systems and can be integrated into larger simulation environments for engineering analysis, mission planning, testing, and training.
Strengths
-
Rapid Model Development. GUNNS provides reusable components and drawing-based model generation, allowing engineers to construct and modify systems quickly.
-
Multi-Domain Integration. Fluid, thermal, electrical, and signal-domain models can be easily integrated together.
-
Operational Realism. GUNNS supports realistic operational scenarios including built-in hooks for malfunctions and operator actions.
-
Reusability. Models are designed to be reused across projects, reducing development cost and improving consistency.
-
Simulation Integration. GUNNS integrates effectively with Trick and into distributed simulations.
-
Dynamic reconfiguration. Most GUNNS models are designed to configurable at runtime, allowing a single network to support multiple input scenarios without recompile.
Weaknesses
-
Not a Substitute for Hardware Testing or Advanced Analysis Tools. GUNNS simulation results do not replace validation against test data, flight data, hardware demonstrations, or high-fidelity analysis tools like Thermal Desktop.
-
Configuration Details. Capacitance placement, solver tuning setpoints, and configuration choices can significantly affect convergence behavior and runtime accuracy. GUNNS networks can be prototyped quickly (the "90% solution") but the fine-tuning process can be lengthy (the "100% solution").
Recommended Uses
๐ Operator Training and Flight Controller Training
GUNNS is well-suited for operator and controller training environments where users must interact with realistic system behavior, telemetry, commands, failures, and operational procedures.
Examples include:
- Crewmember and flight controller training simulators
- Operational procedure development
- Fault response training
- Human-in-the-loop simulations
GUNNSโ pedigree is training simulation โ it was designed as the successor to the flow system solvers used in NASAโs legacy Space Station Training Facility (SSTF) from the 90โs and 00โs. Training simulations are still GUNNS's biggest application, as NASA's Flight Operations Division uses it in several large integrated vehicle trainers (TS-21 ISS full-task trainer, Boeing Starliner vehicle trainer, Orion crewed vehicle sim, xEMU Advanced Spacesuit sim, among others). These training-focused simulation projects combine GUNNS physics models with interfaces to flight software, telemetry, and users to give human beings practice in managing and operating a space vehicle.
๐ System-Level Architecture and Trade Studies
GUNNS is effective for evaluating overall system behavior during concept development and design maturation.
Examples include:
- ECLSS architecture studies
- Electrical power architecture evaluations
- Thermal-fluid integrated system trade studies
- Consumables and resource usage studies
- Distributed vehicle interface studies
Its reusable component library and network-based approach enable rapid prototyping and modification of architectures before detailed hardware designs exist. NASAโs Engineering Directorate views GUNNS as a useful tool for making 1st-pass analysis and trade studies for new system designs, before more specialized higher-fidelity tools are applied.
๐ Integrated Multi-Domain Vehicle Simulations
GUNNS excels when multiple physical domains need to interact within a single simulation. Electrical, fluid, and controller models can be coupled through common simulation infrastructure and aspect interfaces.
Examples include:
- Integrated fluid and thermal systems
- Fluid-electrical interactions
- Pump, fan, motor, and controller interactions
- Vehicle-wide subsystem simulations
๐ Control-System Development, Testing, and Checkout
GUNNS is frequently used as a plant model for software development and testing.
Examples include:
- Controller algorithm development
- Hardware-in-the-loop integration
- Telemetry generation
- Fault injection
- Automated regression testing
Several projects have used GUNNS models to provide simulated sensor data and system behavior to flight software and controller implementations.
Use With Caution or Consider Alternative Tools
๐ Doing High-fidelity Physics Analysis
GUNNS is generally intended as a system-level engineering simulator rather than a first-principles analysis tool. We consider it a "medium-fidelity" model. GUNNS favors stability and reliability over accuracy, and is therefore generally less accurate than more specialized tools.
When the primary objective is detailed modeling of the following, advanced analysis tools will often provide higher physical fidelity:
- Internal turbulence or boundary layers
- Fine-grained fluid dynamics
- Complex combustion phenomena
- Detailed chemical kinetics
- Temporal temperature profile prediction
๐ When Transient Effects are Important
GUNNS is a โsteady-stateโ solver. That is, the computed flows are assumed to be constant during each step, and do not include higher order dynamic effects that a ODE or PDE solver would model. GUNNS does have time-dependent effects, such as Capacitance, and models are time- and input-dependent and change their state and flows from step to step. However because of the steady-state nature of the solution, GUNNS models tend to be inaccurate over short time scales. GUNNS is therefore not good at modeling most high-frequency, transient effects. This can be somewhat improved by cycling the model at smaller time steps, at the expense of using more CPU.
๐ Needing Dynamic Growth or Contraction
Current GUNNS architectures are built around predefined network members. GUNNS does not currently support dynamically adding links to a network during runtime and characterized such capability as a future enhancement area. Applications that rely heavily on runtime creation and destruction of network elements may be better served by other approaches.
๐ Solving Fluid Problems Outside of Scope
GUNNS is not a true Computational Fluid Dynamics (CFD) platform and has many simplifying limitations and assumptions, cataloged here: Limitations and Assumptions .
Software Classification and Safety Considerations
Regarding NASA Standards Compliance, the generic GUNNS code base has been identified as:
- Class D software under NASA NPR 7150.2B
- Non-Safety-Critical software under NASA-STD-8739.8
GUNNS can be used as a means to provide inputs to flight software in the process of exercising the software. However, GUNNS should not be used as the sole source for defining the flight environment, operating envelopes, or off-nominal conditions that the software is expected to encounter in service.
Attempting to use Class D GUNNS models as verification evidence for critical requirements may be unacceptable without additional credibility and verification support. Projects using GUNNS must perform their own software classification, safety criticality determinations, and credibility assessments appropriate for their applications.