Electronic Circuit Simulator

closed account (oz10RXSz)
I'm going to create an electronic circuit simulator. What books/papers/algorithms do you recommend?
Last edited on
First question
Do you know anything about electronics??
closed account (oz10RXSz)
Yes. Otherwise I would not like to write a simulator. ;)
Nevertheless, to write a simulator engine, you do not need to have a deep knowledge of electronics. Maths is much more important. Do you know any good books on the topic e.g. on solving stiff differential equations?
Last edited on
Just checking - we do get all sorts.

solving stiff differential equations?
Oh God, I did that way back in 1981 era, and it was only at beginners level really - certainly not at a 'stiff' level


Try amazon.com

closed account (z05DSL3A)
I would read around SPICE (Simulation Program with Integrated Circuit Emphasis). That should give you a good idea about the data structures and algorithms needed.

There are links to versions with code on wikipedia.
http://en.wikipedia.org/wiki/SPICE
closed account (oz10RXSz)
OMG, they use linked lists to implement sparse matrices. This must be dead slow (especially the allocation by malloc required for each of the elements). And hardcoded equations of derivatives for Jacobian computation (there were bugs in these equations in SPICE2 according to one of the linked articles). WTF did they not let the program compute them symbolically? And lots of gotos and global variables everywhere. This is ridiculous.

Don't you have any links to some simulators that were written by someone who actually could program?


Last edited on
closed account (z05DSL3A)
I fear, from your posting history, that you would not be happy with any suggestions to this.
@xoreaxeax
I beleive your question was not intended for a C++ forum. As you dont see any future in the language perhaps.... Why dont you use ASP.NET instead, it will give you a better GUI...

As for your question, http://lmgtfy.com/?q=electronic+circuit+simulator+books+papers+algorithms
A suggested forum http://www.edaboard.com/
closed account (oz10RXSz)
If it was so simple to find in a Google, I would do it. But it returns lots of irrelevant papers.
Actually the links from wikipedia are the most valuable ones, so thank you Grey Wolf.
I'm not planning to write it in C++, but I expected to find some good simulators written in C or C++ just to get some more inspiration, so that is why I posted it here. Maybe someone already played with that and wants to share his/her experience. If SPICE3 is the state-of-the-art thing, then it should be easy to create a much better one in a modern language.
Topic archived. No new replies allowed.