Holger Vogt
46696a6aaa
If function is not found, bail out if strict_errorhandling is set.
2022-01-15 14:09:50 +01:00
Holger Vogt
632f8c033d
Make numoparam error messages more user friendly.
...
Add line number of netlist to the message.
Original line number added to new lines in inpcom.c.
Internal error messages only when 'ngdebug' is set
2022-01-15 13:43:26 +01:00
Brian Taylor
08bc3ccdd6
Remove compiler warnings (writ_ifs.c ipcsockets.c).
2022-01-13 14:54:16 +01:00
Holger Vogt
1558c5abcb
Add a suitable error message and fallback to default temperature
...
if an error in the temperature entry is found.
2022-01-13 14:48:35 +01:00
Holger Vogt
5a065c1657
Originally only '.temp 125' had been accepted.
...
There has not been any error message if '=' was used,
the temperature just had been set to 0°C.
Now also '.temp=125' or .temp='param' are accepted.
2022-01-13 10:06:27 +01:00
Giles Atkinson
23e9df0181
Fix for ticket #570 : Interactive prompting is always active.
...
Control prompting with variable "interactive" and stop setting it by default.
Add code in main.c to set it for an interactve session.
2022-01-12 15:22:19 +01:00
Holger Vogt
c4e94cd59b
safeguard against a crash when the s line is buggy
2022-01-12 15:16:06 +01:00
Holger Vogt
64dba93b93
We are now developing ngspice-36+
2022-01-09 11:57:05 +01:00
Holger Vogt
f0e9a35eb6
Add 'esave' command to save only specific event nodes.
...
Add a prompt for esave/eprint/eprvcd.
2022-01-09 10:58:38 +01:00
Holger Vogt
9308c6b077
Reuse memory for queued events.
...
Patch #109 - 2 provided by Giles Atkinson
2022-01-03 22:11:03 +01:00
Holger Vogt
0c59a77fc4
During op evaluation we might use source stepping.
...
Independent V and I sources are stepped, the B source however is not.
Add source stepping to B source.
2022-01-02 13:53:38 +01:00
Carsten Schoenert
486dd587d0
spelling: Fix misspelled word Instnace
2022-01-02 13:51:44 +01:00
Holger Vogt
8263e2a4da
The AD and DA hybrid XSPICE bridges consume a lot of
...
memory (one state per time step added). Memory of
previous time steps is not recovered.
Patch #109 by Giles Atkinson reduces memory consumption
dramatically (> factor of 10).
2022-01-01 16:14:48 +01:00
Holger Vogt
1a6a9e6bb6
Add com_wr_ic.h to their makefile.am
...
to have them as part of make dist.
2021-12-30 15:23:22 +01:00
Holger Vogt
43f2182e56
Add com_optran.h and cplhash.h to their makefile.am
...
to have them as part of make dist.
2021-12-30 15:08:15 +01:00
Holger Vogt
c7bc84943a
plug a memory leak
2021-12-23 14:38:09 +01:00
Holger Vogt
a8d8600faa
plug a memory leak
2021-12-23 14:37:57 +01:00
Holger Vogt
cb0d8f18dc
Prepare for ngspice-36
2021-12-18 13:47:43 +01:00
Holger Vogt
4f73c27d86
Memory access error: don't free GENinst->GENname.
...
Use memcpy to overwrite old name by a (shorter) new name.
Compiler warnings are thus removed.
2021-12-16 08:04:54 +01:00
Holger Vogt
9be9f46f96
Remove unused function Evt_Data_destroy()
2021-12-16 08:04:44 +01:00
Holger Vogt
6ba484e5d2
Remove redundant redeclaration of ‘ft_getpnames_quotes’
2021-12-16 08:04:34 +01:00
Holger Vogt
5adbfc1c86
Remove compiler warnings associated with snprintf()
...
Use memory allocated on the heap instead.
2021-12-16 08:04:20 +01:00
Holger Vogt
b5b462506f
add a function prototype for com_wric()
2021-12-16 08:03:59 +01:00
Holger Vogt
3bac1ffabe
Allow adequate size for copying.
...
Add the missing character string to fprintf.
2021-12-13 22:31:19 +01:00
Holger Vogt
b636017359
add function prototype
...
for insert_new_line()
2021-12-13 22:09:17 +01:00
Brian Taylor
8e75cad453
Fix missing initializer warning.
2021-12-13 21:50:30 +01:00
Holger Vogt
11117912f9
typos
2021-12-13 21:50:20 +01:00
Holger Vogt
1605d293d0
Add function integ to control language
...
Trapezoidal rule for integrating a vector.
2021-12-13 21:49:45 +01:00
dwarning
2eaf35f633
fix a double application of device multiplier for certain diode parameter
2021-12-13 21:49:33 +01:00
Holger Vogt
422719200e
re-enable parameters in agauss function
...
fixes bug #564 reported by Stefan Schippers
If nested braces {..{ }...} have been created,
replace the inner { } by ( )
2021-12-13 21:49:18 +01:00
Holger Vogt
a68cfefb28
hcopywidth and hcopyheight failed with SVG plot
...
cp_getvar read CP_NUM, not CP_STRING
Patch #108 contributed by Giles Atkinson
Add hcopywidth and hcopyheight to example nmos_out_BSIM330_svg.sp
2021-12-13 21:49:01 +01:00
Holger Vogt
b749e62e31
Make error message more verbose
2021-12-13 21:48:29 +01:00
Holger Vogt
aaf586ae83
.probe: Add more safeguards to prevent crashes
...
in case of wrong user input
due to obtain empty lines in shared ngspice
2021-12-13 21:48:21 +01:00
Holger Vogt
bb9f1669f6
Enable math characters also in tokens like i(z/z) by
...
temporarily putting " around the token.
Improve error message on missing vector
2021-12-13 21:47:54 +01:00
Holger Vogt
b59d2aabd1
.probe: Add function call to modprobenames()
...
Function resides in inpc_probe.c.
The function renames all current measurement instances
vcurr_instance:node#branch to instance:node#branch by
modifying the global instance table (tab).
2021-12-13 21:47:37 +01:00
Holger Vogt
9dff15507d
.probe: Add call to function inp_probe() which resides
...
in inpc_probe.c.
Make function insert_new_line() non-static
Enable detecting the number of nodes in x-lines
(calls to subciruits) in function get_number_terminals()
2021-12-13 21:47:27 +01:00
Holger Vogt
7f1a3bea20
.probe: Add the new file inpc_probe.c to the VS project files
...
and makefile.am in ngspice/src/frontend
2021-12-13 21:47:11 +01:00
Holger Vogt
951be0ddb0
New dot command .probe:
...
Code to enable current measurements at all top level
device pins and to enable differential voltage measurements
between two (arbitrary, top level) device nodes.
Adds 0 V voltage sources for current measurements to selected or all
device nodes at top level (including X lines)
Adds an E source excited by two arbitrary nodes for differential
potential (aka voltage) measurements between these nodes
Function inp_probe() is called from inpcom.c
2021-12-13 21:46:57 +01:00
Holger Vogt
7f75b2a7b8
Update to previous commit: safeguard against no circuit loaded
2021-12-13 21:46:29 +01:00
Holger Vogt
54eb12de39
Fix a bug: Crash when 'settype @d1[id]' is given,
...
but simulation is not yet run.
Add a better check for having at least one simulation run
2021-12-13 21:46:15 +01:00
Holger Vogt
1ce0066d3b
Update to previous commit: corrected and enhanced warning messages
2021-12-13 21:46:03 +01:00
Holger Vogt
16fd8749cf
Fix a bug: Crash when 'settype @d1[id]' is given,
...
but simulation is not yet run.
Ask for the job before acknowledging settype on
a vector starting with @
2021-12-13 21:44:30 +01:00
Holger Vogt
2f98a5b305
evtprint: prevent a crash when eprint has been called
...
but there is no simulation run.
2021-12-13 21:44:02 +01:00
Holger Vogt
bff90f1498
Put the gmin reversal into the comment
2021-12-13 21:43:50 +01:00
Holger Vogt
5424fd0d43
Reverse the sequence of dynamic-gmin and new-gmin.
...
The old method dynamic-gmin now comes first,
new-gmin will follow when the former has failed to converge.
2021-12-13 21:43:30 +01:00
Holger Vogt
79c71a4ec3
Enable math characters in vector (node) names for command fft
...
Replace ft_getpnames() by ft_getpnames_quotes().
2021-12-13 21:42:36 +01:00
Holger Vogt
ccd9a217c3
Enable math characters in vector (node) names for logic comparison
...
Replace ft_getpnames() by ft_getpnames_quotes().
2021-12-13 21:42:25 +01:00
Holger Vogt
8895a6e633
Enable math characters in vector (node) names for command alter
...
Replace ft_getpnames() by ft_getpnames_quotes().
2021-12-13 21:42:12 +01:00
Holger Vogt
ee2f3a72f4
Enable math characters in vector (node) names for command fourier
...
Replace ft_getpnames() by ft_getpnames_quotes().
2021-12-13 21:41:58 +01:00
Holger Vogt
98b7074287
Enable math characters in vector (node) names for command spectrum
...
Replace ft_getpnames() by ft_getpnames_quotes().
2021-12-13 21:41:48 +01:00
Holger Vogt
c09839b209
Enable math characters in vector (node) names for commands
...
write and print
Replace ft_getpnames() by ft_getpnames_quotes().
2021-12-13 21:41:37 +01:00
Holger Vogt
57f6d41e69
Enable math characters in vector (node) names for plotting
...
Replace ft_getpnames() by ft_getpnames_quotes().
2021-12-13 21:41:28 +01:00
Holger Vogt
e93a19e3e8
Allow math characters in node names
...
Add a function ft_getpnames_quotes()
It puts quotes " around tokens xxx, when these are enclosed as
V(xxx) and contain arithmetic characters. V(R*C) becomes
V("R*C"). After settig up the parse tree, the quotes are removed again.
Thus these math character remain part of the node name and are not
parsed as parts of an equation.
2021-12-13 21:41:16 +01:00
Holger Vogt
d5dc757288
correct assignment of a variable value to a 1-bit-field
...
only by a logic comparison.
2021-12-13 21:40:57 +01:00
Holger Vogt
90377dcff9
struct TSKtask: group all single bit fields together
2021-12-13 21:40:38 +01:00
dwarning
26979079d4
prevent few compiler warnings
2021-12-13 21:40:15 +01:00
Holger Vogt
3f3936c728
Remove memory leaks
2021-12-13 21:34:07 +01:00
Holger Vogt
89eaf7739c
Remove unused variables
2021-12-13 21:33:09 +01:00
Holger Vogt
a420f58ef5
Plug a (potential) memory leak
...
Add missing memsaved
2021-12-13 21:32:46 +01:00
Holger Vogt
6b41ad433a
Remove memory leak
...
Free some tokens generated by CNVget_token
Initialize reset and clk
Still missing: free 'states'
2021-12-13 21:32:15 +01:00
Holger Vogt
36fa47a8a0
Remove memory leak
...
Add callback function free_local_data
Free some tokens generated by CNVget_token
2021-12-13 21:31:49 +01:00
dwarning
8f9bf94a38
Aware of sscanf return value
2021-12-13 21:30:55 +01:00
dwarning
ba6d8c871c
white spaces
2021-12-13 21:30:32 +01:00
dwarning
ba9f5be52c
Prevent arithmetic overflow and reduce operations
2021-12-13 21:29:37 +01:00
Brian Taylor
38848259e4
With the ngspice gnuplot command, enable x/y contour plots for 2d Cider save file data. Usage: gnuplot <file> xycontour <expr>. xycontour is a new flag which is ignored if the plot data is not from 2d Cider. For contours, only a single plotarg <expr> is allowed. With <expr1> vs <expr2>, only <expr1> is plotted and <expr2> is ignored.
2021-10-30 13:21:32 +02:00
dwarning
550e9f1a81
correct some scaling rules
2021-10-30 11:03:26 +02:00
dwarning
f638a63fba
save few calculation effort in diode load routine
2021-10-30 11:03:05 +02:00
dwarning
62242a5538
save few calculation effort in bjt load routine
2021-10-30 11:02:54 +02:00
dwarning
133f9c46e7
prevent unwanted fallthrough
2021-10-30 11:02:25 +02:00
dwarning
ae49043fe3
correct scaling for IBC parameter
2021-10-30 11:02:13 +02:00
dwarning
b15c7d29f1
correct temp update for IBE and IBC parameter
2021-10-30 11:01:51 +02:00
dwarning
01fb0ac18b
introduce IBE and IBC model parameter for more accurate current calculation
2021-10-30 11:01:36 +02:00
dwarning
231e6218a5
remove comment regarding ancient leakage current defaults
2021-10-30 11:01:24 +02:00
dwarning
5ff04ee85b
c2 and c4 are now aliases for B-E and B-C leakage saturation currents
2021-10-30 11:01:09 +02:00
Holger Vogt
fb98f7873b
remove some compiler warnings
2021-10-30 10:46:39 +02:00
Holger Vogt
f3cb69403a
bug 497: Prevent a crash in CPL
...
Forbiddeb combination of model parameters.
Details are not yet available.
2021-10-30 10:44:44 +02:00
Holger Vogt
69e2903bf6
Update to Garbage Collector for cpl
...
Update some comments
Insert the deleting functions
Reset pool_vi and ndn_btree
Add an example with 20 call to cpl in sequence
2021-10-30 10:44:29 +02:00
Holger Vogt
041264df03
No more meory leaks with existing cpl examples:
...
Add cpldelete.c and cplmdel.c
Delete the model parameters.
Add 2 missing memsaved().
2021-10-30 10:44:07 +02:00
Holger Vogt
9ede9b80e0
Issue a warnong only when ngdebug is set.
2021-10-30 10:43:38 +02:00
Holger Vogt
d2dd1950cb
Add memsaved() to TMALLOC, calloc and replace CPLTFREE for tfree
2021-10-30 10:43:10 +02:00
Holger Vogt
de00317e49
Add memsaved or memdelete to macros
2021-10-30 10:42:37 +02:00
Holger Vogt
8c5277a5e8
Re-format cplsetup.c
2021-10-30 10:42:09 +02:00
Holger Vogt
7dcb1b2a39
Add memsaved() to TMALLOC
2021-10-30 10:41:51 +02:00
Holger Vogt
1dddd6df8d
Each TMALLOC is accompanied by fcn memsaved().
2021-10-30 10:41:37 +02:00
Holger Vogt
b142f2eb9d
Add mem_init() and mem_delete() to setup and unsetup functions
2021-10-30 10:41:24 +02:00
Holger Vogt
3be7370fa8
Add header with extern function prototypes
2021-10-30 10:40:40 +02:00
Holger Vogt
677ec1a094
Update intro text
2021-10-30 10:40:04 +02:00
Holger Vogt
7c38699cd7
Add missing function nghash_delete_special(),
...
developed for branch gc-local
2021-10-30 10:39:19 +02:00
Holger Vogt
b9afd2bd16
add missing headers
2021-10-30 10:38:23 +02:00
Holger Vogt
2f5a00f0a5
hash functions for cpl garbage collector
2021-10-30 10:37:42 +02:00
Holger Vogt
063665c374
Fix a bug in optran code:
...
devname will be used in the list of instances
2021-10-29 16:41:18 +02:00
Holger Vogt
01ed224896
A check to avoid multiple entries for the same node into the .save list
...
Scan the data base dbs (list of saves) before a new entry is generated.
2021-10-29 16:40:51 +02:00
Holger Vogt
bde0639bc4
save within subcircuit
...
enable V(a,b) as v(a) v(b)
2021-10-29 16:40:34 +02:00
Holger Vogt
e90b3e711b
F.-request 85: save currents in subcircuits
...
Separate handling .ic/.nodeset and .save .
Add i(Vxx) to address translation.
Vxx#branch is not supported.
2021-10-29 16:40:23 +02:00
Holger Vogt
bd0113ea9a
Feature request 85: Enable .save within subcircuits
...
inp.c: Add .save to wl_first only after subcircuit expansion
subckt.c: treat .save like .ic
2021-10-29 16:40:06 +02:00
Holger Vogt
f9b743aa2a
remove compiler warnings
2021-10-29 16:39:28 +02:00
Holger Vogt
7ce476c0ad
Make optran standrad by calling com_optran during ngspice initialization.
2021-10-29 16:38:27 +02:00
Holger Vogt
36dd77f63e
if step size in optran command is set to 0,
...
optran is deselected.
2021-10-29 16:38:08 +02:00
Holger Vogt
1eb15de584
remove optran command from spinit
2021-10-29 16:37:56 +02:00
Holger Vogt
d6038ea43c
Redo the transformation vswitch -> pswitch
...
Parsing takes default values into account, when
parameter is missing.
S vswitch --> pswitch code model
S_ST vswitch (with hysreresis) --> SW switch
S iswitch --> aswitch code model
S_ST iswitch (with hysreresis) --> CSW switch
Use string handling for replacements: allow parameter
equations in .model lines.
2021-10-29 16:37:19 +02:00