Search NASA⌕ Search

SEARCH · Search NASA

Results for “Nonlinear programming”

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 451 records · Page 25

Carbon Monoxide Mediated Hydrogen Release from PtCu Single-Atom Alloys: The Punctured Molecular Cork Effect

Pt-based materials are used extensively in heterogeneous catalytic processes, yet they are notoriously susceptible to poisoning by CO. In contrast, highly dilute binary alloys formed of isolated Pt atoms in a Cu metal host, known as PtCu single-atom alloys (SAAs), are more resilient to CO poisoning during catalytic hydrogenation reactions. In this article, we describe how CO affects the adsorption and desorption of H 2 from a model PtCu(111) SAA surface and gain a microscopic understanding of these species’ interaction at the Pt atom active sites. By combining temperature-programmed desorption and scanning tunneling microscopy with first-principles kinetic Monte Carlo, we identify CO as a Pt site blocker that prevents the low temperature adsorption and desorption of H 2 , the so-called molecular cork effect , first realized when examining PdCu SAAs. Intriguingly, for the case of PtCu, H 2 desorption occurs before CO release is detected. Additionally, desorption experiments show a nonlinear relationship between CO coverage of the Pt sites and H 2 desorption peak temperature. When all the Pt atoms are saturated by CO, a very sharp H 2 desorption feature is observed 55 K above the regular desorption temperature of H 2 . Our simulations reveal that the origin of these effects is the fact that desorption of just one CO molecule from a Pt site facilitates the fast release of many molecules of H 2 . In fact, just 0.7% of the CO adsorbed at Pt sites has desorbed when the H 2 desorption peak maximum is reached. The release of H 2 from CO-corked PtCu SAA surfaces is analogous to the escape of gas from a pressurized container with a small puncture. Given that small changes in CO surface coverage lead to large changes in H 2 evolution energetics, the punctured molecular cork effect must be considered when modeling reaction mechanisms on similar alloy systems.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Physics of the thermal quench in MST tokamak plasmas (Final Technical Report)

This project at the University of Wisconsin-Madison targeted measurements in tokamak plasmas in the Madison Symmetric Torus (MST) to help elucidate the physics of the tokamak disruption. We intended to focus on the thermal quench, during which energy is lost from the plasma in a very short time. Understanding and ultimately mitigating the thermal quench are among the highest priority research thrusts for ITER, a large international fusion experiment presently under construction. The measurements in MST exploited an advanced set of diagnostics for internal measurements with high time resolution, targeting linear and nonlinear magnetohydrodynamic (MHD) activity as well as the electron temperature and density profiles. We also exploited other features of the MST device, including very flexible power supplies for the toroidal magnetic field and toroidal plasma current that are capable of producing almost arbitrary waveforms. While the work funded by this project was purely experimental, we continued and expanded an existing collaboration with UW-Madison experts in nonlinear MHD computational modeling of tokamak plasmas. That modeling incorporated realistic, experimentally measured parameters. The results of the modeling were anticipated to deepen considerably our understanding of the experimental measurements, and in turn, the experimental measurements were anticipated to help validate the modeling results. The science of transients such as disruptions is one of the highest priority research areas in the U.S. and international fusion programs. The work carried out in this project was targeted to help advance the science of tokamak disruptions which will in turn contribute to the success of ITER.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Optimal Transmission Switching Using the IV-ACOPF Linearization

In this paper we seek to investigate the performance of transmission switching using the iterative linear program approximation to the Current Voltage AC Optimal Power Flow (IV-ACOPF). Several different methods of using this switching are investigated to find a method that addresses the MIP challenges and is both fast and accurate. We consider opening only one line, opening up to five lines, and progressively opening one line at a time. The linear method with switching is much faster than the nonlinear ACOPF and generally finds solutions within 1% of the nonlinear ACOPF.

29 ENERGY PLANNING, POLICY, AND ECONOMY↗

PETSc Users Manual (Rev. 3.13)

