Commit Graph

9411 Commits

Author SHA1 Message Date
Holger Vogt e613d5b8db Improve error message, no output of line string if not 'set ngdebug' 2026-03-20 10:38:51 +01:00
Holger Vogt 603089b29f Re-enable not setting lower case if commands from spinit or .spiceinit 2026-03-20 10:38:21 +01:00
Holger Vogt a165ab5c28 Allow Cd as a valid C reference designator for a capacitor,
i.e. lower-casing of node names,
by re-organizing the setting of lower cases in the netlist:
No lower-casing for cd only while in a .control section.
2026-03-20 10:37:42 +01:00
Holger Vogt 24008efc83 Improve error message. 2026-03-20 10:37:10 +01:00
Holger Vogt a92eea2dfb Add warning message if E or H poly source has multiplier m 2026-03-20 10:36:47 +01:00
Holger Vogt 48a37be31c Add parameter m (multiplier), while translating from G or F source
to code model spice2poly
2026-03-20 10:36:32 +01:00
Holger Vogt 5b39c73205 Add a parameter m (output multiplicator)
to spice2poly code model.
2026-03-20 10:36:00 +01:00
Holger Vogt d13cd984f4 Special treatment while spiltting multiple .param lines, if .param is a .func 2026-03-20 10:35:32 +01:00
Holger Vogt 7474cd70d0 Ignore .hdl and .biaswarn commands. 2026-03-20 10:34:45 +01:00
Holger Vogt dd2a5fd062 Move comment 2026-03-20 10:34:24 +01:00
Holger Vogt 7159d6aa4b V Pulse delivers erratic outputs, when not parameterized properly.
Update the pulse generation: negative TR, TF, PW, PER not possible,
get default values instead. 0 PW is allowed.

Defaults are:
TR negative or 0 --> TR = ckt->CKTstep
TF negative or 0 --> TF = ckt->CKTstep
PW < 0 --> PW = 0
PER <= 0 --> PER = TR + TF + PW */
2026-03-20 10:33:54 +01:00
Holger Vogt 527cc86969 Prepare for instance parameter 'dtemp', required by commercial PDKs.
Not yet support in the model, silently ignored.
2026-03-20 10:33:20 +01:00
Holger Vogt 96df01db06 Prepare for instance parameter 'dtemp', required by commercial PDKs.
Not yet support in the model, silently ignored.
2026-03-20 10:33:08 +01:00
Holger Vogt f8a4195e8e Prepare for instance parameter 'dtemp', required by commercial PDKs.
Not yet support in the model, silently ignored.
2026-03-20 10:32:54 +01:00
Holger Vogt 51e46d5e00 Prepare BSIM4.7 for instance flag dtemp
FIXME: The dtemp value is not yet linked to the model!
2026-03-20 10:32:46 +01:00
Holger Vogt 84f87aeafd Improve error message by adding the sourcing netlist line 2026-03-20 10:31:34 +01:00
Holger Vogt 3fcfc4b989 Improve error message 2026-03-20 10:30:01 +01:00
Holger Vogt e3bb6afb5d Add ifspec.ifs to MS Visual C project 2026-03-20 10:28:59 +01:00
Holger Vogt 81d3812db0 Add a user-settable variable measureprec to set the number of digits
when printing the measure outputs.
Internally this is a global variable measure_precision.
Enable all measure commands to recognize measure_precision when
printing an output.
Default value is 5 (yielding 6 digits after .?).
2026-03-20 10:28:28 +01:00
Holger Vogt 9ac5bda207 After an ac simulation, a tran measurement causes a segfault.
A check prevents this issue.
2026-02-03 22:38:56 +01:00
Holger Vogt 417c52ee5c Remove compiler warnings 2026-02-03 15:05:24 +01:00
Holger Vogt ab87bd57a4 Re-enable compiling with clang
Patch thanks to Gon Solo, issue 826
2026-02-03 14:25:18 +01:00
Holger Vogt afb17cb6c7 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-02-03 14:25:09 +01:00
Holger Vogt ab03cc94c0 Using mtimeavg 2026-02-03 14:23:41 +01:00
Holger Vogt b25ff08307 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-02-03 14:23:32 +01:00
Holger Vogt 84ce2b4084 Exclude B voltage source, whan '.probe alli' is used.
It already gets a bxx#branch for current measurement.
2026-02-03 14:23:22 +01:00
dwarning 1601571432 Correct vgs assignment - bug found by K. OHara 2026-02-03 14:23:14 +01:00
Holger Vogt 86ca3948eb Better graphics 2026-02-03 14:23:07 +01:00
dwarning 23eafe9978 remove redundant definition and unused variable 2026-02-03 14:22:57 +01:00
dwarning 81894e0c52 Minor change that helps VADistiller. 2026-02-03 14:22:48 +01:00
dwarning 06aa4989a6 convert to lower case for spice2 input and remove few warnings 2026-02-03 14:22:37 +01:00
dwarning 48438ba736 rm ngnutmeg from build list of old apps 2026-02-03 14:22:29 +01:00
Holger Vogt cd6ca5e86a re-enable maling old app ngsconvert
ngnutmeg is still defect
2026-02-03 14:22:21 +01:00
Holger Vogt 4fd68ba901 enable simulation with 'option newtrunc' 2026-02-03 14:22:12 +01:00
dwarning 1841709eab more realistic default values for case to ambient thermal resistance and device transconductances 2026-02-03 14:22:02 +01:00
dwarning d3b0dc1b31 Adapt VDMOS Vth temperature coefficient to usual notation with - for nch and + for pch. 2026-02-03 14:21:50 +01:00
Holger Vogt 343319a1ed F5 example removed, obsolete or needs to be improved. 2026-02-03 14:21:38 +01:00
Holger Vogt 2e5772e35e Add the non-nqs PSP103 OSDI model to spinit 2026-02-03 14:21:24 +01:00
Holger Vogt c12ad7ba27 Update the reference to the manual 2026-02-03 14:20:19 +01:00
Holger Vogt 8737839f41 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
2026-02-03 14:20:08 +01:00
Holger Vogt 6ff339ee9c Add a note on --enable-predictor and -march=native 2026-02-03 14:19:53 +01:00
Holger Vogt 8d21c8e79b Make pred available always 2026-02-03 14:19:42 +01:00
Holger Vogt c51dcb67a3 Add a note on --enable-predictor 2026-02-03 14:19:14 +01:00
Holger Vogt f6fc256569 Measure transient analysis time. 2026-02-03 14:19:06 +01:00
Holger Vogt fe55cbe69f 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.
2026-02-03 14:18:55 +01:00
Holger Vogt ab49ea9657 Fix tiny bug. 2026-02-03 14:18:29 +01:00
Brian Taylor 50c4272544 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. 2026-02-03 14:18:17 +01:00
lorenzo 66797fdebc Fixes a memory corruption bug resulting from improper parsing
and accessing of array parameters in OSDI models
2026-02-03 14:17:59 +01:00
dwarning 89a25ac6c1 Diode sensitivity analysis: Exclude few parameters and add level 3 geometry parameter. 2026-02-03 14:17:42 +01:00
dwarning f2ef953246 Fix the overlap in state vector for sensitivity states of diode and bjt model. 2026-02-03 14:17:16 +01:00