Commit Graph

451 Commits

Author SHA1 Message Date
Pascal Kuthe 75c2a3c621 calculate log frequency sweep such that start frequency and stop frequency are always exactly included 2022-12-11 15:29:19 +01:00
Holger Vogt d1cbcb080c Re-format cktdojob.c 2022-10-07 13:03:35 +02:00
Holger Vogt 564a3cb2f7 No error message when Optran returned 0 2022-10-07 12:40:49 +02:00
Holger Vogt f7c5c93635 Make error message more verbose:
State explicitely when transient op has failed.
2022-10-07 11:35:11 +02:00
Giles Atkinson aaa6798950 Fix bugs found while investigating Bug #585 (convergence failure only
on Linux).  In dctran.c make it impossible for a transient simulation
to run far past its end time and fix an infinite loop attempting to remove
the automatically-inserted ending breakpoint.  In outitf.c fix memory
corruption if the simulation does over-run (change suggested by Holger Vogt).
2022-10-07 11:32:02 +02:00
Holger Vogt ff3580d70f Avoid circular redundant function declaration.
Include vsrcext.h only via vsrcdefs.h, so VSRCinstance is defined.
2022-05-01 10:30:12 +02:00
Holger Vogt cb17062344 Remove unused (preliminary) 2022-05-01 10:30:02 +02:00
Holger Vogt be4df00678 add some missing prototypes 2022-05-01 10:29:52 +02:00
Holger Vogt 0e46f6f8a1 remove numerous unsigned int vs. int warnings
by setting all variables to type int.
Remove redundant function declarations by remmoving some includes
in span.c and vsrcdefs.h
In tmalloc convert int to size_t
2022-05-01 10:29:08 +02:00
Holger Vogt 3073d8c7d3 Fix a bug: remove excess ')' 2022-05-01 10:28:08 +02:00
Holger Vogt 8e80933cfa If XSPICE is not selected, still send CKTspDump(ckt, freq, spPlot),
but without ipc (spPlot instead of undefined acPlot)
2022-04-29 07:29:33 +02:00
Giles Atkinson 9ac4dab81a Fix two crashes caused by trying to plot after circuit parsing failed. 2022-04-26 10:32:47 +02:00
Holger Vogt 321d53a4e9 Patch to avoid false reads and writes due to inconsitent
structs SPAN and NOISEAN.
Prevent using non-initialized variables.
2022-04-25 21:34:32 +02:00
Holger Vogt 61797c9317 Compile only when RFSPICE is selected in config.h 2022-04-25 21:33:37 +02:00
Holger Vogt 32a707fd22 Provide access to the necessary structs like cplx 2022-04-25 21:32:43 +02:00
Holger Vogt d961c7c91d add missing noisesp.c 2022-04-25 21:32:10 +02:00
Alessio Cacciatori 4ebf4901b9 S-parameters in ngspice
With this commit the patch provided by Alessio Cacchiatori the S-parameter is completed:
Noise simulation added with C matrix output
Y and Z matrix output enabled

To allow compiling with gcc, the dense.h inline functions have been put into denseinlines.h
2022-04-25 21:31:28 +02:00
Holger Vogt a1eb0cc63d If XSPICE is not selected, still send CKTspDump(ckt, freq, spPlot),
but without ipc (spPlot instead of undefined acPlot)
2022-04-25 21:28:16 +02:00
Holger Vogt 4e1ae255f6 Inlude code into #ifdef RFSPICE ... #endif
to allow compiling without pre-processor flag RFSPICE.
2022-02-17 15:49:09 +01:00
Holger Vogt de572d2cdf Remove in <--> unsigned int mismatch 2022-02-17 15:48:52 +01:00
Holger Vogt c2d279a1ef Remove trailing spaces. 2022-02-17 15:48:31 +01:00
Holger Vogt 3b0eb41c74 Enable compiling with --enable-sp for RF SPICE
Set preprocessor flag RFSPICE
Add new files and directory 'dense' ('dense' is still buggy)
2022-02-17 15:48:19 +01:00
Alessio Cacciatori 2c10c4aebd S parameter simulation
Command '.sp'
arbitrary number of ports
ports made with modified VSRC

Patch provided by Alessio Cacciatori
https://sourceforge.net/p/ngspice/discussion/127605/thread/7a2655c86f/
2022-02-17 15:48:00 +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 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 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 89eaf7739c Remove unused variables 2021-12-13 21:33:09 +01:00
Holger Vogt fb98f7873b remove some compiler warnings 2021-10-30 10:46:39 +02:00
Holger Vogt f9b743aa2a remove compiler warnings 2021-10-29 16:39:28 +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 68c5eb2d6b Add resistance sweep error message for failing optran 2021-09-29 20:22:34 +02:00
Holger Vogt 8708b6651b Optran may throw an error message while in temp sweep
and optran fails: message added (in addition prevent a crash)
2021-09-29 20:22:15 +02:00
Holger Vogt 1b3e192bfd errno needs to be nulled in Linux.
Its previous value will be returned after checking.
2021-09-29 20:21:39 +02:00
Holger Vogt f06496c912 Enable command 'optran' in spinit or .spiceinit,
when the circuit is not yet loaded.
Then the optran data are stored in static variables,
until optran is called again with arg NULL from inp.c,
to set the data in ft_curckt->ci_defTask.
2021-09-29 20:15:13 +02:00
Holger Vogt 493cf73f7f optran is only selected when the 'optran' command has been processed.
If not, the call to the OPtran() function returns the previous
'converged' value.
2021-09-29 20:12:52 +02:00
Holger Vogt 7f1fdd3934 Don't do optran, if command optran is not given. 2021-09-29 20:12:31 +02:00
Holger Vogt 711157e85d Update comment: 0 is no initial iteration 2021-09-29 20:12:03 +02:00
Holger Vogt 2ef3f66f96 if 'set ngdebug' print out transient initial conditions also with UIC set. 2021-09-29 20:10:25 +02:00
Holger Vogt 41ead284f3 make the error detection work properly 2021-09-29 20:10:02 +02:00
Holger Vogt 4e03efacb7 Use InpEvaluate() instead of strtod to enable ngspice numbers
with scale factors Meg k m u n p f etc.
2021-09-29 20:09:22 +02:00
Holger Vogt 3be5926f2c Reverse stepsize and finaltime in optran command,
stepsize first as in tran command.
2021-09-29 20:08:51 +02:00
Holger Vogt bca099ca29 prevent crash if first breakpoint is beyond optran max time 2021-09-29 20:08:28 +02:00
Holger Vogt b07a54b8e1 test of supply ramping 2021-09-29 20:07:42 +02:00
Holger Vogt 7de526237e upon finishing 'optran', restore old CKTstep
remove unused
2021-09-29 20:06:35 +02:00
Holger Vogt 0eafec254e safeguard command 'optran' against circuit no being loaded 2021-09-29 20:05:56 +02:00
Holger Vogt cf61e1e564 add missing header 2021-09-29 20:05:28 +02:00
Holger Vogt 83e223fafc header for optran 2021-09-29 20:05:08 +02:00
Holger Vogt a20afc54a5 When we sre ready, reset CKTmaxstep to its previous value 2021-09-29 20:04:26 +02:00
Holger Vogt 3956095484 set maxstepsize to stepsize 2021-09-29 20:04:08 +02:00