This manual describes the use of PETSc for the numerical solution of partial differential equations and related problems on high-performance computers. The Portable, Extensible Toolkit for Scientific Computation (PETSc) is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all message-passing communication. PETSc includes an expanding suite of parallel linear solvers, nonlinear solvers, and time integrators that may be used in application codes written in Fortran, C, C++, and Python. PETSc provides many of the mechanisms needed within parallel application codes, such as parallel matrix and vector assembly routines. The library is organized hierarchically, enabling users to employ the level of abstraction that is most appropriate for a particular problem. By using techniques of object-oriented programming, PETSc provides enormous flexibility for users. PETSc is a sophisticated set of software tools; as such, for some users it initially has a much steeper learning curve than a simple subroutine library. In particular, for individuals without some computer science background, experience programming in C, C++, python, or Fortran and experience using a debugger such as gdb or dbx, it may require a significant amount of time to take full advantage of the features that enable efficient software use. However, the power of the PETSc design and the algorithms it incorporates may make the efficient implementation of many application codes simpler than \rolling them" yourself.

97 MATHEMATICS AND COMPUTING↗

First Results of the IOTA Ring Research at Fermilab

The IOTA ring at Fermilab is a unique machine exclusively dedicated to accelerator beam physics R&D. The research conducted at IOTA includes topics such as nonlinear integrable optics, suppression of coherent beam instabilities, optical stochastic cooling and quantum science experiments. In this talk we report on the first results of experiments with implementations of nonlinear integrable beam optics. The first of its kind practical realization of a two-dimensional integrable system in a strongly-focusing storage ring was demonstrated allowing among other things for stable beam circulation near or at the integer resonance. Also presented will be the highlights of the world’s first demonstration of optical stochastic beam cooling and other selected results of IOTA’s broad experimental program.

43 PARTICLE ACCELERATORS↗

Algorithm and program for precise determination of unit-cell parameters of single crystal taking into account the sample eccentricity

A technique has been developed to refine the unit-cell parameters of single crystals with minimization of the influence of instrumental errors on the result. The corresponding computational procedure HuberUB is added to the software package of Huber-5042 diffractometer with a point detector and closedcycle helium cryostat Displex DE-202. The parameters of unit cell, its orientation, the goniometer zero angles, the sample eccentricity, the distances in the goniometer, and the radiation wavelength were refined by the nonlinear least-squares method, which allows imposition of constraints on the unit-cell parameters, depending on the crystal symmetry. The technique is approved on a LuB{sub 12} single crystal. The unit-cell parameters are determined in a temperature range of 20–295 K, with an absolute error not larger than 0.0004 Å (the relative error is of ~5 × 10{sup –5}). The estimates of the unit-cell parameters obtained by the proposed method are evidenced to be unbiased. Some specific features of the behavior of parameters in the ranges of 120–140 and 20–50 K are revealed, which correlate with the anomalies of the physical properties of the crystal.

75 CONDENSED MATTER PHYSICS, SUPERCONDUCTIVITY AND↗

Light Water Reactor Sustainability Program Status Report on the Grizzly Code Enhancements

This report summarizes work conducted during fiscal year 2013 to work toward developing a full capability to evaluate fracture contour J-integrals to the Grizzly code. This is a progress report on ongoing work. During the next fiscal year, this capability will be completed, and Grizzly will be capable of evaluating these contour integrals for 3D geometry, including the effects of thermal stress and large deformation. A usable, limited capability has been developed, which is capable of evaluating these integrals on 2D geometry, without considering the effects of material nonlinearity, thermal stress or large deformation. This report presents an overview of the approach used, along with a demonstration of the current capability in Grizzly, including a comparison with an analytical solution.

11 NUCLEAR FUEL CYCLE AND FUEL MATERIALS↗

PETSc Users Manual (Rev. 3.3)

