Fixed a bug when tc1 or tc2 are partial strings present in node names.
Fix bug (and docs) for reciproctc.
Several more or less important features are not yet handled:
FIXME: When tc1 is absent, but tc2 is present, a WARNING is issued and tc2 is ignored. Is this the wanted behavior?
FIXME: the parameters temp and dtemp should probably be supported
FIXME: the C/L's IC=init parameter isn't supported yet.
FIXME: the parameters ac, m, noisy, scale are not supported.
FIXME: tc1 and tc2 cannot be expressions (complications with the device line parser).
non-linear R, L, and C devices are not recognized properly
when they are (constant) expressions, and/or using SPICE
number notation, and/or negative.
Removes several compiler warnings for non-initialized
local string buffers and pointers (only related to the above fix).
This patch is based on a partial solution by R. Timothy Edwards.
The sign problem is handled by changing inp_modify_exp() and
needs extensive testing. This fix successfully handles the
example problem of bug ticket #337.
NUPA has an options string ( dico->option that must be set to SPICE-3.
When not, recognized strings are uppercased before being returned.
Facilitated .PARAM to recognize strings in two ways: by sharps #xxx#
and now also by quotes "xxx".
Allow to enter .param strings as .param #word#. The
.param `word` syntax clashes with backtick as used in control sections.
Formula() can now return a string as a special case (when there is
only one string variable in the expression and no operators).
numparm__________xxxxxxxt inserts. With
this, it is now possible to replace not only
the standard {xxxx} with a double, but also
{%xxxx} with an integer and {$xxxx} with
a boolean. Example application: replace
node names with .param equates.
Thus the full ANSI set is now available in ngspice strings.
The setting of Bit 8 was not exploitet anywhere, but did not allow
using the characters from extended ANSI.
When translating an instance_name in a subcircuit instance 'xfoo'
undconditionally express the exception for 'x' instances, which is:
x42 --> xsub.x42
but for all others the first char (the devtype) is prepended
r42 --> r.xsub.r42