Commit Graph

2752 Commits

Author SHA1 Message Date
Francesco Lannutti d1b11c39ee Restored some extremely conditional compilation about KLU, SuperLU and UMFPACK 2013-03-27 13:26:42 +01:00
Francesco Lannutti 38947fb651 Experimental changes:
Introduced new binding scheme for RES, CAP, IND, VSRC, (ISRC), BSIM4 models
 to improve speed
 The old method will not work anymore, so please use KLU only if you have
 these models in your circuit and nothing more!
2013-03-27 13:26:42 +01:00
Francesco Lannutti de5e2accea Reverted the previous commit "Corrected a possible bug..." 2013-03-27 13:26:41 +01:00
Francesco Lannutti 005f86a00a Updated SMPprint and SMPprintRHS for KLU, SuperLU and UMFPACK 2013-03-27 13:26:41 +01:00
Francesco Lannutti 16ac211b90 Whitespaces 2013-03-27 13:26:41 +01:00
Francesco Lannutti e9c23ca632 Removed a debug printf 2013-03-27 13:26:41 +01:00
Francesco Lannutti 9df5a4c2d0 Corrected a possible bug that
probably comes from SPICE
 Berkeley in NIiter. It can
 affect convergence during
 dynamic gmin stepping algorithm
2013-03-27 13:26:41 +01:00
Francesco Lannutti 9e29756a98 Reviewed a bit the way to measure
the size of the Matrix and the
 size of the Number of Non-Zeroes
2013-03-27 13:26:41 +01:00
Francesco Lannutti 88ef8f71fb Added a function called DEVbindCSCComplexToReal
in order to switch back from a Complex Matrix
   to a Real Matrix. This is useful inside the
   AC Analysis. BE CAREFUL that all the files
   involved in this change are generated automatically
   by a script!
  Added a flag that indicates if the matrix is
   Real or Complex
  Revisited AC Analysis using KLU. Now it's possible
   to have any sort of analysis in queue and all
   the jobs will be executed successfully. No more
   Segmentation Faults :)
  Removed the CSC Conversion from CKTop and moved
   to CKTsetup
  Solved some bugs in the KLU-SMP interface
2013-03-27 13:26:41 +01:00
Francesco Lannutti 9975d6f08a Added an hint about which solver has been compiled,
based on #ifdef
2013-03-27 13:26:41 +01:00
Francesco Lannutti 6225e05b8c Corrected a bug that caused segmentation fault
if the ACCT was called before a simulation
2013-03-27 13:26:41 +01:00
Francesco Lannutti e560532e58 Corrected a bug which didn't let ngspice compile in an
external folder (e.g. "sourcedir/ngspice-klu-release")
Added a check for ATLAS library when SuperLU is selected
 as solver
