Brian Taylor
14bf034f28
The lexer incorrectly treats a single '_' '-' '/' as an identifier. The counter used for tmp__ names should be incremented after use. The infix_to_postfix converter now has more checks for invalid infix expressions in LOGICEXP constructs. Without these checks the evaluation of the generated postfix could silently create bad gates which would load but simulate incorrectly. All MicroCap and PSpice libraries and QEI.cir pass their tests.
2 years ago
Brian Taylor
ae8e423d97
Add WARNINGs when there are potential name collisions, and identify the possible name.
2 years ago
Holger Vogt
adb38ecb17
Upon error, bail out when strict_error is set.
2 years ago
dwarning
2dab26212a
introduce diode breakdown voltage parameter alias vb
2 years ago
Holger Vogt
f5c0a1420c
Upon a warning on a model issue, ngspice should not bail out,
even if strict_error is set, as typically the simulation will
run and foreign models often have additional unsupported, but
less important parameters.
It shall however, exit if the simulation is interrupted due
to an error and strict_errorhandling is set.
2 years ago
Holger Vogt
da51e1bddf
Don't use printf(".."), but fprintf(stdout, "..."),
thus send an end-of-line also when redirected to file.
2 years ago
Holger Vogt
a5f99a4953
Make PSP103_nqs standard, as it is used by the Open PDK from IHP
2 years ago
Brian Taylor
4c983e9133
Remove old dead code.
2 years ago
Brian Taylor
8788ce3504
Add check for a trailing } in a logicexp statement.
2 years ago
Brian Taylor
826401f6a4
Add error detection and reporting for invalid infix expressions.
2 years ago
dwarning
adaa3d39fc
no use for grouping in cx_fft and cx_ifft
2 years ago
dwarning
3201bcb09b
prevent clang error
2 years ago
dwarning
fd000c079b
hicum2: use device temperature for noise analysis too
2 years ago
dwarning
3a18028283
vbic: use device temperature for noise analysis too
2 years ago
dwarning
305cd85c76
mos1...3: use device temperature for noise analysis too
2 years ago
dwarning
a1dbd3f3c8
bjt, dio, jfet, res: use device temperature for noise analysis too
2 years ago
dwarning
20c82a5b1b
format
2 years ago
dwarning
e8f1cd4c92
too soon return - break is correct
2 years ago
dwarning
8d64381795
rm confusing comments and formatting
2 years ago
Holger Vogt
bfb2a5fd9c
As preliminary, better not change CURRENT
2 years ago
Holger Vogt
b9c1f68ee0
Preliminary fix to bug report 660
Final setting will be decided before next release.
2 years ago
Brian Taylor
e01290c9a2
Replace the logicexp parser with infix to postfix translation followed by evaluating the postfix. logicexp.c is now shorter and easier to understand and maintain. Also, operator precedence expression parsing conforms to the PSPICE rules. Thus, a & b | c is understood to mean (a & b) | c, for example.
2 years ago
Brian Taylor
bd0f725776
There are approx. 47 out of 1455 subckts in PSPICE 9.1 libraries which contain X* subckt calls together with zero or more U* instances. Now this type of subckt can be translated to XSPICE.
2 years ago
dwarning
9ed7a24a0e
mos1...3: Beta in noise w/o channel length modulation
2 years ago
dwarning
6359b7b41f
mos1...3: add nlev=3 mode channel thermal noise
2 years ago
dwarning
c2f0b1468c
mos3mask: change unusual structure name
2 years ago
dwarning
89c7b83954
mos1...3: formatting and white spaces
2 years ago
dwarning
1381d71cb1
selectable flicker noise models for mos1...3
2 years ago
dwarning
2a6db71726
formatting mos1...3 noise code
2 years ago
dwarning
1c9f8b6345
two corrections in Ycor and NF formulae
2 years ago
Giles Atkinson
2ec5944dd4
Use all available precision when creating a "plot" command for a
zoomed window. That prevents an unexpected zoom-out in one dimension
caused by a zero-height (or width) window being requested when zooming
with already high magnification.
2 years ago
Holger Vogt
7d1ea80a2e
F source fails when VNAM contains math symbols like '-'.
Use INPgetNetTok for instance parameters
like it has been done for nodes already.
2 years ago
Holger Vogt
c0b3511b20
compile with gcc-14 fails due to `-Werror=incompatible-pointer-types`
Patch provided by Mamoru Tasaka.
2 years ago
dwarning
1e8f9a411a
rm obsolete order for spec blackman window
2 years ago
dwarning
e0c3206601
partially revert commit aafd7bbb: spec triangular window
2 years ago
dwarning
8aa20cfc98
fft window functions back to correct scaling - no need need for post scaling step
2 years ago
Holger Vogt
d92569742f
Add a transformer with parameters on the .subckt line
2 years ago
dwarning
9e41383dd9
window weightings between 0 and 1 for fft vector function and command
2 years ago
dwarning
aafd7bbb42
correct bartlett/triangle fft window formulae
2 years ago
Brian Taylor
a70297e87a
Several PSPICE 9.1 evaluation digital libraries contain timing .model statements at the global level for subckts with U* instances that reference those models. By specifying "set ps_global_tmodels=1" in .spiceinit an extra pass inside u_instances() will collect those global timing models for use in subckts. Report errors detected when ngspice parses a LOGICEXP but has not added support for operator precendence. Include a hint of how to fix those errors by inserting parentheses. This error only occurs in 10 of 585 cases in the libraries. Note that inpcompat.c has been saved as a unix filetype.
2 years ago
dwarning
add31fd410
correct flicker noise term for mos1 and mos2 - bug #656
2 years ago
Holger Vogt
a0bddf872d
Fix dd7b9ff27
("Avoid memory crash when reading old VDMOS models.
Enable both old and current model format.",
2023-12-30)
2 years ago
Holger Vogt
79e80dbbab
Automatically adding diode RS only when variable 'rsdiode' is set
to a positive resistance value.
2 years ago
Holger Vogt
0141473aa4
Don't derefence Matrix->SMPkluMatrix->KLUmatrixCommon if it is NULL.
Test for NULL moved upwards in front of dereferencing.
2 years ago
Holger Vogt
f541c6fb05
C:\Spice64 is again the default install directory for ngspice made by MSVC.
2 years ago
Holger Vogt
5266a7c4bc
If there is a successful step, but the goal is not yet reached,
don't start with the minimum value of 1.00005, as this may last
forever. Restart with 3.
2 years ago
Giles Atkinson
d86a0c77cb
Improve scheduling of breakpoints for V-source (PULSE and PWL).
This fixes bugs with the TRA delay line reported by Tom Hajjar in
the Help forum, Jan 11 2024.
2 years ago
Giles Atkinson
2ad97feb31
A quick fix for a bug reported in the Help forum by Tom Hajjar on
Jan 6 2024. Prevent the TRA device from requesting a breakpoint
in the past, as that is a hard error.
2 years ago
Holger Vogt
fb76eb5e12
Example for V/I sources, SFFM and AM
2 years ago
Holger Vogt
e6d6f8e928
Update to V/I sources, SFFM and AM
Enable more AM functions.
Unify the settings of both sources.
2 years ago