Commit Graph

11110 Commits

Author SHA1 Message Date
Holger Vogt 71a980f820 Improve detection of the number of terminals for bipolar devices.
Fixes bug no. 807.
2026-02-03 13:55:31 +01:00
Holger Vogt 0648d5e844 Spelling
Found by Lintian, patches provided by C. Schoenert
2026-02-03 13:55:23 +01:00
Brian Taylor 7af862af3d Enable CIDER with KLU for DC, OP, and TRAN analyses. Small signal AC analysis is not yet supported for CIDER complex valued device KLU matrices. The examples/cider testcases produce printed simulation result values which have slight differences between Sparse and KLU. Differences are probably expected and in a few cases are ~1-2%, sometimes a little more. This should be good enough for most CIDER analyses. Francesco did a good piece of work. Runtimes are significantly shorter with KLU. 2026-02-03 13:55:12 +01:00
Holger Vogt 20561d309d Remove files that are remade anyway.
Makefile.in prescribed using aclocal 1.16. The fix removes any
dependency on the autotool version.
Fixing bug 806.
2026-02-03 13:54:58 +01:00
Holger Vogt af28d2416d free(info.errors) leads to a assertion error on the heap.
On Windows it reads:

is_block_type_valid(header->_block_use).

Memory for info.errors is allocated in the osdi device dll
during the call to

      descr->setup_instance((void *)&handle, inst, model, temp,
                            connected_terminals, sim_params, &init_info);

(in fcn OSDIsetup(), line 254 of osdisetup.c).
Therefore ngspice is not the owner of this memory and thus cannot free it.

Fixes bug no. 803.
2026-02-03 13:53:46 +01:00
Holger Vogt 49b35ed3fc We are developing towards ngspice-46 2026-02-03 13:52:36 +01:00
dwarning ce55f05e1b bsim4: unify error printout 2026-02-03 13:46:02 +01:00
dwarning 50bfc214ab bsim4: reimplement mobility and binning extension 2026-02-03 13:45:50 +01:00
dwarning 2c9c2c20c4 reply commit e5c162f1: dc sweep fails after transient sim 2026-02-03 13:45:37 +01:00
dwarning 94b193ad91 prevent warning if NOBYPASS is not defined 2026-02-03 13:45:24 +01:00
dwarning 11ee179639 adapt instance parameter extension to new bsim4 multiplier concept 2026-02-03 13:45:11 +01:00
Holger Vogt 857f826b0a Re-enable compiling with clang
Patch thanks to Gon Solo, issue 826
2026-02-03 13:42:25 +01:00
Holger Vogt 82e563b1b1 New analogue and digital device models from TI contain
the token GND in their subcircuit. Up to now ngspice has
declared GND as global and replaced it by 0.

