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
Holger Vogt
0be7461dd9
Enable power measurement for W switch
2022-08-29 20:30:23 +02:00
Holger Vogt
c70a438ae0
Replace end-of-line comment delimiter $ by ;
...
So to make it independent from compatibility switch selection.
2022-08-29 14:19:47 +02:00
Holger Vogt
b83a0d3fdf
Allow individual current measurements in switches or
...
linear dependent sources.
2022-08-29 14:12:43 +02:00
Holger Vogt
6b786099cb
examples for .probe alli or .probe i(xx)
2022-08-29 14:11:20 +02:00
Holger Vogt
655a81da7a
.probe alli improved:
...
* Enable current mesurement for I source
* Look at only the first 2 nodes of S and W switches
and F and G controlled current sources, measure current
with = voltage source added to second node. So we get
I(Fx), I(Gx), I(Sx), and I(Wx).
2022-08-29 12:23:13 +02:00
Holger Vogt
ef3adfc050
set colors for grids and data
2022-08-28 17:52:55 +02:00
Giles Atkinson
682b849603
Make FROM/TO work in TRIG/TARG and WHEN variants of .meas/meas command.
...
Discussion at
https://sourceforge.net/p/ngspice/discussion/133842/thread/973e152274/
2022-08-17 15:30:56 +02:00
Holger Vogt
cc866ead29
Check for tran at first when linearize is called.
2022-08-17 15:14:06 +02:00
Brian Taylor
a361d63ca1
Make a trivial change to support (n)and3a, (n)or3a, (n)xor3a types. These are not used in any of the Micro Cap libraries. Completes support for Pspice tristate gate types.
2022-08-06 10:43:17 +02:00
Brian Taylor
f0876163e8
If variable ps_port_directions >= 2, also show the translated Xspice statements.
2022-08-06 10:43:02 +02:00
Brian Taylor
0e0daa7d9a
Add 74xx283 4-bit adder example from the Micro Cap digital example circuits. Pspice primitives are translated to Xspice and a waveform is displayed using GTKWave. This is a digital-only test.
2022-08-06 10:42:56 +02:00
Brian Taylor
47753ad5b2
Ignore IO models in a subckt. Setting variable ps_port_directions to a non-zero int prints the directions (IN, OUT, INOUT) of subckt ports.
2022-08-06 10:42:50 +02:00
Brian Taylor
15d987ad0f
Check for name collisions between nodes generated during translation from Pspice to Xspice and instance pin or subckt port names. These are reported as ERRRORs.
2022-08-06 10:42:43 +02:00
Holger Vogt
03bd381e83
aswitch needs two input nodes because gd has been selected for input.
2022-08-05 17:30:51 +02:00
Holger Vogt
3fc3997cef
Handle the case when control voltages on and off are equal.
...
Update the linear switch: add the limits to resistance ron, roff
Update the log switch: correct the resistance calculation for
von < voff
Add some examples for the pswitch.
2022-08-05 17:30:08 +02:00
Holger Vogt
874aca4a86
Avoid an endless loop: Safeguard function
...
search_plain_identifier(char *str, const char *identifier)
against identifiers being an empty string.
2022-08-01 18:30:50 +02:00
Holger Vogt
227bb9c419
If a node name to be plotted ends by ':power', its type is set to POWER.
...
Thus 'settype power nodename(s)' in the examples is no longer necessary.
2022-07-31 15:49:50 +02:00