Commit Graph

9080 Commits

Author SHA1 Message Date
dwarning 3f432c19f3 remove klu/btf/colamd/amd sources 2024-12-03 16:45:36 +01:00
dwarning 89cf3cf5c6 use ngspice specific utility functions 2024-12-02 14:23:02 +01:00
dwarning 3d42411dee add files to KLU version 2.3.5 2024-12-02 07:35:29 +01:00
dwarning c638b9678c update KLU to version 2.3.5 2024-12-02 07:34:24 +01:00
Holger Vogt 4589821df3 Revise check for '.probe alli' and event nodes:
Bail out, don't run any sim, don't change variable
'auto_bridge'.
2024-12-01 15:55:59 +01:00
dwarning 96a6d8d58f bring the KLU_malloc() in right order, ticket #717 2024-12-01 09:29:15 +01:00
Holger Vogt a6430cfdb9 Fixes bug 723
New lines had been inadvertently written into the .control section.
2024-11-30 22:25:41 +01:00
Holger Vogt 9633b7797c Example for sending a text string over the subcircuit boundary. 2024-11-29 14:12:41 +01:00
Holger Vogt 4842584b07 Enable strings as parameters across subckt boundaries
by keeping the quotes and excluding {} around the string token.
2024-11-29 14:11:03 +01:00
dwarning 98172d84a8 VDMOS: concatenate inner node name 2024-11-29 07:51:10 +01:00
Holger Vogt 773c0b51f8 Revert "Create gnuplot process and wait for its end (Currently Windows only)"
This reverts commit fbc17e7df9.
2024-11-27 18:14:54 +01:00
Holger Vogt fbc17e7df9 Create gnuplot process and wait for its end (Currently Windows only)
before deleting the input files.
2024-11-27 15:34:54 +01:00
Brian Taylor 293b54c05b Now that checks on actuals and formals have been fixed for X* instances, some older PSpice libraries will not translate correctly in psa mode. This commit removes unnecessary power and ground nodes from X* instances of subcircuits where the nodes are optional. These X* instances occur within the body of another subcircuit which is being translated. MicroCap libraries that we can translate in ngspice do not have such cases. To enable the removal of the power and ground nodes, set ps_global_tmodels=1 in .spiceinit. This is not set by default since an extra pass through the circuit word list is necessary to find the subcircuits whose instances do not require power and ground node removal. Without enabling this feature, errors reporting too many parameters may be reported. 2024-11-24 15:20:15 +01:00
Giles Atkinson 10b3e3a560 Apply Patch #119 -
"Fix buffer overflow in src/xspice/icm/digital/d_state/cfunc.mod".
The change is not identical to the supplied patch. It was slightly
modified to make the original code more sane.
Found and patched by Artem Sinkevich.
2024-11-24 14:49:51 +01:00
Giles Atkinson 968c6a88c9 Enhance sensitivity analysis with an option to choose the parameters
to be varied.  Shell-style wildcards ("*?") are supported.
2024-11-24 14:49:48 +01:00
Giles Atkinson 518304b10d Initial fix for Bug 710 -
"The log file appears blank when a VDMOS element is added".
The problen was caused by a crash during sensitivity analysis
caused by selecting parameters for wariation based on their
values.  That is not repeatable between passes.  The fix is to
remove that code, but it causes many more parameters to be used.
2024-11-24 14:49:40 +01:00
Holger Vogt b06cb40272 Create extra name derived from node name, but with / replaced by _,
to become part of the new voltage source name: avoid names
which are not parsed correctly by the B source equation parser.
2024-11-24 14:34:59 +01:00
Holger Vogt bcc9db8e0a precautionary prevent passing instances which internally have got
upper case lettering. Removes a crash reported in
https://gitlab.com/kicad/code/kicad/-/issues/18648.
2024-11-23 15:47:06 +01:00
Holger Vogt 618f2c7abd Remove 512 char limit of sourcepath variable.
Make attaching new path more efficient.
2024-11-21 18:15:05 +01:00
Holger Vogt bbbeb1a4aa Update to
a43c6f491 ("Add #define RESMIN 1e-6 as a minimum resistor value", 2024-07-12)
Remove bug with TL071 model.
2024-11-17 23:04:40 +01:00
Holger Vogt 50974b1ddc Re-enable detection of over- or underflow of number of nodes
when calling a subcircuit.
Update to commit
c12296182 ("The code in src/frontend/subckt.c has a
fixed-size structure called table at the top with a
size set to N_GLOBAL_NODES = 1005.  If the number of
items passed in formal and actual exceeds 1005, then
ngspice exits immediately with an error.", 2023-03-14)
2024-11-13 11:14:29 +01:00
Holger Vogt 04796868fa typos 2024-11-09 12:24:37 +01:00
Holger Vogt 5621f96e18 Add note on compatibility mode psa 2024-11-08 13:57:34 +01:00
Holger Vogt 0cd676ff18 Improve convergence in Infineon Power MOS.
0**something is 0
2024-11-08 12:57:02 +01:00
Giles Atkinson 27e63add5e Improve the behaviour of ngspice when run in the background on a
Unix-like OS with job control.  The progress ticker is suppressed
for a command like "ngspice some_circuit.cir &" so the terminal
remains usuable while the simulation runs.
2024-11-08 11:18:41 +01:00
Giles Atkinson 543a8bb62d Remove function cp_ccon() and related code. The function modifies
the terminal driver's treatment of the control-D (EOF) and escape
keys on Unix-like OSs.  But escape has no special meaning, and treating
control-D as a line terminator was probably to prevent unexpected
session exit when connected through a modem without error-correction.

Removing the function allows "ngspice netlist &" to work correctly.
The function was called during initialisation, which caused an endless
loop of job-control stops when ngspice was started as a background process.
2024-11-08 11:18:36 +01:00
Giles Atkinson 4c61e0ba26 Three minor code improvements. Remove a redundant test in com_measure2.c.
In vectors.c, always initialise a newly-created plot exactly once.
Improve an error message in spiceif.c.
2024-11-08 11:18:31 +01:00
Giles Atkinson a5a393c8b8 Fix processing of lines like: "*# pre_some_command ...". 2024-11-08 11:14:24 +01:00
Brian Taylor e819fc40d7 Fix some memory leaks. 2024-11-08 11:04:59 +01:00
dwarning b41cf53ea5 relative time differences needed - not to prgm start time 2024-11-07 17:20:20 +01:00
dwarning 5b6de8441c rm obsolete #ifdef HAVE_QUERY in windows block 2024-11-06 18:06:21 +01:00
dwarning de6dbcfa12 Merge branch 'pre-master-44' of ssh://git.code.sf.net/p/ngspice/ngspice into pre-master-44 2024-11-06 15:04:04 +01:00
dwarning f7e6b237f5 format - white spaces 2024-11-06 15:02:10 +01:00
dwarning bb0f7e2b29 Keep it simple: use only one structure and get_time function 2024-11-06 14:32:26 +01:00
Holger Vogt aab3958459 In batch mode: if transient simulation fails with 'Timestep too small',
still fill in the number of points in the raw file.
Fixes bug no 714.
2024-11-06 10:30:00 +01:00
dwarning f822d47c80 seconds() gives difftime to program start, lower priority for getrusage() and times() 2024-11-05 18:27:47 +01:00
Holger Vogt 636ba1e724 seconds() no longer supports a time difference, so create it locally. 2024-11-04 13:02:50 +01:00
dwarning e5bccd06b0 suppress compiler warning 2024-11-03 11:34:46 +01:00
dwarning c790eea4b2 unify os dependent time code in one file - rm win_time.c 2024-11-03 11:34:41 +01:00
Holger Vogt 6f91865516 Add AF and KF: error messages in commands 'showmod' or .sens are gone. 2024-11-03 11:14:04 +01:00
Holger Vogt fa310d8da2 Fix a bug: AF and KF had been interchanged. 2024-11-03 10:55:30 +01:00
dwarning 69da75f7f0 intel cc see obsolete }; as empty declaration 2024-11-03 10:43:46 +01:00
dwarning 47e3eac83c Reorder and renovate timer functions taking into account ngspice multiprocessor capabilities
by using available high performance functions first.
Deprecated ftime() still acts as a backup function.
Solution is portable for today's operating systems and compilers.
2024-11-02 16:58:56 +01:00
Holger Vogt 3e6eb4bf6d New release_sh and debug_sh directories for making shared ngspice. 2024-11-01 11:53:41 +01:00
Holger Vogt 729ddd7c08 Add function ngSpice_nospiceinit(void) if you don't want to read .spiceinit 2024-10-30 13:37:45 +01:00
Holger Vogt a8eec8ee87 Bail out when the number of s parameter ports is less than 2. 2024-10-30 13:36:02 +01:00
Holger Vogt 7b3b36b1d9 Make the resistor name unique for a device with multiple unconnected nodes 2024-10-29 16:57:43 +01:00
Holger Vogt 5118369d20 Improve error message during setup of TXL or CPL 2024-10-28 12:41:14 +01:00
Holger Vogt 31b9075f88 If preprocessing is skipped, we still need the number of lines in the deck. 2024-10-27 15:18:34 +01:00
Holger Vogt 4847ce100e Prevent crash if number of lines is wrong/not available ... 2024-10-27 15:17:51 +01:00