Search NASA⌕ Search

SEARCH · Search NASA

Results for “differential equation solver”

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

Fourier Neural Networks as Function Approximators and Differential Equation Solvers

We present a Fourier neural network (FNN) that can be mapped directly to the Fourier decomposition. The choice of activation and loss function yields results that replicate a Fourier series expansion closely while preserving a straightforward architecture with a single hidden layer. The simplicity of this network architecture facilitates the integration with any other higher-complexity networks, at a data pre- or postprocessing stage. We validate this FNN on naturally periodic smooth functions and on piecewise continuous periodic functions. We showcase the use of this FNN for modeling or solving partial differential equations with periodic boundary conditions. The main advantages of the current approach are the validity of the solution outside the training region, interpretability of the trained model, and simplicity of use.

Fourier decomposition↗

Implementing Ordinary Differential Equation Solvers in Rust Programming Language for Modeling Vehicle Powertrain Systems: Preprint

Efficient and accurate ordinary differential equation (ODE) solvers are necessary for powertrain and vehicle dynamics modeling. However, current commercial ODE solvers can be financially prohibitive, leading to a need for accessible, effective, open-source ODE solvers designed for powertrain modeling. Rust is a compiled programming language that has the potential to be used for fast and easy-to-use powertrain models, given its exceptional computational performance, robust package ecosystem, and short time required for modelers to become proficient. However, of the three commonly used (>3,000 downloads) packages in Rust with ODE solver capabilities, only one has more than four numerical methods implemented, and none are designed specifically for modeling physical systems. Therefore, the goal of the Differential Equation System Solver (DESS) was to implement accurate ODE solvers in Rust designed for the component-based problems often seen in powertrain modeling. DESS is a text-based software package that provides a flexible framework for building and solving systems of ODEs. This allows DESS to be included as a dependency for automotive powertrain models that require a variety of solvers and solver configurations. Seven explicit ODE solver methods have been implemented in DESS: Euler’s, Heun’s, midpoint, Ralston’s, classic Runge-Kutta, Bogacki-Shampine, and Cash-Karp. These represent five fixed-step methods and two adaptive-step methods. This paper shows that the solver implementations increase accuracy and computational efficiency compared to Euler's method when modeling a system of three thermal masses in Rust. DESS also includes features designed for modeling component-based physical systems. Users can define relationships between nodes in their system, which the package then translates into a system of equations, leading to simpler and more intuitive code. In the case of a three-thermal-mass system, the user can specify node thermal properties (e.g., thermal capacitance), how nodes are interconnected, and thermal conductance between nodes rather than providing a system of equations. The core contribution from this work is an open-source, text-based Rust package with ODE solvers for automotive powertrain modeling to support cost-free, fast, and accurate simulation.

ADVANCED PROPULSION SYSTEMS↗

MACSYMA's symbolic ordinary differential equation solver

The MACSYMA's symbolic ordinary differential equation solver ODE2 is described. The code for this routine is delineated, which is of interest because it is written in top-level MACSYMA language, and may serve as a good example of programming in that language. Other symbolic ordinary differential equation solvers are mentioned.

Golden, J. P.↗

Workload Characterization of CFD Applications Using Partial Differential Equation Solvers

Workload characterization is used for modeling and evaluating of computing systems at different levels of detail. We present workload characterization for a class of Computational Fluid Dynamics (CFD) applications that solve Partial Differential Equations (PDEs). This workload characterization focuses on three high performance computing platforms: SGI Origin2000, EBM SP-2, a cluster of Intel Pentium Pro bases PCs. We execute extensive measurement-based experiments on these platforms to gather statistics of system resource usage, which results in workload characterization. Our workload characterization approach yields a coarse-grain resource utilization behavior that is being applied for performance modeling and evaluation of distributed high performance metacomputing systems. In addition, this study enhances our understanding of interactions between PDE solver workloads and high performance computing platforms and is useful for tuning these applications.

Waheed, Abdul↗

Mathematical solutions in internal dose assessment: A comparison of Python-based differential equation solvers in biokinetic modeling