Now, if PS is selected as compat mode, GND is not
declared as global, and is not replaced inside of a subcircuit.
2026-01-23 19:50:26 +01:00
Holger Vogt 1be27f6ad0 Using mtimeavg 2026-01-20 15:30:28 +01:00
Holger Vogt 14363ba45a Moving window filtering with function 'newvec = mtimeavg(vec)'
Window of fixed time width given by 'set mtimeavgwindow=400u'
Length and scale of newvec resembles the original vetor vec.
Large vec and large mtimeavgwindow take their time.
OpenMP is used if available.
2026-01-20 15:24:52 +01:00
Holger Vogt 75a8037f0c Exclude B voltage source, whan '.probe alli' is used.
It already gets a bxx#branch for current measurement.
2026-01-16 15:43:48 +01:00
dwarning 2813a943a7 Correct vgs assignment - bug found by K. OHara 2026-01-16 08:38:37 +01:00
Holger Vogt 9f08301128 Better graphics 2026-01-13 15:50:03 +01:00
dwarning 660ca46667 remove redundant definition and unused variable 2026-01-09 16:07:38 +01:00
dwarning 56168b4754 Minor change that helps VADistiller. 2026-01-09 12:57:49 +01:00
dwarning e8016ebf63 convert to lower case for spice2 input and remove few warnings 2026-01-08 22:35:52 +01:00
dwarning d239dd1afa rm ngnutmeg from build list of old apps 2026-01-08 22:34:10 +01:00
Holger Vogt e80fc7686b re-enable maling old app ngsconvert
ngnutmeg is still defect
2026-01-07 20:13:48 +01:00
Holger Vogt a630f586d2 enable simulation with 'option newtrunc' 2026-01-07 20:12:35 +01:00
dwarning 4cac271912 more realistic default values for case to ambient thermal resistance and device transconductances 2026-01-03 09:04:40 +01:00
dwarning 00803f7c1f Adapt VDMOS Vth temperature coefficient to usual notation with - for nch and + for pch. 2026-01-02 20:28:45 +01:00
Holger Vogt e9440d99f9 F5 example removed, obsolete or needs to be improved. 2026-01-02 15:27:39 +01:00
Holger Vogt 4c6f75ea85 Update the reference to the manual 2025-12-30 15:13:58 +01:00
Brian Taylor 4f08dc23fb Merge branch 'pre-master-46' into bt_dev 2025-12-28 15:13:15 -08:00
Holger Vogt cd614b2e0f Add the non-nqs PSP103 OSDI model to spinit 2025-12-28 23:30:35 +01:00
Holger Vogt 66dfc915e9 Add a function m3avg(vector) for filtering of trap ringing.
Moving average with D(n) = (C(n-1)/2 + C(n) + C(n+1)/2)/2
2025-12-28 23:19:58 +01:00
Holger Vogt 2b61f66209 Add a note on --enable-predictor and -march=native 2025-12-28 23:17:21 +01:00
Holger Vogt a12bedb835 Make pred available always 2025-12-28 12:47:55 +01:00
Holger Vogt 556fd7ccd2 Add a note on --enable-predictor 2025-12-28 11:09:15 +01:00
Holger Vogt c85f9fe997 Measure transient analysis time. 2025-12-28 11:03:08 +01:00
Holger Vogt 99bddad736 Enable optional voltage based truncation error correction.
This is selectable as 'option newtrunc' (--enable-Predictor is required)

Remove --enable-NEWTRUNC

Add three option parameters (default):
lteTrtol (500), lteReltol (1e-3), lteAbstol (1e-6)

Add new error function for TRAP, similar to GEAR
 (tentative, to be improved), in ckttrun.c

Enable PREDICTOR as default with Visual Studio.
2025-12-27 22:46:27 +01:00
Holger Vogt ebde8f43f1 Fix tiny bug. 2025-12-27 22:46:16 +01:00
Brian Taylor d0501da241 Add function to verify that subckt port directions are compatible with auto bridging. Use set ps_ports_and_pins=1 to see the port directions. 2025-12-27 22:40:59 +01:00
Brian Taylor af6e9aaffa Add function to verify that subckt port directions are compatible with auto bridging. Use set ps_ports_and_pins=1 to see the port directions. 2025-12-25 10:20:20 -08:00
Brian Taylor 5dd6059e83 Merge branch 'pre-master-46' into bt_dev 2025-12-25 04:52:44 -08:00
lorenzo a984a43b61 Fixes a memory corruption bug resulting from improper parsing
and accessing of array parameters in OSDI models
2025-12-20 11:31:24 +01:00
dwarning d610fa070a Diode sensitivity analysis: Exclude few parameters and add level 3 geometry parameter. 2025-12-19 18:20:25 +01:00
dwarning ee6cd951cd Fix the overlap in state vector for sensitivity states of diode and bjt model. 2025-12-19 17:03:08 +01:00
dwarning e1afc5cf09 KLU bindings for separate sw diode only if sw resistor is given 2025-12-19 14:07:47 +01:00
Holger Vogt 9fef242c50 Update comment to cktnumstates 2025-12-19 12:56:11 +01:00
Holger Vogt 29f27c1e4c Update test description 2025-12-19 12:55:35 +01:00
Brian Taylor e29452bdab Merge branch 'pre-master-46' into bt_dev 2025-12-14 13:57:30 -08:00
dwarning 4f9fb4c641 Diode model level=2 (Fowler-Nordheim) is not supported. 2025-12-11 10:43:07 +01:00
Holger Vogt 83e2b284f3 Add missing function prototypes 2025-12-03 23:03:42 +01:00
dwarning c1acc44a55 This fixed #822 diode discontinuity problem
Base recombination current appears in reverse and breakdown region too.
2025-12-02 20:35:43 +01:00