Commit Graph

8443 Commits

Author SHA1 Message Date
h_vogt 789737e293 compile_min.sh, add KLU dependency for MINGW compilation 2023-07-17 12:47:36 +02:00
Francesco Lannutti f59d80ece8 Fixed the KLU binding for BJT 2023-07-17 12:47:10 +02:00
Francesco Lannutti 4f1c440592 Commented out some debug printings 2023-07-17 12:46:45 +02:00
Francesco Lannutti 85eb55f017 Fixed the two routines for SPARSE (thx to Marcel Hendrix) 2023-07-17 12:46:21 +02:00
rlar e02d51a5a2 (int) casts, applied to a double which just has been limited to INT_MAX 2023-07-17 12:46:00 +02:00
rlar b2df40724e casting, use (int) sizeof(), to swallow some warnings 2023-07-17 12:45:42 +02:00
rlar eec690d475 use TMALLOC 2023-07-17 12:45:23 +02:00
Francesco Lannutti 580f18a27a Handling the general case for an empty CSC matrix during the conversion to CSR format 2023-07-17 12:44:55 +02:00
Francesco Lannutti a3f3c033df Ordered the COO format also along the columns to have a correct CSR format 2023-07-17 12:44:11 +02:00
Francesco Lannutti 4937cf5252 Fixed the AC part of the Sensitivity Analysis 2023-07-17 12:43:49 +02:00
Francesco Lannutti c541da3ea7 Fixed the CSC to CSR conversion for KLU matrix-vector multiplication 2023-07-17 12:43:30 +02:00
Francesco Lannutti fad005eb41 Fixed Sensibility Analysis for KLU - First Trial 2023-07-17 12:42:57 +02:00
Francesco Lannutti fe73196fd3 Avoid crashing during the Sensitivity Analysis in KLU, stating that it isn't supported 2023-07-17 12:42:28 +02:00
Francesco Lannutti 36f94c7c75 Fixed Sensitivity Analysis integration for KLU 2023-07-17 12:41:20 +02:00
Francesco Lannutti a6b3045caa Fixed the sign inversion calculation for the determinant of KLU 2023-07-17 12:40:44 +02:00
Francesco Lannutti 450a297162 Implement klu_z_print() 2023-07-17 12:40:26 +02:00
Francesco Lannutti 28e2a384cc Implement spMatrix_CSC_dump() 2023-07-17 12:39:59 +02:00
rlar 0e6ff95c4c fix vsrc for pz analysis 2023-07-17 12:39:33 +02:00
Francesco Lannutti d6570a1f91 Use spDeterminant_KLU 2023-07-17 12:39:14 +02:00
Francesco Lannutti 974ae6fff1 Implemented spDeterminant_KLU 2023-07-17 12:38:47 +02:00
Francesco Lannutti 31e0664d4c Fixed SMPcZeroCol 2023-07-17 12:38:16 +02:00
Francesco Lannutti c0e5ca2123 klu_extract_Udiag, Fixed the PZ Analysis for KLU - Added a missing KLU node in VSRC which exists only in case of PZ Analysis - Other fixes 2023-07-17 12:37:55 +02:00
Francesco Lannutti cacae55129 other fixes 2023-07-17 12:37:33 +02:00
Francesco Lannutti d398c93a00 Fixed a bug in SMPpreOrder and let KLU digest an empty matrix 2023-07-17 12:37:11 +02:00
Francesco Lannutti dd98690043 Implemented the Solve Transpose for KLU 2023-07-17 12:36:41 +02:00
Francesco Lannutti f8ad3e6f70 Fixed the SMPcSolve routine for KLU 2023-07-17 12:36:05 +02:00
Francesco Lannutti df9439ebe4 Enhanced KLU to avoid loosing computation cycles. The speedup is quite low, though: ~1% 2023-07-17 12:35:45 +02:00
Francesco Lannutti a1dc2e7b02 fix the list of supported devices 2023-07-17 12:35:21 +02:00
rlar 6f6febed80 Added CPL Model to KLU 2023-07-17 12:34:52 +02:00
Francesco Lannutti 2546e757b7 Added HISIMHV2 Model to KLU 2023-07-17 12:34:32 +02:00
Francesco Lannutti abcad48c3e Added ASRC Model to KLU 2023-07-17 12:34:19 +02:00
Francesco Lannutti 2ab73076a8 KLU Integration from scratch #7, devices, bsim4/ (which is bsim4v8) 2023-07-17 12:34:02 +02:00
rlar 5599ea601e KLU Integration from scratch #6, devices, bsim4v7/ 2023-07-17 12:33:51 +02:00
Francesco Lannutti bf79b48893 Fixed the KLU package to let it correctly compile in libngspice.so 2023-07-17 12:33:38 +02:00
Francesco Lannutti 8d6734a79b KLU Integration from scratch #5, devices 2023-07-17 12:33:15 +02:00
Francesco Lannutti 60c8843bc1 KLU Integration from scratch #4, changed files 2023-07-17 12:33:05 +02:00
Francesco Lannutti c5f881ae29 KLU Integration from scratch #1, new files 2023-07-17 12:32:45 +02:00
Francesco Lannutti 8f768166b1 move include files to src/include/ngspice/ 2023-07-17 12:32:15 +02:00
Francesco Lannutti 848246f7a1 fix include file directories (will be in src/include/ngspice/) 2023-07-17 12:31:53 +02:00
rlar cfdc0e9866 delete-trailing-whitespace 2023-07-17 12:31:36 +02:00
Francesco Lannutti 1a957b6a3f incorporate KLU source files from SuiteSparse-3.7.0.tar.gz 2023-07-17 12:31:09 +02:00
rlar a431809604 SuiteSparse.org, recipe for incorporation of SuiteSparse-3.7.0.tar.gz 2023-07-17 12:30:44 +02:00
Francesco Lannutti 8b8c3418a4 KLU Integration from scratch #1, examples/klu/Circuits 2023-07-17 12:29:53 +02:00
Brian Taylor 4d8b105b86 Simplify expression nesting depth. 2023-07-15 11:34:09 +02:00
Brian Taylor 251f1e1984 The channel data needs to be freed for some 2D Cider devices. This shows up with some of the examples/cider/parallel circuits. 2023-07-15 11:33:52 +02:00
Holger Vogt d74e43f0f0 Move extern declaration to the top, out of any function.
Thus remove VC2022 compiler warnings.
2023-07-15 11:33:11 +02:00
Brian Taylor 159e185bfe Tidy up sp_shutdown with Cider. 2023-07-15 11:32:52 +02:00
Brian Taylor 51b361bbf0 When Cider models are present, a normal batch mode sp_shutdown (for example, ngspice -b cmosinv.cir) will call com_quit(NULL). This cleans up so that valgrind will find no leaks in Cider devices after sp_shutdown. To disable this feature, set the environment variable CIDER_COM_QUIT="OFF". Even though it really does not matter that Cider memory is cleared just before exit, it makes it cleaner for valgrind checks. 2023-07-15 11:32:37 +02:00
Holger Vogt ba2842b55a Prevent a crash if p==NULL (due to buggy input) 2023-07-15 11:32:26 +02:00
dwarning 794a37339a ifft: in case input array is smaller then output array - fill in the rest with zero to prevent uninitialzed plot variables 2023-07-15 11:32:11 +02:00