[Ktechlab-devel] simulator
P Zoltan
zoltan.padrah at gmail.com
Sun Nov 9 12:49:46 UTC 2008
On Sat, 08 Nov 2008 19:25:41 +0100, Alan Grimes <agrimes at speakeasy.net>
wrote:
> That doesn't apply because in our use case, what we are trying to
> encode, as data are programs, which necessarily need to be interpreted,
> no shame in that.
>
> It is absolutely necessary that the user be able to design components.
> So compiled C++ is out of the question.
>
That's clear.
But I still don't understand why do we need _programs_ describing new
components? Where and when should those program run? (I don't really know
the internal workings of the simulator) Wouldn't be enough to describe the
equations of the part?
> A. Loading circuit save files which contain references to library
> components which may not be available when loaded.
>
A few ideas (brainstorming style):
- create an export option to save the circuit with all the needed
components attached
- ktechlab might try to connect to some 'component repositories' and
search for the needed components there
The components could be identified by their name.
> B. Being able to easily create derived components. IE, specifying that
> "this component is just like that component but here are some specific
> specifications". That way we'd have a model for a darlington pair
> transistor, then when the user finds a datasheet, he can quickly write a
> specific part specification based on the generic library model.
>
I'd solve that parametrisation. (inspired from spice :D) For instance: a
darlington pair with: beta=... parasitic_capacitance_be=... and so on...
>
>> I'm not against the use of XML, but I think that only simple components
>> should be written in XML. Others may be written in C/C++, compiled as
>> .so and loaded at launch time (or later...).
>
What about different CPU architectures? And 32bit vs 64bit? Plus see user
created component argument earlier. I consider binarty, compiled component
a bad idea, because: they would need to be recompiled for each platform
and because a 'normal' user won't have a c++ compiler installed on his
system.
Zoltan
More information about the Ktechlab-devel
mailing list