2013-03-27 13:26:40 +01:00
Francesco Lannutti d9ae95f962 Added UMFPACK as new experimental linear solver, (#2 changed files)
Some files modified due to UMFPACK integration
 Some bugs and minor/cosmetic fixed
 TODO: Correct cktacct.c to let it print fill-ins
       properly using UMFPACK or SuperLU
2013-03-27 13:26:40 +01:00
Francesco Lannutti 3560c8ee16 Added UMFPACK as new experimental linear solver, (#1 new files) 2013-03-27 13:26:40 +01:00
Francesco Lannutti 7f546a2877 Added SuperLU as new experimental linear solver, (#2 changed files) 2013-03-27 13:26:40 +01:00
Francesco Lannutti 7c868663bd Added SuperLU as new experimental linear solver, (#1 new files) 2013-03-27 13:26:40 +01:00
Francesco Lannutti ec1192a36f Corrected a bug during the Sensitivity Analysis when NG-Spice is compiled with KLU enabled 2013-03-27 13:26:40 +01:00
Francesco Lannutti d99e935137 almost all devices now support KLU (Part 2) 2013-03-27 13:26:40 +01:00
Francesco Lannutti 765711c13d almost all devices now support KLU 2013-03-27 13:26:40 +01:00
Francesco Lannutti 190a4a4601 unwanted noise ?, movement of #include "vccsext.h" 2013-03-27 13:26:40 +01:00
Francesco Lannutti a5556d178b Corrected a bug during the calculation of fill-ins for KLU 2013-03-27 13:26:40 +01:00
Francesco Lannutti 221940b3ae KLU-1 Patch for dump_routines and new SMPmatrix structure 2013-03-27 13:26:40 +01:00
rlar 6d7dcc1e59 drop some disabled experimental code in spMatrix_CSC() 2013-03-27 13:26:40 +01:00
Francesco Lannutti 99ba028925 import changed ngspice files for project KLU
SMP to solver interface separated

KLU-1 Patch for dump_routines and new SMPmatrix structure
2013-03-27 13:26:42 +01:00
Francesco Lannutti 63d24981a8 import new files for project KLU 2013-03-27 13:26:39 +01:00
h_vogt 6c2d820430 sharedspice.c: command bg_pstop to stop printsend
thread before unloading ngspice library
2013-03-26 20:35:41 +01:00
h_vogt 58c9911f27 sharedspice.c: thread handling updated 2013-03-25 21:15:59 +01:00
h_vogt 1509cfd9ee alloc.c sharedspice.c: improve thread safety
(still much more to be done!)
2013-03-24 12:54:11 +01:00
h_vogt d3bf4e8b44 sharedspice.h: comments updated 2013-03-23 22:29:36 +01:00
h_vogt fbab97c61b sharedspice.c: correction for LINUX 2013-03-23 19:32:15 +01:00
h_vogt eaf384ec36 icm/dlmain.c: restrict exported symbols under LINUX 2013-03-23 18:15:45 +01:00
h_vogt 4f53cbef50 ngspice.h: add shared module 2013-03-23 18:14:08 +01:00
h_vogt 3e7722cd58 misccoms.c: special return value for shared module 2013-03-23 18:04:02 +01:00
h_vogt b8f475bea8 error.c: no exit, but callback if shared module 2013-03-23 17:58:11 +01:00
h_vogt 4320fcef36 display.c: exclude SHARED_MODULE if console 2013-03-23 17:54:52 +01:00
h_vogt 6fe8f4edcf src/makefile.am /include/ngspice/makefile.am: add shared module 2013-03-23 17:51:42 +01:00
h_vogt 7755d02b4f outitf.c: prepare for feedback in shared ngspice 2013-03-23 17:40:37 +01:00
h_vogt 704797f10a main file and header for ngspice as shared module 2013-03-23 17:34:15 +01:00
h_vogt b32c5c025c new flag for shared module 2013-03-23 17:28:09 +01:00
h_vogt 9163ed93a9 dctran.c: better rounding for status report 2013-03-23 17:25:41 +01:00
h_vogt 057857938c --with-windows --> --with-wingui 2013-03-23 13:00:30 +01:00
h_vogt e652a0e48d Separate progress report from having Windows GUI 2013-03-23 11:03:08 +01:00
h_vogt 0ed5862586 ngspice.h: single extern declaration of fcn SetAnalyse 2013-03-23 10:50:23 +01:00
h_vogt 18938c948b HAS_WINDOWS --> HAS_WINGUI
MS Windows compile without GUI possible!
2013-03-23 09:54:44 +01:00
h_vogt 7d948f3455 add command 'circbyline' to allow entering circuit
line by line
2013-03-06 23:01:37 +01:00
h_vogt 8ec5bacc3a inp.c: do not run all 'save' commands upfront,
but cumulative when they appear in the .control section
2013-03-05 21:58:00 +01:00
h_vogt 0e0fc4807f breakp2.c: allow v(12) and i(vdd) in 'save' command 2013-03-05 21:56:28 +01:00
h_vogt 503333632e runcoms2.c: update for dbs after remcirc 2013-03-05 20:14:28 +01:00
h_vogt 34385ab270 update 'alter' handling as in ngspice main.c 2013-03-05 20:04:40 +01:00
h_vogt 4514742da7 make database dbs local to each circuit 2013-03-05 20:03:25 +01:00
rlar cda882f31b inpcom.c: cleanup comments 2013-02-25 23:08:49 +01:00
rlar e128a62187 expand_libs(): think of `next' instead `prev' 2013-02-25 23:08:24 +01:00
rlar fdf4d87ea7 expand_libs(): rename `tmp_ptr2' --> `next' 2013-02-25 23:08:23 +01:00
rlar d8d80482da expand_libs(): reposition `keep_char' restorage 2013-02-25 23:08:23 +01:00
rlar ca351a1762 expand_libs(): shrink scope of `found_section' 2013-02-25 23:08:22 +01:00
rlar 18e3a436ac expand_libs(): bug fix, missing check for .endl at the tail of a file 2013-02-25 23:08:21 +01:00
rlar 59c1c9d0da inpcom.c: rename local variable names 2013-02-25 23:08:19 +01:00
rlar 3d5eb33fa7 inpcom.c: rename local variable names 2013-02-25 23:08:08 +01:00
rlar 68b5ccf445 inpcom.c: rename local variable names 2013-02-25 23:03:33 +01:00
rlar bae9e127d9 inpcom.c: rename found_lib_name --> found_section 2013-02-25 23:03:33 +01:00
rlar 7359aaf272 inpcom.c: rename inp_determine_libraries() --> collect_section_references() 2013-02-25 23:03:33 +01:00
rlar c46c832aee inpcom.c: rename expand_libs() --> expand_section_references() 2013-02-25 23:03:33 +01:00
rlar 12e39b3032 inpcom.c: rename function argument names 2013-02-25 23:03:32 +01:00
rlar ae4fa5047e inpcom.c: rename function argument names 2013-02-25 23:03:32 +01:00
rlar bf09f55f51 inpcom.c: cleanup 2013-02-25 23:03:32 +01:00
rlar 24a0bca9b9 inpcom.c: rename library_file[] --> library_name[] 2013-02-25 23:03:32 +01:00
rlar d1d3cdc7a5 inpcom.c: rename library_name[][] --> section_name[][] 2013-02-25 23:03:31 +01:00
rlar 377d7bcb41 inpcom.c: rename library_ll_ptr[][] --> section_ref[][] 2013-02-25 23:03:31 +01:00
rlar 87ad940aab inpcom.c: rename libraries[] -> library_deck[] 2013-02-25 23:03:31 +01:00
rlar 7c4255fc5c inpcom.c: rename num_lib_names --> num_sections 2013-02-25 23:03:31 +01:00
rlar 20cdd5b731 inpcom.c: rename new_lib_name() --> remember_section_ref() 2013-02-25 23:03:30 +01:00
rlar e4f329443d inpcom.c: rename find_lib_name() --> find_section() 2013-02-25 23:03:30 +01:00
rlar 562cd6eeb4 inpcom.c: static declaration of library related global variables 2013-02-25 23:03:26 +01:00
h_vogt 25e922a611 unique modtab for each circuit, store in ckt structure 2013-02-22 22:25:55 +01:00
h_vogt 1c2e4f94cd inp.c: nullify dbs for use with 'source' command 2013-02-22 21:11:05 +01:00
rlar 7b32d828b8 cktdojob.c, bug fix, WANT_SENSE2 specific
`ANALmaxnum' was uninitialized

https://sourceforge.net/tracker/?func=detail&atid=423915&aid=3604609&group_id=38962
2013-02-14 19:00:17 +01:00
rlar 39998daddb soi3cap.c, bug fix, incorrect function arg dimension
though incorrect, this didn't lead to misbehavior.

https://sourceforge.net/tracker/?func=detail&atid=423915&aid=3604606&group_id=38962
2013-02-14 18:54:50 +01:00
rlar aa573f79e8 inp_readall() change function signature for readability 2013-02-12 17:41:33 +01:00
rlar aeb850021b inpcom.c: abstract into new function read_a_lib() 2013-02-09 20:06:50 +01:00
rlar 2c2a7d010b inpcom.c: rewrite using new function find_lib() 2013-02-09 19:52:38 +01:00
rlar 97994080b4 inp_determine_libraries(): rewrite 2013-02-09 19:52:37 +01:00
rlar 131139f454 inp_determine_libraries(): can happen at most once 2013-02-09 19:52:35 +01:00
rlar 1d465b80c4 inpcom.c: small cleanup 2013-02-09 18:54:42 +01:00
rlar dd416baa1f inpcom.c: comment .lib semantic 2013-02-09 18:54:42 +01:00
rlar 6da439dffd inp_readall(): rename local variables 2013-02-09 18:54:42 +01:00
rlar 65f648d2cc inp_readall(): local scope for `tmp_ptr1' 2013-02-09 18:54:41 +01:00
rlar d7b99d83f6 inp_readall(): local scope for `fdo' 2013-02-09 18:54:41 +01:00
rlar 3583277603 use SP_VOLTAGE instead of literal value `3'
(grep "git --no-pager grep -nH -e '->[ \t]*type.*[0-9]'")
2013-02-03 15:52:49 +01:00
rlar 719705adbc retire #define NODE_VOLTAGE, use SP_VOLTAGE instead
(grep "git --no-pager grep -nH -e '\\(SP_\\|NODE_\\)\\(VOLTAGE\\|CURRENT\\)'")
2013-02-03 15:52:49 +01:00
dwarning a6bf03382d jfet: new noise model selector nlev=3 for correct noise in non-saturated region 2013-01-26 21:37:30 +01:00
dwarning 243100cc9d jfet: indentations as preparation for noise model extension 2013-01-26 21:27:39 +01:00
rlar f081cf8606 cleanup, use array operator
checked for object file invariance on linux with
   ./configure --enable-debug=no --enable-maintainer-mode --with-readline=yes --enable-cider --enable-ndev --enable-pss --enable-xspice
2013-01-26 14:40:29 +01:00
h_vogt 1e5a9424cc winmain.c: print buffer enlarged 2013-01-25 23:53:32 +01:00
h_vogt 9c5987e7ec subckt.c: comment updated 2013-01-25 23:52:46 +01:00
h_vogt 07463ebd5a inp.c: some comments added 2013-01-25 23:50:27 +01:00
rlar c68d4b0e07 unify #ifndef include wrapper 2013-01-23 20:57:32 +01:00
rlar 7ea52cb908 prepare for #ifndef include wrapper unification 2013-01-23 20:57:12 +01:00
rlar 8101f3f17c rename #ifndef include wrapper CKT_H 2013-01-23 20:56:28 +01:00
rlar 805753d28c avoid leading underscore in preprocessor macros 2013-01-22 21:00:29 +01:00
rlar 4cea37a163 cleanup some preprocessor macros 2013-01-22 21:00:09 +01:00