This manual describes the use of PETSc for the numerical solution of partial differential equations and related problems on high-performance computers. The Portable, Extensible Toolkit for Scientific Computation (PETSc) is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all message-passing communication. PETSc includes an expanding suite of parallel linear, nonlinear equation solvers and time integrators that may be used in application codes written in Fortran, C, C++, Python, and MATLAB (sequential). PETSc provides many of the mechanisms needed within parallel application codes, such as parallel matrix and vector assembly routines. The library is organized hierarchically, enabling users to employ the level of abstraction that is most appropriate for a particular problem. By using techniques of object-oriented programming, PETSc provides enormous flexibility for users. PETSc is a sophisticated set of software tools; as such, for some users it initially has a much steeper learning curve than a simple subroutine library. In particular, for individuals without some computer science background, experience programming in C, C++ or Fortran and experience using a debugger such as gdb or dbx, it may require a significant amount of time to take full advantage of the features that enable efficient software use. However, the power of the PETSc design and the algorithms it incorporates may make the efficient implementation of many application codes simpler than “rolling them” yourself; For many tasks a package such as MATLAB is often the best tool; PETSc is not intended for the classes of problems for which effective MATLAB code can be written. PETSc also has a MATLAB interface, so portions of your code can be written in MATLAB to “try out” the PETSc solvers. The resulting code will not be scalable however because currently MATLAB is inherently not scalable; and PETSc should not be used to attempt to provide a “parallel linear solver” in an otherwise sequential code. Certainly all parts of a previously sequential code need not be parallelized but the matrix generation portion must be parallelized to expect any kind of reasonable performance. Do not expect to generate your matrix sequentially and then “use PETSc” to solve the linear system in parallel. Since PETSc is under continued development, small changes in usage and calling sequences of routines will occur. PETSc is supported; see the web site http://www.mcs.anl.gov/petsc for information on contacting support. A http://www.mcs.anl.gov/petsc/publications may be found a list of publications and web sites that feature work involving PETSc. We welcome any reports of corrections for this document.

97 MATHEMATICS AND COMPUTING↗

PETSc Users Manual (Rev. 3.4)

This manual describes the use of PETSc for the numerical solution of partial differential equations and related problems on high-performance computers. The Portable, Extensible Toolkit for Scientific Computation (PETSc) is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all message-passing communication. PETSc includes an expanding suite of parallel linear, nonlinear equation solvers and time integrators that may be used in application codes written in Fortran, C, C++, Python, and MATLAB (sequential). PETSc provides many of the mechanisms needed within parallel application codes, such as parallel matrix and vector assembly routines. The library is organized hierarchically, enabling users to employ the level of abstraction that is most appropriate for a particular problem. By using techniques of object-oriented programming, PETSc provides enormous flexibility for users. PETSc is a sophisticated set of software tools; as such, for some users it initially has a much steeper learning curve than a simple subroutine library. In particular, for individuals without some computer science background, experience programming in C, C++ or Fortran and experience using a debugger such as gdb or dbx, it may require a significant amount of time to take full advantage of the features that enable efficient software use. However, the power of the PETSc design and the algorithms it incorporates may make the efficient implementation of many application codes simpler than “rolling them” yourself; For many tasks a package such as MATLAB is often the best tool; PETSc is not intended for the classes of problems for which effective MATLAB code can be written. PETSc also has a MATLAB interface, so portions of your code can be written in MATLAB to “try out” the PETSc solvers. The resulting code will not be scalable however because currently MATLAB is inherently not scalable; and PETSc should not be used to attempt to provide a “parallel linear solver” in an otherwise sequential code. Certainly all parts of a previously sequential code need not be parallelized but the matrix generation portion must be parallelized to expect any kind of reasonable performance. Do not expect to generate your matrix sequentially and then “use PETSc” to solve the linear system in parallel. Since PETSc is under continued development, small changes in usage and calling sequences of routines will occur. PETSc is supported; see the web site http://www.mcs.anl.gov/petsc for information on contacting support. A http://www.mcs.anl.gov/petsc/publications may be found a list of publications and web sites that feature work involving PETSc. We welcome any reports of corrections for this document.

97 MATHEMATICS AND COMPUTING↗

PETSc Users Manual (Rev. 3.5)

