Skip to content
/ Xyce Public

The Xyce™ Parallel Electronic Simulator

License

Notifications You must be signed in to change notification settings

xiongyw/Xyce

Repository files navigation

The Xyce™ Parallel Electronic Simulator

Xyce

About Xyce

Xyce (zīs, rhymes with "spice") is an open source, SPICE-compatible, high-performance analog circuit simulator, capable of solving extremely large circuit problems by supporting large-scale parallel computing platforms. It also supports serial execution on all common desktop platforms, and small-scale parallel runs on Unix-like systems. In addition to analog electronic simulation, Xyce has also been used to investigate more general network systems, such as neural networks and power grids. In providing an Open Source version of Xyce to the external community, Sandia hopes to contribute a robust and modern electronic simulator to users and researchers in the field.

While designed to be SPICE-compatible, Xyce is not a derivative of SPICE. Xyce was designed from scratch to be a parallel simulation code, written in C++ and using a message-passing implementation (MPI). Xyce also leverages Sandia's open-source solver library, Trilinos, which includes a number of circuit-specific solvers, such as the KLU direct solver. With its modular and flexible design, Xyce applies abstract interfaces to enable easy development of different analysis types, solvers and models.

Xyce is compatible with SPICE-based codes, in that it supports a canonical set of SPICE compact models and standard SPICE analysis methods, such as steady-state (.DC), transient (.TRAN), small-signal frequency domain (.AC), and noise (.NOISE). However, Xyce goes beyond most SPICE-based codes in a number of ways, including support for a large number of non-traditional models, such as neuron and reaction network models. Xyce also supports Harmonic Balance analysis (.HB), random sampling analysis, sensitivity calculations, and post processing of the simulation metrics (.FOUR and .MEASURE).

Binaries, building and more

For more information about Xyce—including documentation, build instructions and binary executables—see the Xyce Homepage at Sandia National Laboratories.

Support

Do not file an issue to ask a use question. Support for Open Source Community users is available at our Google Groups web forum, which is actively monitored by the Xyce developers. Other ways to contact the Xyce project can be found on the Xyce Homepage. See the "CONTRIBUTING" document for more information.

Copyright and license

Copyright 2019 National Technology & Engineering Solutions of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with NTESS, the U.S. Government retains certain rights in this software.

Xyce™ is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Xyce™ is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

A copy of the GNU General Public License is included in the COPYING file, or see http://www.gnu.org/licenses/.

Acknowledgements

Xyce has been funded by the NNSA's Advanced Simulation and Computing (ASC) Campaign, the DARPA POSH program, and the Laboratory Directed Research and Development program at Sandia National Laboratories. 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.

SAND2019-5105 O