Commit Graph

9290 Commits

Author SHA1 Message Date
Árpád Bűrmen 58dfdcec52 icvgs, icvds, icvbs exposed as BSIM4v8 parameters. 2026-02-03 13:55:46 +01:00
Árpád Bűrmen 5a8b176378 Fast version checks in BSIM4. 2026-02-03 13:55:38 +01:00
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 724dc77b91 Prepare bug-fix release ngspice-45.2. 2025-09-05 23:59:35 +02:00
Holger Vogt 82c620304b Fixing bug 804.
Using function get_windows_canonical_path() may neglect the
ngspice file search sequence, as an absolute path is returned also
for relative input paths. ngspice however searches a file not only
relative to the current directory, as inforced by this
function, but for example also in the directory of the previous
input file.

So restrict this function to paths longer than MAX_PATH, which would fail
otherwise.
2025-09-05 23:59:05 +02:00
dwarning 86c78150b7 add KLU bindings for diode selfheating effect, bug #802 2025-08-31 15:16:05 +02:00
Holger Vogt dbb1db8b9d add tlines files to distribution 2025-08-29 23:55:36 +02:00
Holger Vogt d61a1e4090 Prepare for ngspice-45 2025-08-29 15:50:25 +02:00
Holger Vogt 86ea9fee8a Prepare for ngspice-45 2025-08-29 15:01:45 +02:00
Holger Vogt a2b3d7c7d2 Enhance comment. 2025-08-28 12:39:13 +02:00
Holger Vogt 7fc68c0c07 Adding .param SWSOA=1 right after the .lib entry during reading in
the libraries.
2025-08-28 12:39:01 +02:00
Holger Vogt b1f4f32b36 Prevent a segfault if cp_variablesubst return a nullptr.
Fixes bug-801
2025-08-28 12:16:22 +02:00
Holger Vogt 2185f82a28 typo 2025-08-28 12:16:11 +02:00
Holger Vogt bebf7efd8b Command completion is not supported, removed from 'help' 2025-08-28 12:15:55 +02:00
Holger Vogt c45d1e0974 Rename t to tn to avoid t shadowing the t from the function header
void cpmslineAnalyseDispersion (double W, double h, double s,
				   double t, double er, double Zle,
...
2025-08-28 12:15:40 +02:00
Vadim Kuznetsov 94740a3d2b Fixed warnings in cpmlin and mlin 2025-08-28 12:15:25 +02:00
Holger Vogt c5d6d78fc5 Add gcc warning -Wshadow 2025-08-28 12:15:13 +02:00
Brian Taylor 0e50efc1fa Add missing value in the last line.
FIXME: we need to check the input for having adequate columns
2025-08-28 12:14:50 +02:00
Holger Vogt 481e3e567b Update to filesource
Move tprev out of the loop to enable storing the previous time value.
Add some general warning message that an error might have occurred during
reading the time or data values from the data input file.
Allow empty lines in the data input file.
Guard early data values (TIME < time offset) against false reading.
Add some simple examples.
2025-08-11 18:45:21 +02:00
Holger Vogt 6496c5a8db Prepare for ngspice-45 2025-08-10 16:43:25 +02:00
Brian Taylor 179c7504fb Misplaced break statement in callback. 2025-08-08 11:46:33 +02:00
Holger Vogt 21c238276a Another copyright update 2025-08-08 11:46:22 +02:00
Holger Vogt 632b55a90d Update copyright notice 2025-08-08 11:46:13 +02:00
Holger Vogt b7692fbda7 Move CALLBACK into the 'init' section,
to have it called once only.
2025-08-08 11:46:06 +02:00
dwarning 5e21393fbb prevent unused warning 2025-08-08 11:45:49 +02:00
dwarning 7ede33e7c6 git ignore temporary file 2025-08-08 11:45:32 +02:00
Holger Vogt 787a8530be Prevent doubly defined tokens. 2025-08-08 11:45:15 +02:00
Holger Vogt cbf93cf8e0 Add missing CALLBACK 2025-08-08 11:44:51 +02:00
Holger Vogt 5af5f02ad1 Remove unused variable. 2025-08-08 11:44:34 +02:00
Holger Vogt 4ab6be1b90 Keep saving nodes only once, but make an exception for node 'all'.
Fixes bug-799, at least partially (diffpair.cir is running again.).
2025-07-29 11:05:14 +02:00
Holger Vogt 805f14e50b Don't check .params as they will fall through anyway. 2025-07-29 11:05:06 +02:00
Holger Vogt 3d55c16531 Don't print a form feed if 'option nopage' is given.
Print the header really only once  if 'option nopage' is given.
2025-07-29 11:05:00 +02:00
dwarning 68c3fc1031 diode needs both current components (bottom and sidewall) for Vcrit and breakdown voltage calculation 2025-07-29 11:04:51 +02:00
dwarning 05bbb2aaa2 introduce aliases for certain diode breakdown model parameter 2025-07-29 11:04:38 +02:00
Jason Pyeron 178b541fb2 BUGFIX: #797 - gettoks did not protect against NULL pointer input 2025-07-29 11:04:05 +02:00
dwarning a44f7ce87a fix a wrong Release/Debug selection for console build 2025-07-29 11:03:57 +02:00
Brian Taylor 47d7f7aa62 Allocating arrays of double* should use sizeof double* not double, even though they may be the same. Avoid potential divide by zero. 2025-07-29 11:03:28 +02:00
Brian Taylor 416edbbb9a Fix memory leak in xspice oneshot. 2025-07-29 11:03:10 +02:00
dwarning a0c7af575d bsim4 update to version 4.8.3 2025-07-29 11:02:56 +02:00
Holger Vogt c24fc9e9d0 Remove compiler warning. 2025-07-29 11:02:39 +02:00