Commit Graph

9294 Commits

Author SHA1 Message Date
Árpád Bűrmen c6a6bd9edb Scaling of NQS charge deficit with mult_q. 2025-09-15 12:04:44 +02:00
Árpád Bűrmen 06b73b4056 ceqqjd, ceqqjs should be scaled with mult_q.
This fixes erratic simulation behavior when
mult_i != mult_q.
2025-09-15 10:30:18 +02:00
Árpád Bűrmen 535e22a502 Fixed a bug causing mult_* factors to get scaled at each setup(). 2025-09-15 10:23:11 +02:00
Árpád Bűrmen 740670805e Check if toxp+dtox!=toxe with double precision tolerance. 2025-09-12 10:10:48 +02:00
Árpád Bűrmen e4aa062156 icvgs, icvds, icvbs exposed as BSIM4v8 parameters. 2025-09-12 10:04:52 +02:00
Árpád Bűrmen 5900f70438 Fast version checks in BSIM4. 2025-09-12 10:04:29 +02:00
Brian Taylor 57dd3342ef 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. 2025-09-08 23:33:41 +02:00
Holger Vogt 0a739f6b76 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.
2025-09-07 18:49:22 +02:00
Holger Vogt 434863651e Updated as it is on master 2025-09-07 18:46:21 +02:00
Holger Vogt aa3ab5bc25 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-06 17:47:21 +02:00
Holger Vogt 4693173d37 Revert "Fix a bug in the Windows Builds:"
This reverts commit ecb288138f.
2025-09-06 17:46:50 +02:00
Holger Vogt a754cc187b 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.
2025-09-04 00:25:26 +02:00
Holger Vogt ecb288138f Fix a bug in the Windows Builds:
With commit
80d6e681f ("MS Windows: Get a canonical paths name: Important if path length exceeds MAX_PATH, might happen when using  PDKs", 2025-04-12)
the newly introduced function get_windows_canonical_path() does not do the
right thing when the path name is only a simple file name. Then internally
used function GetFullPathNameW() then will prepend the current directory to the
file name, which may be simply wrong.
2025-09-04 00:03:25 +02:00
Holger Vogt 0e8cc00070 We are developing towards ngspice-46 2025-09-02 17:07:07 +02:00
dwarning b19f5ca4c3 bsim4: unify error printout 2025-09-02 11:40:11 +02:00
dwarning ecac7a07a2 bsim4: reimplement mobility and binning extension 2025-09-02 11:15:38 +02:00
dwarning 82bf2169b1 reply commit e5c162f1: dc sweep fails after transient sim 2025-09-02 10:10:33 +02:00
dwarning a97dcda62b prevent warning if NOBYPASS is not defined 2025-09-02 09:50:20 +02:00
dwarning 32c50aa254 adapt instance parameter extension to new bsim4 multiplier concept 2025-09-02 09:44:16 +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