alto555
aac1952ebe
ckt: dangling-passive topology reduction
...
Add CKTtopologyReduce() (cktsetup.c) to remove degree-1 dangling
capacitors/resistors -- e.g. dead-end opamp compensation caps -- that
otherwise cause spurious 'Timestep too small' aborts. Node degree is
counted generically over all device types; the floating node is pinned
with a unit diagonal. Disable with 'set no_topo_reduce'.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-02 16:49:12 +02:00
Giles Atkinson
5e27a8f6de
Fix file name quoting for .LIB. Reported by Tom Hajar in ngspice-users.
2026-06-30 10:23:59 +01:00
Holger Vogt
64bf572264
Add examples for the IHP Open Source PDK
2026-06-30 09:45:49 +02:00
Brian Taylor
d881158a41
Paranoia_Parallel: a test suite for more than 100 test circuits,
...
running in parallel on a multi-core machine (12 min execution time
on a i9 9900, ngspice compiled with gcc, debug mode enabled.
Linux with Valgrind and Parallel are required.
2026-06-29 17:35:00 +02:00
Giles Atkinson
2988b5db66
Correct three comments.
2026-06-29 14:45:15 +02:00
Giles Atkinson
d56e3abd0e
In a shared library build, the option -fvisibility=hidden may be set
...
when compiling making entry point Cosim_setup inaccessible. The problem
was reported at https://github.com/iic-jku/IIC-OSIC-TOOLS/issues/287 ,
but not reproduced.
2026-06-29 14:45:07 +02:00
Holger Vogt
67fbaa9e6a
Make the name of the added voltage source more verbose
...
(to avoid already existing source names).
2026-06-12 17:38:07 +02:00
Giles Atkinson
1ff2ae384e
Fix Bug #775 - "Missing LDFLAGS in vlnggen", and add an option
...
(-stc c++14) that was needed in testing on Windows.
2026-06-12 17:07:33 +02:00
Giles Atkinson
aca07bbe6d
Feature Request 72 - "Printing hidden errors to terminal" suggests
...
showing errors in XSPICE code model support functions by default.
But errors may occur routinely and be handled by code.
To aid developers, setting variable "noisyxspice" will display the messages.
Also fix an error report in cm_event_queue(), remove XSPICE parse error
messages that are now shown twice and fix errors in d_source that
were seen with the new error reporting.
2026-06-12 17:07:28 +02:00
Giles Atkinson
65b0133591
Add new capabilities to the adc/dac_bridge XSPICE code models.
...
If either bridge has a single analog connection and two or more digital
connections it will act as a conventional multi-bit ADC or DAC.
When the low threshold is higher than the high threshold, adc_bridge
acts as a Schmitt trigger.
2026-06-12 17:07:19 +02:00
Giles Atkinson
34cf37e190
Simplify adc_bridge, also removing excess white space.
2026-06-12 17:07:15 +02:00
Holger Vogt
3db9f132a2
New behavioral capacitor model:
...
- Replace E source by G source with parallel resistor to improve
convergence.
- Add parallel resistor to avoid floating nodes
- Reduce refecrence C to 1u (and thus the max. current).
2026-06-12 16:43:58 +02:00
Holger Vogt
65fb8e245b
Prepare for ngspice-47
2026-06-09 22:38:13 +02:00
Holger Vogt
21907e5bf7
Add error message if scale and data vector lengths do not match
2026-06-09 17:57:39 +02:00
dwarning
3d02373664
DEVpred() of charge node needs state vector update before
2026-06-09 08:08:41 +02:00
Holger Vogt
f395bc49b2
Update the copyright notice
2026-06-08 22:41:46 +02:00
Holger Vogt
461ab8c46a
Replace lengthy call to CKTcircuit by new TSTOP and TSTEP macros
2026-06-07 19:22:40 +02:00
Holger Vogt
007453ef89
Set TSTEP and TSTOP also when MIF_DC, as this is needed
...
when initialising a code model during op before a tran sim.
2026-06-07 19:21:19 +02:00
Holger Vogt
f2805e15fb
Add two macros TSTEP and TSTOP to XSPICE
2026-06-07 14:26:20 +02:00
Holger Vogt
fad198de7b
Improve the error messages when reading a state file.
...
Bail out when the read has not been successfull.
2026-06-06 16:15:24 +02:00
Holger Vogt
58c312f733
Add MODEDCTRANCURVE to enable returning capacitance upon dc sweep.
...
Exclude integration if MODEDCTRANCURVE is active (forward,
self-heat and reverse diode)..
2026-06-06 14:36:06 +02:00
Holger Vogt
2a0a3ab403
Add MODEDCTRANCURVE to enable returning capacitance upon dc sweep.
...
Exclude integration if MODEDCTRANCURVE is active.
2026-06-06 14:34:52 +02:00
Holger Vogt
ae06dfe978
No integration, if dc sweep is to return cpacitances
2026-06-06 14:33:05 +02:00
Holger Vogt
88e94b26c4
Reset ckt->CKTag[0] and ckt->CKTag[1] upon successful return
...
from transient simulation.
2026-06-06 14:28:56 +02:00
Holger Vogt
507351ae01
A digital NAND gate 9-stage ring oscillator (less than 30ms simulation time)
2026-06-06 14:26:25 +02:00
Holger Vogt
b1717822d2
Revert "A digital NAND gate 9-stage ring oscillator (less than 30ms simulation time)"
...
This reverts commit 2ef046704e .
2026-06-06 12:46:43 +02:00
Holger Vogt
2ef046704e
A digital NAND gate 9-stage ring oscillator (less than 30ms simulation time)
2026-06-03 16:40:45 +02:00
Holger Vogt
72620328a1
Excluded integration during self-heating as well.
2026-06-01 19:48:50 +02:00
Holger Vogt
d029ed02db
Diode: No integration if dc sweep, but keep calculating capacitances
2026-06-01 11:02:45 +02:00
Holger Vogt
973b6b6d49
No integration if dc sweep, but keep calculating capacitances
2026-05-31 15:57:26 +02:00
Holger Vogt
e53325583b
Don't check for tperiod, which is not used when the
...
distributed pulse is applied.
2026-05-26 16:02:36 +02:00
Holger Vogt
037b6578f8
gain cell as an example for the declarative small signal noise approach
2026-05-24 09:58:53 +02:00
Holger Vogt
b03f3cc8fe
title update
2026-05-23 15:03:12 +02:00
Holger Vogt
afac24be24
Re-format
2026-05-22 21:20:58 +02:00
Holger Vogt
7b045a99b2
improve comment
2026-05-22 21:16:16 +02:00
Holger Vogt
1ec7f8168f
Make structure equal to dllitf.h
...
Fixes bug 840
2026-05-22 21:15:50 +02:00
Holger Vogt
8b32c743ae
Update to the SEEgenerator as describes in README.SEEgenerator
2026-05-22 17:32:46 +02:00
Brian Taylor
abcbcbd724
Completed and cleaned up memory leak fixes in:
...
inpc_probe.c outitf.c inpcom.c niiter.c
cherry-pick of this one commit should be OK.
2026-05-19 10:50:35 +02:00
Holger Vogt
7911d0870d
Correct paths in example file
2026-05-15 01:00:56 +02:00
Holger Vogt
6b7cde537d
Reset plot list to const plot.
2026-05-11 15:10:21 +02:00
Holger Vogt
3dce275b16
reset time to 0 upon initialisation of shared ngspice
2026-05-11 15:09:32 +02:00
Holger Vogt
95cf8738da
Avoid compiler warning (VS2022)
2026-05-10 16:36:35 +02:00
Holger Vogt
760b12b14e
Enable soundfile support for VS2022/2026 builds.
2026-05-10 16:36:11 +02:00
Holger Vogt
201ae8cac7
Allow building without soundfile libraries.
...
Emit error message if soundfile source is requested.
2026-05-10 16:35:28 +02:00
Giles Atkinson
7cba7ddee0
Allow building without soundfile libraries.
2026-05-10 15:31:58 +02:00
Giles Atkinson
96c81fd58c
Add CPP macros to allow XSPICE macros to be used in local functions.
2026-05-10 15:31:52 +02:00
Giles Atkinson
785be3194c
Fix two bugs in the "let" command:
...
"let plot.vec = ..." fails when creating a new vector;
if the new vector does not exist, "let" may modify a "const" value.
It is likely that existing scripts rely on the second one,
so variable "sanelet" must be set to enable the fix.
2026-05-10 15:31:48 +02:00
Giles Atkinson
954242616d
Filter duplicate entries in sourcepath.
2026-05-10 15:31:44 +02:00
Giles Atkinson
93567da529
Do not report an error when correctly indexing a length-1 vector.
2026-05-10 15:31:40 +02:00
Giles Atkinson
07ca1354eb
Disable output redirection for "let" so that normal comparison
...
operators may be used.
2026-05-10 15:31:30 +02:00