Commit Graph

7977 Commits

Author SHA1 Message Date
Giles Atkinson eb353ee2f7 Fix XSPICE's node prefix '~' when PSPICE compatability is used. 2022-10-12 20:52:15 +02:00
Holger Vogt cb1adc4a4e Short description of the ngspice code organization. 2022-10-12 17:22:28 +02:00
Holger Vogt 0ac52967dd Fix typo 2022-10-12 12:52:43 +02:00
Holger Vogt b2c4c4dac1 Test for doxygen documentation 2022-10-12 12:52:09 +02:00
Holger Vogt 540cda52ad If compatmode is lt, change the pow(x,y) and x**y functions:
If x < 0, output only if y is integer number, otherwise output 0
2022-10-12 12:26:12 +02:00
Holger Vogt d24b405bfb Add some comment 2022-10-12 12:23:36 +02:00
Brian Taylor ff58fbbe56 Remove VisualC compile warnings. 2022-10-09 10:15:14 +02:00
Holger Vogt 317e5a3d99 Search for .spiceinit (or spice.rc) firstly in a user defined directory,
when the directory path is set in the environmental variable
SPICE_USERINIT_DIR.
If not found then search in the current directory, then in HOME, then
in USERPROFILE.
2022-10-09 10:11:23 +02:00
Holger Vogt dcb3bf0f8b Prevent Visual Studio compiler warnings 2022-10-08 17:20:48 +02:00
Giles Atkinson 8775376723 Fix a crash that sometimes occurs on Linux when interrupting from
the terminal a simulation that was started directly from the command
line.  A gdb backtrace showed rl_cleanup_after_signal() calling
fwrite() with a NULL file pointer.
2022-10-08 16:55:53 +02:00
Holger Vogt 69bb426cdb send error message to stderr, not to stdout 2022-10-07 11:24:04 +02:00
Holger Vogt a741ccf4e1 Streamline the simple diode model. 2022-09-29 16:28:16 +02:00
Holger Vogt dc8c7db718 Fix a bug in simple diode, when ilimit is set, but not epsilon.
Make model more similar to LTSPICE
Add an example
2022-09-29 16:14:25 +02:00
Holger Vogt 8d86aa84d8 Remove parameter noiseless in simple diode model.
The model is noiseless anyway.
2022-09-29 16:05:30 +02:00
Brian Taylor 21f62db206 Remove unnecessary hierarchical level check. 2022-09-24 11:57:18 +02:00
Brian Taylor 41b7c867ff Fix memory leaks in ff/latch code. 2022-09-23 14:59:17 +02:00
Brian Taylor 93bd661a3e If ps_udevice_msgs >= 2, print complete line of unsupported PSpice instance. For debugging purposes. 2022-09-23 14:59:01 +02:00
Holger Vogt d1f7df5ef4 Add bidirectional bridge to MS project file for icm digital 2022-09-23 14:52:31 +02:00
Giles Atkinson 583ee06232 Fix bug reported by Anant Devi in user discussion 22/9/22.
A function call, vi(v) was misparsed as the special token i(vsource)
for the current in a voltage source.
2022-09-23 13:15:07 +02:00
Giles Atkinson c75476eaa0 Add some automatic bridge examples, mostly using the bidirectional bridge. 2022-09-23 13:15:07 +02:00
Giles Atkinson 31fcd7d561 Correct the digital state resolution table, that was previously asymmetric.
An equivalent change is mentioned in the SPICE OPUS change history.
2022-09-23 13:15:07 +02:00
Giles Atkinson af09a06cdb Add bidirectional digital/analog bridge. 2022-09-23 13:15:07 +02:00
Giles Atkinson 118b997642 Add two functions to the Code Model Library: cm_get_node_name()
makes circuit node names available to diagnostics, while
cm_probe_node() is needed for a bidirectional A/D bridge.
2022-09-23 13:15:07 +02:00
Giles Atkinson 9d780f8bb4 Fix bug #602 "Warning message trying to linearize a transient analysis vector"
by changing the way "ngspice -a" (autorun option) works.  The inserted code
now checks whether a simulation has already run by examining $curplot
before forcing "run".  Also at most one simulation is forced to run.
2022-09-23 13:15:07 +02:00
Giles Atkinson 2f9403d143 Prevent overwriting of previous debug output when expanding auto-bridge deck. 2022-09-23 13:15:07 +02:00
Giles Atkinson 8156745c97 Rewrite code with Visual Studio complaints. 2022-09-23 13:15:06 +02:00
Holger Vogt 2d4c1379af Transfer i(xx) to xxx#branch only when i is the first
character of the token or preceeded by a space.
2022-09-23 12:58:47 +02:00
Holger Vogt c7b0438ce7 Just to notify that this might need a better solution 2022-09-23 12:04:20 +02:00
Holger Vogt 41e92be956 FIXME: This is a hack to re-enable 'make check'
Do not print warning if in batch mode.
2022-09-21 10:04:22 +02:00
Holger Vogt cfba8a5cd3 Note: ix: dc value used for op instead of transient time=0 value
Former warning message or note only issued when dc value and
value at transient time=0 differ.
2022-09-20 22:50:17 +02:00
Holger Vogt bce48859df Note: vs: dc value used for op instead of transient time=0 value
Former warning message or note only issued when dc value and
value at transient time=0 differ.
2022-09-20 22:47:24 +02:00
Holger Vogt ba394d5903 Warning message, when 'run' is called without job
(tran, op, ac etc.) is defined.
2022-09-20 20:09:42 +02:00
Holger Vogt 6237639ec5 Change error messages to warning messages, because simulator moves on
and command is ignored.
Make messages more verbose (which command?).
2022-09-20 13:28:55 +02:00
Holger Vogt 64b429d6f8 Don't send error message to stdout, but to stderr. 2022-09-18 16:00:21 +02:00
Holger Vogt 453350bf2f safeguard against circuit not being abvailable,
avoid crash
2022-09-18 11:11:56 +02:00
Holger Vogt 8dba70c7cc add parameter description 2022-09-18 11:10:59 +02:00
Brian Taylor 78f732a8a1 Add comment about ps_udevice_msgs variable. Set to 1 will print PSpice instance names and types which are not supported and are found when processing a subckt. 2022-09-14 15:01:39 +02:00
Holger Vogt fb75a15e83 example for pwlts source code model 2022-09-09 15:26:45 +02:00
Holger Vogt 3d625bc1ef pwlts: a pwl v/i source with time input, smoothing and limiting functions 2022-09-09 15:24:37 +02:00
Holger Vogt f5a172ce4e Make the Error message a Warning message,
because ngspice may move on
2022-09-07 16:27:29 +02:00
Holger Vogt 8ef0c03fa6 Prevent a crash if (due to input error) the node_table is not available. 2022-09-04 17:35:47 +02:00
Holger Vogt c7fa70d109 Add special savecurrents options:
options savecurrents_bsim3, savecurrents_bsim4, and savecurrents_mos1
will save all device currents as listed in chapts 31.6.1, .8 and .9
of the ngspice manual. Pure savecurrents will yield a subset of MOS1
currents, as seen before.
2022-09-02 15:06:40 +02:00
Holger Vogt e9fcb9b332 Prevent crash in gettok() and similar functions by checking for NULL
input. Return NULL instead.
2022-09-01 16:57:54 +02:00
Holger Vogt 04ded78ef6 Prevent crashes when nodes or tables are not available,
e.g. due to missing input file.
2022-08-31 15:43:20 +02:00
Holger Vogt bfab06e04b Improved error message: more info on the bad set form 2022-08-31 15:42:30 +02:00
Holger Vogt 48d028fdba enable evtcheck_nodes.c for MS Visual Studio 2022-08-31 15:34:13 +02:00
Giles Atkinson 3901c0a865 Remove search for "family" parameters on subcircuits in XSPICE
automatic bridging support as string-valued parameter support is
not yet intgrated.
2022-08-31 15:34:09 +02:00
Giles Atkinson 495172f532 Latest auto-bridge code from development branch. 2022-08-31 15:34:04 +02:00
Giles Atkinson 148cecf919 Insert XSPICE bridging devices automatically when an analogue node
has the same name as an XSPICE event node (including digital nodes).
The function Evtcheck_nodes() is replaced by a new version in its
own file.
2022-08-31 15:33:59 +02:00
Holger Vogt ff62468c1f Iterations for op or dc may start with arguments 0 for ln().
To cope with this, and potential overflow in exp function,
some limits have been added.
2022-08-30 20:02:46 +02:00