Abstract In biokinetic modeling systems employed for radiation protection, biological retention and excretion have been modeled as a series of discretized compartments representing the organs and tissues of the human body. Fractional retention and excretion in these organ and tissue systems have been mathematically governed by a series of coupled first-order ordinary differential equations (ODEs). The coupled ODE systems comprising the biokinetic models are usually stiff due to the severe difference between rapid and slow transfers between compartments. In this study, the capabilities of solving a complex coupled system of ODEs for biokinetic modeling were evaluated by comparing different Python programming language solvers and solving methods with the motivation of establishing a framework that enables multi-level analysis. The stability of the solvers was analyzed to select the best performers for solving the biokinetic problems. A Python-based linear algebraic method was also explored to examine how the numerical methods deviated from an analytical or semi-analytical method. Results demonstrated that customized implicit methods resulted in an enhanced stable solution for the inhaled 60 Co (Type M) and 131 I (Type F) exposure scenarios for the inhalation pathway of the International Commission on Radiological Protection (ICRP) Publication 130 Human Respiratory Tract Model (HRTM). The customized implementation of the Python-based implicit solvers resulted in approximately consistent solutions with the Python-based matrix exponential method ( expm ). The differences generally observed between the implicit solvers and expm are attributable to numerical precision and the order of numerical approximation of the numerical solvers. This study provides the first analysis of a list of Python ODE solvers and methods by comparing their usage for solving biokinetic models using the ICRP Publication 130 HRTM and provides a framework for the selection of the most appropriate ODE solvers and methods in Python language to implement for modeling the distribution of internal radioactivity.

61 RADIATION PROTECTION AND DOSIMETRY↗

DESS (Differential Equation System Solver) [SWR-24-48]

The Differential Equation System Solver (DESS) is a Rust crate implementing fixed-step and adaptive-step solvers and designed especially for modeling physical systems. Seven explicit ordinary differential equation (ODE) solver methods have been added so far: Euler’s, Heun’s, Midpoint, Ralston’s, Classic Runge-Kutta, Bogacki-Shampine, and Cash-Karp. These comprise five fixed-step methods and two adaptive-step methods. Few solver packages are implemented in the Rust ecosystem and none are intended specifically for physical system modeling, so the goal of DESS is to create a Rust ODE solver crate designed to easily specify and model physical systems with modular, configurable solver options. In addition to allowing users to directly input equations to solve, DESS allows users to optionally specify and define relationships between nodes in their system, which the package then translates into a system of equations via the Rust macro system, leading to simpler and more intuitive code.

Steuteville, Robin↗

Description and use of LSODE, the Livermore Solver for Ordinary Differential Equations

LSODE, the Livermore Solver for Ordinary Differential Equations, is a package of FORTRAN subroutines designed for the numerical solution of the initial value problem for a system of ordinary differential equations. It is particularly well suited for 'stiff' differential systems, for which the backward differentiation formula method of orders 1 to 5 is provided. The code includes the Adams-Moulton method of orders 1 to 12, so it can be used for nonstiff problems as well. In addition, the user can easily switch methods to increase computational efficiency for problems that change character. For both methods a variety of corrector iteration techniques is included in the code. Also, to minimize computational work, both the step size and method order are varied dynamically. This report presents complete descriptions of the code and integration methods, including their implementation. It also provides a detailed guide to the use of the code, as well as an illustrative example problem.

Radhakrishnan, Krishnan↗

PythonFOAM: In-situ data analyses with OpenFOAM and Python

