Commit Graph

7777 Commits

Author SHA1 Message Date
dwarning 0937dd4cec Diode soft recovery model based on the idea of A. Buermen with iterated charge node for diffusion charge and model parameter Vp
Few simplifications in AC model and capacitance reporting are made and self heating is not implemented for this model extension.
2026-03-11 17:00:37 +01:00
geraldfournier 1c0bc1d5c9 make fft scaling independent from rounding behaviour for odd data 2026-03-06 16:34:20 +01:00
Holger Vogt 32e0d5f12f Revert "make fft scaling independent from rounding behaviour for odd data"
This reverts commit a31ac54200.
2026-03-06 16:31:29 +01:00
dwarning a31ac54200 make fft scaling independent from rounding behaviour for odd data 2026-03-05 09:30:55 +01:00
dwarning b522bcc6c0 correct Nyquist bin scaling for Green branch 2026-03-03 20:39:08 +01:00
dwarning 5458f15d6b Merge branch 'pre-master-46' of ssh://git.code.sf.net/p/ngspice/ngspice into pre-master-46 2026-03-03 18:33:16 +01:00
dwarning ad44b4ff4c let nyquist bin not empty for odd vector 2026-03-03 18:32:32 +01:00
Holger Vogt 5855c442e1 FM and FC exchange place in the parameter sequence of SFFM voltage
and current source, to become compatible with standard SPICE.
Fixes bug 832.
2026-03-03 16:16:58 +01:00
dwarning a0dc0bb608 Special Nyquist scaling only for even length 2026-03-03 09:55:57 +01:00
dwarning 6ae057b3ea revert commit 5e82b63 2026-03-03 08:54:03 +01:00
Holger Vogt 8639a053a3 Enable linearizing all vectors, when none is given, with or without np statement. 2026-03-02 15:56:11 +01:00
Holger Vogt bfe496937e Add patch for span
to add a time slot.
2026-03-01 18:31:37 +01:00
Holger Vogt ee347262b5 Do not give up when non-existing fft window is chosen,
but issue a message and go on.
2026-03-01 17:04:14 +01:00
Holger Vogt c4fc026af9 Add command 'linearnp np=1024 vec1 vec2'
linearises tran output on given number of time points.
If none is given, 2^n new points are chosen, next to
but smaller than original number of time points.
2026-03-01 17:04:10 +01:00
dwarning d2b1ecbb23 correct fft scaling at Nyquist freq. in fft cmd and vector operation 2026-03-01 16:18:24 +01:00
dwarning 5e82b63f62 adapt FFT point number for real input vectors in fft cmd and vector operation wrt. bug #829 2026-03-01 16:14:04 +01:00
Holger Vogt e53291ad2b Merge branch 'pre-master-46' of ssh://git.code.sf.net/p/ngspice/ngspice into pre-master-46
Aknowledge external merger
2026-02-28 17:27:43 +01:00
Holger Vogt 3103be7eea prepare for binning of N devices 2026-02-27 17:48:23 +01:00
Enrique 04507a637d Added parameter numPeriod so that the user can select the number of fundamental frequency periods used in the detection of the fundamental frequency and its harmonics. This is usefull when trying to recover the fundamental frequency and its harmonics from a noisy signal, like the output of a DCDC converter 2026-02-26 23:12:36 +01:00
Holger Vogt b1f215149e Improve th error message: add the failing option's name. 2026-02-25 14:14:25 +01:00
Holger Vogt cd568e37bc Prevent potential buffer s overflow by limiting the characters written.
Use vsnprintf instead of vsprintf.
2026-02-24 17:02:00 +01:00
Holger Vogt c939f9610a Improve error message, no output of line string if not 'set ngdebug' 2026-02-24 17:00:40 +01:00
Holger Vogt a08110585f Re-enable not setting lower case if commands from spinit or .spiceinit 2026-02-24 14:17:37 +01:00
Holger Vogt 1aa3fa22ff No quoting of potential params when comnpatmode is set to hs. 2026-02-23 16:32:59 +01:00
Holger Vogt 2612104891 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-02-23 16:30:20 +01:00
Holger Vogt f8cecd3e53 Improve error message. 2026-02-23 16:10:17 +01:00
Holger Vogt 359c321dcf Add warning message if E or H poly source has multiplier m 2026-02-23 16:07:00 +01:00
Holger Vogt cf2293c317 Add parameter m (multiplier), while translating from G or F source
to code model spice2poly
2026-02-23 16:06:43 +01:00
Holger Vogt 39a0fe78cd Add a parameter m (output multiplicator)
to spice2poly code model.
2026-02-23 15:57:04 +01:00
Holger Vogt 8e60d4dd0f Special treatment while spiltting multiple .param lines, if .param is a .func 2026-02-23 15:50:24 +01:00
Holger Vogt 3c570744dc Ignore .hdl and .biaswarn commands. 2026-02-23 15:43:52 +01:00
Holger Vogt d297a14ed8 Move comment 2026-02-21 14:30:51 +01:00
Holger Vogt 6c8ab82e9e 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-02-21 14:20:30 +01:00
Holger Vogt 98b84695bf Prepare for instance parameter 'dtemp', required by commercial PDKs.
Not yet support in the model, silently ignored.
2026-02-20 15:18:47 +01:00
Holger Vogt 3d5d2390a2 Prepare for instance parameter 'dtemp', required by commercial PDKs.
Not yet support in the model, silently ignored.
2026-02-20 15:06:30 +01:00
Holger Vogt f885d45e15 Prepare for instance parameter 'dtemp', required by commercial PDKs.
Not yet support in the model, silently ignored.
2026-02-20 14:50:18 +01:00
Holger Vogt 1b81f19557 Prepare BSIM4.7 for instance flag dtemp
FIXME: The dtemp value is not yet linked to the model!
2026-02-20 14:29:20 +01:00
Holger Vogt b51f041b29 Improve error message by adding the sourcing netlist line 2026-02-20 14:25:07 +01:00
Holger Vogt 1877ce88bd Improve error message 2026-02-20 14:19:14 +01:00
Holger Vogt e6de8cd648 Numparam: enable the sign + in expression 'pa*+3'
like already existing 'pa*-3'
2026-02-20 14:16:23 +01:00
Holger Vogt d163db99c7 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-02-07 13:21:54 +01:00
Holger Vogt 5ec437f672 After an ac simulation, a tran measurement causes a segfault.
A check prevents this issue.
2026-02-03 22:40:04 +01:00
Holger Vogt 26c86841df Remove compiler warnings 2026-02-03 15:20:05 +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 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
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