This manual describes the use of PETSc for the numerical solution of partial differential equations and related problems on high-performance computers. The Portable, Extensible Toolkit for Scientific Computation (PETSc) is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all message-passing communication. PETSc includes an expanding suite of parallel linear, nonlinear equation solvers and time integrators that may be used in application codes written in Fortran, C, C++, Python, and MATLAB (sequential). PETSc provides many of the mechanisms needed within parallel application codes, such as parallel matrix and vector assembly routines. The library is organized hierarchically, enabling users to employ the level of abstraction that is most appropriate for a particular problem. By using techniques of object-oriented programming, PETSc provides enormous flexibility for users. PETSc is a sophisticated set of software tools; as such, for some users it initially has a much steeper learning curve than a simple subroutine library. In particular, for individuals without some computer science background, experience programming in C, C++ or Fortran and experience using a debugger such as gdb or dbx, it may require a significant amount of time to take full advantage of the features that enable efficient software use. However, the power of the PETSc design and the algorithms it incorporates may make the efficient implementation of many application codes simpler than “rolling them” yourself. ;For many tasks a package such as MATLAB is often the best tool; PETSc is not intended for the classes of problems for which effective MATLAB code can be written. PETSc also has a MATLAB interface, so portions of your code can be written in MATLAB to “try out” the PETSc solvers. The resulting code will not be scalable however because currently MATLAB is inherently not scalable; and PETSc should not be used to attempt to provide a “parallel linear solver” in an otherwise sequential code. Certainly all parts of a previously sequential code need not be parallelized but the matrix generation portion must be parallelized to expect any kind of reasonable performance. Do not expect to generate your matrix sequentially and then “use PETSc” to solve the linear system in parallel. Since PETSc is under continued development, small changes in usage and calling sequences of routines will occur. PETSc is supported; see the web site http://www.mcs.anl.gov/petsc for information on contacting support. A http://www.mcs.anl.gov/petsc/publications may be found a list of publications and web sites that feature work involving PETSc. We welcome any reports of corrections for this document.

97 MATHEMATICS AND COMPUTING↗

A split-step method to include electron–electron collisions via Monte Carlo in multiple rate equation simulations

A split-step numerical method for calculating ultrafast free-electron dynamics in dielectrics is introduced. The two split steps, independently programmed in C++11 and FORTRAN 2003, are interfaced via the presented open source wrapper. The first step solves a deterministic extended multi-rate equation for the ionization, electron–phonon collisions, and single photon absorption by free-carriers. The second step is stochastic and models electron–electron collisions using Monte-Carlo techniques. This combination of deterministic and stochastic approaches is a unique and efficient method of calculating the nonlinear dynamics of 3D materials exposed to high intensity ultrashort pulses. Results from simulations solving the proposed model demonstrate how electron–electron scattering relaxes the non-equilibrium electron distribution on the femtosecond time scale.

71 CLASSICAL AND QUANTUM MECHANICS, GENERAL PHYSIC↗

An Optimization-Based Planning Tool for On-Demand Mobility Service Operations

Regions worldwide are adopting and exploring low-speed automated electric shuttle (AES) service as an on-demand shared mobility service in dense geofenced urban areas. Building on this concept, the National Renewable Energy Laboratory (NREL) recently developed the Automated Mobility District (AMD) toolkit. The AMD toolkit—comprising of a travel micro-simulation model and an energy estimation model—estimates the mobility and energy impacts of a given shuttle configuration within an AMD. Early-stage AMD deployments need to find optimal operational configurations that include: (a) passenger capacity of an AES, (b) time-dependent routes, and (c) fleet size (AES units) to satisfy the demand for the region. This research extends the AMD toolkit functionality by developing an optimization-based planning module that will assist in the operations of AES units. We developed a constrained mixed-integer program accounting for passenger waiting time, battery range, and passenger capacity of AES units. For scalability, we demonstrated the Tabu search-based solution technique for a real-world network—a proposed AMD deployment in Greenville, South Carolina, USA. Compared to rule-based operations, our developed solution yields higher travel time and energy savings for the network at different demand levels. The sensitivity analyses for waiting time thresholds indicate nonlinearity in the system performance, underscoring the need to meet shared-use mobility user-level expectations. The developed optimization framework can be adapted and extended to accommodate different categories of shared-use on-demand mobility services.

ADVANCED PROPULSION SYSTEMS,ENERGY PLANNING, POLIC↗

Additive Manufacturing of Biomechanically Tailored Meshes for Compliant Wearable and Implantable Devices