Here, we outline the development of a general-purpose Python-based data analysis tool for OpenFOAM. Our implementation relies on the construction of OpenFOAM applications that have bindings to data analysis libraries in Python. Double precision data in OpenFOAM is cast to a NumPy array using the NumPy C-API and Python modules may then be used for arbitrary data analysis and manipulation on flow-field information. We highlight how the proposed wrapper may be used for an in-situ online singular value decomposition (SVD) implemented in Python and accessed from the OpenFOAM solver PimpleFOAM. Here, 'in-situ' refers to a programming paradigm that allows for a concurrent computation of the data analysis on the same computational resources utilized for the partial differential equation solver. In addition, to demonstrate parallel deployments, we deploy a distributed SVD, which collects snapshot data across the ranks of a distributed simulation to compute the global left singular vectors. Crucially, both OpenFOAM and Python share the same message passing interface (MPI) communicator for this deployment which allows Python objects and functions to exchange NumPy arrays across ranks. Subsequently, we provide scaling assessments of this distributed SVD on multiple nodes of Intel Broadwell and KNL architectures for canonical test cases such as the large eddy simulations of a backward facing step and a channel flow at friction Reynolds number of 395. Finally, we demonstrate the deployment of a deep neural network for compressing the flow-field information using an autoencoder to demonstrate an ability to use state-of-the-art machine learning tools in the Python ecosystem.

97 MATHEMATICS AND COMPUTING↗

Modeling MTS pyrolysis and SiC deposition kinetics using principal component analysis and neural networks

Accurate chemical kinetics modeling is crucial for improving the efficiency of chemical processing and synthesis of ceramic matrix composites. Detailed kinetic models are computationally expensive due to the large number of transported chemical species, while the simplified physics-based models, such as single-step global mechanisms, are efficient but often overlook key chemical intermediates and pathways. Recent deep learning approaches promise accurate and cost-effective models. Yet, they require additional closures for the transported nonlinear latent variables, complicating integration with existing solvers. In this work, we develop a hybrid linear—nonlinear reduced model for silicon carbide deposition from methyltrichlorosilane precursor by combining principal component analysis (PCA) and autoencoder (AE) neural network (NN) approaches. PCA is used to identify a smaller set of linear transport variables, enabling direct reuse of conventional transport solvers. NNs then reconstruct the full chemical state from these reduced variables. We demonstrate the method on a chemical vapor deposition reactor—comprising a gas-phase pyrolysis plug flow reactor and a heterogeneous surface reactor—over a wide range of temperatures, pressures, and residence times. Our PCA–AE model achieves high accuracy with only five transported scalars, achieving an eightfold cost reduction compared to detailed mechanisms, in both a priori (using data from the test set only) and a posteriori (coupled with a differential equation solver). In conclusion, notable errors arise primarily near training domain boundaries and for long residence times, indicating the need for domain shift indicators and better long-horizon predictions in future reduced chemistry model development.

autoencoder neural networks↗

JuliaOceanWaves

SAND2023-05107O JuliaOceanWaves is a collection of packages and functions for modeling wave energy converters. The open-source software is designed to be used by the wave energy community to model new concepts, perform design optimization, and more. Capabilities include: • A representation of ocean wave spectra and input/output (e.g. read from National Oceanic and Atmospheric Administration buoys) and post-processing functionalities; • A solver for the linear potential flow radiation and diffraction equations for wave forcing on floating structures. • Solving the floating body linear dynamics in the frequency domain. Future additions to the software will include solving non-linear floating body dynamics in the time-domain through time-marching Ordinary Differential Equation solvers and the pseudo-spectral optimization method. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Michelen Strofer, Carlos↗

Numerical Fluxes and Shocks

Accurately describing shocks within numerical partial differential equation solvers has been a significant computational hurdle for the field of applied mathematics. In our work we present and discuss the background and history of how shocks have been dealt with. We have analyzed numerical schemes and fluxes for the purpose of education and improved computational speed and accuracy. We demonstrate the need for specific methods to deal with shocks by showcasing some methods in a simple one dimensional case for burger’s equation. We aim to extend our knowledge to the euler equations.

Partial Differential Equations↗

Implicit Formulation of Muscle Dynamics in OpenSim

