> I think what's really missing is a high-level architectural documentation > of the source code. It's hard to decide what and how to refactor, without > having such documentation. There may happen that we only reimplement a > design, without improving it. I think I will start sketching something > soon.
I probably have the most experience with the source at this point, I'll help with what I can. The system is tightly bound to QT3's Document Object Model, which is what it uses to keep track of it's components in a "circuit document". I hardly know anything about QT so I don't know how big an issue this will be. I do want to re-engineer the component model such that there are only a handful of built-in "ideal" components, everything else being handled by a database of XML files (or something). The most major change I want to make to the simulation engine is do a better job of implementing grounding, and allow there to be multiple common busses as well as an "earth" ground. Another improvement would be to allow circuits to exist on separate pages so the user can specify any interconnections between the ground planes... This is useful in mixed signal circuits where it is sometimes the case where there is a "digital ground" and an "analog ground" in order to provide the cleanest possible electrical environment for the analog part. Also in switchmode power supplies, common is referenced to the rectifier instead of earth... One of the most glaring deficiencies in the component library are transformers. The reason they aren't implemented is because they need to support a hundred and one different primary and secondary configurations. Right now reactive components are handled outside of the man simulator. I think it might be possible to extend the main engine by allowing reactive components to store their reactive charge in the main matrix. If I'm not totally off the mark, this should drastically simplify many parts of the simulator. Nonlinear components would still need to be a special case. (currently reactive components are handled in an iterative manner outside the main loop.) I also want to implement triodes and pentodes. :) -- FAKE candidates; RIGGED machines; Don't vote. Remember, if there aren't any anti-war candidates, it's not an election. Chemistry.com: A total rip-off. Powers are not rights. ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Ktechlab-devel mailing list Ktechlab-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ktechlab-devel