Abstract Additive manufacturing (AM) of medical devices such as orthopedic implants and hearing aids is highly attractive because of the potential of AM to match the complex form and mechanics of individual human bodies. Externally worn and implantable tissue‐support devices, such as ankle or knee braces, and hernia repair mesh, offer a new opportunity for AM to mimic tissue‐like mechanics and improve both patient outcomes and comfort. Here, it is demonstrated how explicit programming of the toolpath in an extrusion AM process can enable new, flexible mesh materials having digitally tailored mechanical properties and geometry. Meshes are fabricated by extrusion of thermoplastics, optionally with continuous fiber reinforcement, using a continuous toolpath that tailors the elasticity of unit cells of the mesh via incorporation of slack and modulation of filament–filament bonding. It is shown how the tensile mesh mechanics can be engineered to match the nonlinear response of muscle. An ankle brace with directionally specific inversion stiffness arising from embedded mesh is validated, and further concepts for 3D mesh devices are prototyped.

Pattinson, Sebastian W.↗

Method for conducting nonlinear electrochemical impedance spectroscopy

A method for conducting nonlinear electrochemical impedance spectroscopy. The method includes quantifying the nonlinear response of an electrochemical system by measuring higher-order current or voltage harmonics generated by moderate-amplitude sinusoidal current or voltage perturbations. The method involves acquisition of the response signal followed by time apodization and fast Fourier transformation of the data into the frequency domain, where the magnitude and phase of each harmonic signal can be readily quantified. The method can be implemented on a computer as a software program.

25 ENERGY STORAGE↗

Designing Metabolic Division of Labor in Microbial Communities

ABSTRACT Microbes face a trade-off between being metabolically independent and relying on neighboring organisms for the supply of some essential metabolites. This balance of conflicting strategies affects microbial community structure and dynamics, with important implications for microbiome research and synthetic ecology. A “gedanken” (thought) experiment to investigate this trade-off would involve monitoring the rise of mutual dependence as the number of metabolic reactions allowed in an organism is increasingly constrained. The expectation is that below a certain number of reactions, no individual organism would be able to grow in isolation and cross-feeding partnerships and division of labor would emerge. We implemented this idealized experiment using in silico genome-scale models. In particular, we used mixed-integer linear programming to identify trade-off solutions in communities of Escherichia coli strains. The strategies that we found revealed a large space of opportunities in nuanced and nonintuitive metabolic division of labor, including, for example, splitting the tricarboxylic acid (TCA) cycle into two separate halves. The systematic computation of possible solutions in division of labor for 1-, 2-, and 3-strain consortia resulted in a rich and complex landscape. This landscape displayed a nonlinear boundary, indicating that the loss of an intracellular reaction was not necessarily compensated for by a single imported metabolite. Different regions in this landscape were associated with specific solutions and patterns of exchanged metabolites. Our approach also predicts the existence of regions in this landscape where independent bacteria are viable but are outcompeted by cross-feeding pairs, providing a possible incentive for the rise of division of labor. IMPORTANCE Understanding how microbes assemble into communities is a fundamental open issue in biology, relevant to human health, metabolic engineering, and environmental sustainability. A possible mechanism for interactions of microbes is through cross-feeding, i.e., the exchange of small molecules. These metabolic exchanges may allow different microbes to specialize in distinct tasks and evolve division of labor. To systematically explore the space of possible strategies for division of labor, we applied advanced optimization algorithms to computational models of cellular metabolism. Specifically, we searched for communities able to survive under constraints (such as a limited number of reactions) that would not be sustainable by individual species. We found that predicted consortia partition metabolic pathways in ways that would be difficult to identify manually, possibly providing a competitive advantage over individual organisms. In addition to helping understand diversity in natural microbial communities, our approach could assist in the design of synthetic consortia.

59 BASIC BIOLOGICAL SCIENCES↗