Astronauts lose bone and muscle mass during spaceflight. Exercise countermeasure is the primary method for counteracting bone and muscle mass loss in space. New spacecraft exercise device concepts are currently being developed for the NASAs new crew exploration vehicle. The NASA Digital Astronaut Project (DAP) uses computational modeling to help determine if the new exercise devices will be effective as countermeasures. The NASA Digital Astronaut Project is developing the ability to utilize predictive simulation to provide insight into the change in kinematics and kinetics with a change in device and gravitational environment (1-g versus 0-g). For example, in space exercise the subject's body weight is applied in addition to the loads prescribed for musculoskeletal maintenance. How and where these loads are applied obviously directly impacts bone and tissue loads. Additionally, due to space vehicle structural requirements, exercise devices are often placed on vibration isolation systems. This changes the apparent impedance or stiffness of the device as seen by the user. Data collection under these conditions is often impractical and limited. Predictive modeling provides a means to have a virtual subject to test hypotheses. Predictive simulation provides a virtual subject for which we are able to perform studies such as sensitivity to device loading and vibration isolation without the need for laboratory kinematic or kinetic test data.Direct Collocation optimization provides an efficient means to perform task based optimization and predictive modeling. It is relatively straight forward to structure a physical exercise task in a Direct Collocation mathematical formulation: perform a motion such that you start at an initial pose, achieve a given amount of deflection i.e a squat, return to the initial pose, and minimize muscle activation cost. Direct Collocation is advantageous in that it does not require numerical integration to evaluate the objective function. Instead, the system dynamics are transformed to discrete time and the optimizer is constrained such that the solution is not considered to be a valid unless the dynamic equations are satisfied at all time points. The simulation and optimization are effectively done simultaneously. Due to the implicit integration, time steps can be more coarse than in a differential equation solver. In a gait scenario this means that that the model constraints and cost function are evaluated at 100 nodes in the gait cycle versus 10,000 integration steps in a variable-step forward dynamic simulation. Furthermore, no time is wasted on accurate simulations of movements that are far from the optimum. Constrained optimization algorithms require a Jacobian matrix that contains the partial derivatives of each of the dynamic constraints with respect to of each of the state and control variables at all time points. This is a large but sparse matrix. An implicit dynamics formulation requires computation of the dynamic residuals f as a function of the states x and their derivatives, and controls u:f(x, dxdt, u) 0If the dynamics of musculoskeletal system are formulated implicitly, the Jacobian elements are often available analytically, eliminating the need for numerical differentiation; this is obviously computationally advantageous. Additionally, implicit formulation of musculoskeletal dynamics do not suffer from singularities from low mass bodies, zero muscle activation, or other stiff system or

physical exercise↗

Direct Estimation of Parameters in ODE Models Using WENDy: Weak-Form Estimation of Nonlinear Dynamics

Abstract We introduce the Weak-form Estimation of Nonlinear Dynamics (WENDy) method for estimating model parameters for non-linear systems of ODEs. Without relying on any numerical differential equation solvers, WENDy computes accurate estimates and is robust to large (biologically relevant) levels of measurement noise. For low dimensional systems with modest amounts of data, WENDy is competitive with conventional forward solver-based nonlinear least squares methods in terms of speed and accuracy. For both higher dimensional systems and stiff systems, WENDy is typically both faster (often by orders of magnitude) and more accurate than forward solver-based approaches. The core mathematical idea involves an efficient conversion of the strong form representation of a model to its weak form, and then solving a regression problem to perform parameter inference. The core statistical idea rests on the Errors-In-Variables framework, which necessitates the use of the iteratively reweighted least squares algorithm. Further improvements are obtained by using orthonormal test functions, created from a set of $$C^{\infty }$$ C ∞ bump functions of varying support sizes.We demonstrate the high robustness and computational efficiency by applying WENDy to estimate parameters in some common models from population biology, neuroscience, and biochemistry, including logistic growth, Lotka-Volterra, FitzHugh-Nagumo, Hindmarsh-Rose, and a Protein Transduction Benchmark model. Software and code for reproducing the examples is available at https://github.com/MathBioCU/WENDy .

97 MATHEMATICS AND COMPUTING↗

Simulating single-particle dynamics in magnetized plasmas: The RMF code

