.. -- Mode: rst --
.. -- Mode: rst --
.. |PySpiceUrl| replace:: https://pyspice.fabrice-salvaire.fr
.. |PySpiceHomePage| replace:: PySpice Home Page .. _PySpiceHomePage: https://pyspice.fabrice-salvaire.fr
.. |PySpice@github| replace:: https://github.com/FabriceSalvaire/PySpice
.. |PySpice@pypi| replace:: https://pypi.python.org/pypi/PySpice
.. |PySpice@anaconda| replace:: https://anaconda.org/conda-forge/pyspice
.. |PySpice@fs-anaconda| replace:: https://anaconda.org/fabricesalvaire/pyspice
.. |Anaconda Version| image:: https://anaconda.org/conda-forge/pyspice/badges/version.svg :target: https://anaconda.org/conda-forge/pyspice/badges/version.svg :alt: Anaconda last version
.. |Anaconda Downloads| image:: https://anaconda.org/conda-forge/pyspice/badges/downloads.svg :target: https://anaconda.org/conda-forge/pyspice/badges/downloads.svg :alt: Anaconda donwloads
.. |Pypi Version| image:: https://img.shields.io/pypi/v/PySpice.svg :target: https://pypi.python.org/pypi/PySpice :alt: PySpice last version
.. |Pypi License| image:: https://img.shields.io/pypi/l/PySpice.svg :target: https://pypi.python.org/pypi/PySpice :alt: PySpice license
.. |Pypi Python Version| image:: https://img.shields.io/pypi/pyversions/PySpice.svg :target: https://pypi.python.org/pypi/PySpice :alt: PySpice python version
.. |Tavis CI master| image:: https://travis-ci.com/FabriceSalvaire/PySpice.svg?branch=master :target: https://travis-ci.com/FabriceSalvaire/PySpice :alt: PySpice build status @travis-ci.org .. -- Mode: rst --
.. _CFFI: http://cffi.readthedocs.org/en/latest/ .. _Circuit_macros: http://ece.uwaterloo.ca/~aplevich/Circuit_macros .. _IPython: http://ipython.org .. _Kicad: http://www.kicad-pcb.org .. _Matplotlib: http://matplotlib.org .. _Modelica: http://www.modelica.org .. _Ngspice: http://ngspice.sourceforge.net .. _Numpy: http://www.numpy.org .. _PyPI: https://pypi.python.org/pypi .. _Pyterate: https://github.com/FabriceSalvaire/Pyterate .. _Python: http://python.org .. _Sphinx: http://sphinx-doc.org .. _Tikz: http://www.texample.net/tikz .. _Xyce: https://xyce.sandia.gov
.. |CFFI| replace:: CFFI .. |Circuit_macros| replace:: Circuit_macros .. |IPython| replace:: IPython .. |Kicad| replace:: Kicad .. |Matplotlib| replace:: Matplotlib .. |Modelica| replace:: Modelica .. |Ngspice| replace:: Ngspice .. |Numpy| replace:: Numpy .. |PyPI| replace:: PyPI .. |Pyterate| replace:: Pyterate .. |Python| replace:: Python .. |Sphinx| replace:: Sphinx .. |Tikz| replace:: Tikz .. |Xyce| replace:: Xyce
|Pypi License| |Pypi Python Version|
|Pypi Version|
|Anaconda Version| |Anaconda Downloads|
|Tavis CI master|
Quick Links
Production Branch <https://github.com/FabriceSalvaire/PySpice/tree/master>
_Devel Branch <https://github.com/FabriceSalvaire/PySpice/tree/devel>
_Travis CI <https://travis-ci.com/github/FabriceSalvaire/PySpice>
_pyspice@conda-forge <https://github.com/conda-forge/pyspice-feedstock>
_conda-forge/pyspice <https://anaconda.org/conda-forge/pyspice>
_ngspice@conda-forge <https://github.com/conda-forge/ngspice-feedstock>
_Ngspice <http://ngspice.sourceforge.net>
_Ngspice Bug Tracker <https://sourceforge.net/p/ngspice/bugs>
_Xyce of Sandia National Laboratories <https://xyce.sandia.gov>
_Disclaimer: PySpice is developed on my free time actually, so I could be busy with other tasks and less reactive.
The free Discourse forum was closed some time ago due to a lack of activity.
A HTML backup is stored in the directory pyspice-discourse-backup
.
On Devel HEAD
An issue was found with NgSpice Shared, we must setlocale(LC_NUMERIC, "C");
see https://sourceforge.net/p/ngspice/bugs/490/
PySpice is a Python module which interface |Python| to the |Ngspice| and |Xyce|_ circuit simulators.
The documentation is available on the |PySpiceHomePage|_.
Note: This site is hosted on my own infrastructure, if the site seems done, please create an issue to notify me.
Thanks to Discourse <https://www.discourse.org>
_, PySpice now has a Forum hosted at https://pyspice.discourse.group
Look at the installation <https://pyspice.fabrice-salvaire.fr/releases/latest/installation.html>
_ section in the documentation.
To make it easier to merge your pull request, you should divide your PR into smaller and easier-to-verify units.
Please do not make a pull requests with a lot of modifications which are difficult to check. If I merge pull requests blindly then there is a high risk this software will become a mess quickly for everybody.
Authors: Fabrice Salvaire <http://fabrice-salvaire.fr>
and contributors <https://github.com/FabriceSalvaire/PySpice/blob/master/CONTRIBUTORS.md>
.. -- Mode: rst --
.. no title here
.kicad_sch
schema file and compute the netlist. This module can
be used to perform any kind of processings on a KiCad schema. It is
actually hosted in the source but could become a standalone
project. For PySpice, it provides a very flexible way to draft a
circuit with the help of KiCad and then generate the netlist without
using the netlist export feature of KiCad. And thus leverage the
writing of fastidious cicruit..nodeset
type initial condition #256 (thanks to Fatsie)Netlist.py
: Fix wrong method when joining parameters during netlist parse #245 (thanks to cyber-g)A huge effort, thanks to @stuarteberg Stuart Berg, has been made to make Ngspice and PySpice available on Anaconda (conda-forge) for the Window, OSX and Linux platforms. Thanks to the conda-forge continuous integration platform, we can now run unit tests and the examples on theses platforms automatically. Hope this will make the software more robust and easier to run !
PySpice is now available on Anaconda(conda-forge) as well as a wheel on PyPI
Added a post installation tool to download the Ngspice DLL on Windows and to check the installation. It should now simplify considerably the PySpice installation on Windows.
This tool can also download the examples and the Ngspice PDF manual.
On Linux and OSX, a Ngspice package is now available on Anaconda(conda-forge). Note that theses two platforms do not download a binary from Ngspice since a compiler can easily be installed on theses platforms.
Updated installation documentation for Linux, the main distributions now provide a ngspice shared package.
Added a front-end web site so as to keep older releases documentation available on the web.
fixed and rebuilt all examples (but mistakes could happen ...)
examples are now available as Python files and Jupyter notebooks (but some issues must be fixed, e.g. due to the way Jupyter handles Matplotlib plots)
support NgSpice 32 API (no change)
removed @substitution@ in PySpice/init.py, beacause it breaks pip install from git
fixed some logging spams
fixed NonLinearVoltageSource
fixed Unicode issue with °C (° is Extended ASCII)
fixed ffi_string_utf8 for UnicodeDecodeError
fixed logging formater for OSX (removed ANSI codes)
reworded "Invalid plot name" exception
removed diacritics in example filenames
cir2py has been converted to an entry point so as to work on all platforms
updated Matplotlib subplots in examples
added a unit example
added a NMOS example (thanks to cyber-g) cf. #221
This release is yanked due to broken Windows support.
setlocale(LC_NUMERIC, "C");
cf. #172AC AC_MAG AC_PASAE SIN
for new NgSpice syntaxinitial_state
for VoltageControlledSwitch
LosslessTransmissionLine
#169CoupledInductor
#157check-installation
tool to help to fix broken installation.measure
support (thanks to ceprio) #160log_desk
parameter to CircuitSimulator
listing
command method to NgSpiceShared
Initial support of the |Xyce|_ simulator. Xyce is an open source, SPICE-compatible, high-performance analog circuit simulator, capable of solving extremely large circuit problems developed at Sandia National Laboratories. Xyce will make PySpice suitable for industry and research use.
Fixed OSX support
Splitted G device
Implemented partially A
XSPICE device
Implemented missing transmission line devices
Implemented high level current sources Notice: Some classes were renamed !
Implemented node kwarg e.g. :code:circuit.Q(1, base=1, collector=2, emitter=3, model='npn')
Implemented raw spice pass through (see User FAQ </faq.html>
_)
Implemented access to internal parameters (cf. :code:save @device[parameter]
)
Implemented check for missing ground node
Implemented a way to disable an element and clone netlist
Improved SPICE parser
Improved unit support:
U_μV(U_mV(1))
to easily convert valuesU_mV
, ... shortcutsUnitValues
Notice: this new feature could be buggy !!!WaveForm
to UnitValues
Fixed node order so as to not confuse users Now PySpice matches SPICE order for two ports elements !
Fixed device shortcuts in Netlist
class
Fixed model kwarg for BJT Notice: it must be passed exclusively as kwarg !
Fixed subcircuit nesting
Outsourced documentation generator to |Pyterate|_
Updated setup.py
for wheel
.. :ref:user-faq-page
format
for RST content and Tikz figure.u_mV
or compute the value of :code:1.2@u_kΩ / 2@u_mA
.
The relevant documentation is on this page <api/PySpice/Unit.html>
_.Started project
.. End
.. End