PETSc/TAO Users Manual (Rev. 3.19)

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication. PETSc/TAO includes a large suite of parallel linear solvers, nonlinear solvers, time integrators, and opti mization that may be used in application codes written in Fortran, C, C++, and Python (via petsc4py; see Getting Started). PETSc provides many of the mechanisms needed within parallel application codes, such as parallel matrix and vector assembly routines. The library is organized hierarchically, enabling users to employ the level of abstraction that is most appropriate for a particular problem. By using techniques of object-oriented programming, PETSc provides enormous flexibility for users. PETSc is a sophisticated set of software tools; as such, for some users it initially has a much steeper learning curve than packages such as MATLAB or a simple subroutine library. In particular, for individuals without some computer science background, experience programming in C, C++, python, or Fortran and experience using a debugger such as gdb or lldb, it may require a significant amount of time to take full advantage of the features that enable efficient software use. However, the power of the PETSc design and the algorithms it incorporates may make the efficient implementation of many application codes simpler than “rolling them” yourself. For many tasks a package such as MATLAB is often the best tool; PETSc is not intended for the classes of problems for which effective MATLAB code can be written. There are several packages, built on PETSc, that may satisfy your needs without requiring directly using PETSc. We recommend reviewing these packages functionality before starting to code directly with PETSc. PETSc can be used to provide a “MPI parallel linear solver” in an otherwise sequential, or OpenMP parallel code. This approach cannot provide extremely large improvements in the application time by utilizing large numbers of MPI processes but can still improve the performance. Certainly all parts of a previously sequential code need not be parallelized but the matrix generation portion must be parallelized to expect true scalability to large numbers of MPI processes. See PCMPI for details on how to utilize the PETSc MPI linear solver server. Since PETSc is under continued development, small changes in usage and calling sequences of routines will occur. PETSc has been supported for twenty-five years; see mailing list information on our website for information on contacting support.

97 MATHEMATICS AND COMPUTING↗

Regional surrogates for predictive control of digital twins

Digital twins of complex systems must involve a model that is fast, generalizable, and usable for real-time control. For example, high-fidelity nonlinear multiphysics simulations can capture laser-material interactions, but are too slow for optimization or model predictive control (MPC). Reduced-order models, used to accelerate such computation, frequently fail to generalize to unseen inputs or control states. We show theoretically that this failure is intrinsic, i.e., that a learned model is non-unique outside the sampled subspace when its low-rank structure arises from limited excitation and clustered eigenvalues, rather than from a user-imposed truncation alone. Motivated by this result, we propose a control-ready regional surrogate-construction framework for both autonomous and nonautonomous dynamics; it employs Koopman lifting to represent nonlinearities, while preserving spatial locality. We illustrate our approach by constructing a control-ready surrogate for the digital twin of a thermal component of additive-manufacturing process. Our surrogate, localized in space through a von Neumann stencil, is learned from noisy high-fidelity simulations that emulate thermal-camera images collected during the manufacturing. It is linear in thermo-physically augmented states so that MPC reduces to a convex quadratic program. The surrogate requires no online correction, generalizes to unseen scan paths and power profiles of the laser, and is more than three orders of magnitude faster than a finite-difference solver. Furthermore, when the MPC sequence computed on the digital twin is applied to this solver, closed-loop temperature regulation is recovered, showing that the surrogate preserves control-relevant input-output behavior.

Data-driven model↗

Understanding the many-body expansion for large systems. I. Precision considerations

Electronic structure methods based on low-order “n-body” expansions are an increasingly popular means to defeat the highly nonlinear scaling of ab initio quantum chemistry calculations, taking advantage of the inherently distributable nature of the numerous subsystem calculations. Here, we examine how the finite precision of these subsystem calculations manifests in applications to large systems, in this case, a sequence of water clusters ranging in size up to (H{sub 2}O){sub 47}. Using two different computer implementations of the n-body expansion, one fully integrated into a quantum chemistry program and the other written as a separate driver routine for the same program, we examine the reproducibility of total binding energies as a function of cluster size. The combinatorial nature of the n-body expansion amplifies subtle differences between the two implementations, especially for n ⩾ 4, leading to total energies that differ by as much as several kcal/mol between two implementations of what is ostensibly the same method. This behavior can be understood based on a propagation-of-errors analysis applied to a closed-form expression for the n-body expansion, which is derived here for the first time. Discrepancies between the two implementations arise primarily from the Coulomb self-energy correction that is required when electrostatic embedding charges are implemented by means of an external driver program. For reliable results in large systems, our analysis suggests that script- or driver-based implementations should read binary output files from an electronic structure program, in full double precision, or better yet be fully integrated in a way that avoids the need to compute the aforementioned self-energy. Moreover, four-body and higher-order expansions may be too sensitive to numerical thresholds to be of practical use in large systems.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