The RMF (Rotating Magnetic Field) code is designed to calculate the motion of a charged particle in a given electromagnetic field. It integrates Hamilton’s equations in cylindrical coordinates using an adaptive predictor-corrector double-precision variable-coefficient ordinary differential equation solver for speed and accuracy. RMF has multiple capabilities for the field. Particle motion is initialized by specifying the position and velocity vectors. Here, the six-dimensional state vector and derived quantities are saved as functions of time. A post-processing graphics code, XDRAW, is used on the stored output to plot up to 12 windows of any two quantities using different colors to denote successive time intervals. Multiple cases of RMF may be run in parallel and perform data mining on the results. Recent features are a synthetic diagnostic for simulating the observations of charge-exchange-neutral energy distributions and RF grids to explore a Fermi acceleration parallel to static magnetic fields.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

A meshless stochastic method for Poisson–Nernst–Planck equations

A plethora of biological, physical, and chemical phenomena involve transport of charged particles (ions). Its continuum-scale description relies on the Poisson–Nernst–Planck (PNP) system, which encapsulates the conservation of mass and charge. The numerical solution of these coupled partial differential equations is challenging and suffers from both the curse of dimensionality and difficulty in efficiently parallelizing. We present a novel particle-based framework to solve the full PNP system by simulating a drift–diffusion process with time- and space-varying drift. We leverage Green’s functions, kernel-independent fast multipole methods, and kernel density estimation to solve the PNP system in a meshless manner, capable of handling discontinuous initial states. The method is embarrassingly parallel, and the computational cost scales linearly with the number of particles and dimension. We use a series of numerical experiments to demonstrate both the method’s convergence with respect to the number of particles and computational cost vis-à-vis a traditional partial differential equation solver.

Chemistry↗

Gaussian processes meet NeuralODEs: a Bayesian framework for learning the dynamics of partially observed systems from scarce and noisy data

We present a machine learning framework (GP-NODE) for Bayesian model discovery from partial, noisy and irregular observations of nonlinear dynamical systems. The proposed method takes advantage of differentiable programming to propagate gradient information through ordinary differential equation solvers and perform Bayesian inference with respect to unknown model parameters using Hamiltonian Monte Carlo sampling and Gaussian Process priors over the observed system states. This allows us to exploit temporal correlations in the observed data, and efficiently infer posterior distributions over plausible models with quantified uncertainty. The use of the Finnish Horseshoe as a sparsity-promoting prior for free model parameters also enables the discovery of parsimonious representations for the latent dynamics. A series of numerical studies is presented to demonstrate the effectiveness of the proposed GP-NODE method including predator–prey systems, systems biology and a 50-dimensional human motion dynamical system. This article is part of the theme issue ‘Data-driven prediction in dynamical systems’.

Science & Technology - Other Topics↗

Inference of neutrino flavor evolution through data assimilation and neural differential equations

The evolution of neutrino flavor in dense environments such as core-collapse supernovae and binary compact object mergers constitutes an important and unsolved problem. Its solution has potential implications for the dynamics and heavy-element nucleosynthesis in these environments. In this paper, we build upon recent work to explore inference-based techniques for the estimation of model parameters and neutrino flavor evolution histories. Here, we combine data assimilation, ordinary differential equation solvers, and neural networks to craft an inference approach tailored for nonlinear dynamical systems. Using this architecture, and a simple two-neutrino-beam, two-flavor model, we compare the performances of nine different optimization algorithms and expand upon previous assessments of the efficacy of inference for tackling problems in flavor evolution. We find that employing this new architecture, together with evolutionary optimization algorithms, accurately captures flavor histories in the small-scale model and allows us to quickly explore both model parameters and initial flavor content. In future work we plan to extend these inference techniques to large numbers of neutrinos.

72 PHYSICS OF ELEMENTARY PARTICLES AND FIELDS↗

gpde

The R package gpde is an R implementation of a probabilistic differential equation solver. The package has a basic implementation of the Chkrebtii (2013) probabilistic ODE solver and an extension using the connection between Kalman Filtering for SDEs and Gaussian Processes from work by Simo Sarkka. The package also implements the Integrated Wiener covariance function from Schober 2014 to obtain probabilistic ODE solutions with the Runge-Kutta solution as the mean result. This collection of tools has been built into an R package for easy use at LANL and in the probabilistic numerics community.

Grosskopf, Michael↗